public void DrawHUD(CustomSpriteBatch g, bool IsInEditMode, bool ShowBorderBoxes, bool ShowNextPositions) { g.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend, SamplerState.LinearClamp, DepthStencilState.None, RasterizerState.CullCounterClockwise); DrawBox(g, new Vector2(0, 0), Width / 2, 84, Color.Red); int PosX = 0; DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeHP, new Vector2(PosX + 75, 30), 100, 100); DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeEN, new Vector2(PosX + 75, 50), 100, 100); g.DrawString(fntFinlanderFont, "HP", new Vector2(PosX + 40, 20), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "5000/5000", new Vector2(PosX + 242, 17), Color.White); g.DrawString(fntFinlanderFont, "EN", new Vector2(PosX + 40, 40), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "200/200", new Vector2(PosX + 242, 37), Color.White); g.Draw(sprPixel, new Rectangle(PosX + 7, 30, 32, 32), Color.White); PosX = Width / 2 + 68; DrawBox(g, new Vector2(Width / 2, 0), Width / 2, 84, Color.Blue); DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeHP, new Vector2(PosX + 75, 30), 100, 100); DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeEN, new Vector2(PosX + 75, 50), 100, 100); g.DrawString(fntFinlanderFont, "HP", new Vector2(PosX + 40, 20), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "5000/5000", new Vector2(PosX + 242, 17), Color.White); g.DrawString(fntFinlanderFont, "EN", new Vector2(PosX + 40, 40), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "200/200", new Vector2(PosX + 242, 37), Color.White); g.Draw(sprPixel, new Rectangle(PosX + 7, 30, 32, 32), Color.White); g.Draw(sprInfinity, new Vector2((Width - sprInfinity.Width) / 2, 15), Color.White); DrawBox(g, new Vector2(0, Height - VNBoxHeight), Width, VNBoxHeight, Color.White); g.End(); }
private void DrawSpirits(CustomSpriteBatch g, float X, float Y, bool IsBeginDraw) { if (NeedToScrollSpirits && !IsBeginDraw) { g.Draw(RenderTargetSpirits, new Vector2(X, Y), Color.White); } else { for (int i = 0; i < Pilot.ArrayPilotSpirit.Length; ++i) { if (Pilot.ArrayPilotSpirit[i].IsUnlocked) { Color DrawColor = Color.White; if (!ArrayOriginalPilotSpirit[i]) { DrawColor = Color.LightGreen; } g.DrawString(fntFinlanderFont, Pilot.ArrayPilotSpirit[i].Name, new Vector2(X, Y + i * 25), DrawColor); } else { g.DrawString(fntFinlanderFont, "---", new Vector2(X, Y + i * 25), Color.White); } } } }
public override void Draw(CustomSpriteBatch g) { g.Draw(sprBackground, Vector2.Zero, Color.White); if (RoomType == RoomInformations.RoomTypeMission) { g.Draw(sprLicenseAll, new Rectangle(572, 16, 24, 24), new Rectangle(1 * 24, 0, 24, 24), Color.White); } else { g.Draw(sprTitleBattle, new Vector2(160, 16), Color.White); g.Draw(sprLicenseAll, new Rectangle(572, 16, 24, 24), new Rectangle(2 * 24, 0, 24, 24), Color.White); } g.DrawString(fntArial12, "Lv." + PlayerManager.OnlinePlayerLevel, new Vector2(610, 17), Color.White); g.DrawString(fntArial12, PlayerManager.OnlinePlayerName, new Vector2(670, 15), Color.White); g.End(); g.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend); DrawRooms(g); if (OnlineCommunicationClient != null) { ChatHelper.DrawChat(g, sprTabChat, fntArial12, OnlineCommunicationClient.Chat, ChatInput); } DrawPlayers(g); foreach (IUIElement ActiveButton in ArrayMenuButton) { ActiveButton.Draw(g); } }
public void DrawUI(CustomSpriteBatch g) { g.End(); g.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend); GameScreen.DrawBox(g, new Vector2(0, 0), Width / 2, 84, Color.Red); int PosX = 0; GameScreen.DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeHP, new Vector2(PosX + 75, 30), 100, 100); GameScreen.DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeEN, new Vector2(PosX + 75, 50), 100, 100); g.DrawString(fntFinlanderFont, "HP", new Vector2(PosX + 40, 20), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "5000/5000", new Vector2(PosX + 242, 17), Color.White); g.DrawString(fntFinlanderFont, "EN", new Vector2(PosX + 40, 40), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "200/200", new Vector2(PosX + 242, 37), Color.White); g.Draw(GameScreen.sprPixel, new Rectangle(PosX + 7, 30, 32, 32), Color.White); PosX = Width / 2 + 68; GameScreen.DrawBox(g, new Vector2(Width / 2, 0), Width / 2, 84, Color.Blue); GameScreen.DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeHP, new Vector2(PosX + 75, 30), 100, 100); GameScreen.DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeEN, new Vector2(PosX + 75, 50), 100, 100); g.DrawString(fntFinlanderFont, "HP", new Vector2(PosX + 40, 20), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "5000/5000", new Vector2(PosX + 242, 17), Color.White); g.DrawString(fntFinlanderFont, "EN", new Vector2(PosX + 40, 40), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "200/200", new Vector2(PosX + 242, 37), Color.White); g.Draw(GameScreen.sprPixel, new Rectangle(PosX + 7, 30, 32, 32), Color.White); g.Draw(sprInfinity, new Vector2((Width - sprInfinity.Width) / 2, 15), Color.White); GameScreen.DrawBox(g, new Vector2(0, Constants.Height - AnimationClass.VNBoxHeight), Width, AnimationClass.VNBoxHeight, Color.White); g.End(); g.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend); }
public override void Draw(CustomSpriteBatch g) { g.Draw(sprBackground, Vector2.Zero, Color.White); g.Draw(sprTeamSeparatorBlue, new Vector2(285, 220), Color.White); g.Draw(sprTeamSeparatorRed, new Vector2(55, 220), Color.White); g.Draw(sprActivePlayerIcon, new Vector2(570, 11), Color.White); DrawNumberRightAligned(g, fntTest, Room.MaxKill, new Vector2(700, 294)); DrawNumberRightAligned(g, fntTest, Room.MaxGameLengthInMinutes, new Vector2(700, 318)); g.DrawString(fntText, "Off", new Vector2(643, 355), Color.White); DrawNumberRightAligned(g, fntTest, Room.MaxNumberOfPlayer, new Vector2(753, 356)); g.Draw(sprMapImage, new Vector2(579, 437), Color.White); if (Room.MapPath != "Random") { g.Draw(MapTextOverlay, new Vector2(595, 486), Color.White); g.Draw(MapStar, new Vector2(616, 503), Color.White); MapLevelCategory.Draw(g, new Vector2(680, 513), Color.White); g.Draw(MapStar, new Vector2(740, 503), Color.White); } foreach (InteractiveButton ActiveButton in ArrayMenuButton) { ActiveButton.Draw(g); } if (OnlineCommunicationClient != null) { ChatHelper.DrawChat(g, sprTabChat, fntText, OnlineCommunicationClient.Chat, ChatInput); } ModeSelectTextButton.Draw(g); g.DrawString(fntText, Room.RoomName, new Vector2(75, 7), Color.White); int RedPlayerCount = 0; int BluePlayerCount = 0; for (int P = 0; P < Room.ListRoomPlayer.Count; ++P) { int DrawX = 0; int DrawY = 0; if (Room.ListRoomPlayer[P].Team == 0) { DrawX = 155 + (PlayerInfo.SpriteWidth + 40) * (RedPlayerCount % 2); DrawY = 125 + (RedPlayerCount / 2) * 64; ++RedPlayerCount; } else if (Room.ListRoomPlayer[P].Team == 1) { DrawX = 155 + (PlayerInfo.SpriteWidth + 40) * (BluePlayerCount % 2); DrawY = 275 + (BluePlayerCount / 2) * 64; ++BluePlayerCount; } DrawPlayerBox(g, DrawX, DrawY, Room.ListRoomPlayer[P], Room.ListRoomPlayer[P].Team == 1 || !Room.UseTeams); } }
protected void BattleSumaryDrawWingmanRight(CustomSpriteBatch g, int DrawX, int DrawY, Unit UnitToDraw, Color HitRateColor) { DrawBox(g, new Vector2(DrawX, DrawY), 70, 65, Color.Blue); DrawBox(g, new Vector2(DrawX + 70, DrawY), 240, 65, Color.Blue); g.DrawString(fntFinlanderFont, UnitToDraw.UnitStat.Name, new Vector2(DrawX + 80, DrawY + 5), Color.White); g.DrawString(fntFinlanderFont, UnitToDraw.HP.ToString(), new Vector2(DrawX + 80, DrawY + 27), Color.White); if (UnitToDraw.BattleDefenseChoice == Unit.BattleDefenseChoices.Attack) { //Draw the hit rate %. g.DrawString(fntFinlanderFont, UnitToDraw.AttackAccuracy, new Vector2(DrawX + 35, DrawY + 19), HitRateColor); //Draw the EN cost. if (UnitToDraw.CurrentAttack.ENCost > 0) { DrawENRemaining(g, DrawX + 70, DrawY, UnitToDraw); } } else if (UnitToDraw.BattleDefenseChoice == Unit.BattleDefenseChoices.Defend) { g.DrawString(fntFinlanderFont, "DEF", new Vector2(DrawX + 10, DrawY + 17), Color.White); } else if (UnitToDraw.BattleDefenseChoice == Unit.BattleDefenseChoices.Evade) { g.DrawString(fntFinlanderFont, "EVA", new Vector2(DrawX + 10, DrawY + 17), Color.White); } }
private void DrawPartMenu(CustomSpriteBatch g, bool ShowListPartCursor) { Unit ActiveUnit = SelectedUnit; DrawUnitInfo(g, 0); int Y = 5; DrawBox(g, new Vector2(325, Y), 310, 315, Color.White); g.DrawString(fntFinlanderFont, "REMOVE PART", new Vector2(330, Y), Color.Red); g.DrawStringRightAligned(fntFinlanderFont, CurrentPagePart + "/" + PageMaxPart, new Vector2(625, Y), Color.Yellow); foreach (PartInfo ActivePart in ListPartInfo) { if (ActivePart.ActivePart.Quantity > 0) { g.DrawString(fntFinlanderFont, ActivePart.ActivePart.Name, new Vector2(330, Y += LineSpacing), Color.White); g.DrawStringRightAligned(fntFinlanderFont, ActivePart.ListUnit.Count + "/" + ActivePart.ActivePart.Quantity, new Vector2(625, Y), Color.White); } else { g.DrawString(fntFinlanderFont, "--------", new Vector2(330, Y += LineSpacing), Color.White); g.DrawStringRightAligned(fntFinlanderFont, "-/-", new Vector2(625, Y), Color.White); } } Y = 305; DrawBox(g, new Vector2(325, Y + 20), 310, 150, Color.White); if (ShowListPartCursor) { g.Draw(sprPixel, new Rectangle(330, 10 + CursorIndexListPart * LineSpacing, 300, LineSpacing), Color.FromNonPremultiplied(255, 255, 255, 127)); } }
private void DrawUnitInfo(CustomSpriteBatch g, int StartX) { g.DrawString(fntFinlanderFont, SelectedUnit.FullName, new Vector2(StartX + 15, 40), Color.White); g.Draw(SelectedUnit.SpriteUnit, new Vector2(StartX + 30, 100), Color.White); int Y = 155; DrawBox(g, new Vector2(StartX + 10, Y + LineSpacing), 310, 85, Color.White); for (int P = 0; P < SelectedUnit.ArrayParts.Length; ++P) { if (SelectedUnit.ArrayParts[P] != null) { g.DrawString(fntFinlanderFont, SelectedUnit.ArrayParts[P].Name, new Vector2(StartX + 15, Y += LineSpacing), Color.White); } else { g.DrawString(fntFinlanderFont, "None", new Vector2(StartX + 15, Y += LineSpacing), Color.White); } } g.Draw(sprPixel, new Rectangle(StartX + 15, 180 + CursorIndexUnitPart * LineSpacing, 300, LineSpacing), Color.FromNonPremultiplied(255, 255, 255, 127)); Y += 15; DrawBox(g, new Vector2(StartX + 10, Y + LineSpacing), 310, 215, Color.White); g.DrawString(fntFinlanderFont, "HP", new Vector2(StartX + 15, Y += LineSpacing), Color.White); DrawStatChange(g, CurrentMaxHP, SelectedUnit.MaxHP, StartX + 150, Y); g.DrawString(fntFinlanderFont, "EN", new Vector2(StartX + 15, Y += LineSpacing), Color.White); DrawStatChange(g, CurrentMaxEN, SelectedUnit.MaxEN, StartX + 150, Y); g.DrawString(fntFinlanderFont, "Armor", new Vector2(StartX + 15, Y += LineSpacing), Color.White); DrawStatChange(g, CurrentMaxArmor, SelectedUnit.Armor, StartX + 150, Y); g.DrawString(fntFinlanderFont, "Mobility", new Vector2(StartX + 15, Y += LineSpacing), Color.White); DrawStatChange(g, CurrentMaxMobility, SelectedUnit.Mobility, StartX + 150, Y); g.DrawString(fntFinlanderFont, "MV", new Vector2(StartX + 15, Y += LineSpacing), Color.White); DrawStatChange(g, CurrentMaxMV, SelectedUnit.MaxMovement, StartX + 150, Y); g.DrawString(fntFinlanderFont, "Move Type", new Vector2(StartX + 15, Y += LineSpacing), Color.White); if (ListTerrainChoices.Contains("Air")) { g.Draw(sprSky, new Vector2(StartX + 150, Y + 7), Color.White); } else { g.Draw(sprLand, new Vector2(StartX + 150, Y + 7), Color.White); } if (SelectedUnit.ListTerrainChoices.Contains("Air")) { g.Draw(sprSky, new Vector2(StartX + 230, Y + 7), Color.White); } else { g.Draw(sprLand, new Vector2(StartX + 230, Y + 7), Color.White); } g.DrawString(fntFinlanderFont, "Terrain", new Vector2(StartX + 15, Y += LineSpacing), Color.White); DrawTerrainChange(g, "Air", sprSky, StartX + 40, Y + 28); DrawTerrainChange(g, "Land", sprLand, StartX + 90, Y + 28); DrawTerrainChange(g, "Sea", sprSea, StartX + 140, Y + 28); DrawTerrainChange(g, "Space", sprSpace, StartX + 190, Y + 28); }
public override void DrawPlayers(CustomSpriteBatch g) { for (int P = 0; P < ActiveMap.ListPlayer.Count; P++) { g.Draw(GameScreen.sprPixel, new Rectangle((int)ActiveMap.ListPlayer[P].GamePiece.X * ActiveMap.TileSize.X, (int)ActiveMap.ListPlayer[P].GamePiece.Y * ActiveMap.TileSize.Y, ActiveMap.TileSize.X / 2, ActiveMap.TileSize.Y / 2), Color.FromNonPremultiplied(127, 127, 127, 127)); g.DrawString(ActiveMap.fntArial12, "P", new Vector2(ActiveMap.ListPlayer[P].GamePiece.X * ActiveMap.TileSize.X + 2, ActiveMap.ListPlayer[P].GamePiece.Y * ActiveMap.TileSize.Y), Color.Red); } for (int X = MapSize.X - 1; X >= 0; --X) { for (int Y = MapSize.Y - 1; Y >= 0; --Y) { if (ActiveMap.GetTerrain(X, Y, 0).DefendingCreature != null) { g.Draw(GameScreen.sprPixel, new Rectangle((int)X * ActiveMap.TileSize.X + 16, (int)Y * ActiveMap.TileSize.Y, ActiveMap.TileSize.X / 2, ActiveMap.TileSize.Y / 2), Color.FromNonPremultiplied(127, 127, 127, 127)); g.DrawString(ActiveMap.fntArial12, "C", new Vector2(X * ActiveMap.TileSize.X + 2 + 16, Y * ActiveMap.TileSize.Y), Color.Red); } } } }
private void DrawMenuItem(CustomSpriteBatch g, int ItemIndex, int X, int Y) { Unit ActiveUnit = ListVisibleUnit[ItemIndex]; int SelectedUnitIndex = ListSelectedUnit.IndexOf(ActiveUnit); g.Draw(GameScreen.sprPixel, new Rectangle(X, Y, 30, 30), Color.Black); if (SelectedUnitIndex >= 0) { g.Draw(GameScreen.sprPixel, new Rectangle(X + 1, Y + 1, 28, 28), Color.Orange); g.DrawStringMiddleAligned(fntFinlanderFont, SelectedUnitIndex.ToString(), new Vector2(X + 14, Y), Color.White); } else { g.Draw(GameScreen.sprPixel, new Rectangle(X + 1, Y + 1, 28, 28), Color.White); } g.Draw(ActiveUnit.SpriteMap, new Vector2(X + 30, Y), Color.White); g.DrawString(fntFinlanderFont, ActiveUnit.FullName, new Vector2(X + 70, Y), Color.White); GameScreen.DrawTextRightAligned(g, ActiveUnit.MaxHP.ToString(), new Vector2(340, Y), Color.White); GameScreen.DrawTextRightAligned(g, ActiveUnit.MaxEN.ToString(), new Vector2(400, Y), Color.White); if (ActiveUnit.Pilot != null) { g.DrawString(fntFinlanderFont, ActiveUnit.PilotName, new Vector2(440, Y), Color.White); g.DrawStringRightAligned(fntFinlanderFont, ActiveUnit.PilotLevel.ToString(), new Vector2(620, Y), Color.White); } }
private void DrawText(CustomSpriteBatch g, Vector2 Position, string Text) { //If there's no linked dialogs. if (CurrentDialog.ListNextDialog.Count == 0 || ListDialog[CurrentDialog.ListNextDialog[0]].TextPreview == "") { g.DrawString(fntFinlanderFont, Text, new Vector2(Position.X, Position.Y), Color.White); } else { //Draw the text. g.DrawString(fntFinlanderFont, Text, new Vector2(Position.X, Position.Y), Color.White); //Get the Y position from where to draw the linked Dialogs TextPreview. int TextEndY = (int)fntFinlanderFont.MeasureString(CurrentDialog.Text).Y; //Draw the linked Dialogs TextPreview. for (int i = DialogChoiceMinIndex, D = 0; D < MaxDialogChoice; ++D, ++i) { g.Draw(sprPixel, new Rectangle((int)Position.X + 10, (int)Position.Y + 13 + TextEndY + D * 25, 5, 5), Color.Black); g.DrawString(fntFinlanderFont, ListDialog[CurrentDialog.ListNextDialog[i]].TextPreview, new Vector2(Position.X + 20, Position.Y + TextEndY + D * 25), Color.White); if (i == DialogChoice) { g.Draw(sprPixel, new Rectangle((int)Position.X + 20, (int)Position.Y + 5 + TextEndY + D * 25, 400, fntFinlanderFont.LineSpacing), Color.FromNonPremultiplied(255, 255, 255, 100)); } } } }
public static void DrawTextMiddleAligned(CustomSpriteBatch g, string Text, Vector2 Position, Color TextColor) { int TextWidth = (int)fntShadowFont.MeasureString(Text).X / 2; g.DrawString(fntShadowFont, Text, Position, Color.Black, 0, new Vector2(TextWidth, 0), 1, SpriteEffects.None, 1); g.DrawString(fntWhiteFont, Text, Position, TextColor, 0, new Vector2(TextWidth, 0), 1, SpriteEffects.None, 0); }
public override void Draw(CustomSpriteBatch g) { int MenuWidth = (int)(Constants.Width * 0.45); int MenuHeight = (int)(Constants.Height * 0.45); float MenuX = Constants.Width / 2 - MenuWidth / 2; float MenuY = Constants.Height / 2 - MenuHeight / 2; DrawBox(g, new Vector2(MenuX, MenuY), MenuWidth, MenuHeight, Color.White); DrawBox(g, new Vector2(MenuX, MenuY), MenuWidth, 40, Color.White); g.DrawString(fntArial12, "Local Players Mangement", new Vector2(MenuX + 10, MenuY + 10), Color.White); g.DrawString(fntArial12, "Name", new Vector2(MenuX + 10, MenuY + 42), Color.White); g.DrawString(fntArial12, "Controls", new Vector2(MenuX + 150, MenuY + 42), Color.White); g.DrawString(fntArial12, "Profile", new Vector2(MenuX + MenuWidth - 60, MenuY + 42), Color.White); for (int P = 0; P < PlayerManager.ListLocalPlayer.Count; P++) { float ActivePlayerY = MenuY + 75 + P * 40; g.DrawString(fntArial12, PlayerManager.ListLocalPlayer[P].Name, new Vector2(MenuX + 10, ActivePlayerY + 5), Color.White); } DrawBox(g, new Vector2(MenuX, MenuY + MenuHeight), MenuWidth, 40, Color.White); foreach (IUIElement ActiveUIElement in ArrayUIElement) { ActiveUIElement.Draw(g); } }
public override void Draw(CustomSpriteBatch g) { g.Draw(sprBackground, new Vector2(0, 0), Color.White); if (Stage == 0) { g.Draw(sprRectangle, new Rectangle(320, 40, 320, 440), Color.FromNonPremultiplied(255, 255, 255, 100)); } else if (Stage == 1) { g.Draw(sprRectangle, new Rectangle(0, 297, 320, 183), Color.FromNonPremultiplied(255, 255, 255, 200)); } //Draw the item list with its filters and get the lowest Y position. int Index = 0; int Y = DrawFilter(g, MainFilter, 305, 41, ref Index); g.DrawString(fntArial10, "Requirements:", new Vector2(10, 315), Color.White); //Item description if (CursorFilter.CursorIndex >= 0 && CursorFilter.CursorIndex < CursorFilter.ListItem.Count) { g.DrawString(fntArial10, CursorFilter.ListItem[CursorFilter.CursorIndex].RelativePath, new Vector2(10, 45), Color.White); g.DrawString(fntArial10, '"' + CursorFilter.ListItem[CursorFilter.CursorIndex].RelativePath + '"' + " Blueprint", new Vector2(50, 330), Color.White); Blueprint Item = (Blueprint)CursorFilter.ListItem[CursorFilter.CursorIndex]; for (int i = 0; i < Item.ListRequirement.Count; i++) { } } }
public override void Draw(CustomSpriteBatch g, int NonDemoAnimationTimer) { DrawBackgroundBox(g, PositionX, PositionY); g.Draw(SharedUnitStats.SharedUnit.SpriteMap, new Vector2( PositionX + 2, PositionY + 8), Color.White); if (NonDemoAnimationTimer >= 38) { g.DrawString(fntNonDemoDamage, DisplayedDamage, new Vector2( PositionX + 20, PositionY + 5 - 46 + NonDemoAnimationTimer), Color.White); } else if (NonDemoAnimationTimer >= 30) { g.DrawString(fntNonDemoDamage, DisplayedDamage, new Vector2( PositionX + 20, PositionY + 5 - NonDemoAnimationTimer + 30), Color.White); } else { g.DrawString(fntNonDemoDamage, DisplayedDamage, new Vector2( PositionX + 20, PositionY + 5), Color.White); } if (!sprExplosion.AnimationEnded) { sprExplosion.Draw(g); } }
private void DrawTerrainChange(CustomSpriteBatch g, string Terrain, Texture2D Sprite, int X, int Y) { g.Draw(Sprite, new Vector2(X, Y), Color.White); g.DrawString(fntFinlanderFont, DicTerrainLetterAttribute[Terrain].ToString(), new Vector2(X + 25, Y + 4), Color.White); g.Draw(Sprite, new Vector2(X, Y + 46), Color.White); g.DrawString(fntFinlanderFont, SelectedUnit.TerrainLetterAttribute(Terrain).ToString(), new Vector2(X + 25, Y + 50), Color.White); }
protected void BattleSumaryDrawLeaderRight(CustomSpriteBatch g, int DrawX, int DrawY, Unit UnitToDraw, Color HitRateColor) { DrawBox(g, new Vector2(DrawX, DrawY), 70, 80, Color.Blue); DrawBox(g, new Vector2(DrawX + 70, DrawY), 240, 80, Color.Blue); DrawBox(g, new Vector2(DrawX, DrawY + 80), 310, 40, Color.Black); DrawBox(g, new Vector2(DrawX, DrawY + 120), 310, 60, Color.Blue); g.Draw(UnitToDraw.SpriteMap, new Vector2(DrawX + 76, DrawY + 5), Color.White); TextHelper.DrawText(g, UnitToDraw.PilotName, new Vector2(DrawX + 111, DrawY + 3), Color.White); TextHelper.DrawText(g, UnitToDraw.UnitStat.Name, new Vector2(DrawX + 111, DrawY + 25), Color.White); TextHelper.DrawTextRightAligned(g, "LV: " + UnitToDraw.PilotLevel, new Vector2(DrawX + 300, DrawY + 3), Color.White); TextHelper.DrawTextRightAligned(g, "Will: " + UnitToDraw.PilotMorale, new Vector2(DrawX + 300, DrawY + 22), Color.White); TextHelper.DrawTextRightAligned(g, "HP", new Vector2(DrawX + 130, DrawY + 43), Color.Yellow); TextHelper.DrawTextRightAligned(g, "EN", new Vector2(DrawX + 130, DrawY + 59), Color.Yellow); //Draw HP bar DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeHP, new Vector2(DrawX + 130, DrawY + 46), UnitToDraw.HP, UnitToDraw.MaxHP); //Draw EN bar. DrawBar(g, sprBarExtraLargeBackground, sprBarExtraLargeEN, new Vector2(DrawX + 130, DrawY + 62), UnitToDraw.EN, UnitToDraw.MaxEN); if (UnitToDraw.BattleDefenseChoice == Unit.BattleDefenseChoices.Attack) { //Draw the hit rate %. g.DrawStringMiddleAligned(fntFinlanderFont, UnitToDraw.AttackAccuracy, new Vector2(DrawX + 35, DrawY + 26), HitRateColor); //Draw the Weapon name. g.DrawString(fntFinlanderFont, UnitToDraw.CurrentAttack.ItemName, new Vector2(DrawX + 10, DrawY + 85), Color.White); //Draw the EN cost. if (UnitToDraw.CurrentAttack.ENCost > 0) { DrawENRemaining(g, DrawX + 70, DrawY, UnitToDraw); } } else if (UnitToDraw.BattleDefenseChoice == Unit.BattleDefenseChoices.Defend) { g.DrawString(fntFinlanderFont, "DEF", new Vector2(DrawX + 9, DrawY + 27), Color.White); } else if (UnitToDraw.BattleDefenseChoice == Unit.BattleDefenseChoices.Evade) { g.DrawString(fntFinlanderFont, "EVA", new Vector2(DrawX + 5, DrawY + 27), Color.White); } //Draw HP number. TextHelper.DrawTextRightAligned(g, UnitToDraw.HP + "/" + UnitToDraw.MaxHP, new Vector2(DrawX + 299, DrawY + 41), Color.White); //Draw EN number. TextHelper.DrawTextRightAligned(g, UnitToDraw.EN + "/" + UnitToDraw.MaxEN, new Vector2(DrawX + 299, DrawY + 57), Color.White); for (int A = 0; A < 4; A++) { string TextToDraw = "------"; if (UnitToDraw.CurrentAttack != null && A < UnitToDraw.CurrentAttack.ArrayAttackAttributes.Length) { TextToDraw = UnitToDraw.CurrentAttack.ArrayAttackAttributes[A].Name; } g.DrawString(fntFinlanderFont, TextToDraw, new Vector2(DrawX + 10 + (A / 2) * 150, DrawY + 125 + (A % 2) * fntFinlanderFont.LineSpacing), Color.White); } }
public override void Draw(CustomSpriteBatch g) { int DrawX = PanelX; int DrawY = PanelY; DrawBox(g, new Vector2(DrawX, DrawY), PanelWidth, PanelHeight, Color.White); DrawBox(g, new Vector2(DrawX, DrawY), PanelWidth, 30, Color.White); g.DrawString(fntText, "Bots", new Vector2(DrawX + 10, DrawY + 8), Color.White); DrawY += 40; g.DrawString(fntText, "Number of Bots", new Vector2(DrawX + 10, DrawY), Color.White); DrawY += 105; DrawBox(g, new Vector2(DrawX, DrawY), PanelWidth, PanelHeight + 30, Color.White); DrawBox(g, new Vector2(DrawX, DrawY), PanelWidth, 30, Color.White); g.DrawString(fntText, "Game", new Vector2(DrawX + 10, DrawY + 8), Color.White); DrawY += 40; g.DrawString(fntText, "Goal Score", new Vector2(DrawX + 10, DrawY), Color.White); g.DrawString(fntText, "Time Limit", new Vector2(RightColumnX + 10, DrawY), Color.White); DrawY += 30; g.DrawString(fntText, "Turn Limit", new Vector2(RightColumnX + 10, DrawY), Color.White); DrawY += 30; g.DrawString(fntText, "Min Players", new Vector2(DrawX + 10, DrawY), Color.White); g.DrawString(fntText, "Max Players", new Vector2(RightColumnX + 10, DrawY), Color.White); DrawY += 30; g.DrawString(fntText, "Max Squad Per Player", new Vector2(DrawX + 10, DrawY), Color.White); foreach (IUIElement ActiveButton in ArrayMenuButton) { ActiveButton.Draw(g); } }
/// <summary> /// Start drawing A FilterItem and its content at a given position. /// </summary> /// <param name="g">SpriteBatch to draw on.</param> /// <param name="Filter">Filter to draw.</param> /// <param name="X">X Position to start drawing.</param> /// <param name="Y">Y Position to start drawing.</param> /// <returns></returns> private int DrawFilter(CustomSpriteBatch g, FilterItem Filter, int X, int Y, ref int Index) { if (Filter.IsOpen) {//Loop through every ShopItem. for (int i = 0; i < Filter.ListItem.Count; i++) { if (Index >= CursorIndexStart && Index < 32 + CursorIndexStart) { //Draw the name, g.DrawString(fntArial8, Filter.ListItem[i].RelativePath, new Vector2(X + 20, Y), Color.White); //Draw the quantity related informations. int QuantityOwned = 0; if (Inventory.ListItems.ContainsKey(Filter.ListItem[i].RelativePath)) { QuantityOwned = Inventory.ListItems[Filter.ListItem[i].RelativePath].Quantity; } g.DrawString(fntArial8, Filter.ListItem[i].QuantityToBuy + " / " + Filter.ListItem[i].Quantity + " (" + QuantityOwned + ")", new Vector2(Constants.Width - 60, Y), Color.Aqua); //If the current ShopItem is selected, highlight it. if (i == Filter.CursorIndex) { g.Draw(sprRectangle, new Rectangle(X + 16, Y, (int)fntArial8.MeasureString(Filter.ListItem[i].RelativePath).X + 10, fntArial8.LineSpacing), Color.FromNonPremultiplied(255, 255, 255, CursorAlpha)); } Y += fntArial8.LineSpacing; } Index++; } //Loop through every FilterItem. for (int F = 0; F < Filter.ListFilter.Count; F++) { if (Index >= CursorIndexStart && Index < 32 + CursorIndexStart) { //If it's open if (Filter.ListFilter[F].IsOpen) { g.DrawString(fntArial8, "- " + Filter.ListFilter[F].Name, new Vector2(X + 20, Y), Color.White); } else { g.DrawString(fntArial8, "+ " + Filter.ListFilter[F].Name, new Vector2(X + 20, Y), Color.White); } //If the current FilterItem is selected, highlight it. if (F == Filter.CursorIndex - Filter.ListItem.Count) { g.Draw(sprRectangle, new Rectangle(X + 16, Y, (int)fntArial8.MeasureString("+ " + Filter.ListFilter[F].Name).X + 10, fntArial8.LineSpacing), Color.FromNonPremultiplied(255, 255, 255, CursorAlpha)); } Y += fntArial8.LineSpacing; } Index++; //Loop in the filter so it draws itself if open. Y = DrawFilter(g, Filter.ListFilter[F], X + 20, Y, ref Index); } } return(Y); }
private void DrawMenu(CustomSpriteBatch g) { GameScreen.DrawBox(g, new Vector2(10, 10), 620, 40, Color.White); g.DrawString(fntFinlanderFont, "Unit Select", new Vector2(15, 13), Color.White); GameScreen.DrawBox(g, new Vector2(10, 45), 620, 355, Color.White); g.DrawString(fntFinlanderFont, "Unit", new Vector2(50, 50), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "HP", new Vector2(340, 50), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "EN", new Vector2(400, 50), Color.Yellow); g.DrawString(fntFinlanderFont, "PILOT", new Vector2(440, 50), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "LV", new Vector2(620, 50), Color.Yellow); int LineSpacing = 36; UnitSelectionMenu.DrawMenu(g, 20, 80, LineSpacing); g.DrawStringRightAligned(fntFinlanderFont, (MaxNumberOfUnitsToSpawn - ListSelectedUnit.Count) + " Units Left", new Vector2(500, 13), Color.White); g.DrawStringRightAligned(fntFinlanderFont, "Page " + UnitSelectionMenu.CurrentPage + "/" + UnitSelectionMenu.PageCount, new Vector2(620, 13), Color.White); g.Draw(GameScreen.sprPixel, new Rectangle(15, 77 + UnitSelectionMenu.SelectedItemIndex * LineSpacing, 611, LineSpacing), Color.FromNonPremultiplied(255, 255, 255, 127)); GameScreen.DrawBox(g, new Vector2(10, 400), 620, 70, Color.White); g.DrawString(fntFinlanderFont, "Move Type", new Vector2(50, 400), Color.Yellow); int X = 100 - (SelectedUnit.ListTerrainChoices.Count - 1) * 15; if (SelectedUnit.ListTerrainChoices.Contains("Air")) { g.Draw(sprSky, new Vector2(X, 435), Color.White); X += 30; } if (SelectedUnit.ListTerrainChoices.Contains("Land")) { g.Draw(sprLand, new Vector2(X, 435), Color.White); X += 30; } if (SelectedUnit.ListTerrainChoices.Contains("Sea")) { g.Draw(sprSea, new Vector2(X, 435), Color.White); X += 30; } if (SelectedUnit.ListTerrainChoices.Contains("Space")) { g.Draw(sprSpace, new Vector2(X, 435), Color.White); X += 30; } g.DrawString(fntFinlanderFont, "Terrain Stat", new Vector2(420, 400), Color.Yellow); g.Draw(sprSky, new Vector2(400, 435), Color.White); g.Draw(sprLand, new Vector2(450, 435), Color.White); g.Draw(sprSea, new Vector2(500, 435), Color.White); g.Draw(sprSpace, new Vector2(550, 435), Color.White); g.DrawString(fntFinlanderFont, SelectedUnit.TerrainLetterAttribute("Air").ToString(), new Vector2(425, 430), Color.Yellow); g.DrawString(fntFinlanderFont, SelectedUnit.TerrainLetterAttribute("Land").ToString(), new Vector2(475, 430), Color.Yellow); g.DrawString(fntFinlanderFont, SelectedUnit.TerrainLetterAttribute("Sea").ToString(), new Vector2(525, 430), Color.Yellow); g.DrawString(fntFinlanderFont, SelectedUnit.TerrainLetterAttribute("Space").ToString(), new Vector2(575, 430), Color.Yellow); }
private void DrawRooms(CustomSpriteBatch g) { int i = 0; foreach (RoomInformations ActiveRoom in DicAllRoom.Values) { float X = 148 + (i % 2) * 248; float Y = 169 + (i / 2) * 60; if (MouseHelper.MouseStateCurrent.X >= X - sprRoom.Origin.X && MouseHelper.MouseStateCurrent.X <= X + sprRoom.Origin.X && MouseHelper.MouseStateCurrent.Y >= Y - sprRoom.Origin.Y && MouseHelper.MouseStateCurrent.Y <= Y + sprRoom.Origin.Y) { sprRoom.SetFrame(2); } else { sprRoom.SetFrame(0); } sprRoom.Draw(g, new Vector2(X, Y), Color.White); g.DrawString(fntArial12, ActiveRoom.RoomName, new Vector2(X - 70, Y - 18), Color.White); g.DrawString(fntArial12, ActiveRoom.CurrentPlayerCount.ToString(), new Vector2(X - 5, Y), Color.White); g.DrawString(fntArial12, ActiveRoom.MaxNumberOfPlayer.ToString(), new Vector2(X + 20, Y), Color.White); if (ActiveRoom.IsPlaying) { sprRoomState.SetFrame(0); } else { sprRoomState.SetFrame(1); } sprRoomState.Draw(g, new Vector2(X + 65, Y + 8), Color.White); if (ActiveRoom.RoomSubtype == "Deathmatch") { sprRoomType.SetFrame(0); sprRoomType.Draw(g, new Vector2(X - 38, Y + 14), Color.White); } else if (ActiveRoom.RoomSubtype == "Capture The Flag") { sprRoomType.SetFrame(1); sprRoomType.Draw(g, new Vector2(X - 38, Y + 14), Color.White); } else if (ActiveRoom.RoomSubtype == "Survival") { sprRoomType.SetFrame(2); sprRoomType.Draw(g, new Vector2(X - 38, Y + 14), Color.White); } ++i; } }
public override void Draw(CustomSpriteBatch g) { g.Draw(sprBackground, new Vector2(Constants.Width / 2, Constants.Height / 2), null, Color.White, 0f, new Vector2(sprBackground.Width / 2, sprBackground.Height / 2), 1f, SpriteEffects.None, 0f); g.Draw(sprHeader, new Vector2(196, 122), Color.White); g.Draw(EquipmentToBuy.sprFull, new Vector2(223, 175), Color.White); g.DrawString(fntText, EquipmentToBuy.Category, new Vector2(227, 288), Color.White); g.DrawString(fntText, EquipmentToBuy.Name, new Vector2(227, 311), Color.White); g.DrawStringRightAligned(fntText, EquipmentToBuy.Price + "CR", new Vector2(577, 311), Color.White); g.DrawString(fntText, "Lv." + EquipmentToBuy.MinLevel, new Vector2(385, 336), Color.White); BuyButton.Draw(g); CancelButton.Draw(g); }
public override void Draw(CustomSpriteBatch g) { g.End(); g.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend); g.Draw(sprMapMenuBackground, new Vector2(0, 0), Color.White); g.DrawString(fntFinlanderFont, "Data", new Vector2(120, 10), Color.White); DrawBox(g, new Vector2(10, 45), 420, 300, Color.White); g.DrawString(fntFinlanderFont, "Save", new Vector2(20, 50), Color.White); g.DrawString(fntFinlanderFont, "Load", new Vector2(20, 80), Color.White); g.DrawString(fntFinlanderFont, "Exit", new Vector2(20, 110), Color.White); g.Draw(sprPixel, new Rectangle(17, 52 + CursorIndex * 30, 100, 30), Color.FromNonPremultiplied(255, 255, 255, 127)); }
public override void Draw(CustomSpriteBatch g) { g.Draw(sprBackground, new Vector2(Constants.Width / 2, Constants.Height / 2), null, Color.White, 0f, new Vector2(sprBackground.Width / 2, sprBackground.Height / 2), 1f, SpriteEffects.None, 0f); g.Draw(sprHeader, new Vector2(196, 122), Color.White); g.Draw(CharacterToBuy.sprFull, new Vector2(215, 172), Color.White); g.DrawStringMiddleAligned(fntText, CharacterToBuy.Name, new Vector2(513, 175), Color.White); g.DrawString(fntText, "5", new Vector2(473, 199), Color.White); g.DrawString(fntText, "6", new Vector2(515, 199), Color.White); g.DrawString(fntText, "4", new Vector2(557, 199), Color.White); BuyButton.Draw(g); CancelButton.Draw(g); }
public override void Draw(CustomSpriteBatch g) { g.Draw(sprBackground, Vector2.Zero, Color.White); g.Draw(sprActivePlayerIcon, new Vector2(570, 11), Color.White); foreach (InteractiveButton ActiveButton in ArrayMenuButton) { ActiveButton.Draw(g); } if (OnlineCommunicationClient != null) { ChatHelper.DrawChat(g, sprTabChat, fntText, OnlineCommunicationClient.Chat, ChatInput); } MissionScrollbar.Draw(g); g.DrawString(fntText, Room.RoomName, new Vector2(68, 7), Color.White); g.DrawStringMiddleAligned(fntText, CurrentMissionName, new Vector2(170, 114), Color.White); g.DrawStringMiddleAligned(fntText, CurrentMissionDescription, new Vector2(170, 270), Color.White); if (sprCurrentMissionImage != null) { g.Draw(sprCurrentMissionImage, new Vector2(57, 139), Color.White); } for (int P = 0; P < Room.ListRoomPlayer.Count; ++P) { int DrawX = 678; int DrawY = 310 + P * 64; DrawPlayerBox(g, DrawX, DrawY, Room.ListRoomPlayer[P], true); } for (int M = MissionInfoStartIndex, i = 0; M < ListMissionInfo.Count && i < 4; ++M, ++i) { QuestButton.Draw(g, new Vector2(405, 140 + i * 64), Color.White); g.DrawString(fntText, (M + 1).ToString().PadLeft(2, '0'), new Vector2(395, 120 + i * 64), Color.FromNonPremultiplied(0, 255, 0, 255)); g.DrawString(fntText, "1", new Vector2(485, 120 + i * 64), Color.White); g.DrawString(fntText, ListMissionInfo[M].MissionName, new Vector2(328, 145 + i * 64), Color.FromNonPremultiplied(0, 255, 0, 255)); Rectangle QuestButtonCollisionBox = new Rectangle(405 - (int)QuestButton.Origin.X, 140 - (int)QuestButton.Origin.Y + i * 64, QuestButton.SpriteWidth, QuestButton.SpriteHeight); if (QuestButtonCollisionBox.Contains(MouseHelper.MouseStateCurrent.X, MouseHelper.MouseStateCurrent.Y)) { PlayerInfoOutline.Draw(g, new Vector2(405, 140 + i * 64), Color.White); } } }
public static void DrawChat(CustomSpriteBatch g, SpriteFont fntArial12, ChatManager Chat, TextInput ChatInput) { ChatInput.Draw(g); int T = 0; GameScreen.DrawBox(g, new Vector2(5, 448), 550, 148, Color.White); GameScreen.DrawBox(g, new Vector2(5, 568), 550, 28, Color.White); foreach (KeyValuePair <string, ChatManager.ChatTab> ActiveTab in Chat.DicTab) { int X = 5 + T * 103; int Y = 425; if (ActiveTab.Value.Name == Chat.ActiveTabName) { GameScreen.DrawBox(g, new Vector2(X, Y), 102, 24, Color.White); } else if (MouseHelper.MouseStateCurrent.X >= X && MouseHelper.MouseStateCurrent.X < X + 103 && MouseHelper.MouseStateCurrent.Y >= Y && MouseHelper.MouseStateCurrent.Y < Y + 24) { GameScreen.DrawBox(g, new Vector2(X, Y), 102, 24, Color.White); } else { GameScreen.DrawBox(g, new Vector2(X, Y + 2), 102, 22, Color.White); } if (ActiveTab.Value.HasUnreadMessages) { g.DrawString(fntArial12, ActiveTab.Value.Name + " *", new Vector2(X + 32, Y + 3), Color.White); } else { g.DrawString(fntArial12, ActiveTab.Value.Name, new Vector2(X + 32, Y + 3), Color.White); } ++T; } int LineSpacing = fntArial12.LineSpacing; int LastMessageIndex = Math.Max(0, Chat.ListActiveTabHistory.Count - Chat.ActiveTabScrollUpValue / LineSpacing); int FirstMessageIndex = Math.Max(0, LastMessageIndex - 4); for (int M = FirstMessageIndex, i = 0; M < LastMessageIndex; ++M, ++i) { ChatManager.ChatMessage ActiveMessage = Chat.ListActiveTabHistory[M]; float X = 30; float Y = 430 + i * fntArial12.LineSpacing - Chat.ActiveTabScrollUpValue; g.DrawString(fntArial12, ActiveMessage.Message, new Vector2(X, Y), Color.White); } }
private void DrawSubMenu(CustomSpriteBatch g) { int X = (Constants.Width - 300) / 2; int Y = 200; int LineSpacing = fntFinlanderFont.LineSpacing; GameScreen.DrawBox(g, new Vector2(X, Y), 300, 100, Color.White); g.DrawString(fntFinlanderFont, "Deploy Units", new Vector2(X += 5, Y += 5), Color.White); g.DrawString(fntFinlanderFont, "Change Units", new Vector2(X, Y += fntFinlanderFont.LineSpacing), Color.White); g.DrawString(fntFinlanderFont, "Change Formation", new Vector2(X, Y += fntFinlanderFont.LineSpacing), Color.White); g.DrawString(fntFinlanderFont, "Intermission Screen", new Vector2(X, Y += fntFinlanderFont.LineSpacing), Color.White); g.Draw(GameScreen.sprPixel, new Rectangle(X, 210 + SubMenuIndex * LineSpacing, 290, LineSpacing), Color.FromNonPremultiplied(255, 255, 255, 127)); }
private void DrawPlayers(CustomSpriteBatch g) { if (PlayerListType == PlayerListTypes.All) { for (int P = 0; P < ArrayLobbyPlayer.Length; P++) { float X = 580; float Y = 166 + P * (fntArial12.LineSpacing + 4); if (MouseHelper.MouseStateCurrent.X >= X && MouseHelper.MouseStateCurrent.X <= X + 177 && MouseHelper.MouseStateCurrent.Y >= Y && MouseHelper.MouseStateCurrent.Y <= Y + fntArial12.LineSpacing) { sprUserSelection.SetFrame(2); } else { sprUserSelection.SetFrame(0); } sprUserSelection.Draw(g, new Vector2(X + 88, Y + 9), Color.White); g.DrawString(fntArial12, "Lv." + ArrayLobbyPlayer[P].Level, new Vector2(X + 5, Y), Color.White); g.DrawString(fntArial12, ArrayLobbyPlayer[P].Name, new Vector2(X + 55, Y), Color.White); } } else if (PlayerListType == PlayerListTypes.Friends) { for (int P = 0; P < ArrayLobbyFriends.Length; P++) { float X = 580; float Y = 166 + P * (fntArial12.LineSpacing + 4); if (MouseHelper.MouseStateCurrent.X >= X && MouseHelper.MouseStateCurrent.X <= X + 177 && MouseHelper.MouseStateCurrent.Y >= Y && MouseHelper.MouseStateCurrent.Y <= Y + fntArial12.LineSpacing) { sprUserSelection.SetFrame(2); } else { sprUserSelection.SetFrame(0); } sprUserSelection.Draw(g, new Vector2(X + 88, Y + 9), Color.White); g.DrawString(fntArial12, "Lv." + ArrayLobbyFriends[P].Level, new Vector2(X + 5, Y), Color.White); g.DrawString(fntArial12, ArrayLobbyFriends[P].Name, new Vector2(X + 55, Y), Color.White); } } }
public void DrawMenuUnit(CustomSpriteBatch g, int ItemIndex, int X, int Y) { Unit ActiveUnit = SelectedUnit; g.Draw(ActiveUnit.SpriteMap, new Vector2(X, Y), Color.White); g.DrawString(fntFinlanderFont, ActiveUnit.FullName, new Vector2(X + 40, Y), Color.White); DrawTextRightAligned(g, ActiveUnit.MaxHP.ToString(), new Vector2(300, Y), Color.White); DrawTextRightAligned(g, ActiveUnit.MaxEN.ToString(), new Vector2(400, Y), Color.White); if (ActiveUnit.Pilot != null) { g.DrawString(fntFinlanderFont, ActiveUnit.PilotName, new Vector2(440, Y), Color.White); g.DrawStringRightAligned(fntFinlanderFont, ActiveUnit.PilotLevel.ToString(), new Vector2(620, Y), Color.White); } }
public void DrawMenu(CustomSpriteBatch g) { g.Draw(sprMapMenuBackground, new Vector2(0, 0), Color.White); DrawBox(g, new Vector2(10, 45), 420, 300, Color.White); g.DrawString(fntFinlanderFont, "Unit", new Vector2(20, 50), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "HP", new Vector2(300, 50), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "EN", new Vector2(400, 50), Color.Yellow); DrawBox(g, new Vector2(430, 45), 200, 300, Color.White); g.DrawString(fntFinlanderFont, "PILOT", new Vector2(440, 50), Color.Yellow); g.DrawStringRightAligned(fntFinlanderFont, "LV", new Vector2(620, 50), Color.Yellow); UnitSelectionMenu.DrawMenu(g, 20, 80, LineSpacing); g.DrawString(fntFinlanderFont, UnitSelectionMenu.CurrentPage + "/" + UnitSelectionMenu.PageCount, new Vector2(420, 10), Color.White); g.Draw(BattleMap.sprPixel, new Rectangle(20, 80 + UnitSelectionMenu.SelectedItemIndex * LineSpacing, 601, LineSpacing), Color.FromNonPremultiplied(255, 255, 255, 127)); }