Added traitor name to level completion message.

master
Nathan Salapat 2022-08-10 20:08:30 -05:00
parent 872d2800d0
commit 2959b8b8c0
1 changed files with 6 additions and 31 deletions

View File

@ -106,6 +106,7 @@ function lobby.update_maps(map_id)
for _, player in pairs(minetest.get_connected_players()) do
local rname = player:get_player_name()
if lobby.game[rname] == map_id or lobby.game[rname] == map_id..'_ghost' then
minetest.close_formspec(rname, '')
local player_attributes = player:get_meta()
player:set_nametag_attributes({
color = {a = 255, r = 255, g = 255, b = 255}
@ -120,9 +121,7 @@ function lobby.update_maps(map_id)
lobby.game[rname] = 'lobby'
local idx = sabotage.hud[rname]
if idx then
print ('hud IDs found')
for key,value in pairs(idx) do --table expected, got nil. idx might not exist.
print ('value')
for key,value in pairs(idx) do
player:hud_remove(value)
end
end
@ -188,6 +187,7 @@ end
function lobby.team_win(map_id)
lobby.corpse_removal(map_id)
local traitor = lobby.traitors[map_id]
for _, player in pairs(minetest.get_connected_players()) do
local rname = player:get_player_name()
if lobby.game[rname] == map_id then
@ -195,7 +195,7 @@ function lobby.team_win(map_id)
player_attributes:set_string('mode', 'solo')
minetest.close_formspec(rname, '')
lobby.give_xp(player, 25)
minetest.chat_send_player(rname, 'The traitor was defeated.')
minetest.chat_send_player(rname, 'The traitor ('..traitor..') was defeated.')
player:set_pos(lobby.spawn_pos)
player:set_physics_override({speed=1})
local player_inv = player:get_inventory()
@ -216,7 +216,7 @@ function lobby.team_win(map_id)
player:set_properties({visual_size = {x = 10, y = 10}, collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.7, 0.3}})
player:set_pos(lobby.spawn_pos)
player_attributes:set_string('mode', 'solo')
minetest.chat_send_player(rname, 'The traitor was defeated.')
minetest.chat_send_player(rname, 'The traitor ('..traitor..') was defeated.')
player:set_physics_override({speed=1})
local player_inv = player:get_inventory()
player_inv:set_list('main', {})
@ -252,35 +252,10 @@ function lobby.traitor_win(traitor, map_id)
local player_inv = player:get_inventory()
player_inv:set_list('main', {})
lobby.map[map_id] = 0
for _, player in pairs(minetest.get_connected_players()) do
local rname = player:get_player_name()
if lobby.game[rname] == map_id..'_ghost' or lobby.game[rname] == map_id then
minetest.close_formspec(rname, '')
minetest.chat_send_player(rname, 'The traitor won.')
local player_attributes = player:get_meta()
player:set_nametag_attributes({
color = {a = 255, r = 255, g = 255, b = 255}
})
player:set_properties({visual_size = {x = 10, y = 10}, collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.7, 0.3}})
player:set_pos(lobby.spawn_pos)
player_attributes:set_string('mode', 'solo')
player:set_physics_override({speed=1})
local player_inv = player:get_inventory()
player_inv:set_list('main', {})
lobby.game[rname] = 'lobby'
local idx = sabotage.hud[rname]
if idx then
for key,value in pairs(idx) do
player:hud_remove(value)
end
end
end
end
lobby.map[map_id] = 0
lobby.update_stats(map_id, '', 'traitor')
local game_data = lobby.savedata.data[map_id]
local map_name = game_data['map_name'] or map_id
minetest.chat_send_all('The traitor was victorious on this round in the '..map_name)
minetest.chat_send_all('The traitor ('..traitor..') was victorious on this round in the '..map_name)
end
--[[ is_builder(player: ObjectRef): bool