示例#1
0
    // Update is called once per frame
    void Update()
    {
        if (!GetComponent <PlayerController>().Gude.IsPlay)
        {
            if (Input.GetKeyDown(KeyCode.I) && Time.timeScale > 0)
            {
                show = !show;
                if (show)
                {
                    Time.timeScale = 0;
                }
                else
                {
                    Time.timeScale = 1;
                }
            }
            if (Input.GetKeyDown(KeyCode.Escape))
            {
                show = false;
                if (show)
                {
                    Time.timeScale = 0;
                }
                else
                {
                    Time.timeScale = 1;
                }
            }

            if (show)
            {
                for (int i = 0; i < gudes.Count; i++)
                {
                    if (gudes[i] != null)
                    {
                        if (Input.GetKeyDown("" + (i + 1) % 10))
                        {
                            GudeInventory temp = GetComponent <PlayerController>().Gude.Gude;
                            GetComponent <PlayerController>().Gude.Gude = gudes[i];
                            gudes[i] = temp;
                        }
                    }
                }
            }
        }
        count.text = gameObject.name + ": " + string.Format("{0:00}", (gudes.Count + 1));
    }
示例#2
0
 void Awake()
 {
     gude = new GudeInventory(renderer.material);
 }
示例#3
0
    void OnTriggerStay(Collider c)
    {
        if (c.gameObject.layer == 10)
        {
            if (c.GetComponent <GudeManager>().Inventory == player1 &&
                !c.GetComponent <GudeManager>().IsPlay&& player1InCircle)
            {
                if (gudesPlayer1.Count > 0)
                {
                    Vector3 position = c.transform.position;
                    c.transform.position = gudesPlayer1[0].transform.position;
                    gudesPlayer1[0].transform.position = position;

                    Vector3 velocity = c.rigidbody.velocity;
                    c.rigidbody.velocity = gudesPlayer1[0].rigidbody.velocity;
                    gudesPlayer1[0].rigidbody.velocity = velocity;

                    Vector3 euler = c.transform.eulerAngles;
                    c.transform.eulerAngles = gudesPlayer1[0].transform.eulerAngles;
                    gudesPlayer1[0].transform.eulerAngles = euler;

                    GudeInventory gude = c.GetComponent <GudeManager>().Gude;
                    c.GetComponent <GudeManager>().Gude = gudesPlayer1[0].Gude;
                    gudesPlayer1[0].Gude = gude;

                    gudesPlayer1.Remove(gudesPlayer1[0]);
                }
                else if (player1.Count > 0)
                {
                    GameObject  gudeOff = (GameObject)Instantiate(Resources.Load("GudeOff"));
                    GudeManager gude    = c.GetComponent <GudeManager>();
                    gudeOff.transform.position = gude.transform.position;
                    gudeOff.GetComponent <GudeCollision>().Gude = gude.Gude;
                    gude.Reset();
                    gude.Gude = player1.Get(0);
                    player1.Remove(gude.Gude);

                    Vector3 velocity = c.rigidbody.velocity;
                    c.rigidbody.velocity       = gudeOff.rigidbody.velocity;
                    gudeOff.rigidbody.velocity = velocity;
                }
                else
                {
                    winner = 2;
                    Application.LoadLevel("GOVER");
                }
            }


            if (c.GetComponent <GudeManager>().Inventory == player2 &&
                !c.GetComponent <GudeManager>().IsPlay&& player2InCircle)
            {
                if (gudesPlayer2.Count > 0)
                {
                    Vector3 position = c.transform.position;
                    c.transform.position = gudesPlayer2[0].transform.position;
                    gudesPlayer2[0].transform.position = position;

                    Vector3 velocity = c.rigidbody.velocity;
                    c.rigidbody.velocity = gudesPlayer2[0].rigidbody.velocity;
                    gudesPlayer2[0].rigidbody.velocity = velocity;

                    Vector3 euler = c.transform.eulerAngles;
                    c.transform.eulerAngles = gudesPlayer2[0].transform.eulerAngles;
                    gudesPlayer2[0].transform.eulerAngles = euler;

                    GudeInventory gude = c.GetComponent <GudeManager>().Gude;
                    c.GetComponent <GudeManager>().Gude = gudesPlayer2[0].Gude;
                    gudesPlayer2[0].Gude = gude;

                    gudesPlayer2.Remove(gudesPlayer2[0]);
                }
                else if (player2.Count > 0)
                {
                    GameObject  gudeOff = (GameObject)Instantiate(Resources.Load("GudeOff"));
                    GudeManager gude    = c.GetComponent <GudeManager>();
                    gudeOff.transform.position = gude.transform.position;
                    gudeOff.GetComponent <GudeCollision>().Gude = gude.Gude;
                    gude.Reset();
                    gude.Gude = player2.Get(0);
                    player2.Remove(gude.Gude);

                    Vector3 velocity = c.rigidbody.velocity;
                    c.rigidbody.velocity       = gudeOff.rigidbody.velocity;
                    gudeOff.rigidbody.velocity = velocity;
                }
                else
                {
                    winner = 1;
                    Application.LoadLevel("GOVER");
                }
            }
        }
    }
示例#4
0
 void Awake()
 {
     gude = new GudeInventory (renderer.material);
 }
示例#5
0
 public void Remove(GudeInventory gude)
 {
     gudes.Remove(gude);
 }
示例#6
0
 public void Add(GudeInventory gude)
 {
     gudes.Add(gude);
 }