当前位置: 首页>>代码示例>>Java>>正文


Java Engine.update方法代码示例

本文整理汇总了Java中com.badlogic.ashley.core.Engine.update方法的典型用法代码示例。如果您正苦于以下问题:Java Engine.update方法的具体用法?Java Engine.update怎么用?Java Engine.update使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.badlogic.ashley.core.Engine的用法示例。


在下文中一共展示了Engine.update方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: intervalSystem

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
public void intervalSystem () {
	Engine engine = new Engine();
	IntervalIteratingSystemSpy intervalSystemSpy = new IntervalIteratingSystemSpy();
	ImmutableArray<Entity> entities = engine.getEntitiesFor(Family.all(IntervalComponentSpy.class).get());
	ComponentMapper<IntervalComponentSpy> im = ComponentMapper.getFor(IntervalComponentSpy.class);

	engine.addSystem(intervalSystemSpy);

	for (int i = 0; i < 10; ++i) {
		Entity entity = new Entity();
		entity.add(new IntervalComponentSpy());
		engine.addEntity(entity);
	}

	for (int i = 1; i <= 10; ++i) {
		engine.update(deltaTime);

		for (int j = 0; j < entities.size(); ++j) {
			assertEquals(i / 2, im.get(entities.get(j)).numUpdates);
		}
	}
}
 
开发者ID:DevelopersGuild,项目名称:Planetbase,代码行数:24,代码来源:IntervalIteratingTest.java

示例2: intervalSystem

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
public void intervalSystem() {
    Engine engine = new Engine();
    IntervalIteratingSystemSpy intervalSystemSpy = new IntervalIteratingSystemSpy();
    ImmutableArray<Entity> entities = engine.getEntitiesFor(Family.getFor(IntervalComponentSpy.class));
    ComponentMapper<IntervalComponentSpy> im = ComponentMapper.getFor(IntervalComponentSpy.class);

    engine.addSystem(intervalSystemSpy);

    for (int i = 0; i < 10; ++i) {
        Entity entity = new Entity();
        entity.add(new IntervalComponentSpy());
        engine.addEntity(entity);
    }

    for (int i = 1; i <= 10; ++i) {
        engine.update(deltaTime);

        for (int j = 0; j < entities.size(); ++j) {
            assertEquals(i / 2, im.get(entities.get(j)).numUpdates);
        }
    }
}
 
开发者ID:grum,项目名称:Ashley,代码行数:24,代码来源:IntervalIteratingTest.java

示例3: shouldIterateEntitiesWithCorrectFamily

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
@SuppressWarnings("unchecked")
public void shouldIterateEntitiesWithCorrectFamily () {
	final Engine engine = new Engine();

	final Family family = Family.all(ComponentA.class, ComponentB.class).get();
	final IteratingSystemMock system = new IteratingSystemMock(family);
	final Entity e = new Entity();

	engine.addSystem(system);
	engine.addEntity(e);

	// When entity has ComponentA
	e.add(new ComponentA());
	engine.update(deltaTime);

	assertEquals(0, system.numUpdates);

	// When entity has ComponentA and ComponentB
	system.numUpdates = 0;
	e.add(new ComponentB());
	engine.update(deltaTime);

	assertEquals(1, system.numUpdates);

	// When entity has ComponentA, ComponentB and ComponentC
	system.numUpdates = 0;
	e.add(new ComponentC());
	engine.update(deltaTime);

	assertEquals(1, system.numUpdates);

	// When entity has ComponentB and ComponentC
	system.numUpdates = 0;
	e.remove(ComponentA.class);
	e.add(new ComponentC());
	engine.update(deltaTime);

	assertEquals(0, system.numUpdates);
}
 
开发者ID:DevelopersGuild,项目名称:Planetbase,代码行数:41,代码来源:IteratingSystemTest.java

示例4: shouldIterateEntitiesWithCorrectFamily

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
@SuppressWarnings("unchecked")
public void shouldIterateEntitiesWithCorrectFamily () {
	final Engine engine = new Engine();

	final Family family = Family.all(OrderComponent.class, ComponentB.class).get();
	final SortedIteratingSystemMock system = new SortedIteratingSystemMock(family);
	final Entity e = new Entity();

	engine.addSystem(system);
	engine.addEntity(e);

	// When entity has OrderComponent
	e.add(new OrderComponent("A", 0));
	engine.update(deltaTime);

	// When entity has OrderComponent and ComponentB
	e.add(new ComponentB());
	system.expectedNames.addLast("A");
	engine.update(deltaTime);

	// When entity has OrderComponent, ComponentB and ComponentC
	e.add(new ComponentC());
	system.expectedNames.addLast("A");
	engine.update(deltaTime);

	// When entity has ComponentB and ComponentC
	e.remove(OrderComponent.class);
	e.add(new ComponentC());
	engine.update(deltaTime);
}
 
开发者ID:DevelopersGuild,项目名称:Planetbase,代码行数:32,代码来源:SortedIteratingSystemTest.java

示例5: entityOrder

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
public void entityOrder () {
	Engine engine = new Engine();

	final Family family = Family.all(OrderComponent.class).get();
	final SortedIteratingSystemMock system = new SortedIteratingSystemMock(family);
	engine.addSystem(system);

	Entity a = createOrderEntity("A", 0);
	Entity b = createOrderEntity("B", 1);
	Entity c = createOrderEntity("C", 3);
	Entity d = createOrderEntity("D", 2);

	engine.addEntity(a);
	engine.addEntity(b);
	engine.addEntity(c);
	system.expectedNames.addLast("A");
	system.expectedNames.addLast("B");
	system.expectedNames.addLast("C");
	engine.update(0);

	engine.addEntity(d);
	system.expectedNames.addLast("A");
	system.expectedNames.addLast("B");
	system.expectedNames.addLast("D");
	system.expectedNames.addLast("C");
	engine.update(0);

	orderMapper.get(a).zLayer = 3;
	orderMapper.get(b).zLayer = 2;
	orderMapper.get(c).zLayer = 1;
	orderMapper.get(d).zLayer = 0;
	system.forceSort();
	system.expectedNames.addLast("D");
	system.expectedNames.addLast("C");
	system.expectedNames.addLast("B");
	system.expectedNames.addLast("A");
	engine.update(0);
}
 
开发者ID:DevelopersGuild,项目名称:Planetbase,代码行数:40,代码来源:SortedIteratingSystemTest.java

示例6: intervalSystem

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
public void intervalSystem () {
	Engine engine = new Engine();
	IntervalSystemSpy intervalSystemSpy = new IntervalSystemSpy();

	engine.addSystem(intervalSystemSpy);

	for (int i = 1; i <= 10; ++i) {
		engine.update(deltaTime);
		assertEquals(i / 2, intervalSystemSpy.numUpdates);
	}
}
 
开发者ID:DevelopersGuild,项目名称:Planetbase,代码行数:13,代码来源:IntervalSystemTest.java

示例7: main

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
public static void main (String[] args) {
	Engine engine = new Engine();

	engine.addSystem(new SystemA(10));
	engine.addSystem(new SystemB(5));
	engine.addSystem(new SystemA(2));

	engine.update(0);
}
 
开发者ID:DevelopersGuild,项目名称:Planetbase,代码行数:10,代码来源:SystemPriorityTest.java

示例8: shouldIterateEntitiesWithCorrectFamily

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
@SuppressWarnings("unchecked")
public void shouldIterateEntitiesWithCorrectFamily() {
    final Engine engine = new Engine();

    final Family family = Family.getFor(ComponentA.class, ComponentB.class);
    final IteratingSystemMock system = new IteratingSystemMock(family);
    final Entity e = new Entity();

    engine.addSystem(system);
    engine.addEntity(e);

    //When entity has ComponentA
    e.add(new ComponentA());
    engine.update(deltaTime);

    assertEquals(0, system.numUpdates);

    //When entity has ComponentA and ComponentB
    system.numUpdates = 0;
    e.add(new ComponentB());
    engine.update(deltaTime);

    assertEquals(1, system.numUpdates);

    //When entity has ComponentA, ComponentB and ComponentC
    system.numUpdates = 0;
    e.add(new ComponentC());
    engine.update(deltaTime);

    assertEquals(1, system.numUpdates);

    //When entity has ComponentB and ComponentC
    system.numUpdates = 0;
    e.remove(ComponentA.class);
    e.add(new ComponentC());
    engine.update(deltaTime);

    assertEquals(0, system.numUpdates);
}
 
开发者ID:grum,项目名称:Ashley,代码行数:41,代码来源:IteratingSystemTest.java

示例9: intervalSystem

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
@Test
public void intervalSystem() {
    Engine engine = new Engine();
    IntervalSystemSpy intervalSystemSpy = new IntervalSystemSpy();

    engine.addSystem(intervalSystemSpy);

    for (int i = 1; i <= 10; ++i) {
        engine.update(deltaTime);
        assertEquals(i / 2, intervalSystemSpy.numUpdates);
    }
}
 
开发者ID:grum,项目名称:Ashley,代码行数:13,代码来源:IntervalSystemTest.java

示例10: main

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
public static void main(String[] args) {
    Engine engine = new Engine();

    engine.addSystem(new SystemA(10));
    engine.addSystem(new SystemB(5));
    engine.addSystem(new SystemA(2));

    engine.update(0);
}
 
开发者ID:grum,项目名称:Ashley,代码行数:10,代码来源:SystemPriorityTest.java

示例11: runEngineTest

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
private void runEngineTest (Engine engine) {
	for (int i = 0; i < Constants.FRAMES; ++i) {
		engine.update(Constants.DELTA_TIME);
	}
}
 
开发者ID:DevelopersGuild,项目名称:Planetbase,代码行数:6,代码来源:AshleyBenchmark.java

示例12: runEngineTest

import com.badlogic.ashley.core.Engine; //导入方法依赖的package包/类
private void runEngineTest(Engine engine) {
    for (int i = 0; i < Constants.FRAMES; ++i) {
        engine.update(Constants.DELTA_TIME);
    }
}
 
开发者ID:grum,项目名称:Ashley,代码行数:6,代码来源:AshleyBenchmark.java


注:本文中的com.badlogic.ashley.core.Engine.update方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。