public void affectPhyStats(Physical affected, PhyStats affectableStats) { super.affectPhyStats(affected, affectableStats); if (affected == null) return; if (!(affected instanceof MOB)) return; affectableStats.setSensesMask(affectableStats.sensesMask() | PhyStats.CAN_NOT_MOVE); }
@Override public void affectPhyStats(Physical affected, PhyStats affectableStats) { super.affectPhyStats(affected, affectableStats); if (affected == null) return; for (final Object[] A : affects) if (A[0] instanceof StatsAffecting) ((StatsAffecting) A[0]).affectPhyStats(affected, affectableStats); }
@Override public void affectPhyStats(Physical affected, PhyStats affectableStats) { super.affectPhyStats(affected, affectableStats); if (affected == null) return; if (levelsDown < 0) return; final int attacklevel = affectableStats.attackAdjustment() / affectableStats.level(); affectableStats.setLevel(affectableStats.level() - (levelsDown * direction)); if (affectableStats.level() <= 0) { levelsDown = -1; CMLib.combat().postDeath(invoker(), (MOB) affected, null); } affectableStats.setAttackAdjustment( affectableStats.attackAdjustment() - (attacklevel * (levelsDown * direction))); }
@Override public void affectPhyStats(Physical affected, PhyStats affectableStats) { super.affectPhyStats(affected, affectableStats); if ((affectableStats.disposition() & PhyStats.IS_FLYING) == 0) affectableStats.setDisposition(affectableStats.disposition() | PhyStats.IS_FALLING); }