Пример #1
0
 public void Load(SkillsPlayer skillsplayer, List <Players> players, List <Txs> txs, int height, string address)
 {
     for (int i = 0; i < txs.Count; i++)
     {
         players = GetPlayers(address, txs[i].Height);
         if (!txs[i].Sender)
         {
             List <Players> _players    = GetPlayers(txs[i].AddressSender, txs[i].Height);
             int            seed        = int.Parse(AttachmentBase58.HexToDecimal(AttachmentBase58.Base58NumericDecode(txs[i].Tx.Substring(0, 4))));
             LinearConRng   rnd         = new LinearConRng(seed);
             int            enemy       = rnd.NextInt(0, _players.Count);
             SkillsPlayer   skillsEnemy = AddressSkills(txs[i].AddressSender, txs[i].Height);
             if (_players[enemy].Address == address && skillsEnemy.Height <= txs[i].Height)
             {
                 var panelGO = Instantiate(GameHistory, transform);
                 panelGO.GetComponent <GameHistoryPanel>().SetStats(txs[i].Tx, txs[i].AddressSender, skillsplayer.Skills, skillsEnemy.Skills, Convert.ToInt32(txs[i].Sender));
                 panels.Add(panelGO);
             }
         }
         else
         {
             int          seed        = int.Parse(AttachmentBase58.HexToDecimal(AttachmentBase58.Base58NumericDecode(txs[i].Tx.Substring(0, 4))));
             LinearConRng rnd         = new LinearConRng(seed);
             int          enemy       = rnd.NextInt(0, players.Count);
             SkillsPlayer skillsEnemy = AddressSkills(players[enemy].Address, txs[i].Height);
             if (skillsEnemy.Height <= txs[i].Height)
             {
                 var panelGO = Instantiate(GameHistory, transform);
                 panelGO.GetComponent <GameHistoryPanel>().SetStats(txs[i].Tx, players[enemy].Address, skillsplayer.Skills, players[enemy].Skills, Convert.ToInt32(txs[i].Sender));
                 panels.Add(panelGO);
             }
         }
     }
 }
Пример #2
0
    public void SetStats(string tx, string enemy, int[] skills, int[] skillsEnemy, int txChoose)
    {
        Tx.text    = "ID: " + tx;
        Enemy.text = "Enemy: " + enemy;

        Skills      = skills;
        SkillsEnemy = skillsEnemy;
        int result;

        Debug.Log(txChoose);
        if (txChoose == 1)
        {
            result = Fight.CalculateFight(skills, skillsEnemy, int.Parse(AttachmentBase58.HexToDecimal(AttachmentBase58.Base58NumericDecode(tx.Substring(0, 4)))));
        }
        else
        {
            result = Fight.CalculateFight(skillsEnemy, skills, int.Parse(AttachmentBase58.HexToDecimal(AttachmentBase58.Base58NumericDecode(tx.Substring(0, 4)))));
        }

        if (txChoose == 1 && result == 0)
        {
            win.SetActive(true);
        }
        else if (txChoose == 1 && result == 1)
        {
            defeat.SetActive(true);
        }
        else if (txChoose == 0 && result == 0)
        {
            defeat.SetActive(true);
        }
        else if (txChoose == 0 && result == 1)
        {
            win.SetActive(true);
        }
        else
        {
            draw.SetActive(true);
        }

        for (int i = 0; i < SkillsEnemy.Length; i++)
        {
            transform.GetChild(i).GetComponent <Image>().sprite = Resources.LoadAll <Sprite>("SkillPreview")[SkillsEnemy[i]];
        }
    }
Пример #3
0
    public void ShowSavePanel()
    {
        bool rdy = false;

        for (int i = 0; i < SelSkills.Length; i++)
        {
            if (SelSkills[i] == -1)
            {
                rdy = false;
                break;
            }
            rdy = true;
        }
        if (rdy)
        {
            ErrorMsg.SetActive(false);
            string numeric    = SelSkills[0] + "A" + SelSkills[1] + "A" + SelSkills[2];
            string attachment = AttachmentBase58.Base58NumericEncode(BigInteger.Parse(AttachmentBase58.HexToDecimal(numeric)));
            FindObjectOfType <SaveDataPanel>().ShowPanel(attachment, AddressInfo.recipient[0], AddressInfo.Asset);
        }
        else
        {
            ErrorMsg.SetActive(true);
            Debug.Log("Cant show WavesData panel!");
        }
    }