コード例 #1
0
ファイル: Troop.cs プロジェクト: afkim14/ShapeWars
    public virtual void Damage(float dmg)
    {
        if (currHealth - dmg <= 0)
        {
            if (!rezzed)
            {
                ga = GameObject.FindGameObjectWithTag("GameAdmin").GetComponent <GameAdmin>();
                string    type = gameObject.GetComponent <Troop>().name;
                Vector2   pos  = new Vector2(gameObject.GetComponent <Troop>().transform.position.x, gameObject.GetComponent <Troop>().transform.position.y);
                Vector2   dir  = new Vector2(gameObject.GetComponent <Troop>().direction.x, gameObject.GetComponent <Troop>().direction.y);
                TroopCopy tp   = new TroopCopy(type, pos, dir);
                ga.deadTroops.Add(tp);
            }
            Instantiate(deathParticle, transform.position, transform.rotation);
            Destroy(gameObject);
        }

        currHealth -= dmg;
    }
コード例 #2
0
    public override void Damage(float dmg)
    {
        if (currHealth - dmg <= 0)
        {
            if (!rezzed)
            {
                string    type = gameObject.GetComponent <Troop>().name;
                Vector2   pos  = new Vector2(gameObject.GetComponent <Troop>().transform.position.x, gameObject.GetComponent <Troop>().transform.position.y);
                Vector2   dir  = new Vector2(gameObject.GetComponent <Troop>().direction.x, gameObject.GetComponent <Troop>().direction.y);
                TroopCopy tp   = new TroopCopy(type, pos, dir);
                ga.deadTroops.Add(tp);
            }
            PlayerPrefs.SetInt("troops_killed", PlayerPrefs.GetInt("troops_killed") + 1);
            PlayerPrefs.SetInt("dp_score", PlayerPrefs.GetInt("dp_score") + 100);
            PlayerPrefs.SetInt("dp_money", PlayerPrefs.GetInt("dp_money") + 50);
            gameObject.GetComponent <SpriteRenderer>().color = new Color(77.0f / 255.0f, 77.0f / 255.0f, 77.0f / 255.0f);
        }

        currHealth -= dmg;
    }
コード例 #3
0
    public override void Damage(float dmg)
    {
        if (currHealth - dmg <= 0)
        {
            if (!rezzed)
            {
                string    type = gameObject.GetComponent <Troop>().name;
                Vector2   pos  = new Vector2(gameObject.GetComponent <Troop>().transform.position.x, gameObject.GetComponent <Troop>().transform.position.y);
                Vector2   dir  = new Vector2(gameObject.GetComponent <Troop>().direction.x, gameObject.GetComponent <Troop>().direction.y);
                TroopCopy tp   = new TroopCopy(type, pos, dir);
                ga.deadTroops.Add(tp);
            }
            Instantiate(deathParticle, transform.position, transform.rotation);
            Destroy(gameObject);
            PlayerPrefs.SetInt("troops_killed", PlayerPrefs.GetInt("troops_killed") + 1);
            PlayerPrefs.SetInt("dp_money", PlayerPrefs.GetInt("dp_money") + 5);
            ga.userTroopAlive = false;
        }

        currHealth -= dmg;
    }
コード例 #4
0
ファイル: TurretsTroopMenu.cs プロジェクト: afkim14/ShapeWars
    // Update is called once per frame
    void Update()
    {
        // creating turrets
        if ((Input.GetKeyDown(KeyCode.Alpha1)) && (currIntervals[0] == spawnIntervals[0]) && troop_buttons[0].interactable)
        {
            currIntervals[0] = 0;
            Instantiate(troops[0], new Vector2(troopEntryPoint.position.x, troopEntryPoint.position.y), troopEntryPoint.rotation);
            PlayerPrefs.SetInt("troops_sent", PlayerPrefs.GetInt("troops_sent") + 1);
            PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - ga.troop_costs[0]);
        }
        else if ((Input.GetKeyDown(KeyCode.Alpha2)) && (currIntervals[1] == spawnIntervals[1]) && troop_buttons[1].interactable)
        {
            currIntervals[1] = 0;
            Instantiate(troops[1], new Vector2(troopEntryPoint.position.x, troopEntryPoint.position.y), troopEntryPoint.rotation);
            PlayerPrefs.SetInt("troops_sent", PlayerPrefs.GetInt("troops_sent") + 1);
            PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - ga.troop_costs[1]);
        }
        else if ((Input.GetKeyDown(KeyCode.Alpha3)) && (currIntervals[2] == spawnIntervals[2]) && troop_buttons[2].interactable)
        {
            currIntervals[2] = 0;
            Instantiate(troops[2], new Vector2(troopEntryPoint.position.x, troopEntryPoint.position.y), troopEntryPoint.rotation);
            PlayerPrefs.SetInt("troops_sent", PlayerPrefs.GetInt("troops_sent") + 1);
            PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - ga.troop_costs[2]);
        }
        else if ((Input.GetKeyDown(KeyCode.Alpha4)) && (currIntervals[3] == spawnIntervals[3]) && troop_buttons[3].interactable)
        {
            currIntervals[3] = 0;
            Instantiate(troops[3], new Vector2(troopEntryPoint.position.x, troopEntryPoint.position.y), troopEntryPoint.rotation);
            PlayerPrefs.SetInt("troops_sent", PlayerPrefs.GetInt("troops_sent") + 1);
            PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - ga.troop_costs[3]);
        }
        else if ((Input.GetKeyDown(KeyCode.Alpha5)) && (currIntervals[4] == spawnIntervals[4]) && troop_buttons[4].interactable)
        {
            if (!ga.userTroopAlive)
            {
                currIntervals[4] = 0;
                Instantiate(troops[4], new Vector2(troopEntryPoint.position.x, troopEntryPoint.position.y), troopEntryPoint.rotation);
                PlayerPrefs.SetInt("troops_sent", PlayerPrefs.GetInt("troops_sent") + 1);
                PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - ga.troop_costs[4]);
                ga.userTroopAlive = true;
            }
        }
        else if ((Input.GetKeyDown(KeyCode.Alpha6)) && (currIntervals[5] == spawnIntervals[5]) && troop_buttons[5].interactable)
        {
            currIntervals[5] = 0;
            Instantiate(troops[5], new Vector2(troopEntryPoint.position.x, troopEntryPoint.position.y), troopEntryPoint.rotation);
            PlayerPrefs.SetInt("troops_sent", PlayerPrefs.GetInt("troops_sent") + 1);
            PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - ga.troop_costs[5]);
        }

        // flipping turrets
        if (Input.GetKeyDown(KeyCode.F))
        {
            if (ga.holding_turret)
            {
                if (ga.curr_turret_held.transform.rotation.z == 0)
                {
                    ga.curr_turret_held.transform.rotation = Quaternion.Euler(new Vector3(0, 0, 90));
                }
                else
                {
                    ga.curr_turret_held.transform.rotation = Quaternion.Euler(new Vector3(0, 0, 0));
                }
            }
        }

        for (int i = 0; i < 4; i++)
        {
            if (currIntervals [i] != spawnIntervals[i])
            {
                currIntervals [i] = currIntervals [i] + 1;
            }
        }

        // Attacking Player Skills
        if (Input.GetKeyDown(KeyCode.Comma) && speedup_button.interactable)
        {
            speedupSound.Play();
            PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - speedup_cost);
            GameObject[] allObjects = UnityEngine.Object.FindObjectsOfType <GameObject>();
            for (int i = 0; i < allObjects.Length; i++)
            {
                GameObject obj = allObjects[i];
                if (obj.activeInHierarchy && obj.CompareTag("Troop"))
                {
                    obj.GetComponent <Troop>().speedMult += 0.5f;
                }
            }

            ga.speedUpButtonPressed     = true;
            speedup_button.interactable = false;
        }

        if (Input.GetKeyDown(KeyCode.Period) && rez_button.interactable && ga.deadTroops.Count > 0)
        {
            rezSound.Play();
            PlayerPrefs.SetInt("ap_money", PlayerPrefs.GetInt("ap_money") - rez_cost);
            TroopCopy tp       = ga.deadTroops[ga.deadTroops.Count - 1];
            Troop     newTroop = null;
            if (tp.type.Contains("SquareTroop"))
            {
                newTroop = Instantiate(troops[0], tp.position, troopEntryPoint.rotation);
            }
            else if (tp.type.Contains("ContainerTroop"))
            {
                newTroop = Instantiate(troops[3], tp.position, troopEntryPoint.rotation);
            }
            else if (tp.type.Contains("InsideContainerTroop"))
            {
                newTroop = Instantiate(insideTroop, tp.position, troopEntryPoint.rotation);
            }
            else if (tp.type.Contains("FastTroop"))
            {
                newTroop = Instantiate(troops[1], tp.position, troopEntryPoint.rotation);
            }
            else if (tp.type.Contains("ParalyzeTroop"))
            {
                newTroop = Instantiate(troops[5], tp.position, troopEntryPoint.rotation);
            }
            else if (tp.type.Contains("SlowTroop"))
            {
                newTroop = Instantiate(troops[2], tp.position, troopEntryPoint.rotation);
            }
            else if (tp.type.Contains("UserTroop"))
            {
                newTroop = Instantiate(troops[4], tp.position, troopEntryPoint.rotation);
            }
            newTroop.rezzed         = true;
            ga.rezButtonPressed     = true;
            rez_button.interactable = false;

            // clear list
            ga.deadTroops = new List <TroopCopy>();
        }
    }