Beispiel #1
0
        private void playerluckyDiceHanler(object sender, EventArgs e)
        {
            //2.7 Extend use of Delegates and Events by adding at least two new Events to the game.
            Player p = (Player)sender;

            if (p.getLastMove() == 6)
            {
                Console.WriteLine("Congratulations! You are a lucky dog! for Dice 6");
                p.receive(66);
            }
        }
 public override string landOn(ref Player player)
 {
     //if is a benefit player receives amount else pay amount
     if (this.isBenefitNotPenalty)
     {
         player.receive(this.penaltyOrBenefitAmount);
         return base.landOn(ref player) + String.Format("{0} has recieved {2}.", player.getName(), this.getName(), this.penaltyOrBenefitAmount);
     }
     else
     {
         player.pay(this.penaltyOrBenefitAmount);
         return base.landOn(ref player) + String.Format("{0} has paid {2}.", player.getName(), this.getName(), this.penaltyOrBenefitAmount);
     }
 }
Beispiel #3
0
 public override string landOn(ref Player player)
 {
     //if is a benefit player receives amount else pay amount
     if (this.isBenefitNotPenalty)
     {
         player.receive(this.penaltyOrBenefitAmount);
         return(base.landOn(ref player) + String.Format("{0} has recieved {2}.", player.getName(), this.getName(), this.penaltyOrBenefitAmount));
     }
     else
     {
         player.pay(this.penaltyOrBenefitAmount);
         return(base.landOn(ref player) + String.Format("{0} has paid {2}.", player.getName(), this.getName(), this.penaltyOrBenefitAmount));
     }
 }
        /*----- METHOD TO MORTGAGE PROEPRTY -----*/
        public void mortgageProperty(Player player)
        {
            decimal playerBalBeforeMortgage = player.getBalance();

            string sPropPrompt = String.Format("{0}\tPlease select a property to mortgage:", this.playerPrompt(player));
            //string sPlayerPrompt = String.Format("{0}\tPlease select a player to trade with:", this.playerPrompt(player));

            //get selected property to mortgage
            TradeableProperty propertyToMortgage = (TradeableProperty)this.displayPropertyChooser(player.getPropertiesOwnedFromBoard(), sPropPrompt);

            //if dont own any properties
            if (player.getPropertiesOwnedFromBoard().Count == 0 /*propertyToMortgage == null*/)
            {
                //write message
                Console.WriteLine("\n{0}You do not own any properties to mortgage.", playerPrompt(player));
                //return from method
                return;
            }

            decimal mortgageValue = propertyToMortgage.calculateMortgage(propertyToMortgage);

            Console.WriteLine("\tProperty you have chosen to mortgage is: " + propertyToMortgage.getName() + ", \tit's purchase price is $" + propertyToMortgage.getPrice());

            Console.WriteLine("\n\tMortgage value is: " + mortgageValue);

            //check if property is already mortgaged
            if (propertyToMortgage.getMortgagedStatus() == false)
            {
                //make the bank pay the player mortgageValue
                Banker.access().pay(mortgageValue);
                //allocate mortgageValue to player
                player.receive(mortgageValue);

                Console.WriteLine("\n\tYour new balance is: " + player.getBalance());

                propertyToMortgage.setPropertyIsMortgaged();
                Console.WriteLine("\tyou've successfully mortaged " + propertyToMortgage.getName());
            }
            else
            {
                Console.WriteLine("\n\t" + propertyToMortgage.getName() + " has already been mortgaged!");
            }
        }