コード例 #1
0
    // Update is called once per frame
    void Update()
    {
        if (Network.peerType == NetworkPeerType.Server)
        {
            for (int i = 0; i < avatars.Length; i++)
            {
                int ownerInt = int.Parse(avatars[i].networkView.owner.ToString());
                if (inRangeOfGoal(avatars[i].transform.position) &&
                    !hasWon(ownerInt)
                    )
                {
                    if (completed.Count == 0)
                    {
                        // Give crown :D
                        networkView.RPC("RevealWinner", RPCMode.All, avatars[i].gameObject.name);
                    }

                    completed.Add(ownerInt);

                    if (avatars[i].networkView.owner != Network.player)
                    // If a client wins...
                    {
                        Debug.Log("List's size: " + completed.Count);
                        networkView.RPC("RevealPlacement", avatars[i].networkView.owner, completed.Count);
                    }
                    else                     // Server won...
                    {
                        placementGraphics[completed.Count - 1].enabled = true;
                    }

                    if (completed.Capacity >= SP.GetServerClientCount())
                    {
                        NextLevelMenu.enabled = true;
                    }
                }
            }
        }
    }