Almost done with symphony remastered menu. Needs some tweaks but works for the most part.

This commit is contained in:
2018-05-30 13:58:14 -07:00
parent 5e8f2ccdfd
commit 04dd0432f0
4 changed files with 508 additions and 56 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

View File

@ -14,15 +14,7 @@ using StardustCore.UIUtilities.SpriteFonts.Components;
namespace StardewSymphonyRemastered.Framework.Menus namespace StardewSymphonyRemastered.Framework.Menus
{ {
/* TODO: Make the different menus for the conditional keys /*
* Normal (season, weather,time, location,date)
* Festival
* Event
*
* Add in update functionality for menu/events/festival selection to be able to go to next page.
*
*
* Need to do menu layout for menu/festival/event music.
* Ned to make back buttons. * Ned to make back buttons.
* *
* //Make all the functionality work. * //Make all the functionality work.
@ -76,12 +68,16 @@ namespace StardewSymphonyRemastered.Framework.Menus
public Button deleteButton; public Button deleteButton;
public Button playButton; public Button playButton;
public Button stopButton; public Button stopButton;
public Button backButton;
public DrawMode drawMode; public DrawMode drawMode;
public int currentAlbumIndex; public int currentAlbumIndex;
public int currentSongPageIndex; public int currentSongPageIndex;
public int locationPageIndex; public int locationPageIndex;
public int festivalPageIndex;
public int eventPageIndex;
public int menuPageIndex;
public List<Button> fancyButtons; //List that holds all of the buttons for the fancy album menu. public List<Button> fancyButtons; //List that holds all of the buttons for the fancy album menu.
public int framesSinceLastUpdate; //Used to control how fast we can cycle through the menu. public int framesSinceLastUpdate; //Used to control how fast we can cycle through the menu.
@ -162,6 +158,9 @@ namespace StardewSymphonyRemastered.Framework.Menus
this.currentAlbumIndex = 0; this.currentAlbumIndex = 0;
this.locationPageIndex = 0; this.locationPageIndex = 0;
this.menuPageIndex = 0;
this.festivalPageIndex = 0;
this.eventPageIndex = 0;
this.drawMode = DrawMode.AlbumFancySelection; this.drawMode = DrawMode.AlbumFancySelection;
this.updateFancyButtons(); this.updateFancyButtons();
@ -182,6 +181,8 @@ namespace StardewSymphonyRemastered.Framework.Menus
Vector2 delPos = new Vector2(this.width * .1f + 320 + 32, this.height * .05f + 128); //Put it to the right of the music disk Vector2 delPos = new Vector2(this.width * .1f + 320 + 32, this.height * .05f + 128); //Put it to the right of the music disk
this.deleteButton = new Button("DeleteIcon", new Rectangle((int)delPos.X, (int)delPos.Y, 64, 64), StardewSymphony.textureManager.getTexture("DeleteIcon"), "", new Rectangle(0, 0, 32, 32), 2f, new Animation(new Rectangle(0, 0, 32, 32)), Color.White, Color.White, new ButtonFunctionality(null, null, null)); this.deleteButton = new Button("DeleteIcon", new Rectangle((int)delPos.X, (int)delPos.Y, 64, 64), StardewSymphony.textureManager.getTexture("DeleteIcon"), "", new Rectangle(0, 0, 32, 32), 2f, new Animation(new Rectangle(0, 0, 32, 32)), Color.White, Color.White, new ButtonFunctionality(null, null, null));
Vector2 backPos = new Vector2(this.width * .1f + 64, this.height * .05f); //Put it to the right of the music disk
this.backButton = new Button("BackButton", new Rectangle((int)backPos.X, (int)backPos.Y, 64, 64), StardewSymphony.textureManager.getTexture("BackButton"), "", new Rectangle(0, 0, 16, 16), 4f, new Animation(new Rectangle(0, 0, 16, 16)), Color.White, Color.White, new ButtonFunctionality(null, null, null));
} }
@ -280,6 +281,96 @@ namespace StardewSymphonyRemastered.Framework.Menus
this.framesSinceLastUpdate++; this.framesSinceLastUpdate++;
} }
} }
if (this.drawMode == DrawMode.FestivalSelection)
{
if (framesSinceLastUpdate == updateNumber)
{
var state = Microsoft.Xna.Framework.Input.Keyboard.GetState();
if (state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Left) || state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.A))
{
if (this.festivalPageIndex > 0)
{
this.festivalPageIndex--;
}
this.updateFancyButtons();
this.framesSinceLastUpdate = 0;
Game1.playSound("shwip");
}
if (state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Right) || state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.D))
{
this.festivalPageIndex++;
this.updateFancyButtons();
this.framesSinceLastUpdate = 0;
Game1.playSound("shwip");
}
}
else
{
this.framesSinceLastUpdate++;
}
}
if (this.drawMode == DrawMode.EventSelection)
{
if (framesSinceLastUpdate == updateNumber)
{
var state = Microsoft.Xna.Framework.Input.Keyboard.GetState();
if (state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Left) || state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.A))
{
if (this.eventPageIndex > 0)
{
this.eventPageIndex--;
}
this.updateFancyButtons();
this.framesSinceLastUpdate = 0;
Game1.playSound("shwip");
}
if (state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Right) || state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.D))
{
this.eventPageIndex++;
this.updateFancyButtons();
this.framesSinceLastUpdate = 0;
Game1.playSound("shwip");
}
}
else
{
this.framesSinceLastUpdate++;
}
}
if (this.drawMode == DrawMode.MenuSelection)
{
if (framesSinceLastUpdate == updateNumber)
{
var state = Microsoft.Xna.Framework.Input.Keyboard.GetState();
if (state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Left) || state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.A))
{
if (this.menuPageIndex > 0)
{
this.menuPageIndex--;
}
this.updateFancyButtons();
this.framesSinceLastUpdate = 0;
Game1.playSound("shwip");
}
if (state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.Right) || state.IsKeyDown(Microsoft.Xna.Framework.Input.Keys.D))
{
this.menuPageIndex++;
this.updateFancyButtons();
this.framesSinceLastUpdate = 0;
Game1.playSound("shwip");
}
}
else
{
this.framesSinceLastUpdate++;
}
}
} }
@ -387,7 +478,7 @@ namespace StardewSymphonyRemastered.Framework.Menus
//Allow 8 songs to be displayed per page. //Allow 8 songs to be displayed per page.
Texture2DExtended texture = StardewSymphony.textureManager.getTexture("GreenBallon"); Texture2DExtended texture = StardewSymphony.textureManager.getTexture("GreenBallon");
float scale = 1.00f / ((float)texture.texture.Width / 64f); float scale = 1.00f / ((float)texture.texture.Height / 64f);
Rectangle srcRect = new Rectangle(0, 0, texture.texture.Width, texture.texture.Height); Rectangle srcRect = new Rectangle(0, 0, texture.texture.Width, texture.texture.Height);
this.fancyButtons.Add(new Button(SongSpecifics.festivals.ElementAt(i), new Rectangle((int)placement2.X + 25, (int)placement2.Y + ((i % 6) * 100) + 100, 64, 64), texture, SongSpecifics.festivals.ElementAt(i), srcRect, scale, new Animation(srcRect), Color.White, Color.White, new ButtonFunctionality(null, null, null))); this.fancyButtons.Add(new Button(SongSpecifics.festivals.ElementAt(i), new Rectangle((int)placement2.X + 25, (int)placement2.Y + ((i % 6) * 100) + 100, 64, 64), texture, SongSpecifics.festivals.ElementAt(i), srcRect, scale, new Animation(srcRect), Color.White, Color.White, new ButtonFunctionality(null, null, null)));
@ -738,7 +829,7 @@ namespace StardewSymphonyRemastered.Framework.Menus
} }
} }
if (this.drawMode == DrawMode.NothingElseToDisplay) if (this.drawMode == DrawMode.NothingElseToDisplay || this.drawMode==DrawMode.SelectedEvent || this.drawMode==DrawMode.SelectedMenu || this.drawMode==DrawMode.SelectedFestival)
{ {
this.fancyButtons.Clear(); this.fancyButtons.Clear();
} }
@ -885,6 +976,12 @@ namespace StardewSymphonyRemastered.Framework.Menus
return; return;
} }
if (this.backButton.containsPoint(x, y))
{
goBack();
return;
}
if (this.drawMode == DrawMode.AlbumSelection) if (this.drawMode == DrawMode.AlbumSelection)
{ {
@ -1058,74 +1155,194 @@ namespace StardewSymphonyRemastered.Framework.Menus
//Left click an option. //Left click an option.
if (this.drawMode == DrawMode.LocationSelection) if (this.drawMode == DrawMode.LocationSelection)
{ {
foreach (var button in this.fancyButtons) Button ok = Button.Empty();
int amountToShow = 6;
this.updateFancyButtons();
int count = this.fancyButtons.Count - 1;
int amount = 0;
if (0 + ((this.locationPageIndex + 1) * amountToShow) >= this.fancyButtons.Count)
{ {
if (button.containsPoint(x, y)) amount = (0 + ((this.locationPageIndex + 1) * (amountToShow)) - fancyButtons.Count);
amount = amountToShow - amount;
if (amount < 0) amount = 0;
}
else if (this.fancyButtons.Count < amountToShow)
{
amount = this.fancyButtons.Count;
}
else
{
amount = amountToShow;
}
if (amount == 0 && this.locationPageIndex > 1)
{
this.locationPageIndex--;
}
var drawList = this.fancyButtons.GetRange(0 + (this.locationPageIndex * (amountToShow)), amount);
bool songSelected = false;
//Get a list of components to draw. And if I click one select the song.
foreach (var v in drawList)
{
if (v.containsPoint(x, y))
{ {
if (button == null) continue;
Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 512); Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 512);
//Get any valid location button. this.currentlySelectedLocation = v.clone(position);
this.currentlySelectedLocation = button.clone(position); songSelected = true;
this.drawMode = DrawMode.DaySelection; this.drawMode = DrawMode.DaySelection;
buttonSelected = true;
} }
} }
if (buttonSelected == true) this.updateFancyButtons(); if (songSelected == true)
{
this.updateFancyButtons();
}
return; return;
} }
if (this.drawMode == DrawMode.FestivalSelection) if (this.drawMode == DrawMode.FestivalSelection)
{ {
foreach (var button in this.fancyButtons) Button ok = Button.Empty();
int amountToShow = 6;
this.updateFancyButtons();
int count = this.fancyButtons.Count - 1;
int amount = 0;
if (0 + ((this.festivalPageIndex + 1) * amountToShow) >= this.fancyButtons.Count)
{ {
if (button.containsPoint(x, y)) amount = (0 + ((this.festivalPageIndex + 1) * (amountToShow)) - fancyButtons.Count);
amount = amountToShow - amount;
if (amount < 0) amount = 0;
}
else if (this.fancyButtons.Count < amountToShow)
{
amount = this.fancyButtons.Count;
}
else
{
amount = amountToShow;
}
if (amount == 0 && this.festivalPageIndex > 1)
{
this.festivalPageIndex--;
}
var drawList = this.fancyButtons.GetRange(0 + (this.festivalPageIndex * (amountToShow)), amount);
bool songSelected = false;
//Get a list of components to draw. And if I click one select the song.
foreach (var v in drawList)
{
if (v.containsPoint(x, y))
{ {
if (button == null) continue;
Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 384); Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 384);
//Get any valid location button. this.currentlySelectedFestival = v.clone(position);
this.currentlySelectedFestival = button.clone(position); songSelected = true;
this.drawMode = DrawMode.SelectedFestival; this.drawMode = DrawMode.SelectedFestival;
buttonSelected = true;
} }
} }
if (buttonSelected == true) this.updateFancyButtons(); if (songSelected == true)
{
this.updateFancyButtons();
}
return; return;
} }
if (this.drawMode == DrawMode.MenuSelection) if (this.drawMode == DrawMode.MenuSelection)
{ {
foreach (var button in this.fancyButtons) Button ok = Button.Empty();
int amountToShow = 6;
this.updateFancyButtons();
int count = this.fancyButtons.Count - 1;
int amount = 0;
if (0 + ((this.menuPageIndex + 1) * amountToShow) >= this.fancyButtons.Count)
{ {
if (button.containsPoint(x, y)) amount = (0 + ((this.menuPageIndex + 1) * (amountToShow)) - fancyButtons.Count);
amount = amountToShow - amount;
if (amount < 0) amount = 0;
}
else if (this.fancyButtons.Count < amountToShow)
{
amount = this.fancyButtons.Count;
}
else
{
amount = amountToShow;
}
if (amount == 0 && this.menuPageIndex > 1)
{
this.menuPageIndex--;
}
var drawList = this.fancyButtons.GetRange(0 + (this.menuPageIndex * (amountToShow)), amount);
bool songSelected = false;
//Get a list of components to draw. And if I click one select the song.
foreach (var v in drawList)
{
if (v.containsPoint(x, y))
{ {
if (button == null) continue;
Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 384); Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 384);
//Get any valid location button. this.currentlySelectedMenu = v.clone(position);
this.currentlySelectedMenu = button.clone(position); songSelected = true;
this.drawMode = DrawMode.SelectedMenu; this.drawMode = DrawMode.SelectedMenu;
buttonSelected = true;
} }
} }
if (buttonSelected == true) this.updateFancyButtons(); if (songSelected == true)
{
this.updateFancyButtons();
}
return; return;
} }
if (this.drawMode == DrawMode.EventSelection) if (this.drawMode == DrawMode.EventSelection)
{ {
foreach (var button in this.fancyButtons) Button ok = Button.Empty();
int amountToShow = 6;
this.updateFancyButtons();
int count = this.fancyButtons.Count - 1;
int amount = 0;
if (0 + ((this.eventPageIndex + 1) * amountToShow) >= this.fancyButtons.Count)
{ {
if (button.containsPoint(x, y)) amount = (0 + ((this.eventPageIndex + 1) * (amountToShow)) - fancyButtons.Count);
amount = amountToShow - amount;
if (amount < 0) amount = 0;
}
else if (this.fancyButtons.Count < amountToShow)
{
amount = this.fancyButtons.Count;
}
else
{
amount = amountToShow;
}
if (amount == 0 && this.eventPageIndex > 1)
{
this.eventPageIndex--;
}
var drawList = this.fancyButtons.GetRange(0 + (this.eventPageIndex * (amountToShow)), amount);
bool songSelected = false;
//Get a list of components to draw. And if I click one select the song.
foreach (var v in drawList)
{
if (v.containsPoint(x, y))
{ {
if (button == null) continue;
Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 384); Vector2 position = new Vector2(this.width * .1f + 64, this.height * .05f + 384);
//Get any valid location button. this.currentlySelectedEvent = v.clone(position);
this.currentlySelectedEvent = button.clone(position); songSelected = true;
this.drawMode = DrawMode.SelectedEvent; this.drawMode = DrawMode.SelectedEvent;
buttonSelected = true;
} }
} }
if (buttonSelected == true) this.updateFancyButtons(); if (songSelected == true)
{
this.updateFancyButtons();
}
return; return;
} }
@ -1420,20 +1637,7 @@ namespace StardewSymphonyRemastered.Framework.Menus
} }
//Draw the add, delete, play, and stop buttons. if (this.drawMode == DrawMode.EventSelection)
if(this.currentSelectedSong!=null && this.currentMusicPackAlbum != null)
{
if (this.drawMode == DrawMode.WeatherSelection || this.drawMode == DrawMode.TimeSelection || this.drawMode == DrawMode.LocationSelection || this.drawMode == DrawMode.DaySelection || this.drawMode == DrawMode.NothingElseToDisplay || this.drawMode == DrawMode.FestivalSelection || this.drawMode == DrawMode.EventSelection || this.drawMode == DrawMode.MenuSelection)
{
this.addButton.draw(b);
this.deleteButton.draw(b);
}
this.playButton.draw(b);
this.stopButton.draw(b);
}
if (this.drawMode == DrawMode.EventSelection || this.drawMode == DrawMode.FestivalSelection || this.drawMode == DrawMode.MenuSelection)
{ {
Vector4 placement = new Vector4(this.width * .1f, this.height * .05f, 4 * 100, 128 * 2); Vector4 placement = new Vector4(this.width * .1f, this.height * .05f, 4 * 100, 128 * 2);
this.drawDialogueBoxBackground((int)placement.X, (int)placement.Y, (int)placement.Z, (int)placement.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255))); this.drawDialogueBoxBackground((int)placement.X, (int)placement.Y, (int)placement.Z, (int)placement.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255)));
@ -1442,14 +1646,38 @@ namespace StardewSymphonyRemastered.Framework.Menus
Vector4 placement2 = new Vector4(this.width * .2f + 400, this.height * .05f, 5 * 100, this.height * .95f); Vector4 placement2 = new Vector4(this.width * .2f + 400, this.height * .05f, 5 * 100, this.height * .95f);
this.drawDialogueBoxBackground((int)placement2.X, (int)placement2.Y, (int)placement2.Z, (int)placement2.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255))); this.drawDialogueBoxBackground((int)placement2.X, (int)placement2.Y, (int)placement2.Z, (int)placement2.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255)));
int amountToShow = 6;
//make 3rd dialogue box option; //make 3rd dialogue box option;
this.currentMusicPackAlbum.draw(b); this.currentMusicPackAlbum.draw(b);
this.currentSelectedSong.draw(b); this.currentSelectedSong.draw(b);
this.currentlySelectedOption.draw(b); this.currentlySelectedOption.draw(b);
foreach (Button button in fancyButtons)
int count = this.fancyButtons.Count - 1;
int amount = 0;
if (0 + ((this.eventPageIndex + 1) * amountToShow) >= this.fancyButtons.Count)
{ {
button.draw(b); amount = (0 + ((this.eventPageIndex + 1) * (amountToShow)) - fancyButtons.Count);
amount = amountToShow - amount;
if (amount < 0) amount = 0;
}
else if (this.fancyButtons.Count < amountToShow)
{
amount = this.fancyButtons.Count;
}
else
{
amount = amountToShow;
}
if (amount == 0 && this.eventPageIndex > 1)
{
this.eventPageIndex--;
}
var drawList = this.fancyButtons.GetRange(0 + (this.eventPageIndex * (amountToShow)), amount);
foreach (var v in drawList)
{
v.draw(b);
} }
foreach (var v in this.texturedStrings) foreach (var v in this.texturedStrings)
@ -1457,8 +1685,116 @@ namespace StardewSymphonyRemastered.Framework.Menus
v.draw(b); v.draw(b);
} }
} }
if (this.drawMode == DrawMode.MenuSelection)
{
Vector4 placement = new Vector4(this.width * .1f, this.height * .05f, 4 * 100, 128 * 2);
this.drawDialogueBoxBackground((int)placement.X, (int)placement.Y, (int)placement.Z, (int)placement.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255)));
Vector4 placement2 = new Vector4(this.width * .2f + 400, this.height * .05f, 5 * 100, this.height * .95f);
this.drawDialogueBoxBackground((int)placement2.X, (int)placement2.Y, (int)placement2.Z, (int)placement2.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255)));
int amountToShow = 6;
//make 3rd dialogue box option;
this.currentMusicPackAlbum.draw(b);
this.currentSelectedSong.draw(b);
this.currentlySelectedOption.draw(b);
int count = this.fancyButtons.Count - 1;
int amount = 0;
if (0 + ((this.menuPageIndex + 1) * amountToShow) >= this.fancyButtons.Count)
{
amount = (0 + ((this.menuPageIndex + 1) * (amountToShow)) - fancyButtons.Count);
amount = amountToShow - amount;
if (amount < 0) amount = 0;
}
else if (this.fancyButtons.Count < amountToShow)
{
amount = this.fancyButtons.Count;
}
else
{
amount = amountToShow;
}
if (amount == 0 && this.menuPageIndex > 1)
{
this.menuPageIndex--;
}
var drawList = this.fancyButtons.GetRange(0 + (this.menuPageIndex * (amountToShow)), amount);
foreach (var v in drawList)
{
v.draw(b);
}
foreach (var v in this.texturedStrings)
{
v.draw(b);
}
}
if (this.drawMode == DrawMode.FestivalSelection)
{
Vector4 placement = new Vector4(this.width * .1f, this.height * .05f, 4 * 100, 128 * 2);
this.drawDialogueBoxBackground((int)placement.X, (int)placement.Y, (int)placement.Z, (int)placement.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255)));
Vector4 placement2 = new Vector4(this.width * .2f + 400, this.height * .05f, 5 * 100, this.height * .95f);
this.drawDialogueBoxBackground((int)placement2.X, (int)placement2.Y, (int)placement2.Z, (int)placement2.W, new Color(new Vector4(this.dialogueBoxBackgroundColor.ToVector3(), 255)));
int amountToShow = 6;
//make 3rd dialogue box option;
this.currentMusicPackAlbum.draw(b);
this.currentSelectedSong.draw(b);
this.currentlySelectedOption.draw(b);
int count = this.fancyButtons.Count - 1;
int amount = 0;
if (0 + ((this.festivalPageIndex + 1) * amountToShow) >= this.fancyButtons.Count)
{
amount = (0 + ((this.festivalPageIndex + 1) * (amountToShow)) - fancyButtons.Count);
amount = amountToShow - amount;
if (amount < 0) amount = 0;
}
else if (this.fancyButtons.Count < amountToShow)
{
amount = this.fancyButtons.Count;
}
else
{
amount = amountToShow;
}
if (amount == 0 && this.festivalPageIndex > 1)
{
this.festivalPageIndex--;
}
var drawList = this.fancyButtons.GetRange(0 + (this.festivalPageIndex * (amountToShow)), amount);
foreach (var v in drawList)
{
v.draw(b);
}
foreach (var v in this.texturedStrings)
{
v.draw(b);
}
}
if (this.drawMode == DrawMode.SelectedEvent) if (this.drawMode == DrawMode.SelectedEvent)
{ {
Vector4 placement = new Vector4(this.width * .1f, this.height * .05f, 4 * 100, 128 * 2); Vector4 placement = new Vector4(this.width * .1f, this.height * .05f, 4 * 100, 128 * 2);
@ -1555,6 +1891,19 @@ namespace StardewSymphonyRemastered.Framework.Menus
} }
//Draw the add, delete, play, and stop buttons.
if (this.currentSelectedSong != null && this.currentMusicPackAlbum != null)
{
if (this.drawMode == DrawMode.WeatherSelection || this.drawMode == DrawMode.TimeSelection || this.drawMode == DrawMode.LocationSelection || this.drawMode == DrawMode.DaySelection || this.drawMode == DrawMode.NothingElseToDisplay)
{
this.addButton.draw(b);
this.deleteButton.draw(b);
}
this.playButton.draw(b);
this.stopButton.draw(b);
}
this.backButton.draw(b);
this.drawMouse(b); this.drawMouse(b);
} }
@ -1693,6 +2042,100 @@ namespace StardewSymphonyRemastered.Framework.Menus
return key; return key;
} }
public void goBack()
{
if(this.drawMode==DrawMode.AlbumSelection|| this.drawMode == DrawMode.AlbumFancySelection)
{
this.readyToClose();
Game1.activeClickableMenu = null;
return;
}
if (this.drawMode == DrawMode.SongSelectionMode)
{
this.texturedStrings.Clear();
this.drawMode = DrawMode.AlbumFancySelection;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.DifferentSelectionTypesMode)
{
this.drawMode = DrawMode.SongSelectionMode;
this.currentSongPageIndex = 0;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.WeatherSelection)
{
this.drawMode = DrawMode.DifferentSelectionTypesMode;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.TimeSelection)
{
this.drawMode = DrawMode.WeatherSelection;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.LocationSelection)
{
this.drawMode = DrawMode.TimeSelection;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.DaySelection)
{
this.drawMode = DrawMode.LocationSelection;
this.locationPageIndex = 0;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.NothingElseToDisplay)
{
this.drawMode = DrawMode.DaySelection;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.EventSelection || this.drawMode == DrawMode.FestivalSelection || this.drawMode == DrawMode.MenuSelection)
{
this.drawMode = DrawMode.DifferentSelectionTypesMode;
updateFancyButtons();
return;
}
if (this.drawMode == DrawMode.SelectedEvent)
{
this.drawMode = DrawMode.EventSelection;
updateFancyButtons();
this.eventPageIndex = 0;
return;
}
if (this.drawMode == DrawMode.SelectedFestival)
{
this.drawMode = DrawMode.FestivalSelection;
updateFancyButtons();
this.festivalPageIndex = 0;
return;
}
if (this.drawMode == DrawMode.SelectedMenu)
{
this.drawMode = DrawMode.MenuSelection;
updateFancyButtons();
this.menuPageIndex = 0;
return;
}
}
#endregion #endregion
} }
} }

View File

@ -153,6 +153,9 @@ namespace StardewSymphonyRemastered
//Locaion initialization MUST occur after load. Anything else can occur before. //Locaion initialization MUST occur after load. Anything else can occur before.
SongSpecifics.initializeLocationsList(); //Gets all Game locations once the player has loaded the game, and all buildings on the player's farm and adds them to a location list. SongSpecifics.initializeLocationsList(); //Gets all Game locations once the player has loaded the game, and all buildings on the player's farm and adds them to a location list.
musicManager.initializeSeasonalMusic(); //Initialize the seasonal music using all locations gathered in the location list. musicManager.initializeSeasonalMusic(); //Initialize the seasonal music using all locations gathered in the location list.
musicManager.initializeMenuMusic();
musicManager.initializeFestivalMusic();
musicManager.initializeEventMusic();
} }
@ -301,6 +304,8 @@ namespace StardewSymphonyRemastered
string playButton = Path.Combine(path, "PlayButton.png"); string playButton = Path.Combine(path, "PlayButton.png");
string stopButton = Path.Combine(path, "StopButton.png"); string stopButton = Path.Combine(path, "StopButton.png");
string backButton = Path.Combine(path, "BackButton.png");
@ -343,6 +348,7 @@ namespace StardewSymphonyRemastered
textureManager.addTexture("PlayButton", new Texture2DExtended(ModHelper, StardustCore.Utilities.getRelativeDirectory("StardewSymphonyRemastered", playButton))); textureManager.addTexture("PlayButton", new Texture2DExtended(ModHelper, StardustCore.Utilities.getRelativeDirectory("StardewSymphonyRemastered", playButton)));
textureManager.addTexture("StopButton", new Texture2DExtended(ModHelper, StardustCore.Utilities.getRelativeDirectory("StardewSymphonyRemastered", stopButton))); textureManager.addTexture("StopButton", new Texture2DExtended(ModHelper, StardustCore.Utilities.getRelativeDirectory("StardewSymphonyRemastered", stopButton)));
textureManager.addTexture("BackButton", new Texture2DExtended(ModHelper, StardustCore.Utilities.getRelativeDirectory("StardewSymphonyRemastered", backButton)));
if (!Directory.Exists(MusicPath)) Directory.CreateDirectory(MusicPath); if (!Directory.Exists(MusicPath)) Directory.CreateDirectory(MusicPath);

View File

@ -99,6 +99,9 @@
<Content Include="Content\Graphics\MusicMenu\AddButton.png"> <Content Include="Content\Graphics\MusicMenu\AddButton.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content> </Content>
<Content Include="Content\Graphics\MusicMenu\BackButton.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Content\Graphics\MusicMenu\DayIcons_Friday.png"> <Content Include="Content\Graphics\MusicMenu\DayIcons_Friday.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content> </Content>