File: static_spawn.lua

package info (click to toggle)
minetest 0.4.15%2Brepack2-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 30,732 kB
  • ctags: 13,048
  • sloc: cpp: 110,598; xml: 77,537; ansic: 4,149; sh: 853; makefile: 788; python: 659; java: 484
file content (25 lines) | stat: -rw-r--r-- 809 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
-- Minetest: builtin/static_spawn.lua

local function warn_invalid_static_spawnpoint()
	if core.setting_get("static_spawnpoint") and
			not core.setting_get_pos("static_spawnpoint") then
		core.log("error", "The static_spawnpoint setting is invalid: \""..
				core.setting_get("static_spawnpoint").."\"")
	end
end

warn_invalid_static_spawnpoint()

local function put_player_in_spawn(player_obj)
	local static_spawnpoint = core.setting_get_pos("static_spawnpoint")
	if not static_spawnpoint then
		return false
	end
	core.log("action", "Moving " .. player_obj:get_player_name() ..
		" to static spawnpoint at " .. core.pos_to_string(static_spawnpoint))
	player_obj:setpos(static_spawnpoint)
	return true
end

core.register_on_newplayer(put_player_in_spawn)
core.register_on_respawnplayer(put_player_in_spawn)