Beispiel #1
0
 public PropertyStatus BuyRailroad(RailroadObj railroadObj, PropertyStatus propertySt)
 {
     if (Player.Money >= railroadObj.price)
     {
         propertySt.isBuyed = true;
         propertySt.owner   = Player.ID;
         Player.railroads.Add(railroadObj);
         Player.propertiesStat.Add(propertySt);
         Player.Money -= railroadObj.price;
         Debug.Log("player " + Player.ID + " buyed " + railroadObj.title + " for " + railroadObj.price + "| Now he got: " + Player.Money);
         return(propertySt);
     }
     return(propertySt);
 }
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.M))
        {
            Debug.Log("Player [" + playerScripts[i].Player.ID + "]: " + playerScripts[i].Player.Money + "$");
        }

        if (canBeReset && !playerControls[i].GetIsMoving() && !cardActive && cardEndTurn)
        {
            PropertyStatus property = propertiesStat.Find(x => x.id == playerControls[i].GetRoutePos());
            cardEndTurn = false;
            CheckCard(playerControls[i].GetRoutePos());
            if (property.owner != 0)
            {
                PlayerRent(playerControls[i].GetRoutePos());
            }
        }
        if ((Input.GetKeyDown(KeyCode.Q) || Input.GetKeyDown(KeyCode.C) || Input.GetKeyDown(KeyCode.X) || Input.GetKeyDown(KeyCode.Space)) && canBeReset && !playerControls[i].GetIsMoving())
        {
            if (Input.GetKeyDown(KeyCode.Q))
            {
                PropertyStatus property = propertiesStat.Find(x => x.id == playerControls[i].GetRoutePos());

                if (property.isBuyed == false)
                {
                    if (idsOfProp.Contains(playerControls[i].GetRoutePos()))
                    {
                        CardObject cardObject = JsonUtility.FromJson <CardObject>(Load(playerControls[i].GetRoutePos()));
                        property = playerScripts[i].BuyProperty(cardObject, property);
                    }
                    else if (idsOfRr.Contains(playerControls[i].GetRoutePos()))
                    {
                        RailroadObj rrObject = JsonUtility.FromJson <RailroadObj>(Load(playerControls[i].GetRoutePos()));
                        property = playerScripts[i].BuyRailroad(rrObject, property);
                    }
                }

                Debug.Log(property.id + " owner: " + property.owner);
            }
            else if (Input.GetKeyDown(KeyCode.C))
            {
                if (GameObject.Find("Canvas").transform.GetChild(1).gameObject.activeSelf == true || GameObject.Find("Canvas").transform.GetChild(3).gameObject.activeSelf == true)
                {
                    ChangeCard(playerControls[i].GetRoutePos(), 2);
                }
                else if (GameObject.Find("Canvas").transform.GetChild(2).gameObject.activeSelf == true || GameObject.Find("Canvas").transform.GetChild(4).gameObject.activeSelf == true)
                {
                    ChangeCard(playerControls[i].GetRoutePos(), 1);
                }
            }
            else if (Input.GetKeyDown(KeyCode.X))
            {
                CheckCard(playerControls[i].GetRoutePos());
            }
            else
            {
                if (cardActive)
                {
                    CheckCard(playerControls[i].GetRoutePos());
                }
                foreach (var dice in dices)
                {
                    dice.Reset();
                }
                canBeReset = false;
                Debug.Log("Dices has been Started/Reseted!");

                i++;
                if (i > countOfPlayers - 1)
                {
                    i = 0;
                }
                cardEndTurn = true;
            }
        }
        CheckTurn();
    }