Revamped inner ability:
Ability shown is HP 5%, Str 6%, Dex 6%. Only considers base stats.
The stats now show on a ring that is permanently in your inventory. You get the empty ring without a jewel at Level 10. The jewel's color corresponds to the ability level with blue = rare, pink = epic, unique = gold and so on.
Ring colour and stats change automatically when using the inner ability cubes (works like a consumable, not like a scroll). The message for scrolling success will probably be switched to a more appropriate effect.
The new stats are recalculated when relevant stats change and also immediatly change on the ring. Autobans and checks have been added around this concept to (hopefully) prevent all possible exploits.
Code for stats reset:
I had to get more cubes for this SS because the chance is pretty low...
Ability shown is: HP 8%, MP 9%, HP 7%
Ability shown is HP 5%, Str 6%, Dex 6%. Only considers base stats.
The stats now show on a ring that is permanently in your inventory. You get the empty ring without a jewel at Level 10. The jewel's color corresponds to the ability level with blue = rare, pink = epic, unique = gold and so on.
Ring colour and stats change automatically when using the inner ability cubes (works like a consumable, not like a scroll). The message for scrolling success will probably be switched to a more appropriate effect.
The new stats are recalculated when relevant stats change and also immediatly change on the ring. Autobans and checks have been added around this concept to (hopefully) prevent all possible exploits.
Code for stats reset:
Code:
private void resetAbilityRing() {
int ringId = getInventory(MapleInventoryType.EQUIPPED).getItem((byte) -13).getItemId();
int rankRingId = abilities.getRingId();
final List<ModifyInventory> mods = new ArrayList<>();
Equip abilityRing;
if (ringId != rankRingId) {
abilityRing = new Equip(rankRingId, (byte) -13);
Item oldRing = getInventory(MapleInventoryType.EQUIPPED).getItem((byte) -13);
if (oldRing != null) {
mods.add(new ModifyInventory(3, oldRing));
getInventory(MapleInventoryType.EQUIPPED).removeItem((byte) -13);
}
getInventory(MapleInventoryType.EQUIPPED).addFromDB(abilityRing);
} else {
abilityRing = (Equip) getInventory(MapleInventoryType.EQUIPPED).getItem((byte) -13);
abilityRing.clearStats();
mods.add(new ModifyInventory(3, abilityRing));
}
EquipStat newtype;
for (Map.Entry<AbilityStat, Short> entry : abilities.getTempStats().entrySet()) {
switch (entry.getKey()) {
case BDM:
newtype = EquipStat.HANDS;
break;
default:
newtype = EquipStat.valueOf(entry.getKey().toString());
break;
}
abilityRing.setStat(newtype, entry.getValue());
}
mods.add(new ModifyInventory(0, abilityRing));
client.announce(MaplePacketCreator.modifyInventory(true, mods));
equipChanged();
}
I had to get more cubes for this SS because the chance is pretty low...
Ability shown is: HP 8%, MP 9%, HP 7%
Last edited: