Esempio n. 1
0
        public override UserMessage Show(CastleItem item)
        {
            UserMessage returnMessage = new UserMessage();

            if (showItem == null)
            {
                returnMessage.AddLine(String.Format("The {0}", Name));
                returnMessage.AddLine("looks at you");
                returnMessage.AddLine("Funny!");
            }
            else
            {
                if (String.Compare(item.InventoryName, showItem, StringComparison.CurrentCultureIgnoreCase) == 0)
                {
                    this.IsVisible = false;
                    returnMessage.AddLine(showDescription);
                }
                else
                {
                    returnMessage.AddLine(String.Format("The {0}", Name));
                    returnMessage.AddLine("looks at you");
                    returnMessage.AddLine("Funny!");
                }
            }
            return(returnMessage);
        }
Esempio n. 2
0
        public virtual UserMessage Hit(CastleItem sword)
        {
            UserMessage returnMessage = new UserMessage();

            if (sword == null)
            {
                returnMessage.AddLine("You have no");
                returnMessage.AddLine("Weapon!");
            }
            else if (this.Health > 0)
            {
                Health--;
                if (this.Health == 0)
                {
                    IsAlive = false;
                    returnMessage.AddLine("You Killed");
                    returnMessage.AddLine(String.Format("the {0}", Name));
                }
                else
                {
                    returnMessage.AddLine("You Struck");
                    returnMessage.AddLine(String.Format("the {0}", Name));
                }
            }
            return(returnMessage);
        }
Esempio n. 3
0
        public virtual UserMessage Show(CastleItem item)
        {
            UserMessage returnMessage = new UserMessage();

            returnMessage.AddLine(String.Format("The {0}", Name));
            returnMessage.AddLine("looks at you");
            returnMessage.AddLine("Funny!");

            return(returnMessage);
        }
Esempio n. 4
0
        public override UserMessage Hit(CastleItem sword)
        {
            UserMessage returnMessage = new UserMessage();

            returnMessage.AddLine(String.Format("The {0}", Name));
            returnMessage.AddLine("is blocking");
            returnMessage.AddLine("your way. He");
            returnMessage.AddLine("can't be hurt.");

            return(returnMessage);
        }
Esempio n. 5
0
        public override UserMessage Play(CastleItem item)
        {
            UserMessage returnMessage = null;

            if (playItem != null)
            {
                if (String.Compare(item.InventoryName, playItem, StringComparison.CurrentCultureIgnoreCase) == 0)
                {
                    returnMessage  = new UserMessage();
                    this.IsVisible = false;
                    returnMessage.AddLine(showDescription);
                }
            }
            return(returnMessage);
        }
Esempio n. 6
0
        private void MoveMonster(Monster monster)
        {
            Point previewMove = monster.PreviewMove(player.Position);

            if (previewMove.X == player.Position.X && previewMove.Y == player.Position.Y)
            {
                UserMessage message   = new UserMessage();
                bool        hasHelmet = false;
                CastleItem  helmet    = ItemManager.FindItemInInventory("helmet");
                if (helmet != null)
                {
                    hasHelmet = true;
                }

                if (player.Hit(hasHelmet))
                {
                    message.AddLine(String.Format("The {0}", monster.Name));
                    message.AddLine("killed you!");
                    PrintUserMessage(message);
                    GameResult = GameResult.Failed;
                    EndGame();
                    gameOver = true;
                }
                else
                {
                    message.AddLine(String.Format("The {0}", monster.Name));
                    message.AddLine("struck you!");
                    if (hasHelmet)
                    {
                        message.AddLine("The Helmet");
                        message.AddLine("helped.");
                    }

                    PrintUserMessage(message);
                }
            }
            else
            {
                switch (CollisionDetection(previewMove))
                {
                case ObjectType.None:
                    monster.Move(previewMove);
                    break;
                }
            }
        }
Esempio n. 7
0
 public virtual UserMessage Play(CastleItem item)
 {
     return(null);
 }