use of org.terasology.telemetry.GamePlayStatsComponent in project Terasology by MovingBlocks.
the class CreatureKilledMetric method createTelemetryFieldToValue.
@Override
public Map<String, ?> createTelemetryFieldToValue() {
localPlayer = CoreRegistry.get(LocalPlayer.class);
EntityRef playerEntity = localPlayer.getCharacterEntity();
if (playerEntity.hasComponent(GamePlayStatsComponent.class)) {
GamePlayStatsComponent gamePlayStatsComponent = playerEntity.getComponent(GamePlayStatsComponent.class);
telemetryFieldToValue.clear();
telemetryFieldToValue.putAll(gamePlayStatsComponent.creatureKilled);
return telemetryFieldToValue;
} else {
return telemetryFieldToValue;
}
}
use of org.terasology.telemetry.GamePlayStatsComponent in project Terasology by MovingBlocks.
the class GamePlayMetric method createTelemetryFieldToValue.
@Override
public Map<String, ?> createTelemetryFieldToValue() {
localPlayer = CoreRegistry.get(LocalPlayer.class);
EntityRef playerEntity = localPlayer.getCharacterEntity();
if (playerEntity.hasComponent(GamePlayStatsComponent.class)) {
GamePlayStatsComponent gamePlayStatsComponent = playerEntity.getComponent(GamePlayStatsComponent.class);
distanceTraveled = gamePlayStatsComponent.distanceTraveled;
playTimeMinute = (long) gamePlayStatsComponent.playTimeMinute;
return super.createTelemetryFieldToValue();
} else {
return super.createTelemetryFieldToValue();
}
}
use of org.terasology.telemetry.GamePlayStatsComponent in project Terasology by MovingBlocks.
the class BlockDestroyedMetric method createTelemetryFieldToValue.
@Override
public Map<String, ?> createTelemetryFieldToValue() {
localPlayer = CoreRegistry.get(LocalPlayer.class);
EntityRef playerEntity = localPlayer.getCharacterEntity();
if (playerEntity.hasComponent(GamePlayStatsComponent.class)) {
GamePlayStatsComponent gamePlayStatsComponent = playerEntity.getComponent(GamePlayStatsComponent.class);
telemetryFieldToValue.clear();
telemetryFieldToValue.putAll(gamePlayStatsComponent.blockDestroyedMap);
return telemetryFieldToValue;
} else {
return telemetryFieldToValue;
}
}
use of org.terasology.telemetry.GamePlayStatsComponent in project Terasology by MovingBlocks.
the class BlockPlacedMetric method createTelemetryFieldToValue.
@Override
public Map<String, ?> createTelemetryFieldToValue() {
localPlayer = CoreRegistry.get(LocalPlayer.class);
EntityRef playerEntity = localPlayer.getCharacterEntity();
if (playerEntity.hasComponent(GamePlayStatsComponent.class)) {
GamePlayStatsComponent gamePlayStatsComponent = playerEntity.getComponent(GamePlayStatsComponent.class);
telemetryFieldToValue.clear();
telemetryFieldToValue.putAll(gamePlayStatsComponent.blockPlacedMap);
return telemetryFieldToValue;
} else {
return telemetryFieldToValue;
}
}
use of org.terasology.telemetry.GamePlayStatsComponent in project Terasology by MovingBlocks.
the class BlockItemSystem method recordBlockPlaced.
private void recordBlockPlaced(ActivateEvent event, BlockFamily block) {
EntityRef instigator = event.getInstigator();
String blockName = block.getDisplayName();
if (instigator.hasComponent(GamePlayStatsComponent.class)) {
GamePlayStatsComponent gamePlayStatsComponent = instigator.getComponent(GamePlayStatsComponent.class);
Map<String, Integer> blockPlacedMap = gamePlayStatsComponent.blockPlacedMap;
if (blockPlacedMap.containsKey(blockName)) {
blockPlacedMap.put(blockName, blockPlacedMap.get(blockName) + 1);
} else {
blockPlacedMap.put(blockName, 1);
}
instigator.saveComponent(gamePlayStatsComponent);
} else {
GamePlayStatsComponent gamePlayStatsComponent = new GamePlayStatsComponent();
Map<String, Integer> blockPlacedMap = gamePlayStatsComponent.blockPlacedMap;
blockPlacedMap.put(blockName, 1);
instigator.addOrSaveComponent(gamePlayStatsComponent);
}
}
Aggregations