Пример #1
0
        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));
        }
Пример #2
0
 public override void LinkToDependency(Module dependency)
 {
     if (dependency.IsModuleType(ModuleType.Transform))
     {
         _transform = dependency as TransformModule;
     }
 }
Пример #3
0
 public override void LinkToDependency(Module dependency)
 {
     if (dependency.IsModuleType(ModuleType.Transform))
     {
         _transform = dependency as TransformModule;
         _ray       = new Ray(_transform.transform.position, Vector3.up);
     }
 }
Пример #4
0
        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));
        }
Пример #5
0
        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));
        }
Пример #6
0
        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);
            }
        }
Пример #7
0
        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));
        }
Пример #8
0
 protected override void DestroyInternal()
 {
     _transform = null;
 }