mirror of
https://github.com/KAMKEEL/CustomNPC-Plus.git
synced 2026-11-13 05:27:37 +00:00
Some Ability Fixes to Defaults and Langs
This commit is contained in:
1 parent
a4ac6bb1c1
commit
5992e1badc
12 files changed
+62
-77
No files matched your search
@@ -29,7 +29,7 @@ public class AbilityCharge extends Ability {
|
||||
|
||||
// Type-specific parameters
|
||||
private float chargeSpeed = 0.8f;
|
||||
private float damage = 15.0f;
|
||||
private float damage = 8.0f;
|
||||
private float knockback = 3.0f;
|
||||
private float hitWidth = 1.5f;
|
||||
|
||||
@@ -296,7 +296,7 @@ public class AbilityCharge extends Ability {
|
||||
@Override
|
||||
public void readTypeNBT(NBTTagCompound nbt) {
|
||||
this.chargeSpeed = nbt.hasKey("chargeSpeed") ? nbt.getFloat("chargeSpeed") : 0.8f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 15.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 8.0f;
|
||||
this.knockback = nbt.hasKey("knockback") ? nbt.getFloat("knockback") : 3.0f;
|
||||
if (nbt.hasKey("hitWidth")) {
|
||||
this.hitWidth = nbt.getFloat("hitWidth");
|
||||
|
||||
@@ -35,7 +35,7 @@ public class AbilityCutter extends Ability {
|
||||
|
||||
private float arcAngle = 90.0f;
|
||||
private float range = 6.0f;
|
||||
private float damage = 12.0f;
|
||||
private float damage = 7.0f;
|
||||
private float knockback = 1.5f;
|
||||
|
||||
private SweepMode sweepMode = SweepMode.SWIPE;
|
||||
@@ -217,7 +217,7 @@ public class AbilityCutter extends Ability {
|
||||
public void readTypeNBT(NBTTagCompound nbt) {
|
||||
this.arcAngle = nbt.hasKey("arcAngle") ? nbt.getFloat("arcAngle") : 90.0f;
|
||||
this.range = nbt.hasKey("range") ? nbt.getFloat("range") : 6.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 12.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 7.0f;
|
||||
this.knockback = nbt.hasKey("knockback") ? nbt.getFloat("knockback") : 1.5f;
|
||||
try {
|
||||
this.sweepMode = SweepMode.valueOf(nbt.getString("sweepMode"));
|
||||
|
||||
@@ -28,7 +28,7 @@ public class AbilityGuard extends Ability {
|
||||
private float damageReduction = 0.5f;
|
||||
private boolean canCounter = false;
|
||||
private CounterType counterType = CounterType.FLAT;
|
||||
private float counterValue = 10.0f;
|
||||
private float counterValue = 6.0f;
|
||||
private float counterChance = 0.3f;
|
||||
private String counterSound = "random.wood_click";
|
||||
private int counterAnimationId = -1;
|
||||
@@ -207,7 +207,7 @@ public class AbilityGuard extends Ability {
|
||||
} else if (nbt.hasKey("counterDamage")) {
|
||||
this.counterValue = nbt.getFloat("counterDamage");
|
||||
} else {
|
||||
this.counterValue = 10.0f;
|
||||
this.counterValue = 6.0f;
|
||||
}
|
||||
this.counterChance = nbt.hasKey("counterChance") ? nbt.getFloat("counterChance") : 0.3f;
|
||||
this.counterSound = nbt.hasKey("counterSound") ? nbt.getString("counterSound") : "random.wood_click";
|
||||
|
||||
@@ -48,7 +48,7 @@ public class AbilityHazard extends Ability {
|
||||
private HazardShape shape = HazardShape.CIRCLE;
|
||||
private PlacementMode placement = PlacementMode.AT_TARGET;
|
||||
|
||||
private float damagePerTick = 1.0f;
|
||||
private float damagePerSecond = 1.0f;
|
||||
private int damageInterval = 20;
|
||||
private boolean ignoreInvulnFrames = false;
|
||||
|
||||
@@ -290,12 +290,12 @@ public class AbilityHazard extends Ability {
|
||||
if (damagedThisTick.contains(entity.getEntityId())) continue;
|
||||
if (!isInZone(entity, npc)) continue;
|
||||
|
||||
if (damagePerTick > 0) {
|
||||
if (damagePerSecond > 0) {
|
||||
if (ignoreInvulnFrames) {
|
||||
entity.hurtResistantTime = 0;
|
||||
}
|
||||
// Apply damage with scripted event support (no knockback for hazard ticks)
|
||||
boolean wasHit = applyAbilityDamage(npc, entity, damagePerTick, 0);
|
||||
// Apply damage with scripted event support (no knockback for hazard)
|
||||
boolean wasHit = applyAbilityDamage(npc, entity, damagePerSecond, 0);
|
||||
if (!wasHit) continue; // Skip debuffs if hit was cancelled
|
||||
}
|
||||
|
||||
@@ -369,7 +369,7 @@ public class AbilityHazard extends Ability {
|
||||
nbt.setFloat("coneAngle", coneAngle);
|
||||
nbt.setString("shape", shape.name());
|
||||
nbt.setString("placement", placement.name());
|
||||
nbt.setFloat("damagePerTick", damagePerTick);
|
||||
nbt.setFloat("damagePerSecond", damagePerSecond);
|
||||
nbt.setInteger("damageInterval", damageInterval);
|
||||
nbt.setBoolean("ignoreInvulnFrames", ignoreInvulnFrames);
|
||||
nbt.setInteger("slownessLevel", slownessLevel);
|
||||
@@ -401,7 +401,14 @@ public class AbilityHazard extends Ability {
|
||||
} catch (Exception e) {
|
||||
this.placement = PlacementMode.AT_TARGET;
|
||||
}
|
||||
this.damagePerTick = nbt.hasKey("damagePerTick") ? nbt.getFloat("damagePerTick") : 1.0f;
|
||||
// Support legacy "damagePerTick" key for backwards compatibility
|
||||
if (nbt.hasKey("damagePerSecond")) {
|
||||
this.damagePerSecond = nbt.getFloat("damagePerSecond");
|
||||
} else if (nbt.hasKey("damagePerTick")) {
|
||||
this.damagePerSecond = nbt.getFloat("damagePerTick");
|
||||
} else {
|
||||
this.damagePerSecond = 1.0f;
|
||||
}
|
||||
this.damageInterval = nbt.hasKey("damageInterval") ? nbt.getInteger("damageInterval") : 20;
|
||||
this.ignoreInvulnFrames = nbt.hasKey("ignoreInvulnFrames") && nbt.getBoolean("ignoreInvulnFrames");
|
||||
this.slownessLevel = nbt.hasKey("slownessLevel") ? nbt.getInteger("slownessLevel") : -1;
|
||||
@@ -459,12 +466,24 @@ public class AbilityHazard extends Ability {
|
||||
this.placement = placement;
|
||||
}
|
||||
|
||||
public float getDamagePerTick() {
|
||||
return damagePerTick;
|
||||
public float getDamagePerSecond() {
|
||||
return damagePerSecond;
|
||||
}
|
||||
|
||||
public void setDamagePerTick(float damagePerTick) {
|
||||
this.damagePerTick = damagePerTick;
|
||||
public void setDamagePerSecond(float damagePerSecond) {
|
||||
this.damagePerSecond = damagePerSecond;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #getDamagePerSecond()} instead */
|
||||
@Deprecated
|
||||
public float getDamagePerTick() {
|
||||
return damagePerSecond;
|
||||
}
|
||||
|
||||
/** @deprecated Use {@link #setDamagePerSecond(float)} instead */
|
||||
@Deprecated
|
||||
public void setDamagePerTick(float damage) {
|
||||
this.damagePerSecond = damage;
|
||||
}
|
||||
|
||||
public int getDamageInterval() {
|
||||
|
||||
@@ -21,7 +21,7 @@ import noppes.npcs.entity.EntityNPCInterface;
|
||||
*/
|
||||
public class AbilityHeavyHit extends Ability {
|
||||
|
||||
private float damage = 15.0f;
|
||||
private float damage = 8.0f;
|
||||
private float knockback = 2.0f;
|
||||
private int slownessLevel = 1;
|
||||
private int weaknessLevel = 0;
|
||||
@@ -100,7 +100,7 @@ public class AbilityHeavyHit extends Ability {
|
||||
|
||||
@Override
|
||||
public void readTypeNBT(NBTTagCompound nbt) {
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 15.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 8.0f;
|
||||
this.knockback = nbt.hasKey("knockback") ? nbt.getFloat("knockback") : 2.0f;
|
||||
this.slownessLevel = nbt.hasKey("slownessLevel") ? nbt.getInteger("slownessLevel") : 1;
|
||||
this.weaknessLevel = nbt.hasKey("weaknessLevel") ? nbt.getInteger("weaknessLevel") : 0;
|
||||
|
||||
@@ -27,7 +27,7 @@ public class AbilityOrb extends Ability {
|
||||
|
||||
private float orbSpeed = 0.5f;
|
||||
private float orbSize = 1.0f;
|
||||
private float damage = 15.0f;
|
||||
private float damage = 7.0f;
|
||||
private float knockback = 1.0f;
|
||||
private float maxDistance = 30.0f;
|
||||
private int maxLifetime = 200;
|
||||
@@ -301,7 +301,7 @@ public class AbilityOrb extends Ability {
|
||||
public void readTypeNBT(NBTTagCompound nbt) {
|
||||
this.orbSpeed = nbt.hasKey("orbSpeed") ? nbt.getFloat("orbSpeed") : 0.5f;
|
||||
this.orbSize = nbt.hasKey("orbSize") ? nbt.getFloat("orbSize") : 1.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 15.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 7.0f;
|
||||
this.knockback = nbt.hasKey("knockback") ? nbt.getFloat("knockback") : 1.0f;
|
||||
this.maxDistance = nbt.hasKey("maxDistance") ? nbt.getFloat("maxDistance") : 30.0f;
|
||||
this.maxLifetime = nbt.hasKey("maxLifetime") ? nbt.getInteger("maxLifetime") : 200;
|
||||
|
||||
@@ -23,7 +23,7 @@ import java.util.List;
|
||||
public class AbilityProjectile extends Ability {
|
||||
|
||||
// Type-specific parameters
|
||||
private float damage = 8.0f;
|
||||
private float damage = 6.0f;
|
||||
private float speed = 1.5f;
|
||||
private float knockback = 0.5f;
|
||||
private String projectileType = "fireball";
|
||||
@@ -179,7 +179,7 @@ public class AbilityProjectile extends Ability {
|
||||
|
||||
@Override
|
||||
public void readTypeNBT(NBTTagCompound nbt) {
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 8.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 6.0f;
|
||||
this.speed = nbt.hasKey("speed") ? nbt.getFloat("speed") : 1.5f;
|
||||
this.knockback = nbt.hasKey("knockback") ? nbt.getFloat("knockback") : 0.5f;
|
||||
this.projectileType = nbt.hasKey("projectileType") ? nbt.getString("projectileType") : "fireball";
|
||||
|
||||
@@ -27,7 +27,7 @@ public class AbilityShockwave extends Ability {
|
||||
|
||||
private float pushRadius = 8.0f;
|
||||
private float pushStrength = 1.5f;
|
||||
private float damage = 10.0f;
|
||||
private float damage = 8.0f;
|
||||
private int stunDuration = 0;
|
||||
private int maxTargets = 10;
|
||||
|
||||
@@ -153,7 +153,7 @@ public class AbilityShockwave extends Ability {
|
||||
public void readTypeNBT(NBTTagCompound nbt) {
|
||||
this.pushRadius = nbt.hasKey("pushRadius") ? nbt.getFloat("pushRadius") : 8.0f;
|
||||
this.pushStrength = nbt.hasKey("pushStrength") ? nbt.getFloat("pushStrength") : 1.5f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 10.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 8.0f;
|
||||
this.stunDuration = nbt.hasKey("stunDuration") ? nbt.getInteger("stunDuration") : 0;
|
||||
this.maxTargets = nbt.hasKey("maxTargets") ? nbt.getInteger("maxTargets") : 10;
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ import java.util.List;
|
||||
public class AbilitySlam extends Ability {
|
||||
|
||||
// Type-specific config
|
||||
private float damage = 20.0f;
|
||||
private float damage = 10.0f;
|
||||
private float radius = 5.0f;
|
||||
private float knockbackStrength = 1.5f;
|
||||
private float leapSpeed = 1.0f;
|
||||
@@ -420,7 +420,7 @@ public class AbilitySlam extends Ability {
|
||||
|
||||
@Override
|
||||
public void readTypeNBT(NBTTagCompound nbt) {
|
||||
damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 20.0f;
|
||||
damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 10.0f;
|
||||
radius = nbt.hasKey("radius") ? nbt.getFloat("radius") : 5.0f;
|
||||
knockbackStrength = nbt.hasKey("knockback") ? nbt.getFloat("knockback") : 1.5f;
|
||||
leapSpeed = nbt.hasKey("leapSpeed") ? nbt.getFloat("leapSpeed") : 1.0f;
|
||||
|
||||
@@ -42,7 +42,7 @@ public class AbilityTrap extends Ability {
|
||||
private int armTime = 20;
|
||||
private int maxTriggers = 1;
|
||||
private int triggerCooldown = 20;
|
||||
private float damage = 10.0f;
|
||||
private float damage = 6.0f;
|
||||
private float damageRadius = 0.0f;
|
||||
private float knockback = 0.5f;
|
||||
private int stunDuration = 0;
|
||||
@@ -352,7 +352,7 @@ public class AbilityTrap extends Ability {
|
||||
this.armTime = nbt.hasKey("armTime") ? nbt.getInteger("armTime") : 20;
|
||||
this.maxTriggers = nbt.hasKey("maxTriggers") ? nbt.getInteger("maxTriggers") : 1;
|
||||
this.triggerCooldown = nbt.hasKey("triggerCooldown") ? nbt.getInteger("triggerCooldown") : 20;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 10.0f;
|
||||
this.damage = nbt.hasKey("damage") ? nbt.getFloat("damage") : 6.0f;
|
||||
this.damageRadius = nbt.hasKey("damageRadius") ? nbt.getFloat("damageRadius") : 0.0f;
|
||||
this.knockback = nbt.hasKey("knockback") ? nbt.getFloat("knockback") : 0.5f;
|
||||
this.stunDuration = nbt.hasKey("stunDuration") ? nbt.getInteger("stunDuration") : 0;
|
||||
|
||||
@@ -47,9 +47,9 @@ public class SubGuiAbilityHazard extends SubGuiAbilityConfig {
|
||||
|
||||
y += 24;
|
||||
|
||||
// Row 3: Damage Per Tick + Damage Interval
|
||||
addLabel(new GuiNpcLabel(104, "ability.dmgPerTick", labelX, y + 5));
|
||||
addTextField(createFloatField(104, fieldX, y, 50, hazard.getDamagePerTick()));
|
||||
// Row 3: Damage Per Second + Damage Interval
|
||||
addLabel(new GuiNpcLabel(104, "ability.dmgPerSec", labelX, y + 5));
|
||||
addTextField(createFloatField(104, fieldX, y, 50, hazard.getDamagePerSecond()));
|
||||
|
||||
addLabel(new GuiNpcLabel(105, "ability.dmgInterval", col2LabelX, y + 5));
|
||||
addTextField(createIntField(105, col2FieldX, y, 50, hazard.getDamageInterval()));
|
||||
@@ -99,7 +99,7 @@ public class SubGuiAbilityHazard extends SubGuiAbilityConfig {
|
||||
hazard.setInnerRadius(parseFloat(field, hazard.getInnerRadius()));
|
||||
break;
|
||||
case 104:
|
||||
hazard.setDamagePerTick(parseFloat(field, hazard.getDamagePerTick()));
|
||||
hazard.setDamagePerSecond(parseFloat(field, hazard.getDamagePerSecond()));
|
||||
break;
|
||||
case 105:
|
||||
hazard.setDamageInterval(field.getInteger());
|
||||
|
||||
Reference in new issue
Block a user