Esempio n. 1
0
        protected Entity Spawn(string className, params object[] param)
        {
            var initParam = new object[1 + param.Length];

            initParam[0] = this;
            param.CopyTo(initParam, 1);

            var entity = (Entity)Activator.CreateInstance(Type.GetType(className), initParam);

            ETypes entType = (ETypes)Enum.Parse(typeof(ETypes), entity.GetType().Name);

            switch (entType)
            {
            case ETypes.Player: entity.Handler = SLocator.CharHandler;
                entity.Sprite = SLocator.PLManager.TLoad(SLocator.PLManager.TList[TTypes.PLAYER]);
                break;

            case ETypes.Enemy:  entity.Handler = SLocator.AIHandler;
                entity.Sprite = SLocator.PLManager.TLoad(SLocator.PLManager.TList[TTypes.ENEMY]);
                break;

            case ETypes.Boss:   entity.Sprite = SLocator.PLManager.TLoad(SLocator.PLManager.TList[TTypes.BOSS]);
                break;

            case ETypes.Magic:  entity.Sprite = SLocator.PLManager.TLoad(SLocator.PLManager.TList[TTypes.MAGIC]);
                break;

            default:            break;
            }
            entity.GState = WGState;

            Entities.Add(entity);

            return(entity);
        }
Esempio n. 2
0
 public void SetType(ETypes type)
 {
     enemy.enemyType                = type;
     spriteRenderer.sprite          = gbase.dictSprites["enemy_sprites_" + type2Id[enemyType].ToString()];
     anim.runtimeAnimatorController = (RuntimeAnimatorController)Resources.Load(string.Format("Animations/Enemies/{0}/{1}_controller", enemyType.ToString(), enemyType.ToString().ToLower()));
 }