/** * Check if this entity contains the given property. * * @param property Name of the property * @return True, if and only if the given property is present in this entity */ public boolean hasProperty(String property) { return dtClass.getFieldPathForName(property) != null; }
/** * Check if this entity contains the given property. * * @param property Name of the property * @return True, if and only if the given property is present in this entity */ public boolean hasProperty(String property) { return dtClass.getFieldPathForName(property) != null; }
private void ensureFieldPaths(Entity e) { if (mana == null) { mana = e.getDtClass().getFieldPathForName("m_flMana"); maxMana = e.getDtClass().getFieldPathForName("m_flMaxMana"); } }
@SuppressWarnings("unchecked") public <T> T getProperty(String property) { FieldPath fp = dtClass.getFieldPathForName(property); if (fp == null) { throw new IllegalArgumentException(String.format("property %s not found on entity of class %s", property, getDtClass().getDtName())); } return getPropertyForFieldPath(fp); }
@SuppressWarnings("unchecked") public <T> T getProperty(String property) { FieldPath fp = dtClass.getFieldPathForName(property); if (fp == null) { throw new IllegalArgumentException(String.format("property %s not found on entity of class %s", property, getDtClass().getDtName())); } return getPropertyForFieldPath(fp); }
private void ensureFieldPathForEntityInitialized(Entity e) { Integer cid = e.getDtClass().getClassId(); if (!lifeStatePaths.containsKey(cid)) { lifeStatePaths.put(cid, e.getDtClass().getFieldPathForName("m_lifeState")); } }
private void ensureFieldPathForEntityInitialized(Entity e) { Integer cid = e.getDtClass().getClassId(); if (!lifeStatePaths.containsKey(cid)) { lifeStatePaths.put(cid, e.getDtClass().getFieldPathForName("m_lifeState")); } }
@Override public V resolveValue(int index, int team, int pos) { String fieldPathString = pattern .replaceAll("%i", Util.arrayIdxToString(index)) .replaceAll("%t", Util.arrayIdxToString(team)) .replaceAll("%p", Util.arrayIdxToString(pos)); String compiledName = entityName.replaceAll("%n", getTeamName(team)); Entity entity = getEntity(compiledName); FieldPath fieldPath = entity.getDtClass().getFieldPathForName(fieldPathString); return entity.getPropertyForFieldPath(fieldPath); } }
public <T> T getEntityProperty(Entity e, String property, Integer idx) { try { if (e == null) { return null; } if (idx != null) { property = property.replace("%i", Util.arrayIdxToString(idx)); } FieldPath fp = e.getDtClass().getFieldPathForName(property); return e.getPropertyForFieldPath(fp); } catch (Exception ex) { return null; } }
@OnEntityCreated public void onCreated(Entity e) { FieldPath fp = e.getDtClass().getFieldPathForName("CBodyComponent.m_hModel"); if (fp == null) { return; } Long resourceHandle = e.getPropertyForFieldPath(fp); if (resourceHandle == null || resourceHandle == 0L) { return; } Resources.Entry entry = resources.getEntryForResourceHandle(resourceHandle); System.out.format("model for entity at %d (%d): %s\n", e.getIndex(), resourceHandle, entry); }
private void showScoreboard() { boolean isSource1 = runner.getEngineType().getId() == EngineId.SOURCE1; boolean isEarlyBetaFormat = !isSource1 && getEntity("PlayerResource").getDtClass().getFieldPathForName("m_vecPlayerData") == null; if (isSource1 || isEarlyBetaFormat) { showTableWithColumns( new DefaultResolver<Integer>("PlayerResource", "m_iPlayerTeams.%i"), new ColumnDef("Name", new DefaultResolver<String>("PlayerResource", "m_iszPlayerNames.%i")), new ColumnDef("Level", new DefaultResolver<Integer>("PlayerResource", "m_iLevel.%i")), new ColumnDef("K", new DefaultResolver<Integer>("PlayerResource", "m_iKills.%i")), new ColumnDef("D", new DefaultResolver<Integer>("PlayerResource", "m_iDeaths.%i")), new ColumnDef("A", new DefaultResolver<Integer>("PlayerResource", "m_iAssists.%i")), new ColumnDef("Gold", new DefaultResolver<Integer>("PlayerResource", (isSource1 ? "EndScoreAndSpectatorStats." : "") + "m_iTotalEarnedGold.%i")), new ColumnDef("LH", new DefaultResolver<Integer>("PlayerResource", "m_iLastHitCount.%i")), new ColumnDef("DN", new DefaultResolver<Integer>("PlayerResource", "m_iDenyCount.%i")) ); } else { showTableWithColumns( new DefaultResolver<Integer>("PlayerResource", "m_vecPlayerData.%i.m_iPlayerTeam"), new ColumnDef("Name", new DefaultResolver<String>("PlayerResource", "m_vecPlayerData.%i.m_iszPlayerName")), new ColumnDef("Level", new DefaultResolver<Integer>("PlayerResource", "m_vecPlayerTeamData.%i.m_iLevel")), new ColumnDef("K", new DefaultResolver<Integer>("PlayerResource", "m_vecPlayerTeamData.%i.m_iKills")), new ColumnDef("D", new DefaultResolver<Integer>("PlayerResource", "m_vecPlayerTeamData.%i.m_iDeaths")), new ColumnDef("A", new DefaultResolver<Integer>("PlayerResource", "m_vecPlayerTeamData.%i.m_iAssists")), new ColumnDef("Gold", new DefaultResolver<Integer>("Data%n", "m_vecDataTeam.%p.m_iTotalEarnedGold")), new ColumnDef("LH", new DefaultResolver<Integer>("Data%n", "m_vecDataTeam.%p.m_iLastHitCount")), new ColumnDef("DN", new DefaultResolver<Integer>("Data%n", "m_vecDataTeam.%p.m_iDenyCount")) ); } }