]> git.lizzy.rs Git - dragonfireclient.git/blob - clientmods/respawn/init.lua
Added settings
[dragonfireclient.git] / clientmods / respawn / init.lua
1 local warp = warp or {set_here = function() return false end}
2
3 local formspec = ""
4         .. "size[11,5.5]"
5         .. "bgcolor[#320000b4;true]"
6         .. "label[4.85,1.35;" .. "You died" .. "]"
7         .. "button_exit[2,3;3,0.5;btn_respawn;" .. "Respawn" .. "]"
8         .. "button_exit[6,3;3,0.5;btn_ghost_mode;" .. "Ghost Mode" .. "]"
9         .. "set_focus[btn_respawn;true]"
10
11 minetest.register_on_death(function()
12         local warp_success, warp_msg = warp.set_here("death")
13         if warp_success then
14                 minetest.display_chat_message(warp_msg)
15         else
16                 minetest.display_chat_message("You died at " .. minetest.pos_to_string(minetest.localplayer:get_pos()) .. ".")
17         end
18         if minetest.settings:get_bool("autorespawn") then
19                 minetest.send_respawn()
20         else
21         minetest.show_formspec("respawn:death", formspec)
22 end)
23
24 minetest.register_on_formspec_input(function(formname, fields)
25         if formname == "respawn:death" then
26                 if fields.btn_ghost_mode then
27                         minetest.display_chat_message("You are in ghost mode. Use .respawn to Respawn.")
28                 else
29                         minetest.send_respawn()
30                 end
31         end
32 end)
33
34 minetest.register_chatcommand("respawn", {
35         description = "Respawn when in ghost mode",
36         func = function()
37                 if minetest.localplayer:get_hp() == 0 then
38                         minetest.send_respawn()
39                         minetest.display_chat_message("Respawned.")
40                 else
41                         minetest.display_chat_message("You are not in ghost mode.")
42                 end
43         end
44 })