//this is the old Main() public static void Game() { KeyboardInerface keyboard = new KeyboardInerface(); GameEngine engine = new GameEngine(keyboard, RefreshRate, FieldRows, FieldCols); keyboard.OnUpPressed += (sender, eventInfo) => { engine.MoveViking(Direction.Top); }; keyboard.OnRightPressed += (sender, eventInfo) => { engine.MoveViking(Direction.Right); }; keyboard.OnDownPressed += (sender, eventInfo) => { engine.MoveViking(Direction.Down); }; keyboard.OnLeftPressed += (sender, eventInfo) => { engine.MoveViking(Direction.Left); }; keyboard.OnActionPressed += (sender, eventInfo) => { engine.VikingShoot(); }; engine.Initialise(); engine.Run(); }
public GameEngine(KeyboardInerface keyboard, int refreshRate, int fieldRows, int fieldCols) { this.FieldRows = fieldRows; this.FieldCols = fieldCols; this.refreshRate = refreshRate; this.viking = new Viking(new Position(this.FieldCols / 2, this.FieldRows - 3)); this.keyboard = keyboard; this.noEnemies = false; this.random = new Random(); this.Score = 0; this.rockTexture = new char[,] { { '#', '#' }, { '#', '#' } }; this.enemyShpTexture = new char[,] { { '%', '%', '%' }, { ' ', '%', ' ' } }; }