Browse Source

Token is primary key

feature-config-usage
MagicBot 6 days ago
parent
commit
12b350580a
  1. 2
      src/engine/objects/AbstractWorldObject.java
  2. 9
      src/engine/wpakpowers/WpakPowerManager.java

2
src/engine/objects/AbstractWorldObject.java

@ -63,7 +63,7 @@ public abstract class AbstractWorldObject extends AbstractGameObject {
// Effects collection for wpak power manager // Effects collection for wpak power manager
public ConcurrentHashMap<engine.wpak.data.Effect, ConcurrentHashMap<mbEnums.ModType, Integer>> _effects = new ConcurrentHashMap<>(); public ConcurrentHashMap<Integer, ConcurrentHashMap<mbEnums.ModType, Integer>> _effects = new ConcurrentHashMap<>();
/** /**
* No Id Constructor * No Id Constructor

9
src/engine/wpakpowers/WpakPowerManager.java

@ -328,20 +328,21 @@ public class WpakPowerManager {
for(ActionEntry powerAction: power.actionEntries){ for(ActionEntry powerAction: power.actionEntries){
Effect effect = effect_data.get(Hasher.SBStringHash(powerAction.effect_id)); int powerToken = Hasher.SBStringHash(powerAction.effect_id);
Effect effect = effect_data.get(powerToken);
if (effect == null) if (effect == null)
continue; continue;
// New entry for this power effect? // New entry for this power effect?
if (target._effects.containsKey(effect) == false) if (target._effects.containsKey(powerToken) == false)
target._effects.put(effect, new ConcurrentHashMap<>()); target._effects.put(powerToken, new ConcurrentHashMap<>());
// Write modifier values // Write modifier values
for (ModifierEntry modifierEntry : effect.mods) for (ModifierEntry modifierEntry : effect.mods)
target._effects.get(effect).put(modifierEntry.type, rank); target._effects.get(powerToken).put(modifierEntry.type, rank);
} }
} }

Loading…
Cancel
Save