30.08.2014, 17:49
You can't, and this has it's good reasons
, but you can use the PlayerLifecycleHolder from shoebill-common.
then you can create a class called GamePlayer. This class has to extend the PlayerLifecycleObject. For example:
and you can get the class like this:
or, you can get all players like this:
![Smiley](images/smilies/smile.png)
PHP код:
PlayerLifecycleHolder playerLifecycleHolder = new PlayerLifecycleHolder(getEventManager());
playerLifecycleHolder.registerClass(GamePlayer.class, (eventManager, p) -> new GamePlayer(eventManager, p));
PHP код:
public class GamePlayer extends PlayerLifecycleObject {
private int adminLevel;
public GamePlayer(EventManager manager, Player p) {
super(manager, p);
}
public int getAdminLevel() {
return adminLevel;
}
public void setAdminLevel(int level) {
this.adminLevel = level;
}
@Override
protected void onInit() {
//Create objects, 3dtextlabels etc.
}
@Override
protected void onDestroy() {
//Destroy objects etc.
}
}
PHP код:
GamePlayer playerClass = playerLifecycleHolder.getObject(event.getPlayer(), GamePlayer.class);
PHP код:
Collection<GamePlayer> players = playerLifecycleHolder.getObjects(GamePlayer.class);