|
|
|
@ -242,32 +242,22 @@ public class ActionsBase {
@@ -242,32 +242,22 @@ public class ActionsBase {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//Add blocked types here
|
|
|
|
|
public boolean blocked(AbstractWorldObject awo, Boolean vampDrain) { |
|
|
|
|
|
|
|
|
|
if (AbstractWorldObject.IsAbstractCharacter(awo)) { |
|
|
|
|
AbstractCharacter ac = (AbstractCharacter) awo; |
|
|
|
|
PlayerBonuses bonus = ac.getBonuses(); |
|
|
|
|
if (bonus == null) |
|
|
|
|
return false; |
|
|
|
|
public boolean blocked(AbstractWorldObject awo, boolean vampDrain) { |
|
|
|
|
//Check for immunities
|
|
|
|
|
if (AbstractCharacter.IsAbstractCharacter(awo)){ |
|
|
|
|
AbstractCharacter pcTarget = (AbstractCharacter) awo; |
|
|
|
|
PlayerBonuses bonus = pcTarget.getBonuses(); |
|
|
|
|
|
|
|
|
|
if(vampDrain) |
|
|
|
|
return bonus.getBool(ModType.BlockedPowerType, SourceType.VAMPDRAIN); |
|
|
|
|
|
|
|
|
|
switch (this.stackType) { |
|
|
|
|
case "Stun": |
|
|
|
|
return bonus.getBool(ModType.ImmuneTo, SourceType.Stun); |
|
|
|
|
case "Snare": |
|
|
|
|
return bonus.getBool(ModType.ImmuneTo, SourceType.Snare); |
|
|
|
|
case "Blindness": |
|
|
|
|
return bonus.getBool(ModType.ImmuneTo, SourceType.Blind); |
|
|
|
|
case "PowerInhibitor": |
|
|
|
|
return bonus.getBool(ModType.ImmuneTo, SourceType.Powerblock); |
|
|
|
|
case "Root": |
|
|
|
|
return bonus.getBool(ModType.ImmuneTo, SourceType.Root); |
|
|
|
|
case "Flight": |
|
|
|
|
return bonus.getBool(ModType.NoMod, SourceType.Fly); |
|
|
|
|
case "Track": |
|
|
|
|
return bonus.getBool(ModType.CannotTrack, SourceType.None); |
|
|
|
|
if (this.stackType.equals("Flight") && bonus.getBool(ModType.NoMod, SourceType.Fly)) { |
|
|
|
|
return true; |
|
|
|
|
}else if (this.stackType.equals("Track") && bonus.getBool(ModType.CannotTrack, SourceType.None)) { |
|
|
|
|
return true; |
|
|
|
|
}else { |
|
|
|
|
mbEnums.DamageType damageType = mbEnums.DamageType.getDamageType(this.stackType.toUpperCase()); |
|
|
|
|
return pcTarget.getResists().immuneTo(damageType); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return false; |
|
|
|
|