Ejemplo n.º 1
0
        public override void MonsterEmotes(IMonster monster, bool friendSmile = true)
        {
            Debug.Assert(monster != null);

            gOut.Write("{0}{1} {2}{3} at you.",
                       Environment.NewLine,
                       monster.GetTheName(true),
                       monster.EvalReaction("growl", "look", friendSmile ? "smile" : "wave"),
                       monster.EvalPlural("s", ""));
        }
Ejemplo n.º 2
0
        public override void MonsterSmiles(IMonster monster)
        {
            Debug.Assert(monster != null);

            gOut.Write("{0}{1} {2}{3} at you.",
                       Environment.NewLine,
                       monster.GetTheName(true),
                       monster.EvalFriendliness("growl", "look", "smile"),
                       monster.EvalPlural("s", ""));
        }
Ejemplo n.º 3
0
        public virtual void PrintPolitelyRefuses(IMonster monster)
        {
            Debug.Assert(monster != null);

            gOut.Print("{0} politely refuse{1}.", monster.GetTheName(true), monster.EvalPlural("s", ""));
        }
Ejemplo n.º 4
0
        public override void MonsterEmotes(IMonster monster, bool friendSmile = true)
        {
            Debug.Assert(monster != null);

            var rl = RollDice(1, 100, 0);

            // Giant rat

            if (monster.Uid == 1)
            {
                gOut.Write("{0}{1} {2} at you.", Environment.NewLine, monster.GetTheName(true), rl > 80 ? "squeals" : rl > 50 ? "squeaks" : "hisses");
            }

            // Skeleton/Gargoyle

            else if ((monster.Uid == 3 || monster.Uid == 8) && rl > 50)
            {
                gOut.Write("{0}{1} hisses at you.", Environment.NewLine, monster.GetTheName(true));
            }

            // Zombie

            else if (monster.Uid == 4 && rl > 50)
            {
                gOut.Write("{0}{1} snarls at you.", Environment.NewLine, monster.GetTheName(true));
            }

            // Ghoul/Ghast

            else if (monster.Uid == 6 || monster.Uid == 7)
            {
                gOut.Write("{0}{1} {2} at you.", Environment.NewLine, monster.GetTheName(true), rl > 80 ? "hisses" : rl > 50 ? "snarls" : "growls");
            }

            // Shadow/Specter/Wraith/Dark Hood/Animated suit of armor

            else if (monster.Uid == 9 || monster.Uid == 14 || monster.Uid == 16 || monster.Uid == 21 || monster.Uid == 23)
            {
                gOut.Write("{0}{1} gestures at you.", Environment.NewLine, monster.GetTheName(true));
            }

            // Will-o'-the-wisp

            else if (monster.Uid == 10)
            {
                gOut.Write("{0}{1} {2} at you.", Environment.NewLine, monster.GetTheName(true), rl > 50 ? "brightly flashes" : "hums");
            }

            // Pocket dragon/Giant crayfish/Giant scorpion

            else if ((monster.Uid == 24 && monster.Reaction != Friendliness.Neutral) || monster.Uid == 37 || monster.Uid == 39)
            {
                gOut.Write("{0}{1} hisses at you.", Environment.NewLine, monster.GetTheName(true));
            }

            // Beholder

            else if (monster.Uid == 36 && monster.Reaction == Friendliness.Friend)
            {
                gOut.Write("{0}{1} smiles back.", Environment.NewLine, monster.GetTheName(true));
            }

            // Griffin/Small griffin

            else if (monster.Uid == 40 || (monster.Uid == 41 && monster.Reaction != Friendliness.Neutral))
            {
                gOut.Write("{0}{1} {2} at you.", Environment.NewLine, monster.GetTheName(true), rl > 80 ? monster.EvalPlural("screeches", "screech") : rl > 50 ? monster.EvalPlural("squawks", "squawk") : monster.EvalPlural("hisses", "hiss"));
            }

            // Jaldi'al the lich

            else if (monster.Uid == 43)
            {
                gOut.Write("{0}{1} {2} at you.", Environment.NewLine, monster.GetTheName(true), rl > 80 ? "hollowly chuckles" : rl > 50 ? "gestures" : "glares");
            }

            // Jungle bekkah

            else if (monster.Uid == 44)
            {
                gOut.Write("{0}{1} {2} at you.", Environment.NewLine, monster.GetTheName(true), rl > 80 ? monster.EvalPlural("roars", "roar") : rl > 50 ? monster.EvalPlural("snarls", "snarl") : monster.EvalPlural("hisses", "hiss"));
            }

            // Non-emoting monsters

            else if (Constants.NonEmotingMonsterUids.Contains(monster.Uid))
            {
                gOut.Write("{0}{1} {2} not responsive.", Environment.NewLine, monster.GetTheName(true), monster.EvalPlural("is", "are"));
            }
            else
            {
                base.MonsterEmotes(monster, friendSmile);
            }
        }