예제 #1
0
    public void BattleMath()
    {
        GameManager.instance.vm.BlockInputUI.SetActive(true);
        if (!PhotonNetwork.isMasterClient)
        {
            return;
        }
        int[] offensiveMainAtk = new int[offensivePlayer.Count];
        int[] defendersMainAtk = new int[defendersPlayer.Count];
        for (int i = 0; i < offensivePlayer.Count; i++)
        {
            offensiveMainAtk[i] = Mathf.Clamp(Random.Range(offensivePlayer[i].minAtk, offensivePlayer[i].maxAtk), 0, 100);
        }
        for (int i = 0; i < defendersPlayer.Count; i++)
        {
            defendersMainAtk[i] = Mathf.Clamp(Random.Range(defendersPlayer[i].minAtk, defendersPlayer[i].maxAtk), 0, 100);
        }
        JsonAtk json = new JsonAtk()
        {
            room             = GameManager.instance.myPlayer.myRoom,
            defendersMainAtk = defendersMainAtk,
            offensiveMainAtk = offensiveMainAtk
        };
        string jsonStr = JsonUtility.ToJson(json);

        photonView.RPC("BattleResult", PhotonTargets.All, jsonStr);
    }
예제 #2
0
    public void BattleResult(string json)
    {
        JsonAtk ja   = JsonUtility.FromJson <JsonAtk>(json);
        string  room = ja.room;

        int[] offensiveMainAtk = ja.offensiveMainAtk;
        int[] defendersMainAtk = ja.defendersMainAtk;
        if (GameManager.instance.myPlayer.myRoom != room)
        {
            return;
        }
        StartCoroutine(BattleProcess(offensiveMainAtk, defendersMainAtk));
    }