Add install addon button in lobby for missing current track
This commit is contained in:
parent
82e884f3ca
commit
2e12eeaa83
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: supertuxkart\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-07-19 14:21+0800\n"
|
||||
"POT-Creation-Date: 2020-07-29 01:02+0800\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -334,7 +334,7 @@ msgstr ""
|
||||
#: src/states_screens/dialogs/add_device_dialog.cpp:125
|
||||
#: src/states_screens/dialogs/addons_loading.cpp:213
|
||||
#: src/states_screens/dialogs/press_a_key_dialog.cpp:45
|
||||
#: src/states_screens/online/register_screen.cpp:132
|
||||
#: src/states_screens/online/register_screen.cpp:130
|
||||
#: src/states_screens/options/user_screen.cpp:128
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
@ -1725,20 +1725,20 @@ msgstr ""
|
||||
#. I18N: ./data/gui/screens/online/networking_lobby.stkgui
|
||||
#. I18N: In networking lobby
|
||||
#. I18N: In the networking lobby
|
||||
#: src/states_screens/online/networking_lobby.cpp:197
|
||||
#: src/states_screens/online/networking_lobby.cpp:201
|
||||
msgid "Lobby"
|
||||
msgstr ""
|
||||
|
||||
#. I18N: ./data/gui/screens/online/networking_lobby.stkgui
|
||||
#. I18N: In the network lobby
|
||||
#: src/states_screens/online/networking_lobby.cpp:183
|
||||
#: src/states_screens/online/networking_lobby.cpp:186
|
||||
msgid "Start race"
|
||||
msgstr ""
|
||||
|
||||
#. I18N: ./data/gui/screens/online/networking_lobby.stkgui
|
||||
#. I18N: In the network lobby
|
||||
#. I18N: In networking lobby to configuration server settings
|
||||
#: src/states_screens/online/networking_lobby.cpp:191
|
||||
#: src/states_screens/online/networking_lobby.cpp:194
|
||||
msgid "Configuration"
|
||||
msgstr ""
|
||||
|
||||
@ -2737,20 +2737,20 @@ msgid ""
|
||||
"created."
|
||||
msgstr ""
|
||||
|
||||
#: src/graphics/irr_driver.cpp:631
|
||||
#: src/graphics/irr_driver.cpp:613
|
||||
msgid "Video recording started."
|
||||
msgstr ""
|
||||
|
||||
#: src/graphics/irr_driver.cpp:638
|
||||
#: src/graphics/irr_driver.cpp:620
|
||||
#, c-format
|
||||
msgid "Video saved in \"%s\"."
|
||||
msgstr ""
|
||||
|
||||
#: src/graphics/irr_driver.cpp:642
|
||||
#: src/graphics/irr_driver.cpp:624
|
||||
msgid "Encoding progress:"
|
||||
msgstr ""
|
||||
|
||||
#: src/graphics/irr_driver.cpp:1863 src/graphics/irr_driver.cpp:1868
|
||||
#: src/graphics/irr_driver.cpp:1845 src/graphics/irr_driver.cpp:1850
|
||||
#, c-format
|
||||
msgid "FPS: %d/%d/%d - %d KTris, Ping: %dms"
|
||||
msgstr ""
|
||||
@ -2787,10 +2787,10 @@ msgstr ""
|
||||
#: src/guiengine/widgets/player_kart_widget.cpp:758
|
||||
#: src/karts/controller/local_player_controller.cpp:446
|
||||
#: src/karts/controller/player_controller.cpp:413
|
||||
#: src/network/protocols/client_lobby.cpp:816
|
||||
#: src/network/protocols/client_lobby.cpp:817
|
||||
#: src/states_screens/dialogs/splitscreen_player_dialog.cpp:121
|
||||
#: src/states_screens/race_result_gui.cpp:1421
|
||||
#: src/states_screens/race_result_gui.cpp:1479
|
||||
#: src/states_screens/race_result_gui.cpp:1482
|
||||
#, c-format
|
||||
msgid "%s (handicapped)"
|
||||
msgstr ""
|
||||
@ -3395,12 +3395,12 @@ msgstr ""
|
||||
msgid "Right trigger"
|
||||
msgstr ""
|
||||
|
||||
#: src/input/input_manager.cpp:986
|
||||
#: src/input/input_manager.cpp:985
|
||||
#, c-format
|
||||
msgid "Ignoring '%s'. You needed to join earlier to play!"
|
||||
msgstr ""
|
||||
|
||||
#: src/input/input_manager.cpp:1023
|
||||
#: src/input/input_manager.cpp:1022
|
||||
msgid "Only the Game Master may act at this point!"
|
||||
msgstr ""
|
||||
|
||||
@ -3456,7 +3456,7 @@ msgid "You finished the race!"
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Message shown in game to tell player left the game in network
|
||||
#: src/karts/kart_rewinder.cpp:126 src/network/protocols/client_lobby.cpp:1114
|
||||
#: src/karts/kart_rewinder.cpp:126 src/network/protocols/client_lobby.cpp:1115
|
||||
#, c-format
|
||||
msgid "%s left the game."
|
||||
msgstr ""
|
||||
@ -3595,12 +3595,12 @@ msgid "You were kicked: Ping too high."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:255
|
||||
#: src/network/protocols/client_lobby.cpp:856
|
||||
#: src/network/protocols/client_lobby.cpp:857
|
||||
msgid "Bad network connection is detected."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:420
|
||||
#: src/network/protocols/server_lobby.cpp:3629
|
||||
#: src/network/protocols/server_lobby.cpp:3636
|
||||
msgid "Bot"
|
||||
msgstr ""
|
||||
|
||||
@ -3626,7 +3626,7 @@ msgstr ""
|
||||
#. I18N: In server info dialog
|
||||
#: src/network/protocols/client_lobby.cpp:688
|
||||
#: src/states_screens/dialogs/server_info_dialog.cpp:84
|
||||
#: src/states_screens/race_result_gui.cpp:1779
|
||||
#: src/states_screens/race_result_gui.cpp:1785
|
||||
#, c-format
|
||||
msgid "Difficulty: %s"
|
||||
msgstr ""
|
||||
@ -3673,90 +3673,90 @@ msgstr ""
|
||||
|
||||
#. I18N: Display when all players are in red or blue team, which the race
|
||||
#. will not be allowed to start
|
||||
#: src/network/protocols/client_lobby.cpp:848
|
||||
#: src/network/protocols/client_lobby.cpp:849
|
||||
msgid "All players joined red or blue team."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Display when a player is allow to control the server
|
||||
#: src/network/protocols/client_lobby.cpp:868
|
||||
#: src/network/protocols/client_lobby.cpp:869
|
||||
msgid "You are now the owner of server."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:911
|
||||
#: src/network/protocols/client_lobby.cpp:912
|
||||
msgid "Connection refused: Server is busy."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:916
|
||||
#: src/network/protocols/client_lobby.cpp:917
|
||||
msgid "Connection refused: You are banned from the server."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:930
|
||||
#: src/network/protocols/client_lobby.cpp:931
|
||||
msgid "Connection refused: Server password is incorrect."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:934
|
||||
#: src/network/protocols/client_lobby.cpp:935
|
||||
msgid "Connection refused: Game data is incompatible."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:938
|
||||
#: src/network/protocols/client_lobby.cpp:939
|
||||
msgid "Connection refused: Server is full."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:942
|
||||
#: src/network/protocols/client_lobby.cpp:943
|
||||
msgid "Connection refused: Invalid player connecting."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:970
|
||||
#: src/network/protocols/client_lobby.cpp:971
|
||||
msgid "Failed to start the network game."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Error message shown if live join or spectate failed in network
|
||||
#: src/network/protocols/client_lobby.cpp:1183
|
||||
#: src/network/protocols/client_lobby.cpp:1184
|
||||
msgid "The game has ended, you can't live join or spectate anymore."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Error message shown if live join failed in network
|
||||
#: src/network/protocols/client_lobby.cpp:1187
|
||||
#: src/network/protocols/client_lobby.cpp:1188
|
||||
msgid "No remaining place in the arena - live join disabled."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Error message shown if only 1 player remains in network
|
||||
#: src/network/protocols/client_lobby.cpp:1191
|
||||
#: src/network/protocols/client_lobby.cpp:1192
|
||||
msgid "Only 1 player remaining, returning to lobby."
|
||||
msgstr ""
|
||||
|
||||
#: src/network/protocols/client_lobby.cpp:1197
|
||||
#: src/network/protocols/client_lobby.cpp:1198
|
||||
msgid "Server owner quit the game."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Status shown to player when he will be spectating the next game
|
||||
#: src/network/protocols/client_lobby.cpp:1201
|
||||
#: src/network/protocols/client_lobby.cpp:1202
|
||||
msgid "You will be spectating the next game."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Show when player join red team of the started game in
|
||||
#. network
|
||||
#: src/network/protocols/client_lobby.cpp:1369
|
||||
#: src/network/protocols/client_lobby.cpp:1370
|
||||
#, c-format
|
||||
msgid "%s joined the red team."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Show when player join blue team of the started game in
|
||||
#. network
|
||||
#: src/network/protocols/client_lobby.cpp:1375
|
||||
#: src/network/protocols/client_lobby.cpp:1376
|
||||
#, c-format
|
||||
msgid "%s joined the blue team."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Show when player join the started game in network
|
||||
#: src/network/protocols/client_lobby.cpp:1381
|
||||
#: src/network/protocols/client_lobby.cpp:1382
|
||||
#, c-format
|
||||
msgid "%s joined the game."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Message shown in game to tell the player it's possible to change
|
||||
#. the camera target in spectate mode of network
|
||||
#: src/network/protocols/client_lobby.cpp:1536
|
||||
#: src/network/protocols/client_lobby.cpp:1537
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Press <%s> or <%s> to change the targeted player, <%s> or <%s> for the "
|
||||
@ -3764,7 +3764,7 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Tell player he has successfully report this named player
|
||||
#: src/network/protocols/client_lobby.cpp:1552
|
||||
#: src/network/protocols/client_lobby.cpp:1553
|
||||
#, c-format
|
||||
msgid "Successfully reported %s."
|
||||
msgstr ""
|
||||
@ -3964,8 +3964,8 @@ msgstr ""
|
||||
#: src/states_screens/arenas_screen.cpp:326
|
||||
#: src/states_screens/easter_egg_screen.cpp:225
|
||||
#: src/states_screens/easter_egg_screen.cpp:256
|
||||
#: src/states_screens/kart_selection.cpp:935
|
||||
#: src/states_screens/kart_selection.cpp:1576
|
||||
#: src/states_screens/kart_selection.cpp:936
|
||||
#: src/states_screens/kart_selection.cpp:1577
|
||||
#: src/states_screens/race_setup_screen.cpp:100
|
||||
msgid "Locked : solve active challenges to gain access to more!"
|
||||
msgstr ""
|
||||
@ -4398,12 +4398,12 @@ msgid "Current password invalid."
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/dialogs/change_password_dialog.cpp:141
|
||||
#: src/states_screens/online/register_screen.cpp:324
|
||||
#: src/states_screens/online/register_screen.cpp:322
|
||||
msgid "Password has to be between 8 and 30 characters long!"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/dialogs/change_password_dialog.cpp:148
|
||||
#: src/states_screens/online/register_screen.cpp:308
|
||||
#: src/states_screens/online/register_screen.cpp:306
|
||||
msgid "Passwords don't match!"
|
||||
msgstr ""
|
||||
|
||||
@ -4413,7 +4413,7 @@ msgstr ""
|
||||
|
||||
#: src/states_screens/dialogs/change_password_dialog.cpp:236
|
||||
#: src/states_screens/dialogs/recovery_dialog.cpp:207
|
||||
#: src/states_screens/online/register_screen.cpp:389
|
||||
#: src/states_screens/online/register_screen.cpp:387
|
||||
msgid "Validating info"
|
||||
msgstr ""
|
||||
|
||||
@ -4609,8 +4609,8 @@ msgid "Press any key..."
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/dialogs/race_paused_dialog.cpp:115
|
||||
#: src/states_screens/online/networking_lobby.cpp:240
|
||||
#: src/states_screens/online/networking_lobby.cpp:825
|
||||
#: src/states_screens/online/networking_lobby.cpp:244
|
||||
#: src/states_screens/online/networking_lobby.cpp:832
|
||||
msgid "Chat is disabled, enable in options menu."
|
||||
msgstr ""
|
||||
|
||||
@ -4652,7 +4652,7 @@ msgstr ""
|
||||
|
||||
#. I18N: In the Select challenge dialog
|
||||
#: src/states_screens/dialogs/select_challenge.cpp:72
|
||||
#: src/states_screens/race_result_gui.cpp:1769
|
||||
#: src/states_screens/race_result_gui.cpp:1775
|
||||
#, c-format
|
||||
msgid "Laps: %i"
|
||||
msgstr ""
|
||||
@ -4964,17 +4964,17 @@ msgstr ""
|
||||
msgid "Connect a keyboard or gamepad to play splitscreen multiplayer"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/kart_selection.cpp:911
|
||||
#: src/states_screens/kart_selection.cpp:1594
|
||||
#: src/states_screens/kart_selection.cpp:912
|
||||
#: src/states_screens/kart_selection.cpp:1595
|
||||
msgid "Random Kart"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/kart_selection.cpp:930
|
||||
#: src/states_screens/kart_selection.cpp:931
|
||||
msgid "Locked"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/kart_selection.cpp:1031
|
||||
#: src/states_screens/online/networking_lobby.cpp:514
|
||||
#: src/states_screens/kart_selection.cpp:1032
|
||||
#: src/states_screens/online/networking_lobby.cpp:515
|
||||
msgid ""
|
||||
"Everyone:\n"
|
||||
"Press the 'Select' button to join the game"
|
||||
@ -5036,23 +5036,27 @@ msgstr ""
|
||||
|
||||
#. I18N: In the networking lobby, ready button is to allow player to tell
|
||||
#. server that he is ready for next game for owner less server
|
||||
#: src/states_screens/online/networking_lobby.cpp:186
|
||||
#: src/states_screens/online/networking_lobby.cpp:189
|
||||
msgid "Ready"
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Live join is displayed in networking lobby to allow players
|
||||
#. to join the current started in-progress game
|
||||
#: src/states_screens/online/networking_lobby.cpp:189
|
||||
#: src/states_screens/online/networking_lobby.cpp:192
|
||||
msgid "Live join"
|
||||
msgstr ""
|
||||
|
||||
#. I18N: Spectate is displayed in networking lobby to allow players
|
||||
#. to join the current started in-progress game
|
||||
#: src/states_screens/online/networking_lobby.cpp:194
|
||||
#: src/states_screens/online/networking_lobby.cpp:197
|
||||
msgid "Spectate"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/networking_lobby.cpp:332
|
||||
#: src/states_screens/online/networking_lobby.cpp:198
|
||||
msgid "Install addon"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/networking_lobby.cpp:337
|
||||
#, c-format
|
||||
msgid "Lobby (ping: %dms)"
|
||||
msgstr ""
|
||||
@ -5060,7 +5064,7 @@ msgstr ""
|
||||
#. I18N: In the networking lobby, show when player is required to
|
||||
#. wait before the current game finish with remaining time,
|
||||
#. showing the current track name inside bracket
|
||||
#: src/states_screens/online/networking_lobby.cpp:378
|
||||
#: src/states_screens/online/networking_lobby.cpp:383
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Please wait for the current game's (%s) end, estimated remaining time: %s."
|
||||
@ -5068,7 +5072,7 @@ msgstr ""
|
||||
|
||||
#. I18N: In the networking lobby, show when player is required
|
||||
#. to wait before the current game finish with remaining time
|
||||
#: src/states_screens/online/networking_lobby.cpp:386
|
||||
#: src/states_screens/online/networking_lobby.cpp:391
|
||||
#, c-format
|
||||
msgid "Please wait for the current game's end, estimated remaining time: %s."
|
||||
msgstr ""
|
||||
@ -5076,31 +5080,24 @@ msgstr ""
|
||||
#. I18N: In the networking lobby, show when player is required
|
||||
#. to wait before the current game finish with progress in
|
||||
#. percent, showing the current track name inside bracket
|
||||
#: src/states_screens/online/networking_lobby.cpp:398
|
||||
#: src/states_screens/online/networking_lobby.cpp:403
|
||||
msgid "Please wait for the current game's (%s) end, estimated progress: %s%."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: In the networking lobby, show when player is required
|
||||
#. to wait before the current game finish with progress in
|
||||
#. percent
|
||||
#: src/states_screens/online/networking_lobby.cpp:407
|
||||
#: src/states_screens/online/networking_lobby.cpp:412
|
||||
msgid "Please wait for the current game's end, estimated progress: %d%."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: In the networking lobby, show when player is required to
|
||||
#. wait before the current game finish
|
||||
#: src/states_screens/online/networking_lobby.cpp:415
|
||||
#: src/states_screens/online/networking_lobby.cpp:420
|
||||
msgid "Please wait for the current game's end."
|
||||
msgstr ""
|
||||
|
||||
#. I18N: In the networking lobby,
|
||||
#. tell user the command to install addon now
|
||||
#: src/states_screens/online/networking_lobby.cpp:429
|
||||
#, c-format
|
||||
msgid "Send %s in chat box to install addon now."
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/networking_lobby.cpp:483
|
||||
#: src/states_screens/online/networking_lobby.cpp:484
|
||||
#, c-format
|
||||
msgid "Game will start if there is more than %d player."
|
||||
msgid_plural "Game will start if there are more than %d players."
|
||||
@ -5109,7 +5106,7 @@ msgstr[1] ""
|
||||
|
||||
#. I18N: In the networking lobby, display the starting timeout
|
||||
#. for owner-less server to begin a game
|
||||
#: src/states_screens/online/networking_lobby.cpp:497
|
||||
#: src/states_screens/online/networking_lobby.cpp:498
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Starting after %d second, or once everyone has pressed the 'Ready' button."
|
||||
@ -5118,12 +5115,12 @@ msgid_plural ""
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: src/states_screens/online/networking_lobby.cpp:534
|
||||
#: src/states_screens/online/networking_lobby.cpp:535
|
||||
#, c-format
|
||||
msgid "Connecting to server %s"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/networking_lobby.cpp:539
|
||||
#: src/states_screens/online/networking_lobby.cpp:540
|
||||
msgid "Finding a quick play server"
|
||||
msgstr ""
|
||||
|
||||
@ -5201,48 +5198,48 @@ msgstr ""
|
||||
msgid "Searching"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:133
|
||||
#: src/states_screens/online/register_screen.cpp:131
|
||||
#: src/states_screens/options/user_screen.cpp:127
|
||||
msgid "Exit game"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:246
|
||||
#: src/states_screens/online/register_screen.cpp:253
|
||||
#: src/states_screens/online/register_screen.cpp:244
|
||||
#: src/states_screens/online/register_screen.cpp:251
|
||||
#, c-format
|
||||
msgid "Could not create player '%s'."
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:270
|
||||
#: src/states_screens/online/register_screen.cpp:268
|
||||
msgid "User name cannot be empty."
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:312
|
||||
#: src/states_screens/online/register_screen.cpp:310
|
||||
msgid "Emails don't match!"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:316
|
||||
#: src/states_screens/online/register_screen.cpp:314
|
||||
msgid "Online username has to be between 3 and 30 characters long!"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:320
|
||||
#: src/states_screens/online/register_screen.cpp:318
|
||||
msgid "Online username must not start with a number!"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:328
|
||||
#: src/states_screens/online/register_screen.cpp:326
|
||||
msgid "Email has to be between 5 and 254 characters long!"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:334
|
||||
#: src/states_screens/online/register_screen.cpp:332
|
||||
msgid "Email is invalid!"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:397
|
||||
#: src/states_screens/online/register_screen.cpp:395
|
||||
msgid ""
|
||||
"You will receive an email with further instructions regarding account "
|
||||
"activation. Please be patient and be sure to check your spam folder."
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/online/register_screen.cpp:436
|
||||
#: src/states_screens/online/register_screen.cpp:434
|
||||
msgid "Internet access is disabled, please enable it in the options"
|
||||
msgstr ""
|
||||
|
||||
@ -5851,30 +5848,30 @@ msgstr ""
|
||||
|
||||
#. I18N: indicates a player that scored in their own goal in result screen
|
||||
#: src/states_screens/race_result_gui.cpp:1427
|
||||
#: src/states_screens/race_result_gui.cpp:1485
|
||||
#: src/states_screens/race_result_gui.cpp:1488
|
||||
msgid "(Own Goal)"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/race_result_gui.cpp:1560
|
||||
#: src/states_screens/race_result_gui.cpp:1566
|
||||
#, c-format
|
||||
msgid "Track %i/%i"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/race_result_gui.cpp:1644
|
||||
#: src/states_screens/race_result_gui.cpp:1650
|
||||
msgid "Grand Prix progress:"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/race_result_gui.cpp:1690
|
||||
#: src/states_screens/race_result_gui.cpp:1696
|
||||
msgid "Highscores"
|
||||
msgstr ""
|
||||
|
||||
#: src/states_screens/race_result_gui.cpp:1793
|
||||
#: src/states_screens/race_result_gui.cpp:1799
|
||||
#, c-format
|
||||
msgid "Best lap time: %s"
|
||||
msgstr ""
|
||||
|
||||
#. I18N: is used to indicate who has the bast laptime (best laptime "by kart_name")
|
||||
#: src/states_screens/race_result_gui.cpp:1807
|
||||
#: src/states_screens/race_result_gui.cpp:1813
|
||||
#, c-format
|
||||
msgid "by %s"
|
||||
msgstr ""
|
||||
|
@ -48,6 +48,7 @@
|
||||
#include "network/server.hpp"
|
||||
#include "network/stk_host.hpp"
|
||||
#include "network/network_timer_synchronizer.hpp"
|
||||
#include "states_screens/dialogs/addons_pack.hpp"
|
||||
#include "states_screens/dialogs/splitscreen_player_dialog.hpp"
|
||||
#include "states_screens/dialogs/network_player_dialog.hpp"
|
||||
#include "states_screens/dialogs/server_configuration_dialog.hpp"
|
||||
@ -85,7 +86,7 @@ NetworkingLobby::NetworkingLobby() : Screen("online/networking_lobby.stkgui")
|
||||
m_send_button = NULL;
|
||||
m_icon_bank = NULL;
|
||||
m_reload_server_info = false;
|
||||
m_displayed_addon_install_cmd = false;
|
||||
m_addon_install = NULL;
|
||||
|
||||
// Allows one to update chat and counter even if dialog window is opened
|
||||
setUpdateInBackground(true);
|
||||
@ -139,6 +140,8 @@ void NetworkingLobby::loadedFromFile()
|
||||
(file_manager->getAsset(FileManager::GUI_ICON, "screen_other.png"));
|
||||
video::ITexture* icon_6 = irr_driver->getTexture
|
||||
(file_manager->getAsset(FileManager::GUI_ICON, "robot.png"));
|
||||
m_addon_texture = irr_driver->getTexture
|
||||
(file_manager->getAsset(FileManager::GUI_ICON, "package-update.png"));
|
||||
m_icon_bank->addTextureAsSprite(icon_1);
|
||||
m_icon_bank->addTextureAsSprite(icon_2);
|
||||
m_icon_bank->addTextureAsSprite(icon_3);
|
||||
@ -173,7 +176,7 @@ void NetworkingLobby::init()
|
||||
m_allow_change_team = false;
|
||||
m_has_auto_start_in_server = false;
|
||||
m_client_live_joinable = false;
|
||||
m_displayed_addon_install_cmd = false;
|
||||
m_addon_install = NULL;
|
||||
m_ping_update_timer = 0;
|
||||
m_start_timeout = std::numeric_limits<float>::max();
|
||||
m_cur_starting_timer = std::numeric_limits<int64_t>::max();
|
||||
@ -192,6 +195,7 @@ void NetworkingLobby::init()
|
||||
//I18N: Spectate is displayed in networking lobby to allow players
|
||||
//to join the current started in-progress game
|
||||
m_spectate_text = _("Spectate");
|
||||
m_install_addon_text = _("Install addon");
|
||||
|
||||
//I18N: In the networking lobby
|
||||
m_header->setText(_("Lobby"), false);
|
||||
@ -297,6 +301,7 @@ void NetworkingLobby::updateServerInfos()
|
||||
// ----------------------------------------------------------------------------
|
||||
void NetworkingLobby::onUpdate(float delta)
|
||||
{
|
||||
m_addon_install = NULL;
|
||||
if (NetworkConfig::get()->isServer() || !STKHost::existHost())
|
||||
return;
|
||||
|
||||
@ -415,22 +420,6 @@ void NetworkingLobby::onUpdate(float delta)
|
||||
msg = _("Please wait for the current game's end.");
|
||||
}
|
||||
|
||||
#ifndef SERVER_ONLY
|
||||
Addon* addon = addons_manager->getAddon(
|
||||
Addon::createAddonId(missing_addon_track_id));
|
||||
if (addon &&
|
||||
!m_displayed_addon_install_cmd)
|
||||
{
|
||||
m_displayed_addon_install_cmd = true;
|
||||
core::stringw cmd = L"/installaddon ";
|
||||
cmd += missing_addon_track_id.c_str();
|
||||
//I18N: In the networking lobby,
|
||||
//tell user the command to install addon now
|
||||
core::stringw info = _("Send %s in chat box to install addon now.", cmd);
|
||||
addMoreServerInfo(info);
|
||||
}
|
||||
#endif
|
||||
|
||||
// You can live join or spectator if u have the current play track
|
||||
// and network timer is synchronized, and no game protocols exist
|
||||
bool no_gep = !RaceEventManager::get() ||
|
||||
@ -447,6 +436,21 @@ void NetworkingLobby::onUpdate(float delta)
|
||||
|
||||
m_timeout_message->setText(msg, false);
|
||||
m_cur_starting_timer = std::numeric_limits<int64_t>::max();
|
||||
#ifndef SERVER_ONLY
|
||||
if (!GUIEngine::ModalDialog::isADialogActive() &&
|
||||
!ScreenKeyboard::isActive())
|
||||
{
|
||||
m_addon_install = addons_manager->getAddon(
|
||||
Addon::createAddonId(missing_addon_track_id));
|
||||
if (m_addon_install)
|
||||
{
|
||||
m_config_button->setLabel(m_install_addon_text);
|
||||
m_config_button->setImage(m_addon_texture);
|
||||
m_config_button->setVisible(true);
|
||||
return;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (m_client_live_joinable)
|
||||
{
|
||||
@ -674,6 +678,13 @@ void NetworkingLobby::eventCallback(Widget* widget, const std::string& name,
|
||||
}
|
||||
else if (name == m_config_button->m_properties[PROP_ID])
|
||||
{
|
||||
#ifndef SERVER_ONLY
|
||||
if (m_addon_install)
|
||||
{
|
||||
AddonsPack::install(m_addon_install->getDirName());
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
auto cl = LobbyProtocol::get<ClientLobby>();
|
||||
if (m_client_live_joinable && cl)
|
||||
{
|
||||
|
@ -25,6 +25,7 @@
|
||||
#include <memory>
|
||||
#include <utility>
|
||||
|
||||
class Addon;
|
||||
class InputDevice;
|
||||
class Server;
|
||||
enum KartTeam : int8_t;
|
||||
@ -74,7 +75,7 @@ private:
|
||||
int m_server_info_height;
|
||||
|
||||
core::stringw m_start_text, m_ready_text, m_live_join_text,
|
||||
m_configuration_text, m_spectate_text;
|
||||
m_configuration_text, m_spectate_text, m_install_addon_text;
|
||||
|
||||
float m_start_timeout;
|
||||
int64_t m_cur_starting_timer;
|
||||
@ -82,10 +83,12 @@ private:
|
||||
|
||||
bool m_allow_change_team, m_has_auto_start_in_server,
|
||||
m_server_configurable, m_client_live_joinable,
|
||||
m_reload_server_info, m_displayed_addon_install_cmd;
|
||||
m_reload_server_info;
|
||||
|
||||
Addon* m_addon_install;
|
||||
video::ITexture* m_config_texture;
|
||||
video::ITexture* m_spectate_texture;
|
||||
video::ITexture* m_addon_texture;
|
||||
|
||||
GUIEngine::IconButtonWidget* m_back_widget;
|
||||
GUIEngine::LabelWidget* m_header;
|
||||
|
Loading…
Reference in New Issue
Block a user