46 lines
1.4 KiB
Lua
46 lines
1.4 KiB
Lua
minetest.register_on_newplayer(function(ObjectRef)
|
|
|
|
local p_name = ObjectRef:get_player_name()
|
|
|
|
quake.players[p_name] = {LV = 0, XP = 0, KILLS = 0, TIME_PLAYING = 0, ACHVMTS = {}}
|
|
quake.add_player_to_storage(p_name)
|
|
quake.update_storage(p_name)
|
|
|
|
end)
|
|
|
|
|
|
|
|
minetest.register_on_joinplayer(function(player)
|
|
|
|
local p_name = player:get_player_name()
|
|
|
|
-- lo aggiungo allo storage se era un giocatore che si era già connesso in precedenza,
|
|
-- quando la mod ancora non esisteva
|
|
if not quake.is_player_in_storage(player:get_player_name()) then
|
|
|
|
quake.players[p_name] = {LV = 0, XP = 0, KILLS = 0, TIME_PLAYING = 0, ACHVMTS = {}}
|
|
quake.add_player_to_storage(p_name)
|
|
end
|
|
|
|
-- genero la HUD per gli achievement
|
|
--TODO|DOUBT gestione in hub_manager se c'è?
|
|
quake.generate_achievements_slot(p_name)
|
|
|
|
player:get_meta():set_int("quake_weap_delay", 0)
|
|
|
|
player: set_physics_override({
|
|
speed = 1,
|
|
jump = 1,
|
|
gravity = 1,
|
|
})
|
|
|
|
local inv = player:get_inventory()
|
|
|
|
-- non è possibile modificare l'inventario da offline. Se sono crashati o hanno chiuso il gioco in partita,
|
|
-- questo è l'unico modo per togliergli l'arma
|
|
inv:remove_item("main", ItemStack("quake:railgun"))
|
|
inv:remove_item("main", ItemStack("quake:rocket_launcher"))
|
|
inv:remove_item("main", ItemStack("quake:match_over"))
|
|
|
|
end)
|