package consolecommands; import java.util.ArrayList; import java.util.List; import com.aionemu.gameserver.model.gameobjects.Creature; import com.aionemu.gameserver.model.gameobjects.player.Player; import com.aionemu.gameserver.model.stats.calc.StatOwner; import com.aionemu.gameserver.model.stats.calc.functions.IStatFunction; import com.aionemu.gameserver.model.stats.calc.functions.StatSetFunction; import com.aionemu.gameserver.model.stats.container.CreatureGameStats; import com.aionemu.gameserver.model.stats.container.StatEnum; import com.aionemu.gameserver.utils.PacketSendUtility; import com.aionemu.gameserver.utils.chathandlers.ConsoleCommand; /** * @author ginho1 */ public class Attrbonus extends ConsoleCommand implements StatOwner { public Attrbonus() { super("attrbonus"); } @Override public void execute(Player admin, String... params) { if (params.length < 1) { info(admin, null); return; } StatEnum stat = StatEnum.valueOf(StatEnum.class, String.valueOf(params[0])); if (stat == null) { PacketSendUtility.sendMessage(admin, "Invalid params."); return; } int value; try { value = Integer.parseInt(params[1]); } catch (NumberFormatException e) { PacketSendUtility.sendMessage(admin, "Invalid params."); return; } Creature effected = admin; CreatureGameStats cgs = effected.getGameStats(); List modifiers = new ArrayList<>(); modifiers.add(new StatSetFunction(stat, value)); if (modifiers.size() > 0) cgs.addEffect(this, modifiers); PacketSendUtility.sendMessage(admin, "Character stat " + stat.name() + " increased."); } @Override public void info(Player admin, String message) { PacketSendUtility.sendMessage(admin, "syntax ///attrbonus "); } }