12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- package me.km.snuviscript;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.stream.Collectors;
- import me.hammerle.code.SnuviParser;
- import me.km.KajetansMod;
- import net.minecraft.entity.player.EntityPlayer;
- public class PlayerScript extends MinecraftScript
- {
- private final ArrayList<EntityPlayer> players;
-
- public PlayerScript(SnuviParser parser, int id, String name, String code, boolean receiveEventBroadcast)
- {
- super(parser, id, name, code, receiveEventBroadcast);
- players = new ArrayList<>();
- }
- @Override
- public void onTerm()
- {
- ScriptModule scm = KajetansMod.scripts;
- this.setInvalid();
- players.forEach(p -> scm.removePlayerFromScript(p, this));
- }
- @Override
- protected void initExpansion(Object... o)
- {
- players.add((EntityPlayer) o[0]);
- ScriptVars.setPlayerVars(this, (EntityPlayer) o[0]);
- }
-
- public void addPlayer(EntityPlayer p)
- {
- players.add(p);
- }
-
- public boolean removePlayer(EntityPlayer p)
- {
- players.remove(p);
- return players.isEmpty();
- }
-
- public List<EntityPlayer> getPlayers()
- {
- return players;
- }
-
- public List<String> getPlayerNames()
- {
- return getPlayers().stream().map(p -> p.getName()).collect(Collectors.toList());
- }
- }
|