// Update is called once per frame void Update() { TowerUpdate(); if (Game.TargetEnemy != null) { if (inRange(Game.TargetEnemy)) { target = Game.TargetEnemy; return; } } if (target == null) { GetTarget(ref target); } else { Debug.Log(speedBoost); if (time <= 0) { Fireball fb = GameObject.Instantiate(fireball).GetComponent <Fireball>(); fb.transform.position = transform.position; fb.Init(target, 1 + chargeLevel); time += speed; } else { time -= Time.deltaTime * Game.GameSpeed * speedBoost; } } speedBoost = 1; }
float ThrowFireball() { float direction = -1 * Mathf.Sign(transform.localScale.x); Vector3 fireballOffset = direction * 1.5f * Vector3.right; GameObject fireball = Instantiate(fireballPrefab, transform.position + fireballOffset, Quaternion.identity) as GameObject; Fireball fc = fireball.GetComponent <Fireball> (); fc.Init(gameObject); return(fc.cooldown); }