@Override public void collectFieldPaths(FieldPath fp, List<FieldPath> entries, Object[] state) { Object[] subState = (Object[]) state[fp.path[fp.last]]; fp.last++; for (int i = 0; i < subState.length; i++) { if (subState[i] != null) { fp.path[fp.last] = i; entries.add(new FieldPath(fp)); } } fp.last--; }
public DumpEntry(FieldPath fieldPath, String name, Object value) { this.fieldPath = fieldPath.toString(); this.name = name; this.value = value.toString(); } }
@OnEntityUpdated public void onUpdated(Context ctx, Entity e, FieldPath[] fieldPaths, int num) { FieldPath p; if ((p = getFieldPathForEntity(e)) != null) { for (int i = 0; i < num; i++) { if (fieldPaths[i].equals(p)) { toProcess.add(new ProcessEntityCommand(e, p)); break; } } } }
@OnEntityUpdated public void onUpdated(Context ctx, Entity e, FieldPath[] fieldPaths, int num) { FieldPath p = getFieldPathForEntity(e); if (p != null) { for (int i = 0; i < num; i++) { if (fieldPaths[i].equals(p)) { processLifeStateChange(e, p); break; } } } }
@Override public void collectFieldPaths(FieldPath fp, List<FieldPath> entries, Object[] state) { entries.add(new FieldPath(fp)); } }
@OnEntityUpdated public void onUpdated(Entity e, FieldPath[] updatedPaths, int updateCount) { if (!isHero(e)) { return; } ensureFieldPaths(e); boolean update = false; for (int i = 0; i < updateCount; i++) { if (updatedPaths[i].equals(mana) || updatedPaths[i].equals(maxMana)) { update = true; break; } } if (update) { System.out.format("%s (%s/%s)\n", e.getDtClass().getDtName(), e.getPropertyForFieldPath(mana), e.getPropertyForFieldPath(maxMana)); } }
public DumpEntry(FieldPath fieldPath, String name, Object value) { this.fieldPath = fieldPath.toString(); this.name = name; this.value = value.toString(); } }
@Override public void collectFieldPaths(FieldPath fp, List<FieldPath> entries, Object[] state) { entries.add(new FieldPath(fp)); } }
@Override public void collectFieldPaths(FieldPath fp, List<FieldPath> entries, Object[] state) { Object[] subState = (Object[]) state[fp.path[fp.last]]; fp.last++; for (int i = 0; i < subState.length; i++) { if (subState[i] != null) { fp.path[fp.last] = i; entries.add(new FieldPath(fp)); } } fp.last--; }
@Override public void collectFieldPaths(FieldPath fp, List<FieldPath> entries, Object[] state) { Object[] subState = (Object[]) state[fp.path[fp.last]]; fp.last++; for (int i = 0; i < subState.length; i++) { if (subState[i] != null) { fp.path[fp.last] = i; entries.add(new FieldPath(fp)); } } fp.last--; } }
@Override public void collectFieldPaths(FieldPath fp, List<FieldPath> entries, Object[] state) { Object[] subState = (Object[]) state[fp.path[fp.last]]; fp.last++; for (int i = 0; i < subState.length; i++) { if (subState[i] != null) { fp.path[fp.last] = i; entries.add(new FieldPath(fp)); } } fp.last--; } }
@Override public List<FieldPath> collectFieldPaths(Object[] state) { ArrayList<FieldPath> result = new ArrayList<>(state.length); for (int i = 0; i < state.length; i++) { result.add(new FieldPath(i)); } return result; }
@Override public FieldPath getFieldPathForName(String name){ Integer idx = this.propsByName.get(name); return idx != null ? new FieldPath(idx.intValue()) : null; }
@Override public List<FieldPath> collectFieldPaths(Object[] state) { ArrayList<FieldPath> result = new ArrayList<>(state.length); for (int i = 0; i < state.length; i++) { result.add(new FieldPath(i)); } return result; }
@Override public FieldPath getFieldPathForName(String name){ Integer idx = this.propsByName.get(name); return idx != null ? new FieldPath(idx.intValue()) : null; }
@Override public FieldPath getFieldPathForName(String property) { FieldPath fp = new FieldPath(); return serializer.getFieldPathForName(fp, property); }
@Override public List<FieldPath> collectFieldPaths(Object[] state) { List<FieldPath> result = new ArrayList<>(state.length); serializer.collectFieldPaths(new FieldPath(), result, state); return result; }
@Override public FieldPath getFieldPathForName(String property) { FieldPath fp = new FieldPath(); return serializer.getFieldPathForName(fp, property); }
@Override public List<FieldPath> collectFieldPaths(Object[] state) { List<FieldPath> result = new ArrayList<>(state.length); serializer.collectFieldPaths(new FieldPath(), result, state); return result; }
@Override protected int readIndices(BitStream bs, S1DTClass dtClass) { int n = 0; int cursor = -1; while (true) { if (bs.readBitFlag()) { cursor += 1; } else { int offset = bs.readVarUInt(); if (offset == MAX_PROPERTIES) { break; } else { cursor += offset + 1; } } fieldPaths[n++] = new FieldPath(dtClass.getIndexMapping()[cursor]); } return n; }