public ChampionOne(Game1 game, int xLoc, int yLoc, int playerIndex) : base(game, xLoc, yLoc) { map = (BattleMap)game.Services.GetService(typeof(BattleMap)); gameStateManager = (GameStateManager)game.Services.GetService(typeof(GameStateManager)); screenManager = (ScreenManager)game.Services.GetService(typeof(ScreenManager)); this.game = game; walk = new Texture2D[2]; attack = new Texture2D[5]; PlayerIndex = playerIndex; Initialize(); LoadContent(); this.Move(xLoc, yLoc); PlayerIndex = playerIndex; HasMoved = false; HasAttacked = false; Alive = true; CharType = "champion"; MoveDistance = 4; HealthPoints = 50; Strength = 20; PDefense = 15; MDefense = 15; Dexterity = 10; AttackRange = 1; CurrentHealth = HealthPoints; Gold = 500; Level = 2; Experience = 0; }
/// <summary> /// The constructor is private: loading screens should /// be activated via the static Load method instead. /// </summary> private LoadingScreen(ScreenManager screenManager, bool loadingIsSlow, GameScreen[] screensToLoad) { this.loadingIsSlow = loadingIsSlow; this.screensToLoad = screensToLoad; TransitionOnTime = TimeSpan.FromSeconds(0.5); }
public OpponentAI(Game game) : base(game) { playerManager = (PlayerManager)game.Services.GetService(typeof(PlayerManager)); map = (BattleMap)game.Services.GetService(typeof(BattleMap)); charList = (List<Character>)game.Services.GetService(typeof(List<Character>)); screenManager = (ScreenManager)game.Services.GetService(typeof(ScreenManager)); gameStateManager = (GameStateManager)game.Services.GetService(typeof(GameStateManager)); this.game = game; }
public EndingScreen(Game game) : base("") { this.game = game; screenManager = (ScreenManager)game.Services.GetService(typeof(ScreenManager)); MenuEntry exit = new MenuEntry("Exit Game"); exit.Selected += ExitSelected; MenuEntries.Add(exit); }
public Cursor(Game game) : base(game) { pos = new Vector2(20, 0); this.game = game; Initialize(); LoadContent(); map = (BattleMap)game.Services.GetService(typeof(BattleMap)); currentTile = SelectTile(0, 0); screenManager = (ScreenManager)game.Services.GetService(typeof(ScreenManager)); gameStateManager = (GameStateManager)game.Services.GetService(typeof(GameStateManager)); playerManager = (PlayerManager)game.Services.GetService(typeof(PlayerManager)); }
/// <summary> /// Activates the loading screen. /// </summary> public static void Load(ScreenManager screenManager, bool loadingIsSlow, PlayerIndex? controllingPlayer, params GameScreen[] screensToLoad) { // Tell all the current screens to transition off. foreach (GameScreen screen in screenManager.GetScreens()) screen.ExitScreen(); // Create and activate the loading screen. LoadingScreen loadingScreen = new LoadingScreen(screenManager, loadingIsSlow, screensToLoad); screenManager.AddScreen(loadingScreen, controllingPlayer); }
public PopupScreen(Game game, Character character) { cursor = (Cursor)game.Services.GetService(typeof(Cursor)); playerManager = (PlayerManager)game.Services.GetService(typeof(PlayerManager)); screenManager = (ScreenManager)game.Services.GetService(typeof(ScreenManager)); map = (BattleMap)game.Services.GetService(typeof(BattleMap)); gameStateManager = (GameStateManager)game.Services.GetService(typeof(GameStateManager)); selectedChar = character; selectScreen = new SelectScreen(game, character); screenManager.AddScreen(selectScreen, null); const string usageText = "A: Move" + "\nX: Attack" + "\nStart: End Turn" + "\nB: Cancel"; this.message = message + usageText; if (selectedChar == null) { this.message = "Start: End Turn" + "\nB: Cancel"; } else if (selectedChar.CharType == "champion") { this.message += "\nY: Buy Mercenary"; } IsPopup = true; TransitionOnTime = TimeSpan.FromSeconds(0.2); TransitionOffTime = TimeSpan.FromSeconds(0.2); menuMove = new InputAction( new Buttons[] { Buttons.A }, new Keys[] { Keys.A }, true); menuAttack = new InputAction( new Buttons[] { Buttons.X, }, new Keys[] { Keys.X }, true); menuCancel = new InputAction( new Buttons[] { Buttons.B, }, new Keys[] { Keys.B }, true); menuEndTurn = new InputAction( new Buttons[] { Buttons.Start, }, new Keys[] { Keys.Enter }, true); menuBuy = new InputAction( new Buttons[] { Buttons.Y, }, new Keys[] { Keys.Y }, true); }
public BuyScreen(Game game, Character character) : base("Hire a Mercenary") { cursor = (Cursor)game.Services.GetService(typeof(Cursor)); playerManager = (PlayerManager)game.Services.GetService(typeof(PlayerManager)); map = (BattleMap)game.Services.GetService(typeof(BattleMap)); charList = (List<Character>)game.Services.GetService(typeof(List<Character>)); screenManager = (ScreenManager)game.Services.GetService(typeof(ScreenManager)); champion = character; this.game = game; MenuEntry buyKnight = new MenuEntry("Hire Knight, Cost: 100"); MenuEntry buyRanger = new MenuEntry("Hire Ranger, Cost: 100"); MenuEntry buyBarbarian = new MenuEntry("Hire Barbarian, Cost: 100"); MenuEntry buyMage = new MenuEntry("Hire Mage, Cost: 150"); MenuEntry buyPriest = new MenuEntry("Hire Spirit Priest, Cost: 150"); MenuEntry cancel = new MenuEntry("Cancel"); gameStateManager = (GameStateManager)game.Services.GetService(typeof(GameStateManager)); gameStateManager.State = GameState.buying; // Hook up menu event handlers. buyKnight.Selected += buyKnightSelected; buyRanger.Selected += buyRangerSelected; buyBarbarian.Selected += buyBarbarianSelected; buyMage.Selected += buyMageSelected; buyPriest.Selected += buyPriestSelected; cancel.Selected += cancelSelected; // Add entries to the menu. MenuEntries.Add(buyKnight); MenuEntries.Add(buyRanger); MenuEntries.Add(buyBarbarian); MenuEntries.Add(buyMage); MenuEntries.Add(buyPriest); MenuEntries.Add(cancel); /*if (aiFlag == true) { BuyRandom(); }*/ }
public Game1() { graphics = new GraphicsDeviceManager(this); Content.RootDirectory = "Content"; Services.AddService(typeof(List<Character>), charList); gameStateManager = new GameStateManager(); gameStateManager.State = GameState.mainMenu; Services.AddService(typeof(GameStateManager), gameStateManager); screenManager = new ScreenManager(this); Components.Add(screenManager); Services.AddService(typeof(ScreenManager), screenManager); screenManager.AddScreen(new OptionsScreen(this), null); playerManager = new PlayerManager(this); Services.AddService(typeof(PlayerManager), playerManager); AddInitialScreens(); graphics.PreferredBackBufferWidth = 1280; graphics.PreferredBackBufferHeight = 720; }