示例#1
0
    /*private void Awake()
     * {
     *  netmanager = GameObject.Find("NetworkManager").GetComponent<CustomNetManager>();
     *  if (netmangager.launched)
     *  {
     *      loginCanvas.SetActive(false);
     *      MainCanvas.SetActive(true);
     *      singleplayerCanvas.SetActive(true);
     *      multiplayerCanvas.SetActive(true);
     *      netmangager.SetupMenuButtons();
     *      singleplayerCanvas.SetActive(false);
     *      Multicv();
     *  }
     * }*/
    private void Update()
    {
        if (MainCanvas.activeSelf && !button_set)
        {
            button_set = true;
            netmanager = GameObject.Find("NetworkManager").GetComponent <CustomNetManager>();
            netmanager.SetupMenuButtons();
        }

        if (MainCanvas.activeSelf)
        {
            if (options_shown)
            {
                Options.SetActive(true);
            }
            else
            {
                Options.SetActive(false);
            }
        }
        else
        {
            options_shown = false;
        }
    }
示例#2
0
    internal override IEnumerator EffectOnUse()
    {
        yield return(base.EffectOnUse());

        CustomNetManager CNM = CustomNetManager.singleton;

        if (CNM.isServerBusy)
        {
            yield return(new WaitUntil(() => !CNM.isServerBusy));
        }
        CNM.isServerBusy = true;

        level = Random.Range(-5, 5);

        GameObject target = ClientScene.FindLocalObject(targetNetId);

        Debug.Log("target - " + target);
        MonoBehaviour targetScript = null;

        if (targetScript = target.GetComponent <PlayerInGame>())
        {
            gameManager.fightingPlayersLevel += level;

            yield return(new WaitForEndOfFrame());

            RpcApplyOnPlayer();
        }
        else if (targetScript = target.GetComponent <MonsterCard>())
        {
            gameManager.fightingMonstersLevel += level;
            RpcApplyOnMonster();
        }
        else
        {
            Debug.LogError("Wrong Entity Chosen!");
        }

        yield return(new WaitForEndOfFrame());

        CNM.isServerBusy = false;
    }
示例#3
0
 // Start is built-in called once object is enabled for the first time.
 private void Start()
 {
     singleton = this;
 }
示例#4
0
 private void Start()
 {
     netManager = FindObjectOfType <CustomNetManager>();
 }
示例#5
0
    /// <summary>
    /// Setting players stats and objects in hierarchy based on Saved Data.
    /// </summary>
    // [Server]
    public static IEnumerator LoadGame()
    {
        CustomNetManager CustomNetworkManager = CustomNetManager.singleton;

        if (CustomNetworkManager.isServerBusy)
        {
            yield return(new WaitUntil(() => !CustomNetworkManager.isServerBusy));
        }
        CustomNetworkManager.isServerBusy = true;

        // Loading Players
        GameManager serverGameManager = GameManager.singleton;

        serverGameManager.turnPhase = loadedSave.turnPhase;
        yield return(new WaitForEndOfFrame());

        for (int i = 0; i < loadedSave.playersData.Count; i++)
        {
            GameObject   playerGO     = serverGameManager.playersObjects[i];
            PlayerInGame playerScript = playerGO.GetComponent <PlayerInGame>();

            playerScript.Level = loadedSave.playersData[i].level;
            yield return(new WaitForEndOfFrame());

            playerScript.hasTurn = loadedSave.playersData[i].hasTurn;
            yield return(new WaitForEndOfFrame());

            if (playerScript.hasTurn)
            {
                serverGameManager.activePlayerIndex = i;
                yield return(new WaitForEndOfFrame());
            }

            playerScript.isAlive = loadedSave.playersData[i].isAlive;
            yield return(new WaitForEndOfFrame());

            for (int j = 0; j < loadedSave.playersData[i].cardsInHand.Count; j++)
            {
                GameObject card = GameManager.GetCardByName(loadedSave.playersData[i].cardsInHand[j]);
                playerScript.ServerOnLoadReceiveCard(card);
                yield return(new WaitForEndOfFrame());
            }

            for (int j = 0; j < loadedSave.playersData[i].equippedItems.Count; j++)
            {
                GameObject card = GameManager.GetCardByName(loadedSave.playersData[i].equippedItems[j]);
                playerScript.ServerOnLoadEquip(card);
                yield return(new WaitForEndOfFrame());
            }
        }

        // Loading Decks
        for (int i = 0; i < loadedSave.discardedCards.Count; i++)
        {
            GameObject card = GameManager.GetCardByName(loadedSave.discardedCards[i]);
            PlayerInGame.OnLoadDiscardCard(card);
            yield return(new WaitForEndOfFrame());
        }

        CustomNetworkManager.isServerBusy = false;

        serverGameManager.StartCoroutine(serverGameManager.ServerTurnOwnerReadiness());
    }