public static Entity CreateProp(string name, string prefabName, Vector3 worldPos) { var transform = new TransformModule(name, worldPos); var prop = new PrefabModule(prefabName); return(new Entity(transform, prop)); }
public override void LinkToDependency(Module dependency) { if (dependency.IsModuleType(ModuleType.Transform)) { _transform = dependency as TransformModule; } }
public override void LinkToDependency(Module dependency) { if (dependency.IsModuleType(ModuleType.Transform)) { _transform = dependency as TransformModule; _ray = new Ray(_transform.transform.position, Vector3.up); } }
public static Entity CreateDestructible(string name, string prefabName, Vector3 worldPos, int maxHp) { var transform = new TransformModule(name, worldPos); var collision = new CollisionModule(); var prop = new PrefabModule(prefabName); var health = new HealthModule(maxHp, maxHp); var destruct = new DestructibleModule(); return(new Entity(transform, collision, prop, health, destruct)); }
public static Entity CreateBullet(string name, string prefabName, Vector3 worldPos, Vector3 velocity, Team team) { var transform = new TransformModule(name, worldPos); var collision = new CollisionModule(); var prop = new PrefabModule <ColorizableBehaviour>(prefabName); var bullet = new BulletModule(team, velocity); prop.component.SetColor(team == Team.Red ? Color.red : Color.cyan); return(new Entity(transform, prop, collision, bullet)); }
public override void LinkToDependency(Module dependency) { if (dependency.IsModuleType(ModuleType.Transform)) { _transform = dependency as TransformModule; } if (dependency.IsModuleType(ModuleType.Collision)) { (dependency as CollisionModule).collision.SetTriggerCallback(OnTrigger); } }
public static Entity CreateTerrain(string name, Vector3 worldPos, TileType tileType, bool isOpen, float size, int x, int y) { var transform = new TransformModule(name, worldPos); var terrain = new TerrainModule(x, y, size); var tile = new PrefabModule <TerrainBehaviour>("TerrainTile"); tile.component.SetTileSize(size, size); tile.component.SetTileType(tileType, isOpen); tile.component.SetTileCoordinates(x, y); return(new Entity(transform, tile, terrain)); }
protected override void DestroyInternal() { _transform = null; }