mirror of
https://github.com/simon987/Much-Assembly-Required.git
synced 2025-12-15 23:59:09 +00:00
Testing
This commit is contained in:
@@ -11,6 +11,8 @@ import net.simon987.server.game.item.Item;
|
||||
import net.simon987.server.game.item.ItemVoid;
|
||||
import net.simon987.server.game.objects.*;
|
||||
import net.simon987.server.user.User;
|
||||
import net.simon987.server.event.GameEvent;
|
||||
import net.simon987.cubotplugin.event.*;
|
||||
import org.bson.Document;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
@@ -22,6 +24,14 @@ public class Cubot extends GameObject implements Updatable, ControllableUnit, Me
|
||||
|
||||
private static final char MAP_INFO = 0x0200;
|
||||
|
||||
/**
|
||||
* Walk Distance
|
||||
*/
|
||||
private int walkDistance;
|
||||
/**
|
||||
* Death Count
|
||||
*/
|
||||
private int deathCount;
|
||||
/**
|
||||
* Hit points
|
||||
*/
|
||||
@@ -126,6 +136,8 @@ public class Cubot extends GameObject implements Updatable, ControllableUnit, Me
|
||||
|
||||
hp = document.getInteger("hp");
|
||||
shield = document.getInteger("shield");
|
||||
deathCount = 0;
|
||||
walkDistance = 0;
|
||||
setDirection(Direction.getDirection(document.getInteger("direction")));
|
||||
|
||||
IServerConfiguration config = GameServer.INSTANCE.getConfig();
|
||||
@@ -164,6 +176,9 @@ public class Cubot extends GameObject implements Updatable, ControllableUnit, Me
|
||||
//Couldn't walk
|
||||
currentAction = Action.IDLE;
|
||||
}
|
||||
walkDistance++;
|
||||
GameEvent event = new WalkDistanceEvent(this,walkDistance);
|
||||
GameServer.INSTANCE.getEventDispatcher().dispatch(event);
|
||||
} else {
|
||||
currentAction = Action.IDLE;
|
||||
}
|
||||
@@ -263,6 +278,7 @@ public class Cubot extends GameObject implements Updatable, ControllableUnit, Me
|
||||
lastConsoleMessagesBuffer.clear();
|
||||
currentStatus = 0;
|
||||
lastStatus = 0;
|
||||
walkDistance = 0;
|
||||
addStatus(CubotStatus.FACTORY_NEW);
|
||||
|
||||
for (HardwareModule module : hardwareAddresses.values()) {
|
||||
@@ -272,6 +288,10 @@ public class Cubot extends GameObject implements Updatable, ControllableUnit, Me
|
||||
|
||||
@Override
|
||||
public boolean onDeadCallback() {
|
||||
deathCount++;
|
||||
GameEvent event = new DeathCountEvent(this,deathCount);
|
||||
GameServer.INSTANCE.getEventDispatcher().dispatch(event);
|
||||
|
||||
reset();
|
||||
|
||||
//Teleport to spawn point
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package net.simon987.cubotplugin.event;
|
||||
|
||||
import net.simon987.server.event.GameEvent;
|
||||
import net.simon987.server.game.objects.GameObject;
|
||||
|
||||
public class DeathCountEvent extends GameEvent {
|
||||
|
||||
public DeathCountEvent(){
|
||||
|
||||
}
|
||||
|
||||
public DeathCountEvent(GameObject object, int c) {
|
||||
setSource(object);
|
||||
if(c>=0){
|
||||
object.setCounter(c);
|
||||
}else{
|
||||
object.setCounter(0);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public GameObject getSource() {
|
||||
return (GameObject) super.getSource();
|
||||
}
|
||||
|
||||
public int getCounter() {
|
||||
return (int) getSource().getCounter();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package net.simon987.cubotplugin.event;
|
||||
|
||||
import net.simon987.server.event.GameEvent;
|
||||
import net.simon987.server.event.GameEventListener;
|
||||
import net.simon987.server.game.objects.ControllableUnit;
|
||||
import net.simon987.server.game.objects.GameObject;
|
||||
import net.simon987.server.logging.LogManager;
|
||||
|
||||
public class DeathCountListener implements GameEventListener {
|
||||
@Override
|
||||
public Class getListenedEventType() {
|
||||
return DeathCountEvent.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handle(GameEvent event) {
|
||||
DeathCountEvent DeathCountEvent = (DeathCountEvent) event;
|
||||
GameObject object = DeathCountEvent.getSource();
|
||||
if (object instanceof ControllableUnit) {
|
||||
LogManager.LOGGER.info(((ControllableUnit) object).getParent().getUsername() + " Death Count " +
|
||||
Integer.toString(object.getCounter()));
|
||||
|
||||
((ControllableUnit) object).getParent().getStats().setInt("deathCount",
|
||||
DeathCountEvent.getCounter());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package net.simon987.cubotplugin.event;
|
||||
|
||||
import net.simon987.server.event.GameEvent;
|
||||
import net.simon987.server.game.objects.GameObject;
|
||||
|
||||
public class TotalExecutionTimeEvent extends GameEvent {
|
||||
|
||||
public TotalExecutionTimeEvent(){
|
||||
|
||||
}
|
||||
|
||||
public TotalExecutionTimeEvent(GameObject object, double c) {
|
||||
setSource(object);
|
||||
if(c>=0){
|
||||
object.setTime(c);
|
||||
}else{
|
||||
object.setTime(0);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public GameObject getSource() {
|
||||
return (GameObject) super.getSource();
|
||||
}
|
||||
|
||||
public double getTime() {
|
||||
return (int) getSource().getTime();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package net.simon987.cubotplugin.event;
|
||||
|
||||
import net.simon987.server.event.GameEvent;
|
||||
import net.simon987.server.event.GameEventListener;
|
||||
import net.simon987.server.game.objects.ControllableUnit;
|
||||
import net.simon987.server.game.objects.GameObject;
|
||||
import net.simon987.server.logging.LogManager;
|
||||
|
||||
public class TotalExecutionTimeListener implements GameEventListener {
|
||||
@Override
|
||||
public Class getListenedEventType() {
|
||||
return TotalExecutionTimeEvent.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handle(GameEvent event) {
|
||||
TotalExecutionTimeEvent TotalExecutionTimeEvent = (TotalExecutionTimeEvent) event;
|
||||
GameObject object = TotalExecutionTimeEvent.getSource();
|
||||
if (object instanceof ControllableUnit) {
|
||||
LogManager.LOGGER.info(((ControllableUnit) object).getParent().getUsername() + " Death Count " +
|
||||
Double.toString(object.getTime()));
|
||||
|
||||
((ControllableUnit) object).getParent().getStats().setDouble("totalExecutionTime",
|
||||
TotalExecutionTimeEvent.getTime());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package net.simon987.cubotplugin.event;
|
||||
|
||||
import net.simon987.server.event.GameEvent;
|
||||
import net.simon987.server.game.objects.GameObject;
|
||||
|
||||
public class WalkDistanceEvent extends GameEvent {
|
||||
|
||||
private int count;
|
||||
|
||||
public WalkDistanceEvent(){
|
||||
|
||||
}
|
||||
|
||||
public WalkDistanceEvent(GameObject object, int c) {
|
||||
setSource(object);
|
||||
if(c>=0){
|
||||
object.setCounter(c);
|
||||
}else{
|
||||
object.setCounter(0);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public GameObject getSource() {
|
||||
return (GameObject) super.getSource();
|
||||
}
|
||||
|
||||
public int getCounter() {
|
||||
return (int) getSource().getCounter();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package net.simon987.cubotplugin.event;
|
||||
|
||||
import net.simon987.server.event.GameEvent;
|
||||
import net.simon987.server.event.GameEventListener;
|
||||
import net.simon987.server.game.objects.ControllableUnit;
|
||||
import net.simon987.server.game.objects.GameObject;
|
||||
import net.simon987.server.logging.LogManager;
|
||||
|
||||
public class WalkDistanceListener implements GameEventListener {
|
||||
@Override
|
||||
public Class getListenedEventType() {
|
||||
return WalkDistanceEvent.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handle(GameEvent event) {
|
||||
WalkDistanceEvent WalkDistanceEvent = (WalkDistanceEvent) event;
|
||||
GameObject object = WalkDistanceEvent.getSource();
|
||||
if (object instanceof ControllableUnit) {
|
||||
LogManager.LOGGER.info(((ControllableUnit) object).getParent().getUsername() + " Death Count " +
|
||||
Integer.toString(object.getCounter()));
|
||||
|
||||
((ControllableUnit) object).getParent().getStats().setInt("walkDistance",
|
||||
WalkDistanceEvent.getCounter());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user