public void CreateTornado(Vector3 tornadoPos, Vector3 tornadoScale /*, TornadoType newType*/)
    {
        //TornadoType newType = GetRandomTornado();   //For Test
        TornadoType newType = TornadoType.Lightning;   //For Test

        //config.tornadoType = newType;

        GameObject newTornado = Instantiate(GetTornadoPrefab(newType));

        newTornado.transform.localScale = tornadoScale;

        TornadoController newTornadoC = newTornado.GetComponent <TornadoController>();

        newTornadoC.Init(this, uiController, tornadoScale.x);
    }
    private GameObject GetTornadoPrefab(TornadoType newType)
    {
        switch (newType)
        {
        case TornadoType.Lightning:
            return(prefabs.tornadoLGO);

        case TornadoType.Fire:
            return(prefabs.tornadoFGO);

        case TornadoType.Ice:
            return(prefabs.tornadoIGO);

        default:
            return(prefabs.tornadoLGO);
        }
    }
Пример #3
0
 public static void Create(Vector3 position, float radius, float damage, float duration, TornadoType tornadoType, bool isFromEnemy)
 {
     //Hazard, radius passed to this method is never used because it is overwritten!
     try
     {
         GameObject go = tornadoType == TornadoType.Fire ? GameObject.Instantiate(fireprefab) : GameObject.Instantiate(arcanaprefab);
         radius = 18.5f;
         go.transform.position = position + Vector3.down * 2;
         go.transform.rotation = Quaternion.identity;
         Cataclysm c = go.AddComponent <Cataclysm>();
         c.damage      = damage;
         c.radius      = radius;
         c.duration    = duration;
         c.isFromEnemy = isFromEnemy;
         c.isArcane    = tornadoType == TornadoType.Arcane;
         CotfUtils.Log("Created cataclysm");
     }
     catch (Exception e)
     {
         CotfUtils.Log("Creating cataclysm error " + e.Message);
     }
 }