mirror of
https://github.com/simon987/Much-Assembly-Required.git
synced 2025-04-19 18:46:43 +00:00
Added achievements event and listener in CubotPlugin
This commit is contained in:
parent
2597b558e6
commit
edbe613b65
@ -0,0 +1,23 @@
|
|||||||
|
package net.simon987.cubotplugin.event;
|
||||||
|
|
||||||
|
import net.simon987.server.event.GameEvent;
|
||||||
|
import net.simon987.server.game.objects.GameObject;
|
||||||
|
|
||||||
|
public class AchievementEvent extends GameEvent {
|
||||||
|
|
||||||
|
private final String achievement;
|
||||||
|
|
||||||
|
public AchievementEvent(GameObject source, String achievement) {
|
||||||
|
this.achievement = achievement;
|
||||||
|
setSource(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAchievement() {
|
||||||
|
return achievement;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GameObject getSource() {
|
||||||
|
return (GameObject) super.getSource();
|
||||||
|
}
|
||||||
|
}
|
@ -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 AchievementListener implements GameEventListener {
|
||||||
|
@Override
|
||||||
|
public Class getListenedEventType() {
|
||||||
|
return AchievementEvent.class;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void handle(GameEvent event) {
|
||||||
|
AchievementEvent achievementEvent = (AchievementEvent) event;
|
||||||
|
GameObject object = achievementEvent.getSource();
|
||||||
|
if (object instanceof ControllableUnit) {
|
||||||
|
final String achievement = achievementEvent.getAchievement();
|
||||||
|
final ControllableUnit unit = (ControllableUnit) object;
|
||||||
|
LogManager.LOGGER.info(unit.getParent().getUsername() + " Completed achievement: " + achievement);
|
||||||
|
|
||||||
|
((ControllableUnit) object).getParent().getStats().addToStringSet("achievements", achievement);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user