public UuidEntityManager() { this.uuidToEntity = new HashMap<UUID, Entity>(); this.entityToUuid = new Bag<UUID>(); }
/** * Creates a new EntityManager Instance. */ protected EntityManager(int initialContainerSize) { entities = new Bag<Entity>(initialContainerSize); registerEntityStore(recycled); }
/** * Constructs an archetype builder containing the composition of the specified parent. * * @param parent archetype composition to copy. */ public ArchetypeBuilder(Archetype parent) { classes = new Bag<Class<? extends Component>>(); if (parent == null) return; parent.transmuter.getAdditions(classes); }
/** * Constructs an archetype builder containing the composition of the specified parent. * * @param parent archetype composition to copy. */ public ArchetypeBuilder(Archetype parent) { classes = new Bag<Class<? extends Component>>(); if (parent == null) return; parent.transmuter.getAdditions(classes); }
/** * Creates a new EntityManager Instance. */ protected EntityManager(int initialContainerSize) { entities = new Bag<Entity>(initialContainerSize); registerEntityStore(recycled); }
@Override public Bag read(Json json, JsonValue jsonData, Class type) { Bag<Entity> result = new Bag<Entity>(); for (JsonValue child = jsonData.child; child != null; child = child.next) result.add(json.readValue(Entity.class, child)); return result; } }
@Override public Bag read(Json json, JsonValue jsonData, Class type) { Bag<Entity> result = new Bag<Entity>(); for (JsonValue child = jsonData.child; child != null; child = child.next) result.add(json.readValue(Entity.class, child)); return result; } }
EntityTransmuter(World world, BitVector additions, BitVector removals) { em = world.getEntityManager(); entityToIdentity = world.getComponentManager().entityToIdentity; batchProcessor = world.batchProcessor; operations = new Bag<TransmuteOperation>(TransmuteOperation.class); factory = new Factory(world, additions, removals); }
@Override public ArchetypeMapper.TransmuterEntry read(Json json, JsonValue jsonData, Class type) { Bag components = new Bag(); for (JsonValue child = jsonData.child; child != null; child = child.next) components.add(identifiers.getType(json.readValue(String.class, child))); return new ArchetypeMapper.TransmuterEntry(components); } }
private Bag<ComponentMapper> getAdditions(BitVector origin) { ComponentTypeFactory tf = cm.typeFactory; Bag<ComponentMapper> types = new Bag(ComponentMapper.class); for (int i = additions.nextSetBit(0); i >= 0; i = additions.nextSetBit(i + 1)) { if (!origin.get(i)) types.add(cm.getMapper(tf.getTypeFor(i).getType())); } return types; }
private Bag<ComponentMapper> getRemovals(BitVector origin) { ComponentTypeFactory tf = cm.typeFactory; Bag<ComponentMapper> types = new Bag(ComponentMapper.class); for (int i = removals.nextSetBit(0); i >= 0; i = removals.nextSetBit(i + 1)) { if (origin.get(i)) types.add(cm.getMapper(tf.getTypeFor(i).getType())); } return types; } }
private Bag<ComponentMapper> getAdditions(BitVector origin) { ComponentTypeFactory tf = cm.typeFactory; Bag<ComponentMapper> types = new Bag(ComponentMapper.class); for (int i = additions.nextSetBit(0); i >= 0; i = additions.nextSetBit(i + 1)) { if (!origin.get(i)) types.add(cm.getMapper(tf.getTypeFor(i).getType())); } return types; }
int allocateIdentity(BitVector componentBits, ComponentManager cm) { Bag<ComponentMapper> mappers = new Bag<ComponentMapper>(ComponentMapper.class, componentBits.cardinality()); ComponentTypeFactory tf = cm.getTypeFactory(); for (int i = componentBits.nextSetBit(0); i >= 0; i = componentBits.nextSetBit(i + 1)) { mappers.add(cm.getMapper(tf.getTypeFor(i).getType())); } compositionMappers.add(mappers); compositionBits.add(new BitVector(componentBits)); return compositionBits.size() - 1; } }
int allocateIdentity(BitVector componentBits, ComponentManager cm) { Bag<ComponentMapper> mappers = new Bag<ComponentMapper>(ComponentMapper.class, componentBits.cardinality()); ComponentTypeFactory tf = cm.getTypeFactory(); for (int i = componentBits.nextSetBit(0); i >= 0; i = componentBits.nextSetBit(i + 1)) { mappers.add(cm.getMapper(tf.getTypeFor(i).getType())); } compositionMappers.add(mappers); compositionBits.add(new BitVector(componentBits)); return compositionBits.size() - 1; } }