Search in sources :

Example 1 with NetworkMode

use of org.terasology.network.NetworkMode in project Terasology by MovingBlocks.

the class AutoCreateSystem method postBegin.

@Override
public void postBegin() {
    Set<Prefab> existingGlobals = Sets.newHashSet();
    NetworkMode mode = networkSystem.getMode();
    for (EntityRef entity : entityManager.getEntitiesWith(AutoCreateComponent.class)) {
        existingGlobals.add(entity.getParentPrefab());
    }
    for (Prefab prefab : prefabManager.listPrefabs(AutoCreateComponent.class)) {
        AutoCreateComponent comp = prefab.getComponent(AutoCreateComponent.class);
        if (!existingGlobals.contains(prefab) && (comp.createClientSide || mode.isAuthority())) {
            entityManager.create(prefab);
        }
    }
}
Also used : NetworkMode(org.terasology.network.NetworkMode) Prefab(org.terasology.entitySystem.prefab.Prefab) EntityRef(org.terasology.entitySystem.entity.EntityRef)

Aggregations

EntityRef (org.terasology.entitySystem.entity.EntityRef)1 Prefab (org.terasology.entitySystem.prefab.Prefab)1 NetworkMode (org.terasology.network.NetworkMode)1