public override void SuccessAttack(Actor actor)
        {
            var item = LootEvent.GetWeightedRandomItem();

            Level += item.value + 2;
            Write($"Du beseiret *{actor.Name}* (+2 level).", $"Du fant {item.name} **({item.value:+0;-#} level)**", $"Du er level *{Level}*");
        }
        public override void FailAttack(Actor actor)
        {
            var item = LootEvent.GetWeightedRandomItem();

            Level += item.value;
            Write($"{actor.Name} løp vekk.", $"Du fant {item.name} **({item.value:+0;-#} level)**", $"Du er level *{Level}*");
        }
        public override void Loot(Actor player1)
        {
            var item1 = LootEvent.GetWeightedRandomItem();
            var item2 = LootEvent.GetWeightedRandomItem();

            Level += item1.value + item2.value;
            Write($"{player1.Name} ville ikke være kompis og stakk av.", $"Du fant {item1.name} **({(item1.value+1):+0;-#} level)** og {item2.name} **({(item2.value + 1):+0;-#} level)** istedet.", $"Du er level *{Level}*");
        }
예제 #4
0
        static async Task Main(string[] args)
        {
            NothingHappenedEvent.GetWeightedRandomMessage();
            LootEvent.GetWeightedRandomItem();
            Encounter.GetWeightedRandomMessage();

            WriteLine("Hunger Games");

            var telegramGameHost = new TelegramGameHost();

            telegramGameHost.Start();

            Thread.Sleep(int.MaxValue);

            Game game = new Game(new ConsoleNotificator());

            while (true)
            {
                game.Players.Add(new ConsolePlayer(game));
                await game.StartGame();
            }
        }
예제 #5
0
        //------------------------------------------------------------------------/
        // Properties
        //------------------------------------------------------------------------/

        //------------------------------------------------------------------------/
        // Methods
        //------------------------------------------------------------------------/
        public override void Loot(LootRange range)
        {
            // Send the loot event to the space. Any inventories will pick it up.
            var lootEvent = new LootEvent();

            lootEvent.Object = this;
            if (range == LootRange.Space)
            {
                Scene.Dispatch <LootEvent>(lootEvent);
            }

            // Send a system message?
            if (IsAnnouncing)
            {
                //var message = new Message();
                //message.Title = "Item looted!";
                //message.Description = "You looted <b>" + Item.Name + "</b> !";
                //SystemMessageDispatcher.Dispatch(message);
            }

            // Depending on the type of item looted, send a loot event
            Destroy(this.gameObject);
        }