2020-10-27 18:13:15 +01:00
|
|
|
controls.register_on_press(function(player, key)
|
|
|
|
|
|
|
|
local p_name = player:get_player_name()
|
|
|
|
|
2020-11-11 20:50:13 +01:00
|
|
|
if not arena_lib.is_player_in_arena(p_name, "block_league") then return end
|
|
|
|
|
|
|
|
if key == "aux1" and not arena_lib.get_arena_by_player(p_name).in_celebration then
|
2020-11-07 13:01:50 +01:00
|
|
|
panel_lib.get_panel(p_name, "bl_info_panel"):show()
|
2020-10-27 18:13:15 +01:00
|
|
|
end
|
|
|
|
end)
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-11-03 00:40:24 +01:00
|
|
|
controls.register_on_hold(function(player, key)
|
|
|
|
|
|
|
|
local p_name = player:get_player_name()
|
|
|
|
|
|
|
|
if key~="LMB" or not arena_lib.is_player_in_arena(p_name, "block_league") then return end
|
|
|
|
|
|
|
|
local weapon_name = player:get_wielded_item():get_name()
|
2020-11-11 15:40:25 +00:00
|
|
|
local weap_def = minetest.registered_nodes[weapon_name]
|
2020-11-03 00:40:24 +01:00
|
|
|
|
|
|
|
if not weap_def or not weap_def.continuos_fire then return end
|
|
|
|
|
|
|
|
block_league.shoot(weap_def, player)
|
|
|
|
|
|
|
|
end)
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-10-27 18:13:15 +01:00
|
|
|
controls.register_on_release(function(player, key)
|
|
|
|
|
|
|
|
local p_name = player:get_player_name()
|
|
|
|
|
2020-11-03 00:40:24 +01:00
|
|
|
if not arena_lib.is_player_in_arena(p_name, "block_league") then return end
|
|
|
|
|
2020-11-11 20:50:13 +01:00
|
|
|
-- AUX1
|
2020-11-03 00:40:24 +01:00
|
|
|
if key == "aux1" and not arena_lib.get_arena_by_player(p_name).in_celebration then
|
2020-11-07 13:01:50 +01:00
|
|
|
panel_lib.get_panel(p_name, "bl_info_panel"):hide()
|
2020-11-03 00:40:24 +01:00
|
|
|
|
|
|
|
|
|
|
|
-- LMB
|
|
|
|
elseif key == "LMB" then
|
|
|
|
|
|
|
|
local weapon_name = player:get_wielded_item():get_name()
|
2020-11-11 15:40:25 +00:00
|
|
|
local weap_def = minetest.registered_nodes[weapon_name]
|
2020-11-03 00:40:24 +01:00
|
|
|
local arena = arena_lib.get_arena_by_player(p_name)
|
|
|
|
|
|
|
|
if not weap_def or not weap_def.slow_down_when_firing then return end
|
|
|
|
|
|
|
|
minetest.after(0.5, function()
|
2020-11-12 11:08:14 +01:00
|
|
|
if not arena_lib.is_player_in_arena(p_name, "block_league") or arena.players[p_name].energy == 0 or player:get_meta():get_int("bl_reloading") == 1 then return end
|
2020-11-03 00:40:24 +01:00
|
|
|
player:set_physics_override({
|
|
|
|
speed = block_league.SPEED,
|
|
|
|
jump = 1.5
|
|
|
|
})
|
|
|
|
end)
|
|
|
|
end
|
2020-10-27 18:13:15 +01:00
|
|
|
end)
|