Ejemplo n.º 1
0
    private void GivePassMoney(Player player)
    {
        LanguageController language = SettingsController.instance.languageController;
        string             message;

        if (player.OutstandingAmount > 0)
        {
            player.OutstandingAmount -= Keys.Gameplay.PASS_START_MONEY;

            if (player.OutstandingAmount <= 0)
            {
                //Pożyczka została spłacona
                player.IncreaseMoney(-player.OutstandingAmount);
                player.OutstandingAmount = 0;

                message = language.GetWord("YOU_PAID_OFF_YOUR_LOAN");
            }
            else
            {
                //Zostały pieniądze do spłacenia
                message = language.GetWord("START_MONEY_FOR_LOAN_PAYOFF");
            }
        }
        else
        {
            player.IncreaseMoney(Keys.Gameplay.PASS_START_MONEY);
            message = language.GetWord("YOU_RECEIVED") + Keys.Gameplay.PASS_START_MONEY + language.GetWord("FOR_PASSING_START");
        }

        IconPopup gainMoney = new IconPopup(IconPopupType.Money, message);

        PopupSystem.instance.AddPopup(gainMoney);
    }
Ejemplo n.º 2
0
    /// <summary>
    /// Wyświetla stosowne komunikaty przy wowołaniu eventu przegranej gracza
    /// </summary>
    /// <param name="playerName">Gracz, który przegrał grę</param>
    private void OnPlayerLostGame(string playerName)
    {
        Player             player   = session.FindPlayer(playerName);
        LanguageController language = SettingsController.instance.languageController;

        if (player == null)
        {
            return;
        }

        //Gracz, który przegrał, jest graczem lokalnym
        if (player.NetworkPlayer.IsLocal)
        {
            string        message        = language.GetWord("YOU_LOST_THE_GAME");
            QuestionPopup playerLostGame = QuestionPopup.CreateOkDialog(message);

            PopupSystem.instance.AddPopup(playerLostGame);
        }
        else
        {
            string    message        = language.GetWord("PLAYER") + playerName + language.GetWord("LOST_THE_GAME");
            IconPopup playerLostGame = new IconPopup(IconPopupType.PlayerLost, message);

            PopupSystem.instance.AddPopup(playerLostGame);
        }
    }
Ejemplo n.º 3
0
    private void OnTradeOfferReceived(string senderNickName, string[] senderBuildingNames, float senderMoney, string receiverNickName, string[] receiverBuildingNames, float receiverMoney)
    {
        if (receiverNickName == PhotonNetwork.LocalPlayer.NickName)
        {
            Popup.PopupAction yesAction = delegate
            {
                Player sender = gC.session.FindPlayer(senderNickName);

                List <Field> myBuildings = new List <Field>();
                foreach (string name in receiverBuildingNames)
                {
                    if (gC.board.GetField(name) != null)
                    {
                        myBuildings.Add(gC.board.GetField(name));
                    }
                }

                Player receiver = gC.session.FindPlayer(receiverNickName);

                List <Field> theirBuildings = new List <Field>();
                foreach (string name in senderBuildingNames)
                {
                    if (gC.board.GetField(name) != null)
                    {
                        theirBuildings.Add(gC.board.GetField(name));
                    }
                }

                OpenRightPanel(sender, myBuildings, receiverMoney, theirBuildings, senderMoney);
            };

            IconPopup tradeOfferReceivedPopup = new IconPopup(IconPopupType.Trade, QuestionPopup.CreateYesNoDialog(lC.GetWord("YOU_GOT_AN_OFFER_FROM") + senderNickName + " <br>" + lC.GetWord("DO_YOU_WANT_TO_SEE"), yesAction));
            PopupSystem.instance.AddPopup(tradeOfferReceivedPopup);
        }
    }
Ejemplo n.º 4
0
    public void ShowDice(Popup.PopupAction diceAction)
    {
        IconPopup dicePopup = new IconPopup(IconPopupType.Dice, diceAction);

        GameObject dice = boxPools[typeof(IconBox)].TakeObject();

        dice.GetComponent <Animator>().SetBool("Dice", true);
        DiceBox = dice.GetComponent <IconBox>();
        DiceBox.Init(dicePopup);
    }
Ejemplo n.º 5
0
    private void OnTradeResponseReceived(bool accepted, string senderNickName, string receiverNickName)
    {
        if (receiverNickName == PhotonNetwork.LocalPlayer.NickName)
        {
            string    response = accepted ? lC.GetWord("PLAYER") + " " + senderNickName + " " + lC.GetWord("ACCEPTED_THE_OFFER") : lC.GetWord("PLAYER") + " " + senderNickName + " " + lC.GetWord("REJECTED_THE_OFFER");
            IconPopup tradeOfferResponseReceivedPopup = new IconPopup(IconPopupType.Trade, response);

            PopupSystem.instance.AddPopup(tradeOfferResponseReceivedPopup);
        }
    }
Ejemplo n.º 6
0
 private void ShowMessage(Player calller)
 {
     if (calller.NetworkPlayer.IsLocal)
     {
         string    message = lang.GetWord("TURNS_LOST") + rounds;
         IconPopup popup   = new IconPopup(IconPopupType.Message, message);
         PopupSystem.instance.AddPopup(popup);
     }
     else
     {
         string[] message = new string[] { lang.PackKey("TURNS_LOST"), rounds.ToString() };
         EventManager.instance.SendPopupMessage(message, IconPopupType.Message, calller);
     }
 }
Ejemplo n.º 7
0
    public override void Init(Popup pattern)
    {
        base.Init(pattern);

        IconPopup popup = pattern as IconPopup;

        gameObject.GetComponent <Image>().sprite = MatchSprite(popup.iconType);

        int           currentAmount = pSystem.CountShowedPopups(typeof(IconPopup)); //Ilość popupów tego typu przed wyświetleniem
        RectTransform rect          = gameObject.transform as RectTransform;

        rect.localScale = Vector3.zero;

        button.interactable = false;
        boxAnimator.SetInteger("currentPosition", currentAmount);
        boxAnimator.SetInteger("targetPosition", currentAmount);
        boxAnimator.SetTrigger("Show");
    }
Ejemplo n.º 8
0
    public void OnAquiredBuilding(string playerName, int placeId)
    {
        string message;

        if (GameplayController.instance.session.FindPlayer(playerName).NetworkPlayer.IsLocal)
        {
            //popup kupującemu
            message = language.GetWord("YOU_AQUIRED_BUILDING") + GameplayController.instance.board.GetField(placeId).GetFieldName() + ".";
        }
        else
        {
            //popup reszcie
            message = language.GetWord("PLAYER") + playerName + language.GetWord("AQUIRED_BUILDING") + GameplayController.instance.board.GetField(placeId).GetFieldName() + ".";
        }

        IconPopup popup = new IconPopup(IconPopupType.NewPlace, message);

        PopupSystem.instance.AddPopup(popup);
    }
Ejemplo n.º 9
0
    /// <summary>
    /// Funckja wywoływana, gdy aukcja dobiegnie końca
    /// <param name="offerForLastBidder">Czy zaoferować kuono budynku ostatniemu graczowi, który został w licytacji, a nigdy nie podbijał</param>
    /// </summary>
    private void EndAuction(int placeId, float bid, bool offerForLastBidder = true)
    {
        if (auctionPopup != null)
        {
            auctionPopup.onClose = null;
        }
        if (bidders.Count > 0)
        {
            string    auctionEndedMessage = SettingsController.instance.languageController.GetWord("AUCTION_ENDED");
            IconPopup auctionEnded        = new IconPopup(IconPopupType.Auction, auctionEndedMessage);

            if (GameplayController.instance.session.FindPlayer(bidders[0]).NetworkPlayer.IsLocal)
            {
                if (raisers.Contains(bidders[0]))
                {
                    AquireBuilding(GameplayController.instance.session.FindPlayer(bidders[0]), placeId);
                }
                else if (offerForLastBidder && GameplayController.instance.session.FindPlayer(bidders[0]).Money >= bid)
                {
                    string message = SettingsController.instance.languageController.GetWord("DO_YOU_WANT_TO_BUY") + " " + GameplayController.instance.board.GetField(placeId).GetFieldName() + "\n" + SettingsController.instance.languageController.GetWord("PRICE") + ":" + bid + "?";

                    Popup.PopupAction yesAction = delegate(Popup source)
                    {
                        AquireBuilding(GameplayController.instance.session.localPlayer, placeId);
                    };

                    QuestionPopup buyQuestion = QuestionPopup.CreateYesNoDialog(message, yesAction);
                    PopupSystem.instance.AddPopup(buyQuestion);
                }
            }

            if (GameplayController.instance.session.playerCount > 2)
            {
                PopupSystem.instance.AddPopup(auctionEnded);
            }
        }

        PopupSystem.instance.ClosePopup(auctionPopup);
        ClearAuction();
        GameplayController.instance.flow.Resume();
    }
Ejemplo n.º 10
0
    private void OnMessageArrival(string[] message, IconPopupType iconType)
    {
        string             unpackedMessage = "";
        LanguageController lang            = SettingsController.instance.languageController;

        foreach (string word in message)
        {
            if (lang.IsPacked(word))
            {
                unpackedMessage += lang.GetWord(lang.UnpackKey(word));
            }
            else
            {
                unpackedMessage += word;
            }
        }

        IconPopup messagePopup = new IconPopup(iconType, unpackedMessage);

        PopupSystem.instance.AddPopup(messagePopup);
    }