private int TalkToAction() { int enemyId = 0; int npcToTalkToId = _gameConsoleView.DisplayGetNpcToTalkTo(); if (npcToTalkToId != 0) { Npc npc = _gameUniverse.GetNpcById(npcToTalkToId); if (npc is Civilian) { Civilian civilian = npc as Civilian; _gameTraveler.ExperiencePoints += civilian.ExperiencePoints; _gameTraveler.Health += civilian.HealthPoints; if (civilian.HasKey) { foreach (SpaceTimeLocation location in _gameUniverse.SpaceTimeLocations) { if (!location.Accessible) { location.Accessible = true; } } } _gameConsoleView.DisplayTalkTo(npc); } else if (npc is Enemy) { Enemy enemy = npc as Enemy; ActionMenu.currentMenu = ActionMenu.CurrentMenu.AttackMenu; _gameConsoleView.DisplayTalkToEnemy(enemy); enemyId = enemy.Id; } } return(enemyId); }
/// <summary> /// process the Talk To action /// </summary> private void TalkToAction() { // // display a list of NPCs in space-time location and get a player choice // int npcToTalkToId = _gameConsoleView.DisplayGetNpcToTalkTo(); // // display NPC's message // if (npcToTalkToId != 0) { // // get the NPC from the universe // Npc npc = _gameUniverse.GetNpcById(npcToTalkToId); // // display information for the object chosen // _gameConsoleView.DisplayTalkTo(npc); } }