mirror of
https://gitlab.com/2009scape/2009scape.git
synced 2026-08-01 14:39:13 -06:00
Implemented berserker necklace effect
This commit is contained in:
parent
be744e73b3
commit
efc324883b
2 changed files with 23 additions and 5 deletions
|
|
@ -253,10 +253,14 @@ open class MeleeSwingHandler (vararg flags: SwingHandlerFlag)
|
|||
|
||||
return 1.0 + (e!!.skills.maximumLifepoints - e.skills.lifepoints) * 0.01
|
||||
}
|
||||
var multiplier = 1.0
|
||||
if(e is Player && e.isWearingVoid(CombatStyle.MELEE) && (skillId == Skills.ATTACK || skillId == Skills.STRENGTH)) {
|
||||
return 1.1
|
||||
multiplier += 0.1
|
||||
}
|
||||
return 1.0
|
||||
if (e is Player && e.properties.armourSet === ArmourSet.BERSERKER_NECKLACE_SETS && skillId == Skills.STRENGTH) {
|
||||
multiplier += 0.2
|
||||
}
|
||||
return multiplier
|
||||
}
|
||||
|
||||
override fun getArmourSet(e: Entity?): ArmourSet? {
|
||||
|
|
@ -269,6 +273,9 @@ open class MeleeSwingHandler (vararg flags: SwingHandlerFlag)
|
|||
if (ArmourSet.VERAC.isUsing(e)) {
|
||||
return ArmourSet.VERAC
|
||||
}
|
||||
if (ArmourSet.BERSERKER_NECKLACE_SETS.isUsing(e)) {
|
||||
return ArmourSet.BERSERKER_NECKLACE_SETS
|
||||
}
|
||||
return if (ArmourSet.TORAG.isUsing(e)) {
|
||||
ArmourSet.TORAG
|
||||
} else super.getArmourSet(e)
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import core.game.node.entity.player.Player;
|
|||
import core.game.node.item.Item;
|
||||
import core.game.world.update.flag.context.Graphics;
|
||||
import core.tools.RandomFunction;
|
||||
import org.rs09.consts.Items;
|
||||
|
||||
/**
|
||||
* Represents the types of armour sets.
|
||||
|
|
@ -129,6 +130,15 @@ public enum ArmourSet {
|
|||
}
|
||||
return super.isUsing(e);
|
||||
}
|
||||
},
|
||||
/**
|
||||
* Berserker Necklace sets
|
||||
*/
|
||||
BERSERKER_NECKLACE_SETS(null, new int[][] { { Items.BERSERKER_NECKLACE_11128 }, { Items.TOKTZ_XIL_AK_6523, Items.TOKTZ_XIL_EK_6525, Items.TZHAAR_KET_EM_6527, Items.TZHAAR_KET_OM_6528 } }) {
|
||||
@Override
|
||||
public boolean isUsing(Entity e) {
|
||||
return super.isUsing(e);
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
@ -148,8 +158,9 @@ public enum ArmourSet {
|
|||
*/
|
||||
private ArmourSet(Graphics endGraphic, int[][] set) {
|
||||
this.endGraphic = endGraphic;
|
||||
this.sets = new Item[4][5];
|
||||
this.sets = new Item[set.length][];
|
||||
for (int i = 0; i < set.length; i++) {
|
||||
sets[i] = new Item[set[i].length];
|
||||
for (int k = 0; k < sets[i].length; k++) {
|
||||
sets[i][k] = new Item(set[i][k]);
|
||||
}
|
||||
|
|
@ -197,7 +208,7 @@ public enum ArmourSet {
|
|||
}
|
||||
}
|
||||
}
|
||||
return hits == 4;
|
||||
return hits == sets.length;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue