コード例 #1
0
ファイル: RedTower.cs プロジェクト: manaflow/DefendTheLight
    // 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;
    }
コード例 #2
0
    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);
    }