mirror of
https://github.com/OMGeeky/andors-trail.git
synced 2026-02-23 15:38:29 +01:00
Items' onHitReceived effects now applied.
This commit is contained in:
@@ -175,24 +175,37 @@ public final class ItemController {
|
||||
}
|
||||
|
||||
public static void recalculateHitEffectsFromWornItems(Player player) {
|
||||
ArrayList<ItemTraits_OnUse> effects = null;
|
||||
ArrayList<ItemTraits_OnUse> effects_onHit = null;
|
||||
ArrayList<ItemTraits_OnHitReceived> effects_onHitReceived = null;
|
||||
for (Inventory.WearSlot slot : Inventory.WearSlot.values()) {
|
||||
ItemType type = player.inventory.getItemTypeInWearSlot(slot);
|
||||
if (type == null) continue;
|
||||
ItemTraits_OnUse e = type.effects_hit;
|
||||
if (e == null) continue;
|
||||
ItemTraits_OnUse eh = type.effects_hit;
|
||||
ItemTraits_OnHitReceived ehr = type.effects_hitReceived;
|
||||
if (eh == null && ehr == null) continue;
|
||||
|
||||
if (effects == null) effects = new ArrayList<ItemTraits_OnUse>();
|
||||
effects.add(e);
|
||||
if (effects_onHit == null) effects_onHit = new ArrayList<ItemTraits_OnUse>();
|
||||
if (eh != null) effects_onHit.add(eh);
|
||||
|
||||
if (effects_onHitReceived == null) effects_onHitReceived = new ArrayList<ItemTraits_OnHitReceived>();
|
||||
if (ehr != null) effects_onHitReceived.add(ehr);
|
||||
}
|
||||
|
||||
if (effects != null) {
|
||||
ItemTraits_OnUse[] effects_ = new ItemTraits_OnUse[effects.size()];
|
||||
effects_ = effects.toArray(effects_);
|
||||
if (effects_onHit != null) {
|
||||
ItemTraits_OnUse[] effects_ = new ItemTraits_OnUse[effects_onHit.size()];
|
||||
effects_ = effects_onHit.toArray(effects_);
|
||||
player.onHitEffects = effects_;
|
||||
} else {
|
||||
player.onHitEffects = null;
|
||||
}
|
||||
|
||||
if (effects_onHitReceived != null) {
|
||||
ItemTraits_OnHitReceived[] effects_ = new ItemTraits_OnHitReceived[effects_onHitReceived.size()];
|
||||
effects_ = effects_onHitReceived.toArray(effects_);
|
||||
player.onHitReceivedEffects = effects_;
|
||||
} else {
|
||||
player.onHitReceivedEffects = null;
|
||||
}
|
||||
}
|
||||
|
||||
public void consumeNonItemLoot(Loot loot) {
|
||||
|
||||
Reference in New Issue
Block a user