All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.artemis.factory.ExhibitA Maven / Gradle / Ivy

There is a newer version: 2.3.0
Show newest version
package com.artemis.factory;

import com.artemis.EntityFactory;
import com.artemis.annotations.Bind;
import com.artemis.annotations.UseSetter;
import com.artemis.annotations.Sticky;
import com.artemis.component.*;
import com.artemis.util.SomeEnum;

@Bind({Position.class, Velocity.class, Sprite.class, Cullible.class,
	Asset.class, HitPoints.class, EnumComponent.class})
public interface ExhibitA extends EntityFactory {
	// method name maps Position
	ExhibitA position(float x, float y);
	
	// overloaded methods
	ExhibitA velocity(float x, float y);
	ExhibitA velocity(float x);
	
	// strings
	ExhibitA asset(String path);
	
	// sticky
	@Sticky ExhibitA hitPoints(int current);
	
	// aliasing
	@Bind(Cullible.class) ExhibitA culled(boolean culled);
	
	// setter
	@Bind(Complex.class) @UseSetter ExhibitA pos(float x, float y);
	
	// setter, aliased
	@Bind(Complex.class) @UseSetter("vel") ExhibitA hoho(float x, float y);

	// enum
	ExhibitA enumComponent(SomeEnum enumValue);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy