public CreditState(Game1 Game, string name) : base(Game, name) { int xOffset = 10; int yOffset = 10; spriteFont = Game.fontManager.GetFont(14); textBoxLeft = TextUtils.CreateTextBox(spriteFont, new Rectangle(xOffset, yOffset, Game1.ScreenSize.X / 2 - xOffset, Game1.ScreenSize.Y - 20), false, false, "Design and development:\nDaniel Alm Grundstrom\nJakob Willforss\nJohan Philipsson\n\n" + "Visuals:\nDaniel Alm Grundstrom\n\n" + "Music:\nJakob Willforss\nDaniel Alm Grundstrom\n\n" + "Story:\nJakob Willforss\n\n" + "Portraits:\nJosefin Voigt (many thanks!)\n\n" + "Beta testers:\nDaniel W.\nRasmus G.\nErik M.\nJohannes E.\nVidmantas\nJohan W.\nMarkus J.\n\nAnd a big thanks to all of our alpha testers!"); textBoxRight = TextUtils.CreateTextBox(spriteFont, new Rectangle(Game1.ScreenSize.X / 2 + xOffset, yOffset, Game1.ScreenSize.X / 2 - xOffset, Game1.ScreenSize.Y - 20), false, false, "Fonts:\n- 'Iceland' by Cyreal (SIL Open Font License) Downloaded from Google Fonts\n- 'ISL Jupiter' by Isurus Labs (Public domain) Downloaded from dafont.com \n\n" + "Space sounds:\n- 'Space Music Ambient' by evanjones4 (Creative Commons 0 Licence) Downloaded from FreeSound.org \n\n" + "Sound effects:\n- 'menu click' by fins (Creative Commons 0 Licence) Downloaded from FreeSound.org \n- 'Hover 2' by plasterbrain " + "(Creative Commons 0 Licence) Downloaded from FreeSound.org \n- '" + "ship fire' by Nbs Dark (Creative Commons 0 Licence) Downloaded from FreeSound.org \n- 'Thruster_Level_II' by nathanshadow (Sampling+ Licence) Downloaded from FreeSound.org \n" + "- 'Huge Explosion' by Tobiasz 'unfa' Karon (CC Attribution 3.0 Unported Licence) Downloaded from https://www.freesound.org/people/unfa/sounds/259300/"); }
public void DisplayMissionFailedText() { BaseStateManager.TextBoxes.Clear(); List <Mission> failedMissions = MissionManager.ReturnFailedMissions(BaseState.GetBase().name); String[] temp = failedMissions[0].FailedText.Split('#'); SetPortraitFromText(temp[0]); SetTextRectangle(); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, temp[0])); if (temp.Length > 1) { for (int i = temp.Length - 1; i > 0; i--) { MissionManager.MissionEventBuffer.Insert(0, temp[i]); } } MissionManager.MarkFailedMissionAsDead(failedMissions[0].MissionID); BaseStateManager.ButtonControl = ButtonControl.Confirm; }
public void DisplayMissionCompletedText() { if (MissionManager.MissionEventBuffer.Count <= 0) { List <String> temp = new List <String>(); Game.SaveOnEnterOverworld = true; BaseStateManager.TextBoxes.Clear(); List <Mission> completedMissions = MissionManager.ReturnCompletedMissions(BaseState.GetBase().name); foreach (String str in completedMissions[0].CompletedText.Split('#')) { temp.Add(str); } SetPortraitFromText(temp[0]); SetTextRectangle(); if (HasReward(completedMissions[0])) { if (HasRewardItem(completedMissions[0])) { if (ShipInventoryManager.HasAvailableSlot()) { temp.Add(GetRewardText(completedMissions[0])); } else { temp.Add(GetNoEmptySlotText(completedMissions[0])); } } else { temp.Add(GetRewardText(completedMissions[0])); } } BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, temp[0])); MissionManager.MarkCompletedMissionAsDead(completedMissions[0].MissionID); BaseStateManager.ButtonControl = ButtonControl.Confirm; for (int i = 1; i < temp.Count; i++) { MissionManager.MissionEventBuffer.Add(temp[i]); } } }
public void DisplayMissionAcceptFailedText() { BaseStateManager.TextBoxes.Clear(); SetPortraitFromText(selectedMission.AcceptFailedText); SetTextRectangle(); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, selectedMission.AcceptFailedText)); missionCursorIndex = 0; BaseStateManager.ButtonControl = ButtonControl.Confirm; }
public void DisplayAvailableMissions(List <Mission> availableMissions) { int selectionCount; BaseState.DisplayOverlay(OverlayType.MissionSelection); BaseStateManager.TextBoxes.Clear(); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(Game.fontManager.GetFont(16), new Rectangle((Game1.ScreenSize.X / 2), (Game1.ScreenSize.Y / 2) - (int)SelectionOverlaySize.Y / 2 + 20, Game1.ScreenSize.X - 20, 10), true, false, "Available Missions:" + "\n\n")); if (availableMissions.Count > 0) { for (int i = 0; i < availableMissions.Count; i++) { BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(Game.fontManager.GetFont(16), new Rectangle((Game1.ScreenSize.X / 2), Game1.ScreenSize.Y / 2 - 40 + 20 * availableMissions.IndexOf(availableMissions[i]) + 1, Game1.ScreenSize.X - 20, 10), true, false, availableMissions[i].MissionName)); } selectionCount = availableMissions.Count; } else { BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(Game.fontManager.GetFont(16), new Rectangle((Game1.ScreenSize.X / 2), ((Game1.ScreenSize.Y / 2) - 40), Game1.ScreenSize.X - 20, 10), true, false, "<None>")); selectionCount = 1; } BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(Game.fontManager.GetFont(16), new Rectangle((Game1.ScreenSize.X / 2), ((Game1.ScreenSize.Y / 2) - 40) + 20 * (selectionCount + 1), Game1.ScreenSize.X / 2, 10), true, false, "Back")); }
public void DisplayMissionIntroduction() { BaseStateManager.TextBoxes.Clear(); if (SelectedMission != null) { String[] temp = SelectedMission.IntroductionText.Split('#'); SetPortraitFromText(temp[0]); tempRect = BaseStateManager.ResponseTextRectangle; BaseState.DisplayOverlay(OverlayType.Response); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, temp[0])); BaseStateManager.ButtonControl = ButtonControl.Response; ResponseCursorIndex = 0; if (temp.Length > 1) { for (int i = temp.Length - 1; i > 0; i--) { MissionManager.MissionStartBuffer.Insert(0, temp[i]); BaseStateManager.ButtonControl = ButtonControl.Confirm; } } else { BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), BaseStateManager.ResponseRectangle1, true, false, SelectedMission.PosResponse)); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), BaseStateManager.ResponseRectangle2, true, false, SelectedMission.NegResponse)); BaseStateManager.ButtonControl = ButtonControl.Response; ResponseCursorIndex = 0; } } }
public void MissionEvent() { BaseStateManager.TextBoxes.Clear(); if (MissionManager.MissionEventBuffer.Count > 0) { SetPortraitFromText(MissionManager.MissionEventBuffer[0]); SetTextRectangle(); if (MissionManager.MissionResponseBuffer.Count > 0) { tempRect = BaseStateManager.ResponseTextRectangle; BaseState.DisplayOverlay(OverlayType.Response); } BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, MissionManager.MissionEventBuffer[0])); MissionManager.MissionEventBuffer.RemoveAt(0); BaseStateManager.ButtonControl = ButtonControl.Confirm; if (MissionManager.MissionResponseBuffer.Count > 0) { for (int i = 0; i < MissionManager.MissionResponseBuffer.Count; i++) { BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), BaseStateManager.ResponseRectangles[i], true, false, TextUtils.WordWrap(BaseState.Game.fontManager.GetFont(14), MissionManager.MissionResponseBuffer[i], Game1.ScreenSize.X * 2 / 3) )); } BaseStateManager.ButtonControl = ButtonControl.Response; } } }
public void DisplayMissionStartBufferText() { BaseStateManager.TextBoxes.Clear(); SetPortraitFromText(MissionManager.MissionStartBuffer[0]); tempRect = BaseStateManager.ResponseTextRectangle; BaseState.DisplayOverlay(OverlayType.Response); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, MissionManager.MissionStartBuffer[0])); MissionManager.MissionStartBuffer.Remove(MissionManager.MissionStartBuffer[0]); if (MissionManager.MissionStartBuffer.Count > 0) { BaseStateManager.ButtonControl = ButtonControl.Confirm; } if (MissionManager.MissionStartBuffer.Count == 0) { BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), BaseStateManager.ResponseRectangle1, true, false, SelectedMission.PosResponse)); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), BaseStateManager.ResponseRectangle2, true, false, SelectedMission.NegResponse)); BaseStateManager.ButtonControl = ButtonControl.Response; ResponseCursorIndex = 0; } }
public void DisplayMissionAcceptText() { if (SelectedMission.AcceptText[0].ToLower().Equals("empty")) { MissionManager.MarkMissionAsActive(selectedMission.MissionID); BaseStateManager.ChangeMenuSubState("Overview"); BaseStateManager.ActiveButton = BaseStateManager.AllButtons[BaseStateManager.ActiveButtonIndexY]; selectedMission.IntroductionText += "/ok"; return; } if (selectedMission.RequiresAvailableSlot) { if (ShipInventoryManager.HasAvailableSlot()) { String[] temp = SelectedMission.AcceptText[selectedMission.AcceptIndex].Split('#'); SetPortraitFromText(temp[0]); BaseStateManager.TextBoxes.Clear(); MissionManager.MarkMissionAsActive(selectedMission.MissionID); SetTextRectangle(); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, temp[0])); if (temp.Length > 1) { for (int i = temp.Length - 1; i > 0; i--) { MissionManager.MissionEventBuffer.Insert(0, temp[i]); } } missionCursorIndex = 0; BaseStateManager.ButtonControl = ButtonControl.Confirm; selectedMission.IntroductionText += "/ok"; } else { DisplayMissionAcceptFailedText(); } } else { String[] temp = SelectedMission.AcceptText[selectedMission.AcceptIndex].Split('#'); SetPortraitFromText(temp[0]); BaseStateManager.TextBoxes.Clear(); MissionManager.MarkMissionAsActive(selectedMission.MissionID); SetTextRectangle(); BaseStateManager.TextBoxes.Add(TextUtils.CreateTextBox(BaseState.Game.fontManager.GetFont(14), tempRect, false, true, temp[0])); if (temp.Length > 1) { for (int i = temp.Length - 1; i > 0; i--) { MissionManager.MissionEventBuffer.Insert(0, temp[i]); } } missionCursorIndex = 0; BaseStateManager.ButtonControl = ButtonControl.Confirm; selectedMission.IntroductionText += "/ok"; } }