Added & Changed Tokens + Added functionality for genderless players

Options Menu and Main Menu can be translated now
This commit is contained in:
JappaWakkaP3D 2021-10-22 20:22:13 +02:00
parent 9bde9a71ed
commit ba313f78ae
4 changed files with 240 additions and 139 deletions

View File

@ -1,7 +1,5 @@
language_name,English language_name,English
--- =====
---
---
Global: Global:
global_join,Join global_join,Join
global_play,Play global_play,Play
@ -16,6 +14,7 @@ global_game,Game
global_login,Log in global_login,Log in
global_male,Male global_male,Male
global_female,Female global_female,Female
global_genderless,Genderless
global_yes,Yes global_yes,Yes
global_no,No global_no,No
global_accept,Accept global_accept,Accept
@ -101,26 +100,40 @@ game_interaction_notification,Notification
game_notification_accept,Press <system.button(special)> to accept. game_notification_accept,Press <system.button(special)> to accept.
game_notification_dismiss,Press <system.button(special)> to dismiss. game_notification_dismiss,Press <system.button(special)> to dismiss.
--- ---
MainMenuScreen: PressStartScreen:
main_menu_continue,Continue start_screen_press,Press
main_menu_load_game,Load Game start_screen_tostart,to start.
main_menu_new_game,New Game ---
main_menu_quit_game,Quit Game Main Menu:
LoadScreen: main_menu_newgame_line1,New
load_menu_name,Name main_menu_newgame_line2,Game
load_menu_badges,Badges main_menu_options,Options
load_menu_location,Location main_menu_savefile_name,Player Name
load_menu_time,Time main_menu_savefile_gamemode,GameMode
load_menu_back,Back main_menu_savefile_badges,Badges
load_menu_load,Load main_menu_savefile_playtime,Play time
load_menu_delete,Delete main_menu_savefile_location,Location
load_menu_gamemode,GameMode main_menu_error_gamemode_profile,The required GameMode does not exist!
main_menu_error_gamemode_message,The required GameMode does not exist.~Reaquire the GameMode to play on this profile.
main_menu_error_gamejolt_1,Download failed. Press Accept to try again.
main_menu_error_gamejolt_2,If the problem persists, please try again later
main_menu_error_gamejolt_3,or contact us in our Discord server:
main_menu_error_gamejolt_4,http://www.discord.me/p3d
main_menu_error_filevalidation,File validation failed!~Redownload the game's files to solve this problem.
main_menu_options_language,Language
main_menu_options_audio,Audio
main_menu_options_controls,Controls
main_menu_options_contentpacks_line1,Content
main_menu_options_contentpacks_line2,Packs
DeleteScreen: DeleteScreen:
delete_menu_delete_confirm,Do you really want to delete the save delete_menu_delete_confirm,Do you really want to delete the save
delete_menu_delete,Delete delete_menu_delete,Delete
delete_menu_cancel,Cancel delete_menu_cancel,Cancel
GameModeMenu: GameModeMenu:
gamemode_menu_select1,Select a GameMode
gamemode_menu_select2,to start the new game with.
gamemode_menu_name,Name gamemode_menu_name,Name
gamemode_menu_description,Description gamemode_menu_description,Description
gamemode_menu_version,Version gamemode_menu_version,Version
@ -129,6 +142,88 @@ gamemode_menu_contentpath,ContentPath
gamemode_menu_create,Create gamemode_menu_create,Create
gamemode_menu_back,Back gamemode_menu_back,Back
--- ---
Options Screen:
option_screen_title,Options
option_screen_warning,Options aren't saved yet, scroll down and choose "Save options."
option_screen_backadvice,PRESS E TO GO BACK
option_screen_description,Description
option_screen_game,Game
option_screen_game_textspeed,Text Speed
option_screen_game_textspeed_description,The speed the textbox shows up and~displays the text
option_screen_game_difficulty,Difficulty
option_screen_game_difficulty_description,Difficulty mode~Sets the level of difficulty.
option_screen_game_difficulty_easy,Easy
option_screen_game_difficulty_hard,Hard
option_screen_game_difficulty_superhard,Super Hard
option_screen_game_viewbobbing,View Bobbing
option_screen_game_viewbobbing_description,Turns camera shaking on or off.
option_screen_graphics,Graphics
option_screen_graphics_fov,Field of View
option_screen_graphics_fov_description,The field of view. The higher the value is,~the more you can see.~Warning: Too large value can cause lags in larger maps.
option_screen_graphics_renderdistance,Render Distance
option_screen_graphics_renderdistance_description,The render distance determines,~how far you can see.~By turning this down, you can improve your FPS.
option_screen_graphics_renderdistance_tiny,Tiny
option_screen_graphics_renderdistance_short,Short
option_screen_graphics_renderdistance_normal,Normal
option_screen_graphics_renderdistance_far,Far
option_screen_graphics_renderdistance_extreme,Extreme
option_screen_graphics_offset_mapquality,Offset Map Quality
option_screen_graphics_offset_mapquality_description,Sets the quality of the offset maps.~The details and update frequency of offset maps increase with this value.~Set this value to 0 to prevent the game from loading offset maps.
option_screen_graphics_offset_mapquality_off,Off
option_screen_graphics_graphics,Graphics
option_screen_graphics_graphics_description,Affects if some objects are rendered~or not. By turning this down, you can improve your FPS.~This settings is for all save states.
option_screen_graphics_graphics_fancy,Fancy
option_screen_graphics_graphics_fast,Fast
option_screen_graphics_multisampling,Multi Sampling
option_screen_battle,Battle
option_screen_battle_3dmodels,3D Models
option_screen_battle_animations,Animations
option_screen_battle_animations_description,Determines if the game shows battle animations.
option_screen_battle_battlestyle,Battle Style
option_screen_battle_battlestyle_shift,Shift
option_screen_battle_battlestyle_set,Set
option_screen_battle_style_description,Battle Style~Set: You are not asked to switch out your Pokémon~Shift: You can switch out your Pokémon after defeating an opponent.
option_screen_controls,Controls
option_screen_controls_xboxgamepad,Xbox Gamepad
option_screen_controls_resetkeybindings,Reset Key Bindings
option_screen_controls_cameraspeed,Camera Speed
option_screen_controls_cameraspeed_description,The camera speed sets the speed on which the~mouse can rotate the view.
option_screen_controls_cameraspeed_slow,...Slow...
option_screen_controls_cameraspeed_medium,Standard
option_screen_controls_cameraspeed_fast,Super fast!
option_screen_controls_cameraspeed_fastest,SPEED OF LIGHT!
option_screen_audio,Audio
option_screen_audio_volume_music,Music Volume
option_screen_audio_volume_music_description,The volume of the background music.
option_screen_audio_volume_sfx,SoundFX Volume
option_screen_audio_volume_music_description,The volume of the sound effects and jingles.
option_screen_audio_muted,Muted
option_screen_contentpacks_up,Move Up
option_screen_contentpacks_down,Move Down
option_screen_contentpacks_information,Information
option_screen_contentpacks_songs,Songs
option_screen_contentpacks_sounds,Sounds
option_screen_contentpacks_textures,Textures
option_screen_contentpacks_name,Name
option_screen_contentpacks_version,Version
option_screen_contentpacks_by,By
option_screen_contentpacks_content,Content
option_screen_contentpacks_description,Description
option_screen_resetoptions,Reset options.
option_screen_resetoptions_description,Resets all options.
option_screen_save_options,Save options.
option_screen_save_options_description,Save the options and close the menu.
option_screen_close,Close.
option_screen_close_menu_description,Close the menu and do not save~the changes.
---
Pausescreen: Pausescreen:
pause_menu_title,Game menu pause_menu_title,Game menu
pause_menu_back_to_game,Back to game pause_menu_back_to_game,Back to game
@ -247,87 +342,6 @@ save_screen_yes,Yes
save_screen_no,No save_screen_no,No
save_screen_success,Saved the game. save_screen_success,Saved the game.
--- ---
Options Screen:
option_screen_title,Options
option_screen_warning,Options aren't saved yet, scroll down and choose "Save options."
option_screen_backadvice,PRESS E TO GO BACK
option_screen_description,Description
option_screen_game,Game
option_screen_game_textspeed,Text Speed
option_screen_game_textspeed_description,The speed the textbox shows up and~displays the text
option_screen_game_difficulty,Difficulty
option_screen_game_difficulty_description,Difficulty mode~Sets the level of difficulty.
option_screen_game_difficulty_easy,Easy
option_screen_game_difficulty_hard,Hard
option_screen_game_difficulty_superhard,Super Hard
option_screen_game_viewbobbing,View Bobbing
option_screen_game_viewbobbing_description,Turns camera shaking on or off.
option_screen_graphics,Graphics
option_screen_graphics_fov,Field of View
option_screen_graphics_fov_description,The field of view. The higher the value is,~the more you can see.~Warning: Too large value can cause lags in larger maps.
option_screen_graphics_renderdistance,Render Distance
option_screen_graphics_renderdistance_description,The render distance determines,~how far you can see.~By turning this down, you can improve your FPS.
option_screen_graphics_renderdistance_tiny,Tiny
option_screen_graphics_renderdistance_short,Short
option_screen_graphics_renderdistance_normal,Normal
option_screen_graphics_renderdistance_far,Far
option_screen_graphics_renderdistance_extreme,Extreme
option_screen_graphics_offset_mapquality,Offset Map Quality
option_screen_graphics_offset_mapquality_description,Sets the quality of the offset maps.~The details and update frequency of offset maps increase with this value.~Set this value to 0 to prevent the game from loading offset maps.
option_screen_graphics_offset_mapquality_off,Off
option_screen_graphics_graphics,Graphics
option_screen_graphics_graphics_description,Affects if some objects are rendered~or not. By turning this down, you can improve your FPS.~This settings is for all save states.
option_screen_graphics_graphics_fancy,Fancy
option_screen_graphics_graphics_fast,Fast
option_screen_graphics_multisampling,Multi Sampling
option_screen_battle,Battle
option_screen_battle_3dmodels,3D Models
option_screen_battle_animations,Animations
option_screen_battle_animations_description,Determines if the game shows battle animations.
option_screen_battle_battlestyle,Battle Style
option_screen_battle_battlestyle_shift,Shift
option_screen_battle_battlestyle_set,Set
option_screen_battle_style_description,Battle Style~Set: You are not asked to switch out your Pokémon~Shift: You can switch out your Pokémon after defeating an opponent.
option_screen_controls,Controls
option_screen_controls_xboxgamepad,Xbox Gamepad
option_screen_controls_resetkeybindings,Reset Key Bindings
option_screen_controls_cameraspeed,Camera Speed
option_screen_controls_cameraspeed_description,The camera speed sets the speed on which the~mouse can rotate the view.
option_screen_controls_cameraspeed_slow,...Slow...
option_screen_controls_cameraspeed_medium,Standard
option_screen_controls_cameraspeed_fast,Super fast!
option_screen_controls_cameraspeed_fastest,SPEED OF LIGHT!
option_screen_audio,Audio
option_screen_audio_volume_music,Music Volume
option_screen_audio_volume_music_description,The volume of the background music.
option_screen_audio_volume_sfx,SoundFX Volume
option_screen_audio_volume_music_description,The volume of the sound effects and jingles.
option_screen_audio_muted,Muted
option_screen_contentpacks_up,Move Up
option_screen_contentpacks_down,Move Down
option_screen_contentpacks_information,Information
option_screen_contentpacks_songs,Songs
option_screen_contentpacks_sounds,Sounds
option_screen_contentpacks_textures,Textures
option_screen_contentpacks_name,Name
option_screen_contentpacks_version,Version
option_screen_contentpacks_by,By
option_screen_contentpacks_content,Content
option_screen_contentpacks_description,Description
option_screen_resetoptions,Reset options.
option_screen_resetoptions_description,Resets all options.
option_screen_save_options,Save options.
option_screen_save_options_description,Save the options and close the menu.
option_screen_close,Close.
option_screen_close_menu_description,Close the menu and do not save~the changes.
---
Item Detail Screen: Item Detail Screen:
item_detail_screen_use,Use item_detail_screen_use,Use
item_detail_screen_give,Give item_detail_screen_give,Give

View File

@ -44,7 +44,7 @@
Backpacker = 4 Backpacker = 4
Pokefan = 5 Pokefan = 5
Maid = 6 Maid = 6
Cheerleader = 7 Motivator = 7
Clerk = 8 Clerk = 8
PokemonBreeder = 9 PokemonBreeder = 9
Guitarist = 10 Guitarist = 10
@ -59,6 +59,29 @@
Veteran = 19 Veteran = 19
End Enum End Enum
Public Enum GenderlessEmblemSpriteType
Preschooler = 0
SchoolKid = 1
Youngster = 2
Waiter = 3
AceTrainer = 4
Pokefan = 5
Butler = 6
Motivator = 7
Clerk = 8
PokemonBreeder = 9
Drummer = 10
Cyclist = 11
RichKid = 12
Ranger = 13
Athlete = 14
Scientist = 15
Doctor = 16
OldPerson = 17
Worker = 18
Veteran = 19
End Enum
''' <summary> ''' <summary>
''' The sprites of male trainers. ''' The sprites of male trainers.
''' </summary> ''' </summary>
@ -110,6 +133,28 @@
NN71 = 18 NN71 = 18
NN39 = 19 NN39 = 19
End Enum End Enum
Public Enum GenderlessEmblemSprites
NN40 = 0
NN42 = 1
NN44 = 2
NN46 = 3
NN70 = 4
NN52 = 5
NN74 = 6
NN76 = 7
NN53 = 8
NN55 = 9
NN80 = 10
NN72 = 11
NN57 = 12
NN59 = 13
NN78 = 14
NN64 = 15
NN66 = 16
NN69 = 69
NN84 = 18
NN39 = 19
End Enum
#End Region #End Region
@ -231,10 +276,13 @@
t = t.Clamp(0, 19) t = t.Clamp(0, 19)
If gender = "1" Then If gender = "0" Then
Return CType(t, MaleEmblemSpriteType).ToString()
ElseIf gender = "1" Then
Return CType(t, FemaleEmblemSpriteType).ToString() Return CType(t, FemaleEmblemSpriteType).ToString()
Else
Return CType(t, GenderlessEmblemSpriteType).ToString()
End If End If
Return CType(t, MaleEmblemSpriteType).ToString()
End Function End Function
Public Shared Function GetPlayerSpriteFile(ByVal level As Integer, ByVal id As String, ByVal gender As String) As String Public Shared Function GetPlayerSpriteFile(ByVal level As Integer, ByVal id As String, ByVal gender As String) As String
@ -247,10 +295,15 @@
Dim t As Integer = CInt(Math.Ceiling(level / 5)) - 1 Dim t As Integer = CInt(Math.Ceiling(level / 5)) - 1
t = t.Clamp(0, 19) t = t.Clamp(0, 19)
Dim tFile As String = CType(t, MaleEmblemSprites).ToString() Dim tFile As String
If gender = "1" Then If gender = "0" Then
tFile = CType(t, MaleEmblemSprites).ToString()
ElseIf gender = "1" Then
tFile = CType(t, FemaleEmblemSprites).ToString() tFile = CType(t, FemaleEmblemSprites).ToString()
Else
tFile = CType(t, GenderlessEmblemSprites).ToString()
End If End If
If tFile.StartsWith("NN") = True Then If tFile.StartsWith("NN") = True Then
tFile = tFile.Remove(0, 2) tFile = tFile.Remove(0, 2)
End If End If
@ -268,9 +321,13 @@
Dim t As Integer = CInt(Math.Ceiling(level / 5)) - 1 Dim t As Integer = CInt(Math.Ceiling(level / 5)) - 1
t = t.Clamp(0, 19) t = t.Clamp(0, 19)
Dim tFile As String = CType(t, MaleEmblemSprites).ToString() Dim tFile As String
If gender = "1" Then If gender = "0" Then
tFile = CType(t, MaleEmblemSprites).ToString()
ElseIf gender = "1" Then
tFile = CType(t, FemaleEmblemSprites).ToString() tFile = CType(t, FemaleEmblemSprites).ToString()
Else
tFile = CType(t, GenderlessEmblemSprites).ToString()
End If End If
If tFile.StartsWith("NN") = True Then If tFile.StartsWith("NN") = True Then
tFile = tFile.Remove(0, 2) tFile = tFile.Remove(0, 2)

View File

@ -317,7 +317,7 @@
Next Next
SpriteBatch.DrawString(FontManager.MainFont, _names(_index), New Vector2(CInt(windowSize.Width / 2.0F - FontManager.MainFont.MeasureString(_names(_index)).X), CInt(windowSize.Height / 2.0F + 200)), New Color(255, 255, 255, CInt(255 * _fadeIn)), 0F, Vector2.Zero, 2.0F, SpriteEffects.None, 0F) SpriteBatch.DrawString(FontManager.MainFont, _names(_index), New Vector2(CInt(windowSize.Width / 2.0F - FontManager.MainFont.MeasureString(_names(_index)).X), CInt(windowSize.Height / 2.0F + 200)), New Color(255, 255, 255, CInt(255 * _fadeIn)), 0F, Vector2.Zero, 2.0F, SpriteEffects.None, 0F)
SpriteBatch.DrawString(FontManager.MainFont, _genders(_index), New Vector2(CInt(windowSize.Width / 2.0F - FontManager.MainFont.MeasureString(_genders(_index)).X / 2.0F), CInt(windowSize.Height / 2.0F + 300)), New Color(255, 255, 255, CInt(255 * _fadeIn)), 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F) SpriteBatch.DrawString(FontManager.MainFont, Localization.GetString("global_" & _genders(_index), _genders(_index)), New Vector2(CInt(windowSize.Width / 2.0F - FontManager.MainFont.MeasureString(Localization.GetString("global_" & _genders(_index), _genders(_index))).X / 2.0F), CInt(windowSize.Height / 2.0F + 300)), New Color(255, 255, 255, CInt(255 * _fadeIn)), 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F)
End Sub End Sub
End Class End Class

View File

@ -212,9 +212,9 @@ Public Class PressStartScreen
If IsCurrentScreen() And Core.GameOptions.ShowGUI Then ' Want to implement fading of text, but core doesn't seem to support this. If IsCurrentScreen() And Core.GameOptions.ShowGUI Then ' Want to implement fading of text, but core doesn't seem to support this.
Dim text As String = String.Empty Dim text As String = String.Empty
If ControllerHandler.IsConnected() Then If ControllerHandler.IsConnected() Then
text = "Press" & " " & "to start." text = Localization.GetString("start_screen_press", "Press") & " " & Localization.GetString("start_screen_tostart", "to start.")
Else Else
text = "Press" & " " & KeyBindings.EnterKey1.ToString().ToUpper & " " & "to start." text = Localization.GetString("start_screen_press", "Press") & " " & KeyBindings.EnterKey1.ToString().ToUpper & " " & Localization.GetString("start_screen_tostart", "to start.")
'text = "Press " & KeyBindings.EnterKey1.ToString() & ", " & KeyBindings.EnterKey2.ToString() & ", or primary mouse button to start." 'text = "Press " & KeyBindings.EnterKey1.ToString() & ", " & KeyBindings.EnterKey2.ToString() & ", or primary mouse button to start."
End If End If
@ -397,6 +397,8 @@ Public Class NewMainMenuScreen
ElseIf New Rectangle(CInt(r.X), CInt(r.Y) + 48, 32, 32).Contains(MouseHandler.MousePosition) Then ElseIf New Rectangle(CInt(r.X), CInt(r.Y) + 48, 32, 32).Contains(MouseHandler.MousePosition) Then
ButtonChangeFemale() ButtonChangeFemale()
ElseIf New Rectangle(CInt(r.X), CInt(r.Y) + 48 + 48, 32, 32).Contains(MouseHandler.MousePosition) Then ElseIf New Rectangle(CInt(r.X), CInt(r.Y) + 48 + 48, 32, 32).Contains(MouseHandler.MousePosition) Then
ButtonChangeGenderless()
ElseIf New Rectangle(CInt(r.X), CInt(r.Y) + 48 + 48 + 48, 32, 32).Contains(MouseHandler.MousePosition) Then
ButtonResetSave() ButtonResetSave()
End If End If
End If End If
@ -548,6 +550,9 @@ Public Class NewMainMenuScreen
SoundManager.PlaySound("select") SoundManager.PlaySound("select")
ButtonChangeFemale() ButtonChangeFemale()
Case 3 Case 3
SoundManager.PlaySound("select")
ButtonChangeGenderless()
Case 4
SoundManager.PlaySound("select") SoundManager.PlaySound("select")
ButtonResetSave() ButtonResetSave()
End Select End Select
@ -651,6 +656,15 @@ Public Class NewMainMenuScreen
Core.Player.Skin = GameJolt.Emblem.GetPlayerSpriteFile(GameJolt.Emblem.GetPlayerLevel(GameJoltSave.Points), GameJoltSave.GameJoltID, GameJoltSave.Gender) Core.Player.Skin = GameJolt.Emblem.GetPlayerSpriteFile(GameJolt.Emblem.GetPlayerLevel(GameJoltSave.Points), GameJoltSave.GameJoltID, GameJoltSave.Gender)
_MainProfiles(_selectedProfile).Sprite = GameJolt.Emblem.GetPlayerSprite(GameJolt.Emblem.GetPlayerLevel(GameJoltSave.Points), GameJoltSave.GameJoltID, GameJoltSave.Gender) _MainProfiles(_selectedProfile).Sprite = GameJolt.Emblem.GetPlayerSprite(GameJolt.Emblem.GetPlayerLevel(GameJoltSave.Points), GameJoltSave.GameJoltID, GameJoltSave.Gender)
End Sub End Sub
Private Sub ButtonChangeGenderless()
If GameJoltSave.Gender = "2" Then
Exit Sub
End If
GameJoltSave.Gender = "2"
Core.Player.Skin = GameJolt.Emblem.GetPlayerSpriteFile(GameJolt.Emblem.GetPlayerLevel(GameJoltSave.Points), GameJoltSave.GameJoltID, GameJoltSave.Gender)
_MainProfiles(_selectedProfile).Sprite = GameJolt.Emblem.GetPlayerSprite(GameJolt.Emblem.GetPlayerLevel(GameJoltSave.Points), GameJoltSave.GameJoltID, GameJoltSave.Gender)
End Sub
Private Sub ButtonResetSave() Private Sub ButtonResetSave()
GameJoltSave.ResetSave() GameJoltSave.ResetSave()
@ -662,7 +676,7 @@ Public Class NewMainMenuScreen
Select Case _menuIndex Select Case _menuIndex
Case 0 Case 0
If _selectedProfile = 1 And Security.FileValidation.IsValid(False) = False Then If _selectedProfile = 1 And Security.FileValidation.IsValid(False) = False Then
_messageBox.Show("File validation failed!~Redownload the game's files to solve this problem.") _messageBox.Show(Localization.GetString("main_menu_error_filevalidation", "File validation failed!~Redownload the game's files to solve this problem."))
Else Else
_MainProfiles(_selectedProfile).SelectProfile() _MainProfiles(_selectedProfile).SelectProfile()
End If End If
@ -796,9 +810,15 @@ Public Class NewMainMenuScreen
If ScaleScreenRec(New Rectangle(r.X, r.Y + 48 + 48, 32, 32)).Contains(MouseHandler.MousePosition) = True And GameInstance.IsMouseVisible OrElse Not GameInstance.IsMouseVisible And _GameJoltButtonIndex = 3 Then If ScaleScreenRec(New Rectangle(r.X, r.Y + 48 + 48, 32, 32)).Contains(MouseHandler.MousePosition) = True And GameInstance.IsMouseVisible OrElse Not GameInstance.IsMouseVisible And _GameJoltButtonIndex = 3 Then
y = 16 y = 16
SpriteBatch.DrawInterfaceString(FontManager.InGameFont, "Reset save", New Vector2(r.X + 64 + 4, r.Y + 4 + 48 + 48), fontColor) SpriteBatch.DrawInterfaceString(FontManager.InGameFont, "Change to genderless", New Vector2(r.X + 64 + 4, r.Y + 4 + 48 + 48), fontColor)
End If End If
SpriteBatch.DrawInterface(_oldMenuTexture, New Rectangle(r.X, r.Y + 48 + 48, 32, 32), New Rectangle(176, 32 + y, 16, 16), Color.White) SpriteBatch.DrawInterface(_oldMenuTexture, New Rectangle(r.X, r.Y + 48 + 48, 32, 32), New Rectangle(208, 32 + y, 16, 16), Color.White)
If ScaleScreenRec(New Rectangle(r.X, r.Y + 48 + 48, 32, 32)).Contains(MouseHandler.MousePosition) = True And GameInstance.IsMouseVisible OrElse Not GameInstance.IsMouseVisible And _GameJoltButtonIndex = 3 Then
y = 16
SpriteBatch.DrawInterfaceString(FontManager.InGameFont, "Reset save", New Vector2(r.X + 64 + 4, r.Y + 4 + 48 + 48 + 48), fontColor)
End If
SpriteBatch.DrawInterface(_oldMenuTexture, New Rectangle(r.X, r.Y + 48 + 48 + 48, 32, 32), New Rectangle(176, 32 + y, 16, 16), Color.White)
End Sub End Sub
Private Sub DrawMainProfiles() Private Sub DrawMainProfiles()
@ -847,25 +867,25 @@ Public Class NewMainMenuScreen
For i = 0 To tmpProfile.PokemonTextures.Count - 1 For i = 0 To tmpProfile.PokemonTextures.Count - 1
SpriteBatch.Draw(tmpProfile.PokemonTextures(i), New Rectangle(displayRect.X + 30 + i * 70, displayRect.Y + 70, 64, 64), Color.White) SpriteBatch.Draw(tmpProfile.PokemonTextures(i), New Rectangle(displayRect.X + 30 + i * 70, displayRect.Y + 70, 64, 64), Color.White)
Next Next
GetFontRenderer().DrawString(FontManager.InGameFont, "Player Name: " & tmpProfile.Name & Environment.NewLine & GetFontRenderer().DrawString(FontManager.InGameFont, Localization.GetString("main_menu_savefile_name", "Player Name") & ": " & tmpProfile.Name & Environment.NewLine &
"GameMode: " & tmpProfile.GameMode, New Vector2(displayRect.X + 30, displayRect.Y + 20), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F) Localization.GetString("main_menu_savefile_gamemode", "GameMode") & ": " & tmpProfile.GameMode, New Vector2(displayRect.X + 30, displayRect.Y + 20), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F)
GetFontRenderer().DrawString(FontManager.InGameFont, "Badges: " & tmpProfile.Badges.ToString() & Environment.NewLine & GetFontRenderer().DrawString(FontManager.InGameFont, Localization.GetString("main_menu_savefile_badges", "Badges") & ": " & tmpProfile.Badges.ToString() & Environment.NewLine &
"Play time: " & tmpProfile.TimePlayed & Environment.NewLine & Localization.GetString("main_menu_savefile_playtime", "Play time") & ": " & tmpProfile.TimePlayed & Environment.NewLine &
"Location: " & tmpProfile.Location, New Vector2(displayRect.X + 30, displayRect.Y + 150), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F) Localization.GetString("main_menu_savefile_location", "Location") & ": " & tmpProfile.Location, New Vector2(displayRect.X + 30, displayRect.Y + 150), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F)
Else Else
GetFontRenderer().DrawString(FontManager.InGameFont, "Player Name: " & tmpProfile.Name & Environment.NewLine & GetFontRenderer().DrawString(FontManager.InGameFont, Localization.GetString("main_menu_savefile_name", "Player Name") & ": " & tmpProfile.Name & Environment.NewLine &
"GameMode: " & tmpProfile.GameMode, New Vector2(displayRect.X + 30, displayRect.Y + 20), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F) Localization.GetString("main_menu_savefile_gamemode", "GameMode") & ": " & tmpProfile.GameMode, New Vector2(displayRect.X + 30, displayRect.Y + 20), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F)
SpriteBatch.Draw(_menuTexture, New Rectangle(displayRect.X + 30, displayRect.Y + 70, 32, 32), New Rectangle(0, 32, 32, 32), Color.White) SpriteBatch.Draw(_menuTexture, New Rectangle(displayRect.X + 30, displayRect.Y + 70, 32, 32), New Rectangle(0, 32, 32, 32), Color.White)
Dim errorText As String = "" Dim errorText As String
If tmpProfile.IsGameJolt() Then If tmpProfile.IsGameJolt() Then
errorText = "Download failed. Press Accept to try again." & Environment.NewLine & Environment.NewLine & errorText = Localization.GetString("main_menu_error_gamejolt_1", "Download failed. Press Accept to try again.") & Environment.NewLine & Environment.NewLine &
"If the problem persists, please try again later" & Environment.NewLine & Localization.GetString("main_menu_error_gamejolt_2", "If the problem persists, please try again later") & Environment.NewLine &
"or contact us in our Discord server:" & Environment.NewLine & Environment.NewLine & Localization.GetString("main_menu_error_gamejolt_3", "or contact us in our Discord server:") & Environment.NewLine & Environment.NewLine &
"http://www.discord.me/p3d" Localization.GetString("main_menu_error_gamejolt_4", "http://www.discord.me/p3d")
Else Else
errorText = "The required GameMode does not exist!" errorText = Localization.GetString("main_menu_error_gamemode_profile", "The required GameMode does not exist!")
End If End If
GetFontRenderer().DrawString(FontManager.InGameFont, errorText, New Vector2(displayRect.X + 70, displayRect.Y + 78), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F) GetFontRenderer().DrawString(FontManager.InGameFont, errorText, New Vector2(displayRect.X + 70, displayRect.Y + 78), Color.White, 0F, Vector2.Zero, 1.0F, SpriteEffects.None, 0F)
@ -883,9 +903,12 @@ Public Class NewMainMenuScreen
Next Next
' Draw arrow. ' Draw arrow.
If _menuIndex <> 0 Then Select Case _menuIndex
SpriteBatch.Draw(_menuTexture, New Rectangle(CInt(_screenOrigin.X + _sliderPosition - 16), CInt(_screenOrigin.Y + 170), 32, 16), New Rectangle(0, 16, 32, 16), Color.White) Case 2
End If SpriteBatch.Draw(_menuTexture, New Rectangle(CInt(_screenOrigin.X + _sliderPosition - 16), CInt(_screenOrigin.Y + 170), 32, 16), New Rectangle(0, 16, 32, 16), Color.White)
Case 3
SpriteBatch.Draw(_menuTexture, New Rectangle(CInt(_screenOrigin.X + _sliderPosition - 16), CInt(_screenOrigin.Y + 170), 32, 16), New Rectangle(32, 16, 32, 16), Color.White)
End Select
End Sub End Sub
@ -1206,6 +1229,13 @@ Public Class NewMainMenuScreen
Dim width As Integer = CInt((GameJoltSave.DownloadProgress / (GameJolt.GamejoltSave.SAVEFILECOUNT + GameJolt.GamejoltSave.EXTRADATADOWNLOADCOUNT)) * 160) Dim width As Integer = CInt((GameJoltSave.DownloadProgress / (GameJolt.GamejoltSave.SAVEFILECOUNT + GameJolt.GamejoltSave.EXTRADATADOWNLOADCOUNT)) * 160)
Canvas.DrawRectangle(New Rectangle(CInt(offset.X), CInt(offset.Y + 3), width, 157), New Color(100, 100, 100, 128)) Canvas.DrawRectangle(New Rectangle(CInt(offset.X), CInt(offset.Y + 3), width, 157), New Color(100, 100, 100, 128))
End If End If
ElseIf _menuIndex = 3 Then
For x = 0 To 9
For y = 0 To 9
SpriteBatch.Draw(t, New Rectangle(CInt(x * 16 + offset.X), CInt(y * 16 + offset.Y), 16, 16), New Rectangle(32, 0, 16, 16), New Color(255, 255, 255, alpha))
Next
Next
Canvas.DrawRectangle(New Rectangle(CInt(offset.X), CInt(offset.Y), 160, 3), Screens.UI.ColorProvider.AccentColor(True, alpha))
Else Else
For x = 0 To 9 For x = 0 To 9
For y = 0 To 9 For y = 0 To 9
@ -1215,8 +1245,8 @@ Public Class NewMainMenuScreen
Canvas.DrawRectangle(New Rectangle(CInt(offset.X), CInt(offset.Y), 160, 3), Screens.UI.ColorProvider.AccentColor(False, alpha)) Canvas.DrawRectangle(New Rectangle(CInt(offset.X), CInt(offset.Y), 160, 3), Screens.UI.ColorProvider.AccentColor(False, alpha))
End If End If
If _isNewGameButton Then If _isNewGameButton Then
Dim textA As String = "New" Dim textA As String = Localization.GetString("main_menu_newgame_line1", "New")
Dim textB As String = "Game" Dim textB As String = Localization.GetString("main_menu_newgame_line2", "Game")
If alpha >= 250 And CurrentScreen.Identification = Identifications.MainMenuScreen Then If alpha >= 250 And CurrentScreen.Identification = Identifications.MainMenuScreen Then
FontRenderer.DrawString(FontManager.InGameFont, textA, New Vector2(CInt(offset.X + 80 - (FontManager.InGameFont.MeasureString(textA).X) / 2 + 2), CInt(offset.Y + 72 - FontManager.InGameFont.MeasureString(textA).Y / 2 + 2)), New Color(0, 0, 0, alpha)) FontRenderer.DrawString(FontManager.InGameFont, textA, New Vector2(CInt(offset.X + 80 - (FontManager.InGameFont.MeasureString(textA).X) / 2 + 2), CInt(offset.Y + 72 - FontManager.InGameFont.MeasureString(textA).Y / 2 + 2)), New Color(0, 0, 0, alpha))
@ -1233,7 +1263,7 @@ Public Class NewMainMenuScreen
End If End If
ElseIf _IsOptionsMenuButton Then ElseIf _IsOptionsMenuButton Then
Dim text As String = "Options" Dim text As String = Localization.GetString("main_menu_options", "Options")
If alpha >= 250 And CurrentScreen.Identification = Identifications.MainMenuScreen Then If alpha >= 250 And CurrentScreen.Identification = Identifications.MainMenuScreen Then
FontRenderer.DrawString(FontManager.InGameFont, text, New Vector2(CInt(offset.X + 80 - (FontManager.InGameFont.MeasureString(text).X) / 2 + 2), CInt(offset.Y + 132 - (FontManager.InGameFont.MeasureString(text).Y) / 2 + 2)), New Color(0, 0, 0, alpha)) FontRenderer.DrawString(FontManager.InGameFont, text, New Vector2(CInt(offset.X + 80 - (FontManager.InGameFont.MeasureString(text).X) / 2 + 2), CInt(offset.Y + 132 - (FontManager.InGameFont.MeasureString(text).Y) / 2 + 2)), New Color(0, 0, 0, alpha))
FontRenderer.DrawString(FontManager.InGameFont, text, New Vector2(CInt(offset.X + 80 - (FontManager.InGameFont.MeasureString(text).X) / 2), CInt(offset.Y + 132 - (FontManager.InGameFont.MeasureString(text).Y) / 2)), New Color(255, 255, 255, alpha)) FontRenderer.DrawString(FontManager.InGameFont, text, New Vector2(CInt(offset.X + 80 - (FontManager.InGameFont.MeasureString(text).X) / 2), CInt(offset.Y + 132 - (FontManager.InGameFont.MeasureString(text).Y) / 2)), New Color(255, 255, 255, alpha))
@ -1255,14 +1285,14 @@ Public Class NewMainMenuScreen
Dim textB As String = "" Dim textB As String = ""
Select Case _OptionsMenuIndex Select Case _OptionsMenuIndex
Case 0 Case 0
textA = "Language" textA = Localization.GetString("main_menu_options_language", "Language")
Case 1 Case 1
textA = "Audio" textA = Localization.GetString("main_menu_options_audio", "Audio")
Case 2 Case 2
textA = "Controls" textA = Localization.GetString("main_menu_options_controls", "Controls")
Case 3 Case 3
textA = "Content" textA = Localization.GetString("main_menu_options_contentpacks_line1", "Content")
textB = "Packs" textB = Localization.GetString("main_menu_options_contentpacks_line2", "Packs")
End Select End Select
If _OptionsMenuIndex <> 3 Then If _OptionsMenuIndex <> 3 Then
@ -1331,9 +1361,9 @@ Public Class NewMainMenuScreen
_logoBounce = 0F _logoBounce = 0F
End If End If
End If End If
Dim text As String = "Log in" Dim text As String = Localization.GetString("global_login", "Log in")
If _isLoading Then If _isLoading Then
text = "Loading..." text = Localization.GetString("global_loading", "Loading") & "..."
End If End If
SpriteBatch.Draw(_sprite, New Rectangle(CInt(offset.X + 46), CInt(offset.Y + 36 + Math.Sin(_logoBounce) * 8.0F), 68, 72), New Color(255, 255, 255, alpha)) SpriteBatch.Draw(_sprite, New Rectangle(CInt(offset.X + 46), CInt(offset.Y + 36 + Math.Sin(_logoBounce) * 8.0F), 68, 72), New Color(255, 255, 255, alpha))
@ -1422,7 +1452,7 @@ Public Class NewMainMenuScreen
LoadGameJolt() LoadGameJolt()
ElseIf IsOptionsMenuButton = False Then ElseIf IsOptionsMenuButton = False Then
Dim messageBox As New UI.MessageBox(CurrentScreen) Dim messageBox As New UI.MessageBox(CurrentScreen)
messageBox.Show("The required GameMode does not exist.~Reaquire the GameMode to play on this profile.".Replace("~", Environment.NewLine)) messageBox.Show(Localization.GetString("main_menu_error_gamemode_message", "The required GameMode does not exist.~Reaquire the GameMode to play on this profile.").Replace("~", Environment.NewLine))
Else Else
_menuIndex = 2 _menuIndex = 2
_selectedProfileTemp = _selectedProfile _selectedProfileTemp = _selectedProfile
@ -1476,7 +1506,7 @@ Public Class GameModeSelectionScreen
SpriteBatch.Draw(GameModeSplash, windowSize, Color.White) SpriteBatch.Draw(GameModeSplash, windowSize, Color.White)
End If End If
Dim text = "Select a GameMode" + Environment.NewLine + "to start the new game with." Dim text = Localization.GetString("gamemode_menu_select1", "Select a GameMode") + Environment.NewLine + Localization.GetString("gamemode_menu_select2", "to start the new game with.")
GetFontRenderer().DrawString(FontManager.InGameFont, text, New Vector2(30, 30), Color.White) GetFontRenderer().DrawString(FontManager.InGameFont, text, New Vector2(30, 30), Color.White)
Dim _menuTexture As Texture2D = TextureManager.GetTexture("GUI\Menus\MainMenu") Dim _menuTexture As Texture2D = TextureManager.GetTexture("GUI\Menus\MainMenu")