RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
CombatType.java
1package com.osroyale.game.world.entity.combat;
2
3import com.osroyale.game.world.entity.combat.formula.MagicFormula;
4import com.osroyale.game.world.entity.combat.formula.MeleeFormula;
5import com.osroyale.game.world.entity.combat.formula.RangedFormula;
6import com.osroyale.game.world.entity.mob.Mob;
7
31
32public enum CombatType {
33 MELEE(new MeleeFormula(), 0),
34 RANGED(new RangedFormula(), 1),
35 MAGIC(new MagicFormula(), 2);
36
37 private final int hitsplatDelay;
38
39 final FormulaModifier<Mob> formula;
40
41 CombatType(FormulaModifier<Mob> formula, int hitsplatDelay) {
42 this.formula = formula;
43 this.hitsplatDelay = hitsplatDelay;
44 }
45
46 public FormulaModifier<Mob> getFormula() {
47 return formula;
48 }
49
50 public int getHitsplatDelay() {
51 return hitsplatDelay;
52 }
53
54 public boolean match(final CombatType type) {
55 return equals(type);
56 }
57
58 public boolean match(final CombatType... types) {
59 for (final CombatType type : types) {
60 if (match(type)) {
61 return true;
62 }
63 }
64 return false;
65 }
66
67}