52 val drops: Array<DropDef>
54 override fun equals(other: Any?): Boolean {
55 if (this === other) return true
56 if (javaClass != other?.javaClass) return false
60 if (id != other.id) return false
61 if (name != other.name) return false
62 if (lastUpdated != other.lastUpdated) return false
63 if (incomplete != other.incomplete) return false
64 if (members != other.members) return false
65 if (releaseDate != other.releaseDate) return false
66 if (combatLevel != other.combatLevel) return false
67 if (size != other.size) return false
68 if (hitpoints != other.hitpoints) return false
69 if (maxHit != other.maxHit) return false
70 if (!attackType.contentEquals(other.attackType)) return false
71 if (attackSpeed != other.attackSpeed) return false
72 if (aggressive != other.aggressive) return false
73 if (poisonous != other.poisonous) return false
74 if (venomous != other.venomous) return false
75 if (immunePoison != other.immunePoison) return false
76 if (immuneVenom != other.immuneVenom) return false
77 if (!attributes.contentEquals(other.attributes)) return false
78 if (!category.contentEquals(other.category)) return false
79 if (slayerMonster != other.slayerMonster) return false
80 if (slayerLevel != other.slayerLevel) return false
81 if (slayerXp != other.slayerXp) return false
82 if (!slayerMasters.contentEquals(other.slayerMasters)) return false
83 if (duplicate != other.duplicate) return false
84 if (examine != other.examine) return false
85 if (wikiName != other.wikiName) return false
86 if (wikiURL != other.wikiURL) return false
87 if (attackLevel != other.attackLevel) return false
88 if (strengthLevel != other.strengthLevel) return false
89 if (defenceLevel != other.defenceLevel) return false
90 if (magicLevel != other.magicLevel) return false
91 if (rangedLevel != other.rangedLevel) return false
92 if (attackBonus != other.attackBonus) return false
93 if (strengthBonus != other.strengthBonus) return false
94 if (attackMagic != other.attackMagic) return false
95 if (magicBonus != other.magicBonus) return false
96 if (attackRanged != other.attackRanged) return false
97 if (rangedBonus != other.rangedBonus) return false
98 if (defenceStab != other.defenceStab) return false
99 if (defenceSlash != other.defenceSlash) return false
100 if (defenceCrush != other.defenceCrush) return false
101 if (defenceMagic != other.defenceMagic) return false
102 if (defenceRanged != other.defenceRanged) return false
103 return drops.contentEquals(other.drops)
106 override fun hashCode(): Int {
108 result = 31 * result + name.hashCode()
109 result = 31 * result + lastUpdated.hashCode()
110 result = 31 * result + incomplete.hashCode()
111 result = 31 * result + members.hashCode()
112 result = 31 * result + releaseDate.hashCode()
113 result = 31 * result + combatLevel
114 result = 31 * result + size
115 result = 31 * result + hitpoints
116 result = 31 * result + maxHit
117 result = 31 * result + attackType.contentHashCode()
118 result = 31 * result + attackSpeed
119 result = 31 * result + aggressive.hashCode()
120 result = 31 * result + poisonous.hashCode()
121 result = 31 * result + venomous.hashCode()
122 result = 31 * result + immunePoison.hashCode()
123 result = 31 * result + immuneVenom.hashCode()
124 result = 31 * result + attributes.contentHashCode()
125 result = 31 * result + category.contentHashCode()
126 result = 31 * result + slayerMonster.hashCode()
127 result = 31 * result + slayerLevel
128 result = 31 * result + slayerXp.hashCode()
129 result = 31 * result + slayerMasters.contentHashCode()
130 result = 31 * result + duplicate.hashCode()
131 result = 31 * result + examine.hashCode()
132 result = 31 * result + wikiName.hashCode()
133 result = 31 * result + wikiURL.hashCode()
134 result = 31 * result + attackLevel
135 result = 31 * result + strengthLevel
136 result = 31 * result + defenceLevel
137 result = 31 * result + magicLevel
138 result = 31 * result + rangedLevel
139 result = 31 * result + attackBonus
140 result = 31 * result + strengthBonus
141 result = 31 * result + attackMagic
142 result = 31 * result + magicBonus
143 result = 31 * result + attackRanged
144 result = 31 * result + rangedBonus
145 result = 31 * result + defenceStab
146 result = 31 * result + defenceSlash
147 result = 31 * result + defenceCrush
148 result = 31 * result + defenceMagic
149 result = 31 * result + defenceRanged
150 result = 31 * result + drops.contentHashCode()