Rename levels, show level name

master
Wuzzy 2022-02-11 03:50:48 +01:00
parent 365aa369fb
commit c6a23eed25
4 changed files with 22 additions and 12 deletions

View File

@ -22,7 +22,7 @@ lzr_level_select.open_dialog = function(player, preselect)
end
entry_header = ""
end
table.insert(list, F(entry_header.. S("Level @1", l)))
table.insert(list, F(entry_header.. lzr_levels.get_level_name(l)))
end
if not first_uncompleted_level then
first_uncompleted_level = 1

View File

@ -1,6 +1,6 @@
lzr_levels_level_1.mts,Level 1
lzr_levels_level_2.mts,Level 2
lzr_levels_level_3.mts,Level 3
lzr_levels_level_4.mts,Level 4
lzr_levels_level_5.mts,Level 5
lzr_levels_level_6.mts,Level 6
lzr_levels_level_1.mts,Demo Level 1
lzr_levels_level_2.mts,Demo Level 2
lzr_levels_level_3.mts,Demo Level 3
lzr_levels_level_4.mts,Demo Level 4
lzr_levels_level_5.mts,Demo Level 5
lzr_levels_level_6.mts,Demo Level 6

1 lzr_levels_level_1.mts Level 1 Demo Level 1
2 lzr_levels_level_2.mts Level 2 Demo Level 2
3 lzr_levels_level_3.mts Level 3 Demo Level 3
4 lzr_levels_level_4.mts Level 4 Demo Level 4
5 lzr_levels_level_5.mts Level 5 Demo Level 5
6 lzr_levels_level_6.mts Level 6 Demo Level 6

View File

@ -34,7 +34,8 @@ local analyze_levels = function()
local matches = string.split(line, ",")
assert(matches ~= nil, "Malformed level_data.csv")
local filename = matches[1]
table.insert(level_data, {filename=filename})
local lname = matches[2]
table.insert(level_data, {filename=filename, name=lname})
end
lzr_levels.LAST_LEVEL = #level_data
@ -115,7 +116,7 @@ local emerge_callback = function(blockpos, action, calls_remaining, param)
player:set_look_horizontal(param.yaw)
player:set_look_vertical(0)
end
lzr_messages.show_message(player, S("Level @1", param.level), 3)
lzr_messages.show_message(player, lzr_levels.get_level_name(param.level), 3)
minetest.sound_play({name = "lzr_levels_level_enter", gain = 1}, {to_player=player:get_player_name()}, true)
end
minetest.log("action", "[lzr_levels] Room emerge callback done")
@ -241,7 +242,7 @@ function lzr_levels.level_complete()
end
lzr_levels.mark_level_as_complete(current_level)
local player = get_singleplayer()
lzr_messages.show_message(player, S("Level @1 complete!", current_level), 3)
lzr_messages.show_message(player, S("@1 complete!", lzr_levels.get_level_name(current_level)), 3)
minetest.log("action", "[lzr_levels] Level "..current_level.." completed")
minetest.sound_play({name = "lzr_levels_level_complete", gain = 1}, {to_player=player:get_player_name()}, true)
lzr_gamestate.set_state(lzr_gamestate.LEVEL_COMPLETE)
@ -277,6 +278,15 @@ function lzr_levels.get_current_level()
return current_level
end
function lzr_levels.get_level_name(level)
local name = level_data[level].name
if name then
return level_data[level].name
else
return S("Level @1", level)
end
end
function lzr_levels.restart_level()
local state = lzr_gamestate.get_state()
if state == lzr_gamestate.LEVEL or state == lzr_gamestate.EDITOR then

View File

@ -2,9 +2,9 @@ local S = minetest.get_translator("lzr_teleporter")
local F = minetest.formspec_escape
local open_leave_dialog = function(player)
local levelstr = tostring(lzr_levels.get_current_level())
local levelstr = lzr_levels.get_level_name(lzr_levels.get_current_level())
local form = "formspec_version[4]size[7,4.5]"..
"label[0.5,0.5;"..F(S("You are in level @1.", levelstr)).."]"..
"label[0.5,0.5;"..F(S("Current level: @1.", levelstr)).."]"..
"button_exit[2,1;3,1;continue;"..F(S("Continue")).."]"..
"button_exit[2,2;3,1;restart;"..F(S("Restart level")).."]"..
"button_exit[2,3;3,1;leave;"..F(S("Leave level")).."]"