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}*"); }
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(); } }
//------------------------------------------------------------------------/ // 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); }