public SelectLevelScreenState(Surface _sfcGameWindow, List <MenuObject> extraObjs) : base(_sfcGameWindow) { objs = new List <MenuObject> (); foreach (MenuObject obj in extraObjs) { obj.selectedHandler += EventSelected; objs.Add(obj); } string[] files = Directory.GetFiles(Constants.Constants.LEVEL_PATH); foreach (string f in files) { string file = Path.GetFileName(f); MenuObject obj = new MenuText(file.Replace(".xml", ""), Color.Gold, Color.Black, 30); obj.selectedHandler += EventSelected; objs.Add(obj); } MenuText t = new MenuText("Exit", Color.Gold, Color.Red, 30); t.selectedHandler += delegate(MenuObject obj) { menuExitHandler(obj); }; objs.Add(t); menu = new Menu(objs, MenuLayout.Vertical); }
public MenuState(Surface _sfcGameWindow) : base(_sfcGameWindow) { objs = new List <MenuObject> (); menuStart = new MenuText("Start", Color.Gold, Color.Black, 42); menuEditor = new MenuText("Level editor", Color.Gold, Color.Black, 42); menuQuit = new MenuText("Exit", Color.Gold, Color.Red, 42); menuQuit.selectedHandler += EventMenuQuit; }
// Use this for initialization void Start() { menuRenderer = GetComponent<MeshRenderer>(); settingsObjects = GameObject.FindGameObjectsWithTag("Settings"); menuObjects = GameObject.FindGameObjectsWithTag("Menu"); hideSettings(); instance = this; isHovering = false; }
/// <summary> /// Initializes a new instance of the <see cref="MenuButton"/> class. /// </summary> /// <param name="relativePosition">The centre position of the menu item, relative to it's owner/parent.</param> /// <param name="tile">The button's background sprite.</param> /// <param name="icon">The icon to display on the button.</param> /// <param name="text">The text to display on the button.</param> /// <param name="name">The name of the button.</param> public MenuButton(Vector2 relativePosition, Sprite tile, Sprite icon, RenderableText text, string name) : base(relativePosition, name, new Vector2(tile.Width, tile.Height)) { this.textIcon = null; this.tile = new MenuImage(Vector2.Zero, tile); this.icon = new MenuImage(Vector2.Zero, icon); Vector2 relativeTextPosition = new Vector2(0.0f, tile.Height * 0.36f); this.text = new MenuText(relativeTextPosition, text); }
// Handles click on Tutorial first stapes button public void TutorialFirstSteps() { this.confirm_button_panel.SetActive(true); this.confirm = ConfirmCall.TUTORIAL_FIRST_STEPS; this.tutorial_text_title.GetComponent <Text>().text = MenuText.GetTitle(this.tutorial_menu_texts[1]); this.tutorial_text.GetComponent <Text>().text = MenuText.GetText(this.tutorial_menu_texts[1]); }
private void Execute() { //our logic comes here string MT = MenuText.Replace(" ", string.Empty); if (!string.IsNullOrEmpty(MT)) { navigateToPage(MT); } }
IEnumerator OpenTransiction() { LeanTween.moveX(transictionLeft, -12.03f, 1f); LeanTween.moveX(transictionRight, 20.30f, 1f); yield return(new WaitForSeconds(1f)); levelSelectText.SetActive(true); MenuText.SetActive(true); canInteract = true; }
IEnumerator LoadScene(string level) { levelSelectText.SetActive(false); MenuText.SetActive(false); LeanTween.moveX(transictionLeft, 4.020003f, 1f); LeanTween.moveX(transictionRight, 4.020003f, 1f); yield return(new WaitForSeconds(1f)); SceneManager.LoadScene(level, LoadSceneMode.Single); }
}//Update public void SetCharacterPerkText(string choice) { CharacterPerks = MenuText.SetCharacterPerks(choice); CharacterPDesc = MenuText.SetCharacterPDesc(choice); classDescription.text = MenuText.SetCharacterDesc(choice); for (int x = 0; x < 6; x++) { Perks[x].text = CharacterPerks[x]; PDescs[x].text = CharacterPDesc[x]; } }
void EventNameSave(MenuObject obj) { MenuTextEntry tE = (MenuTextEntry)obj; name = tE.text; MenuText t = (MenuText)menu.objects [menu.objects.Count - 1]; t.text = name; t.colourSelected = Color.Green; t.colourNotSelected = Color.Green; t.RenderText(); menu.GenerateWidth(); GenerateMenuBackground(); menu.lastSelectChange = -0.2f; nameMenu = null; map.ToXML(name, vecPlayer, enemies); }
/// <summary> /// Creates a name prompt menu. /// </summary> /// <param name="contentManager">The content manager to use to load resources.</param> /// <param name="spriteBatch">The sprite batch to attach to menu items.</param> /// <param name="position">The position of the menu.</param> /// <param name="playerName">The stored player's name.</param> /// <returns>The new menu created.</returns> public static Menu CreateNamePromptMenu(ContentManager contentManager, SpriteBatch spriteBatch, Vector2 position, string playerName) { Menu namePromptMenu = new Menu(position, 2, 3); MenuButton button = null; Sprite buttonTile = new Sprite(); RenderableText textIcon = new RenderableText(); RenderableText text = new RenderableText(); buttonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.MediumButtonTile); float tileGap = 16.0f; Vector2 relativePosition = new Vector2(-tileGap - buttonTile.Width, 0.0f); for (int count = 0; count < 3; count++) { buttonTile = new Sprite(); buttonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.MediumButtonTile); textIcon = new RenderableText(); textIcon.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontLarge, playerName[count].ToString().ToUpperInvariant()); text = new RenderableText(); text.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, playerName[count].ToString().ToLowerInvariant()); text.Colour = Color.Black; button = new MenuButton(relativePosition, buttonTile, textIcon, text, count.ToString()); namePromptMenu.AddItem(button); relativePosition.X += tileGap + buttonTile.Width; } relativePosition = new Vector2(0.0f, buttonTile.Height + tileGap); Sprite largePlayIcon = new Sprite(); largePlayIcon.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.MediumPlayIcon); RenderableText continueText = new RenderableText(); continueText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.DoneButtonName.ToLowerInvariant()); button = new MenuButton(relativePosition, buttonTile, largePlayIcon, continueText, MenuConstants.DoneButtonName); namePromptMenu.AddItem(button); relativePosition = new Vector2(-buttonTile.Width - tileGap, -buttonTile.Height - tileGap); float offset = (buttonTile.Width + tileGap) / 2.0f; for (int col = 0; col < 5; col++) { buttonTile = new Sprite(); buttonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.MediumButtonTile); MenuImage background = new MenuImage(relativePosition, buttonTile); namePromptMenu.AddItem(background); relativePosition.X += offset; } relativePosition = new Vector2(0.0f, -1.55f * (buttonTile.Height - tileGap)); RenderableText hello = new RenderableText(); hello.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.HelloText); MenuText helloText = new MenuText(relativePosition, hello); namePromptMenu.AddItem(helloText); RenderableText enterName = new RenderableText(); enterName.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.EnterNameText); relativePosition.Y += enterName.Height * 1.2f; MenuText enterNameText = new MenuText(relativePosition, enterName); namePromptMenu.AddItem(enterNameText); relativePosition.Y += enterName.Height * 1.2f; RenderableText selectLetter = new RenderableText(); selectLetter.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.SelectLetterText); MenuText selectLetterText = new MenuText(relativePosition, selectLetter); namePromptMenu.AddItem(selectLetterText); relativePosition.Y += enterName.Height * 1.2f; RenderableText pressDone = new RenderableText(); pressDone.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.PressDoneText); MenuText pressDoneText = new MenuText(relativePosition, pressDone); namePromptMenu.AddItem(pressDoneText); return namePromptMenu; }
/// <summary> /// Creates a leaderboard menu. /// </summary> /// <param name="contentManager">The content manager to use to load resources.</param> /// <param name="spriteBatch">The sprite batch to attach to menu items.</param> /// <param name="position">The position of the menu.</param> /// <returns>The new menu created.</returns> public static Menu CreateLeaderboardMenu(ContentManager contentManager, SpriteBatch spriteBatch, Vector2 position) { Menu leaderboardMenu = new Menu(position, 1, 1); MenuButton button = null; MenuText text = null; Sprite largeButtonTile = new Sprite(); largeButtonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeButtonTile); Vector2 relativePos = Vector2.Zero; float tileOffset = 32.0f; relativePos = new Vector2((-largeButtonTile.Width - tileOffset) * 1.5f, (-largeButtonTile.Height - tileOffset) * 0.5f); Sprite largeBackIcon = new Sprite(); largeBackIcon.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeBackIcon); RenderableText backText = new RenderableText(); backText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.BackButtonName.ToLowerInvariant()); button = new MenuButton(relativePos, largeButtonTile, largeBackIcon, backText, MenuConstants.BackButtonName); leaderboardMenu.AddItem(button); relativePos = new Vector2((-largeButtonTile.Width) * 0.5f, (-largeButtonTile.Height - tileOffset) * 0.5f); for (int row = 0; row < 2; row++) { for (int col = 0; col < 2; col++) { largeButtonTile = new Sprite(); largeButtonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeButtonTile); MenuImage background = new MenuImage(relativePos, largeButtonTile); leaderboardMenu.AddItem(background); relativePos.X += largeButtonTile.Width; } relativePos.Y += largeButtonTile.Height; relativePos.X = (-largeButtonTile.Width) * 0.5f; } relativePos = new Vector2(0.0f, -largeButtonTile.Height * 0.825f); for (int count = 0; count < 10; count++) { RenderableText placeHolderText = new RenderableText(); placeHolderText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, string.Empty); text = new MenuText(relativePos, placeHolderText, true); leaderboardMenu.AddItem(text); relativePos.Y += tileOffset * 1.5f; } return leaderboardMenu; }
/// <summary> /// Creates a level complete menu. /// </summary> /// <param name="contentManager">The content manager to use to load resources.</param> /// <param name="spriteBatch">The sprite batch to attach to menu items.</param> /// <param name="position">The position of the menu.</param> /// <returns>The new menu created.</returns> public static Menu CreateLevelCompleteMenu(ContentManager contentManager, SpriteBatch spriteBatch, Vector2 position) { Menu levelCompleteMenu = new Menu(position, 1, 3); MenuButton button = null; MenuText text = null; Sprite largeButtonTile = new Sprite(); largeButtonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeButtonTile); Vector2 relativePos = Vector2.Zero; float tileSpacing = 32.0f; relativePos = new Vector2(-largeButtonTile.Width - tileSpacing, largeButtonTile.Height * 0.75f); Sprite largePlayIcon = new Sprite(); largePlayIcon.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargePlayIcon); RenderableText continueText = new RenderableText(); continueText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.ContinueButtonName.ToLowerInvariant()); button = new MenuButton(relativePos, largeButtonTile, largePlayIcon, continueText, MenuConstants.ContinueButtonName); levelCompleteMenu.AddItem(button); relativePos.X = 0.0f; Sprite largeRetryIcon = new Sprite(); largeRetryIcon.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeRetryIcon); RenderableText retryText = new RenderableText(); retryText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.RetryButtonName.ToLowerInvariant()); button = new MenuButton(relativePos, largeButtonTile, largeRetryIcon, retryText, MenuConstants.RetryButtonName); levelCompleteMenu.AddItem(button); relativePos.X = largeButtonTile.Width + tileSpacing; Sprite largeExitIcon = new Sprite(); largeExitIcon.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeExitIcon); RenderableText exitText = new RenderableText(); exitText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.ExitButtonName.ToLowerInvariant()); button = new MenuButton(relativePos, largeButtonTile, largeExitIcon, exitText, MenuConstants.ExitButtonName); levelCompleteMenu.AddItem(button); relativePos = new Vector2(-largeButtonTile.Width - tileSpacing, -largeButtonTile.Height * 0.75f); for (int row = 0; row < 2; row++) { for (int col = 0; col < 4; col++) { largeButtonTile = new Sprite(); largeButtonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeButtonTile); MenuImage background = new MenuImage(relativePos, largeButtonTile); levelCompleteMenu.AddItem(background); relativePos.X += largeButtonTile.Width * 0.745f; } relativePos.Y += largeButtonTile.Height * 0.375f; relativePos.X = -largeButtonTile.Width - tileSpacing; } relativePos = new Vector2(0.0f, -largeButtonTile.Height * 1.1f); RenderableText levelComplete = new RenderableText(); levelComplete.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.LevelCompleteText); text = new MenuText(relativePos, levelComplete); levelCompleteMenu.AddItem(text); relativePos += new Vector2(0.0f, levelComplete.Height * 1.25f); RenderableText highScoreText = new RenderableText(); highScoreText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.LevelCompleteText); text = new MenuText(relativePos, highScoreText, true); levelCompleteMenu.AddItem(text); relativePos += new Vector2(0.0f, levelComplete.Height * 1.5f); RenderableText scoreText = new RenderableText(); scoreText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.ScoreText); text = new MenuText(relativePos, scoreText); levelCompleteMenu.AddItem(text); relativePos += new Vector2(0.0f, levelComplete.Height * 1.25f); RenderableText score = new RenderableText(); score.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.ScoreDefaultText); text = new MenuText(relativePos, score, true); levelCompleteMenu.AddItem(text); relativePos += new Vector2(0.0f, levelComplete.Height * 1.5f); RenderableText ratingText = new RenderableText(); ratingText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.RatingText); text = new MenuText(relativePos, ratingText); levelCompleteMenu.AddItem(text); relativePos += new Vector2(0.0f, levelComplete.Height * 1.25f); RenderableText rating = new RenderableText(); rating.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.GetRating(0)); text = new MenuText(relativePos, rating, true); levelCompleteMenu.AddItem(text); return levelCompleteMenu; }
//THE GRAPHICS SETTINGS < OH MY GOD WHY!!! > *ALL UPDATED BY PLAYERPREF* void Awake() { //Get the native width and height nativeWidth = Screen.width; nativeHeight = Screen.height; //Get Main Menu Button component mainMenuButton = GetComponent <MainMenuButton>(); //If the main menu button compnent was not found find the pause menu script if(!mainMenuButton) { pauseMenuButton = GetComponent <PauseMenuButton>(); } menuText = GetComponent <MenuText>(); //Gameplay Options Initialise //Difficulty if(!PlayerPrefs.HasKey ("Difficulty")) { PlayerPrefs.SetInt ("Difficulty", defaultDifficulty); difficulty = defaultDifficulty; } else { difficulty = PlayerPrefs.GetInt ("Difficulty"); } //Damage Text if(!PlayerPrefs.HasKey ("DamageText")) { PlayerPrefs.SetInt ("DamageText", defaultDamageText); if(damageTextToggle) { damageTextToggle.isOn = true; } } else { if(damageTextToggle) { int currentDamageText = PlayerPrefs.GetInt ("DamageText"); if(currentDamageText == 0) { damageTextToggle.isOn = false; } else { damageTextToggle.isOn = true; } } } //Invert X if(!PlayerPrefs.HasKey ("InvertX")) { PlayerPrefs.SetInt ("InvertX", defaultInvertX); if(invertXToggle) { invertXToggle.isOn = false; } } else { if(invertXToggle) { int currentInvertX = PlayerPrefs.GetInt ("InvertX"); if(currentInvertX == 0) { invertXToggle.isOn = false; } else { invertXToggle.isOn = true; } } } //Invert Y if(!PlayerPrefs.HasKey ("InvertY")) { PlayerPrefs.SetInt ("InvertY", defaultInvertY); if(invertYToggle) { invertYToggle.isOn = false; } } else { if(invertYToggle) { int currentInvertY = PlayerPrefs.GetInt ("InvertY"); if(currentInvertY == 0) { invertYToggle.isOn = false; } else { invertYToggle.isOn = true; } } } //Mouse Swap Toggle if(!PlayerPrefs.HasKey ("MouseSwap")) { PlayerPrefs.SetInt ("MouseSwap", defaultSwapMouseButton); if(mouseSwapToggle) { mouseSwapToggle.isOn = false; } } else { if(mouseSwapToggle) { int currentMouseSwap = PlayerPrefs.GetInt ("MouseSwap"); if(currentMouseSwap == 0) { mouseSwapToggle.isOn = false; } else { mouseSwapToggle.isOn = true; } } } //Mouse Sensitivity if(mouseSensitivityScrollbar) { if(!PlayerPrefs.HasKey ("MouseSensitivity")) { PlayerPrefs.SetFloat ("MouseSensitivity", defaultMouseSensitivity); mouseSensitivityScrollbar.value = defaultMouseSensitivity / 10f; } else { mouseSensitivityScrollbar.value = PlayerPrefs.GetFloat ("MouseSensitivity") / 10f; } } //Mouse Smooth X if(mouseSmoothXScrollbar) { if(!PlayerPrefs.HasKey ("MouseSmoothX")) { PlayerPrefs.SetFloat ("MouseSmoothX", defaultMouseSmoothX); mouseSmoothXScrollbar.value = defaultMouseSmoothX; } else { mouseSmoothXScrollbar.value = PlayerPrefs.GetFloat ("MouseSmoothX"); } } //Mouse Smooth Y if(mouseSmoothYScrollbar) { if(!PlayerPrefs.HasKey ("MouseSmoothY")) { PlayerPrefs.SetFloat ("MouseSmoothY", defaultMouseSmoothY); mouseSmoothYScrollbar.value = defaultMouseSmoothY; } else { mouseSmoothYScrollbar.value = PlayerPrefs.GetFloat ("MouseSmoothY"); } } //Master Volume if(masterVolumeScrollbar) { if(!PlayerPrefs.HasKey ("MasterVolume")) { PlayerPrefs.SetFloat ("MasterVolume", defaultMasterVolume); masterVolumeScrollbar.value = defaultMasterVolume; masterVolume = defaultMasterVolume; AudioListener.volume = defaultMasterVolume; } else { float currentMasterVolume = PlayerPrefs.GetFloat ("MasterVolume"); masterVolumeScrollbar.value = currentMasterVolume; masterVolume = currentMasterVolume; AudioListener.volume = currentMasterVolume; } } //SFX Volume if(sfxVolumeScrollbar) { if(!PlayerPrefs.HasKey ("SFXVolume")) { PlayerPrefs.SetFloat ("SFXVolume", defaultSFXVolume); sfxVolumeScrollbar.value = defaultSFXVolume; sfxVolume = defaultSFXVolume * masterVolume; } else { float currentSFXVolume = PlayerPrefs.GetFloat ("SFXVolume"); sfxVolumeScrollbar.value = currentSFXVolume; sfxVolume = currentSFXVolume * masterVolume; } } //Music Volume if(musicVolumeScrollbar) { if(!PlayerPrefs.HasKey ("MusicVolume")) { PlayerPrefs.SetFloat ("MusicVolume", defaultMusicVolume); musicVolumeScrollbar.value = defaultMusicVolume; musicVolume = defaultMusicVolume * masterVolume; } else { float currentMusicVolume = PlayerPrefs.GetFloat ("MusicVolume"); musicVolumeScrollbar.value = currentMusicVolume; musicVolume = currentMusicVolume * masterVolume; } } //Speaker Mode if(!PlayerPrefs.HasKey ("SpeakerMode")) { PlayerPrefs.SetInt ("SpeakerMode", defaultSpeakerMode); } //Resolution if(width) { width.text = Screen.width.ToString(); } if(height) { height.text = Screen.height.ToString(); } //V Sync if(!PlayerPrefs.HasKey ("VSync")) { PlayerPrefs.SetInt ("VSync", defaultVSync); QualitySettings.vSyncCount = defaultVSync; } else { QualitySettings.vSyncCount = PlayerPrefs.GetInt ("VSync"); } //Brightness if(brightnessScrollbar) { if(!PlayerPrefs.HasKey ("Brightness")) { PlayerPrefs.SetFloat ("Brightness", defaultBrightness); brightnessScrollbar.value = defaultBrightness; } else { brightnessScrollbar.value = PlayerPrefs.GetFloat ("Brightness"); } } //Contrast if(contrastScrollbar) { if(!PlayerPrefs.HasKey ("Contrast")) { PlayerPrefs.SetFloat ("Contrast", defaultContrast); contrastScrollbar.value = defaultContrast; } else { contrastScrollbar.value = PlayerPrefs.GetFloat ("Contrast"); } } //Mouse Cursor Size if(mouseCursorSizeScrollbar) { if(!PlayerPrefs.HasKey ("MouseCursorSize")) { PlayerPrefs.SetFloat ("MouseCursorSize", defaultMouseCursorSize); mouseCursorSizeScrollbar.value = defaultMouseCursorSize; } else { mouseCursorSizeScrollbar.value = PlayerPrefs.GetFloat ("MouseCursorSize"); } } //Graphics //Motion Blur if(!PlayerPrefs.HasKey ("MotionBlur")) { PlayerPrefs.SetFloat ("MotionBlur", defaultMotionBlur); } //Bloom if(!PlayerPrefs.HasKey ("Bloom")) { PlayerPrefs.SetFloat ("Bloom", defaultBloom); } //Sun Shafts if(!PlayerPrefs.HasKey ("SunShaft")) { PlayerPrefs.SetFloat ("SunShaft", defaultSunShaft); } //Graphics Quality: 0 = Low, 1 = Medium, 2 = High, 3 = Ultra, 4 = Custom if(!PlayerPrefs.HasKey ("GraphicsQuality")) { GraphicsMediumQuality (); //Set Everything to Medium Quality on default } else { int currentGraphics = PlayerPrefs.GetInt ("GraphicsQuality"); switch (currentGraphics) { case 0: GraphicsLowQuality (); break; case 1: GraphicsMediumQuality (); break; case 2: GraphicsHighQuality (); break; case 3: GraphicsUltraQuality (); break; case 4: menuText.UpdateAllGraphicsText (); break; } } }
/// <summary> /// Creates an about menu. /// </summary> /// <param name="contentManager">The content manager to use to load resources.</param> /// <param name="spriteBatch">The sprite batch to attach to menu items.</param> /// <param name="position">The position of the menu.</param> /// <returns>The new menu created.</returns> public static Menu CreateAboutMenu(ContentManager contentManager, SpriteBatch spriteBatch, Vector2 position) { Menu aboutMenu = new Menu(position, 1, 1); MenuButton button = null; MenuText text = null; RenderableText creditsText = new RenderableText(); Sprite largeButtonTile = new Sprite(); largeButtonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeButtonTile); Vector2 relativePos = Vector2.Zero; float tileOffset = 32.0f; relativePos = new Vector2((-largeButtonTile.Width - tileOffset) * 1.5f, (-largeButtonTile.Height - tileOffset) * 0.5f); Sprite largeBackIcon = new Sprite(); largeBackIcon.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeBackIcon); RenderableText backText = new RenderableText(); backText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFont, MenuConstants.BackButtonName.ToLowerInvariant()); button = new MenuButton(relativePos, largeButtonTile, largeBackIcon, backText, MenuConstants.BackButtonName); aboutMenu.AddItem(button); relativePos = new Vector2((-largeButtonTile.Width) * 0.5f, (-largeButtonTile.Height - tileOffset) * 0.5f); for (int row = 0; row < 2; row++) { for (int col = 0; col < 2; col++) { largeButtonTile = new Sprite(); largeButtonTile.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.LargeButtonTile); MenuImage background = new MenuImage(relativePos, largeButtonTile); aboutMenu.AddItem(background); relativePos.X += largeButtonTile.Width; } relativePos.Y += largeButtonTile.Height; relativePos.X = (-largeButtonTile.Width) * 0.5f; } relativePos = new Vector2(0.0f, -largeButtonTile.Height * 0.875f); float smallGap = tileOffset * 1.2f; float largeGap = tileOffset * 2.2f; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.DesignArtworkText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += smallGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.ProgrammingSfxText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += smallGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.KeithText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += largeGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.MusicText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += smallGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.MusicSourceText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += largeGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.ModelText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += smallGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.ModelSourceText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += largeGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.ThanksText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += smallGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.TestersText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); relativePos.Y += smallGap; creditsText = new RenderableText(); creditsText.InitializeAndLoad(spriteBatch, contentManager, ContentLocations.SegoeUIFontMedium, MenuConstants.LecturersText); text = new MenuText(relativePos, creditsText, true); aboutMenu.AddItem(text); return aboutMenu; }
internal void AddMenuText(string strText,Trigger trigger) { MenuText menuText = new MenuText(Parent, trigger); menuText.Text = strText; components.Add(menuText); menuTexts.Add(menuText); }
internal void SetText() { ContinueButtonText.text = MenuText.Get(MenuText.Entry.Continue); RestartButtonText.text = MenuText.Get(MenuText.Entry.Restart); ExitButtonText.text = MenuText.Get(MenuText.Entry.Exit); }
internal void AddMenuText(MenuText menuText) { components.Add(menuText); menuTexts.Add(menuText); }
public LevelEditorState(Surface _sfcGameWindow, string _name = "untitled") : base(_sfcGameWindow) { camera = new Camera(); name = _name; map = new Map(); map.editor = true; vecPlayer = new Vector(new Point(2, 3)); player = new EditorSprite(vecPlayer, new Player(0, 0)); enemies = new List <EditorSprite> (); if (name.EndsWith(".xml")) { XmlDocument doc = new XmlDocument(); doc.Load(Constants.Constants.GetResourcePath(name)); map.FromXML(doc); XmlNode p = doc.SelectSingleNode("//player"); player.gridPos.X = Convert.ToInt16(p.Attributes ["x"].InnerText); player.gridPos.Y = Convert.ToInt16(p.Attributes ["y"].InnerText); name = name.Replace(".xml", ""); foreach (XmlNode node in doc.SelectNodes("//enemy")) { EnemyType typ = (EnemyType)Enum.Parse(typeof(EnemyType), node.Attributes ["type"].InnerText); int x = Convert.ToInt16(node.Attributes ["x"].InnerText); int y = Convert.ToInt16(node.Attributes ["y"].InnerText); Enemy enemy = Enemy.GetEnemy(typ, x, y); EditorSprite s = new EditorSprite(new Vector(new Point(x, y)), enemy); Vector vec = map.GetTilePos(x, y); s.x = vec.X; s.y = vec.Y; s.data = (object)typ; enemies.Add(s); } } else { map.EmptyMap(); } Vector v = map.GetTilePos((int)player.gridPos.X, (int)player.gridPos.Y); player.x = v.X; player.y = v.Y; grid = new EditorGrid(); List <MenuObject> menuObjs = new List <MenuObject> (); foreach (TileType typ in Enum.GetValues(typeof(TileType))) { MenuText t = new MenuText(typ.ToString(), Color.Gold, Color.Black, TEXT_SIZE); menuObjs.Add(t); } foreach (EnemyType typ in Enum.GetValues(typeof(EnemyType))) { MenuText t = new MenuText(typ.ToString(), Color.Gold, Color.Gray, TEXT_SIZE); menuObjs.Add(t); } MenuText menuNoEnemy = new MenuText("NoEnemy", Color.Gold, Color.Gray, TEXT_SIZE); menuObjs.Add(menuNoEnemy); MenuText menuPlayer = new MenuText("Player", Color.Gold, Color.Blue, TEXT_SIZE); menuObjs.Add(menuPlayer); MenuText menuSave = new MenuText("Save", Color.Gold, Color.Red, TEXT_SIZE); menuSave.selectedHandler += EventSave; menuObjs.Add(menuSave); MenuText menuDelete = new MenuText("Delete", Color.Gold, Color.Red, TEXT_SIZE); menuDelete.selectedHandler += EventDelete; menuObjs.Add(menuDelete); MenuText menuQuit = new MenuText("Exit", Color.Gold, Color.Red, TEXT_SIZE); menuQuit.selectedHandler += delegate(MenuObject obj) { backToMenuHandler(obj); }; menuObjs.Add(menuQuit); MenuText menuName = new MenuText(name, Color.Green, Color.Green, TEXT_SIZE); menuObjs.Add(menuName); menu = new Menu(menuObjs, MenuLayout.Horizontal, 5, 700); GenerateMenuBackground(); }
private Dictionary <MenuType, Menu> PrepareMenus() { var Menus = new Dictionary <MenuType, Menu>(); //button sprite var buttonsprite = Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/54b2d246e0e35be.png"); //Buttons var SinglePlayerBtn = new MenuButton("Singleplayer", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 55, 200, 250, 50, buttonsprite); var HighScoresBtn = new MenuButton("High Scores", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 55, 255, 250, 50, buttonsprite); var HighScoreToTitleScrn = new MenuButton("Return to start", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 55, 475, 250, 50, buttonsprite); var ExitBtn = new MenuButton("Exit", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 55, 375, 250, 50, buttonsprite); var PauseRestart = new MenuButton("Restart", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 120, 340, 50, buttonsprite); var PauseLvlOptions = new MenuButton("Level Options", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 175, 340, 50, buttonsprite); var PauseToTitleScrn = new MenuButton("Return to start", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 230, 340, 50, buttonsprite); var DeathToTitleScrn = new MenuButton("Return to start", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 230, 340, 50, buttonsprite); var VictoryToTitleScrn = new MenuButton("Return to start", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 350, 340, 50, buttonsprite); var DeathLvlOptions = new MenuButton("Level Options", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 175, 340, 50, buttonsprite); var DeathRestart = new MenuButton("Restart", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 120, 340, 50, buttonsprite); var VictoryRestart = new MenuButton("Restart", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 405, 340, 50, buttonsprite); var StartGame = new MenuButton("Start Game", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 340, 340, 50, buttonsprite); var PreviousCharacter = new MenuButton("<", new Font("Calibri", 26), Brushes.Gainsboro, 800 / 2 - 170, 250, 25, 75, buttonsprite); var NextCharacter = new MenuButton(">", new Font("Calibri", 26), Brushes.Gainsboro, 800 / 2 + 145, 250, 25, 75, buttonsprite); var PreviousLevel = new MenuButton("<", new Font("Calibri", 26), Brushes.Gainsboro, 800 / 2 - 170, 100, 25, 75, buttonsprite); var NextLevel = new MenuButton(">", new Font("Calibri", 26), Brushes.Gainsboro, 800 / 2 + 145, 100, 25, 75, buttonsprite); var LevelOptionsToTitleScrn = new MenuButton("Return to start", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 395, 340, 50, buttonsprite); var GoToNextLevel = new MenuButton("Continue", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 800 / 2 - 170, 295, 340, 50, buttonsprite); var InstructionsBtn = new MenuButton("Instructions", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 55, 310, 250, 50, buttonsprite); var InstructionsScreenToTitleScrnBtn = new MenuButton("Return to start", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 55, 475, 250, 50, buttonsprite); var CreditsToTitleBtn = new MenuButton("Return to start", new Font("Munro", 25, System.Drawing.FontStyle.Bold), Brushes.Gainsboro, 55, 475, 250, 50, buttonsprite); //Panels var LevelSpriteBack = new MenuPanel(800 / 2 - 145, 100, 75, 75, buttonsprite); var LevelTitleBack = new MenuPanel(800 / 2 - 74, 100, 221, 75, buttonsprite); var CharacterSpriteBack = new MenuPanel(800 / 2 - 145, 250, 75, 75, buttonsprite); var CharacterTitleBack = new MenuPanel(800 / 2 - 74, 250, 221, 75, buttonsprite); var OverlayPanel = new MenuPanel(800 / 12 * 3, 0, 800 / 12 * 6, 600, Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/menu-background.jpg")); var LevelOptionsPanel = new MenuPanel(800 / 12 * 3, 0, 800 / 12 * 6, 600, Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/menu-background.jpg")); //Texts var PauseText = new MenuText("Pause", new Font("ArcadeClassic", 60), Brushes.White) { y = 50 }; var DeadText = new MenuText("GAME OVER", new Font("ArcadeClassic", 60), Brushes.White) { y = 50 }; var VictoryText = new MenuText("Victory", new Font("ArcadeClassic", 60), Brushes.White) { y = 120 }; VictoryHighScoreText = new MenuText("Score: " + gm.Points, new Font("ArcadeClassic", 60), Brushes.White) { y = 180 }; var CharacterName = new MenuText(Player.CharacterNames[Player.Character_index], new Font("Calibri", 32, System.Drawing.FontStyle.Bold), Brushes.DarkSlateGray, 800 / 2 - 55, 600 / 2 - 34); var LevelName = new MenuText(Level.Levels[Level.Level_index].Name, new Font("Calibri", 32, System.Drawing.FontStyle.Bold), Brushes.DarkSlateGray, 800 / 2 - 55, 115); var SelectLevel = new MenuText("Select Level", new Font("ArcadeClassic", 40), Brushes.White) { y = 50 }; var SelectCharacter = new MenuText("Select Character", new Font("ArcadeClassic", 40), Brushes.White) { y = 200 }; var HighScores = new MenuText(ScoreController.GetTopActive(), new Font("ArcadeClassic", 40, System.Drawing.FontStyle.Underline), Brushes.White) { y = 200 }; var Instructions = new MenuText("You can control your character with 'A', 'D' and spacebar." + Environment.NewLine + "The goal is to reach the red flag at the end of each level." + Environment.NewLine + "Good luck!", new Font("ArcadeClassic", 25), Brushes.White) { y = 200 }; var CopyrightDisclaimer = new MenuText("This game is for educational purpose only", new Font("ArcadeClassic", 21, System.Drawing.FontStyle.Italic), Brushes.White) { y = 440 }; var Congratulations = new MenuText("Congratulations", new Font("ArcadeClassic", 60), Brushes.White) { y = 120 }; var CongratulationsTxt = new MenuText("You have succesfully completed the game, good job!", new Font("ArcadeClassic", 25), Brushes.White) { y = 200 }; var Credits = new MenuText("Credits", new Font("ArcadeClassic", 60), Brushes.White) { y = 280 }; var CreditsTxt = new MenuText("This game was made by:" + Environment.NewLine + "Buster, Bart, Remy, Nolen, Felix en Bram", new Font("ArcadeClassic", 25), Brushes.White) { y = 360 }; //Images var CharacterSprite = new MenuImage(800 / 2 - 132, 262, 48, 48, Image.FromFile("Animations/" + Player.CharacterNames[Player.Character_index] + "/normal.gif"), true); var LevelSprite = new MenuImage(800 / 2 - 132, 112, 48, 48, Image.FromFile("Levels/" + Level.Levels[Level.Level_index].Name + ".gif"), true); var VictorySprite = new MenuImage(368, 50, 64, 64, Image.FromFile("Scene/trophy.png"), true); //Click events GoToNextLevel.Clicked += delegate { if (Level.Level_index != Level.Levels.Count - 1) { Menus[MenuType.Completed].Deactivate(); Level.Level_index++; gm.StartLevel(true); } else { Level.Level_index = 0; Menus[MenuType.Completed].Deactivate(); Menus[MenuType.Credits].Activate(); } }; LevelOptionsToTitleScrn.Clicked += delegate { Menus[MenuType.LevelOptions].Deactivate(); Menus[MenuType.TitleScreen].Activate(); }; NextLevel.Clicked += delegate { if (Level.Level_index != Level.Levels.Count - 1) { Level.Level_index++; } else { Level.Level_index = 0; } LevelSprite.Sprite = Image.FromFile("Levels/" + Level.Levels[Level.Level_index].Name + ".gif"); LevelName.Content = Level.Levels[Level.Level_index].Name; HighScores.Content = ScoreController.GetTopActive(); }; PreviousLevel.Clicked += delegate { if (Level.Level_index == 0) { Level.Level_index = Level.Levels.Count - 1; } else { Level.Level_index--; } LevelSprite.Sprite = Image.FromFile("Levels/" + Level.Levels[Level.Level_index].Name + ".gif"); LevelName.Content = Level.Levels[Level.Level_index].Name; HighScores.Content = ScoreController.GetTopActive(); }; NextCharacter.Clicked += delegate { if (Player.Character_index != Player.CharacterNames.Count - 1) { Player.Character_index++; } else { Player.Character_index = 0; } CharacterSprite.Sprite = Image.FromFile("Animations/" + Player.CharacterNames[Player.Character_index] + "/normal.gif"); CharacterName.Content = Player.CharacterNames[Player.Character_index]; }; PreviousCharacter.Clicked += delegate { if (Player.Character_index == 0) { Player.Character_index = Player.CharacterNames.Count - 1; } else { Player.Character_index -= 1; } CharacterSprite.Sprite = Image.FromFile("Animations/" + Player.CharacterNames[Player.Character_index] + "/normal.gif"); CharacterName.Content = Player.CharacterNames[Player.Character_index]; }; StartGame.Clicked += delegate { Menus[MenuType.LevelOptions].Deactivate(); gm.StartLevel(true); }; DeathLvlOptions.Clicked += delegate { Menus[MenuType.Death].Deactivate(); Menus[MenuType.LevelOptions].Activate(); }; DeathToTitleScrn.Clicked += delegate { Menus[MenuType.Death].Deactivate(); Menus[MenuType.TitleScreen].Activate(); }; VictoryToTitleScrn.Clicked += delegate { Menus[MenuType.Completed].Deactivate(); Menus[MenuType.TitleScreen].Activate(); }; DeathRestart.Clicked += delegate { Menus[MenuType.Death].Deactivate(); gm.StartLevel(true); }; VictoryRestart.Clicked += delegate { Menus[MenuType.Completed].Deactivate(); gm.StartLevel(true); }; SinglePlayerBtn.Clicked += delegate { Menus[MenuType.TitleScreen].Deactivate(); Menus[MenuType.LevelOptions].Activate(); }; ExitBtn.Clicked += delegate { Environment.Exit(0); }; PauseRestart.Clicked += delegate { Menus[MenuType.Pause].Deactivate(); gm.StartLevel(true); }; HighScoresBtn.Clicked += delegate { Menus[MenuType.TitleScreen].Deactivate(); Menus[MenuType.HighScoreScreen].Activate(); }; PauseLvlOptions.Clicked += delegate { Menus[MenuType.Pause].Deactivate(); Menus[MenuType.LevelOptions].Activate(); }; PauseToTitleScrn.Clicked += delegate { Menus[MenuType.Pause].Deactivate(); Menus[MenuType.TitleScreen].Activate(); }; HighScoreToTitleScrn.Clicked += delegate { Menus[MenuType.HighScoreScreen].Deactivate(); Menus[MenuType.TitleScreen].Activate(); }; InstructionsBtn.Clicked += delegate { Menus[MenuType.TitleScreen].Deactivate(); Menus[MenuType.InstructionsScreen].Activate(); }; InstructionsScreenToTitleScrnBtn.Clicked += delegate { Menus[MenuType.InstructionsScreen].Deactivate(); Menus[MenuType.TitleScreen].Activate(); }; CreditsToTitleBtn.Clicked += delegate { Menus[MenuType.Credits].Deactivate(); Menus[MenuType.TitleScreen].Activate(); }; //adds to Menu's Menus.Add(MenuType.TitleScreen, new Menu(ref gm.screen, new List <MenuItem> { SinglePlayerBtn, HighScoresBtn, InstructionsBtn, ExitBtn }, Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/Title.gif"))); Menus.Add(MenuType.HighScoreScreen, new Menu(ref gm.screen, new List <MenuItem> { HighScoreToTitleScrn, LevelSpriteBack, LevelTitleBack, PreviousLevel, NextLevel, LevelName, LevelSprite, HighScores }, Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/HighScores.gif"))); Menus.Add(MenuType.InstructionsScreen, new Menu(ref gm.screen, new List <MenuItem> { InstructionsScreenToTitleScrnBtn, Instructions, CopyrightDisclaimer }, Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/Title.gif"))); Menus.Add(MenuType.Pause, new Menu(ref gm.screen, new List <MenuItem> { OverlayPanel, PauseText, PauseToTitleScrn, PauseRestart, PauseLvlOptions }, null)); Menus.Add(MenuType.Death, new Menu(ref gm.screen, new List <MenuItem> { OverlayPanel, DeadText, DeathToTitleScrn, DeathRestart, DeathLvlOptions }, null)); Menus.Add(MenuType.Completed, new Menu(ref gm.screen, new List <MenuItem> { OverlayPanel, VictorySprite, VictoryText, VictoryHighScoreText, VictoryToTitleScrn, VictoryRestart, GoToNextLevel }, null)); Menus.Add(MenuType.Credits, new Menu(ref gm.screen, new List <MenuItem> { Congratulations, CongratulationsTxt, Credits, CreditsTxt, CreditsToTitleBtn }, Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/back.gif"))); Menus.Add(MenuType.LevelOptions, new Menu(ref gm.screen, new List <MenuItem> { LevelOptionsPanel, StartGame, PreviousCharacter, CharacterSpriteBack, CharacterTitleBack, CharacterSprite, NextCharacter, CharacterName, LevelSpriteBack, LevelTitleBack, PreviousLevel, NextLevel, LevelName, LevelSprite, SelectCharacter, SelectLevel, LevelOptionsToTitleScrn }, Image.FromFile(AppDomain.CurrentDomain.BaseDirectory + "Scene/back.gif"))); return(Menus); }
private void createShortMessage(string message, int seconds) { MenuText.createShortMessage(message); Invoke("clearIn", seconds); }
protected void AddMenuText(string text) { MenuItem mi = new MenuText(text); AddMenuItem(mi); }
private void clearIn() { MenuText.clearMessage(); }
void HandleMouse() { if (Mouse.IsButtonPressed(MouseButton.PrimaryButton)) { MenuText mT = (MenuText)menu.objects [menu.objects.Count - 1]; if (mT.colourSelected != Color.Red) { mT.colourSelected = Color.Red; mT.colourNotSelected = Color.Red; mT.RenderText(); } int tileX, tileY; tileX = tileY = 0; bool tileXA = false; bool tileYA = false; for (int x = 0; x < Constants.Constants.MAP_WIDTH; x++) { if (Mouse.MousePosition.X + map.overallCamera.x < x * Tile.WIDTH + x * 2 + 1) { tileX = x - 1; tileXA = true; break; } } for (int y = 0; y < Constants.Constants.MAP_HEIGHT; y++) { if (Mouse.MousePosition.Y + map.overallCamera.y < y * Tile.WIDTH + y * 2 + 1) { tileY = y - 1; tileYA = true; break; } } if (tileXA && tileYA) { MenuText menuText = (MenuText)menu.objects [menu.selected]; Vector v = map.GetTilePos(tileX, tileY); if (menuText.text == "Player") { player.gridPos = new Vector(new Point(tileX, tileY)); player.x = v.X; player.y = v.Y; } else if (menuText.text == "NoEnemy") { EditorSprite removeSprite = null; foreach (EditorSprite s in enemies) { if (s.gridPos.X == tileX && s.gridPos.Y == tileY) { removeSprite = s; } } if (removeSprite != null) { enemies.Remove(removeSprite); } } else if (menuText.text.EndsWith("Enemy")) { EnemyType typ = (EnemyType)Enum.Parse(typeof(EnemyType), menuText.text); Enemy e = Enemy.GetEnemy(typ, 0, 0); EditorSprite s = new EditorSprite(new Vector(new Point(tileX, tileY)), e); s.data = (object)typ; for (int i = 0; i < enemies.Count; i++) { EditorSprite sprite = enemies [i]; if (sprite.gridPos.X == s.gridPos.X && sprite.gridPos.Y == s.gridPos.Y) { enemies.Remove(sprite); i--; } } s.x = v.X; s.y = v.Y; enemies.Add(s); } else if (menuText.text != "Exit" && menuText.text != "Save" && menuText.text != name) { TileType typ = (TileType)Enum.Parse(typeof(TileType), menuText.text, true); Graphic t = map.lookup [typ].Clone(); if (typ == TileType.Fire) { t.colour = Color.Orange; } map.map [tileY] [tileX].tileType = typ; map.map [tileY] [tileX].tileGraphic = t; } } } }