use of org.joml.Vector3i in project Terasology by MovingBlocks.
the class EntityAwareWorldProviderTest method testEntityBecomesTemporaryWhenChangedFromAKeepActiveBlock.
@Test
public void testEntityBecomesTemporaryWhenChangedFromAKeepActiveBlock() {
worldProvider.setBlock(new Vector3i(), keepActiveBlock);
EntityRef blockEntity = worldProvider.getBlockEntityAt(new Vector3i());
worldProvider.setBlock(new Vector3i(), airBlock);
worldProvider.update(1.0f);
assertFalse(blockEntity.isActive());
}
use of org.joml.Vector3i in project Terasology by MovingBlocks.
the class EntityAwareWorldProviderTest method testEntityNotRemovedIfForceBlockActiveComponentAdded.
@Test
public void testEntityNotRemovedIfForceBlockActiveComponentAdded() {
EntityRef blockEntity = worldProvider.getBlockEntityAt(new Vector3i());
blockEntity.addComponent(new ForceBlockActiveComponent());
worldProvider.update(1.0f);
assertTrue(blockEntity.exists());
assertTrue(blockEntity.isActive());
}
use of org.joml.Vector3i in project Terasology by MovingBlocks.
the class EntityAwareWorldProviderTest method testChangedComponentsRevertedBeforeCleanUp.
@Test
public void testChangedComponentsRevertedBeforeCleanUp() {
worldStub.setBlock(new Vector3i(), blockWithString);
EntityRef entity = worldProvider.getBlockEntityAt(new Vector3i());
StringComponent comp = entity.getComponent(StringComponent.class);
comp.value = "Moo";
entity.saveComponent(comp);
LifecycleEventChecker checker = new LifecycleEventChecker(entityManager.getEventSystem(), StringComponent.class);
worldProvider.update(1.0f);
assertEquals(Lists.newArrayList(new EventInfo(OnChangedComponent.newInstance(), entity)), checker.receivedEvents);
}
use of org.joml.Vector3i in project Terasology by MovingBlocks.
the class EntityAwareWorldProviderTest method testBlockEntityPrefabCorrectlyAddedOnChangeToBlockWithPrefab.
@Disabled("Failing due to #2625. TODO: fix to match new behaviour")
@Test
public void testBlockEntityPrefabCorrectlyAddedOnChangeToBlockWithPrefab() {
worldProvider.setBlock(new Vector3i(), plainBlock);
EntityRef entity = worldProvider.getBlockEntityAt(new Vector3i());
worldProvider.setBlock(new Vector3i(), blockWithString);
assertEquals(blockWithString.getPrefab().get().getUrn().toString(), entity.getParentPrefab().getUrn().toString());
}
use of org.joml.Vector3i in project Terasology by MovingBlocks.
the class EntityAwareWorldProviderTest method testEntityCeasesToBeTemporaryIfBlockChangedToKeepActive.
@Disabled("Failing due to #2625. TODO: fix to match new behaviour")
@Test
public void testEntityCeasesToBeTemporaryIfBlockChangedToKeepActive() {
worldProvider.setBlock(new Vector3i(), keepActiveBlock);
worldProvider.update(1.0f);
LifecycleEventChecker checker = new LifecycleEventChecker(entityManager.getEventSystem(), StringComponent.class);
worldProvider.getBlockEntityAt(new Vector3i());
assertTrue(checker.receivedEvents.isEmpty());
}
Aggregations