gems/gems_4/auto.lua

88 lines
2.8 KiB
Lua

-- What needs to happen is:
-- On_load: 1) set the schem, 2) clear the objects, 3) Take the gem locations out of arena properties and store them in team properties
-- on start, set huds, eventually, not a priority (TODO)
-- on_death, check if gem exists. If it does, send the player back to a spawner. If not, then eliminate the player
-- on_time_tick, 1) handle mine drops, 2) check if the great gem is at the location of each team's great gem location:
-- if it is not, set that team's properties to indicate gem_exists = false
--####################################################################
--################ ON LOAD #######################
--####################################################################
arena_lib.on_load('gems_4', function(arena)
gems_api.place_arena(arena)
worldedit.keep_loaded(arena.area_to_clear_pos_1, arena.area_to_clear_pos_2)
gems_api.clearobjects(arena.area_to_clear_pos_1, arena.area_to_clear_pos_2)
end)
--####################################################################
--################ ON START #######################
--####################################################################
arena_lib.on_start('gems_4', function(arena)
worldedit.keep_loaded(arena.area_to_clear_pos_1, arena.area_to_clear_pos_2)
gems_api.clearobjects(arena.area_to_clear_pos_1, arena.area_to_clear_pos_2)
for pl_name,stats in pairs(arena.players) do
local player = minetest.get_player_by_name(pl_name)
if player then
gems_api.clear_inv(player)
end
end
end)
-- TODO: add HUD
--####################################################################
--################ ON DEATH #######################
--####################################################################
arena_lib.on_death('gems_4', function(arena, p_name, reason)
gems_api.on_death( arena , p_name , reason )
end)
--####################################################################
--################ ON TIME_TICK #######################
--####################################################################
arena_lib.on_time_tick('gems_4', function(arena)
worldedit.keep_loaded(arena.area_to_clear_pos_1, arena.area_to_clear_pos_2)
local teams = {"ruby","sapphire","emerald", "opal"}
gems_api.on_time_tick(arena,teams)
end)
--####################################################################
--################ ON END #######################
--####################################################################
arena_lib.on_end('gems_4',function(arena, players, winner_name, spectators, is_forced)
gems_api.clearobjects(arena.area_to_clear_pos_1, arena.area_to_clear_pos_2)
gems_api.on_end(arena, players, winner_name, spectators, is_forced)
end)