Aliendreamer

engine class

Mar 20th, 2018
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.73 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace DungeonsAndCodeWizards.core
  7. {
  8.     public class Engine
  9.     {
  10.         private DungeonMaster DungeonMaster;
  11.  
  12.  
  13.         public Engine()
  14.         {
  15.             this.DungeonMaster = new DungeonMaster();
  16.         }
  17.  
  18.         public void  OutputFromCommand(string result)
  19.         {
  20.             Console.WriteLine(result);
  21.         }
  22.         public void OutputFromCommand(bool result)
  23.         {
  24.             Console.WriteLine(result);
  25.         }
  26.         public void Run()
  27.         {
  28.             string input;
  29.  
  30.             while (string.IsNullOrEmpty(input = Console.ReadLine()) || !DungeonMaster.IsGameOver())
  31.             {
  32.                 string[] tokens = input.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).ToArray();
  33.                 string command = tokens[0];
  34.                 var arguments = tokens.Skip(1).ToArray();
  35.  
  36.                 switch (command)
  37.                 {
  38.                     case "Join Party":
  39.                        OutputFromCommand( DungeonMaster.JoinParty(arguments));
  40.                         break;
  41.                     case "AddItemToPol":
  42.                         OutputFromCommand(DungeonMaster.AddItemToPool(arguments));
  43.                         break;
  44.                     case "PickUpItem":
  45.                         OutputFromCommand(DungeonMaster.PickUpItem(arguments));
  46.                         break;
  47.                     case "UseItem":
  48.                         OutputFromCommand(DungeonMaster.UseItem(arguments));
  49.                         break;
  50.                     case "UseItemOn":
  51.                         OutputFromCommand(DungeonMaster.UseItemOn(arguments));
  52.                         break;
  53.                     case "GiveCharacterItem":
  54.                         OutputFromCommand(DungeonMaster.GiveCharacterItem(arguments));
  55.                         break;
  56.                     case "GetStats":
  57.                         OutputFromCommand(DungeonMaster.GetStats());
  58.                         break;
  59.                     case "Attack":
  60.                         OutputFromCommand(DungeonMaster.Attack(arguments));
  61.                         break;
  62.                     case "Heal":
  63.                         OutputFromCommand(DungeonMaster.Heal(arguments));
  64.                         break;
  65.                     case "End Turn":
  66.                         OutputFromCommand(DungeonMaster.EndTurn(arguments));
  67.                         break;
  68.                     case "IsGameOver":
  69.                         OutputFromCommand(DungeonMaster.IsGameOver());
  70.                         break;
  71.                         default:
  72.                             throw  new
  73.  
  74.                 }
  75.  
  76.  
  77.             }
  78.  
  79.  
  80.  
  81.         }
  82.     }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment