1 ----- EXAMPLE EFFECT TYPES -----
3 playereffects
.register_effect_type("high_speed", "high speed", {"speed"},
5 player
:set_physics_override(4,nil,nil)
9 local player
= minetest
.get_player_by_name(effect
.playername
)
10 player
:set_physics_override(1,nil,nil)
13 playereffects
.register_effect_type("low_speed", "low speed", {"speed"},
15 player
:set_physics_override(0.25,nil,nil)
19 local player
= minetest
.get_player_by_name(effect
.playername
)
20 player
:set_physics_override(1,nil,nil)
23 playereffects
.register_effect_type("highjump", "greater jump height", {"jump"},
25 player
:set_physics_override(nil,2,nil)
28 local player
= minetest
.get_player_by_name(effect
.playername
)
29 player
:set_physics_override(nil,1,nil)
32 playereffects
.register_effect_type("fly", "fly mode available", {"fly"},
34 local playername
= player
:get_player_name()
35 local privs
= minetest
.get_player_privs(playername
)
37 minetest
.set_player_privs(playername
, privs
)
40 local privs
= minetest
.get_player_privs(effect
.playername
)
42 minetest
.set_player_privs(effect
.playername
, privs
)
47 minetest
.register_chatcommand("fast", {
49 description
= "Makes you fast for a short time.",
51 func
= function(name
, param
)
52 playereffects
.apply_effect_type("high_speed", 10, minetest
.get_player_by_name(name
))
55 minetest
.register_chatcommand("slow", {
57 description
= "Makes you slow for a long time.",
59 func
= function(name
, param
)
60 playereffects
.apply_effect_type("low_speed", 120, minetest
.get_player_by_name(name
))
63 minetest
.register_chatcommand("highjump", {
65 description
= "Makes you jump higher for a short time.",
67 func
= function(name
, param
)
68 playereffects
.apply_effect_type("highjump", 20, minetest
.get_player_by_name(name
))
72 minetest
.register_chatcommand("fly", {
74 description
= "Grants you the fly privilege for a short time.",
76 func
= function(name
, param
)
77 playereffects
.apply_effect_type("fly", 20, minetest
.get_player_by_name(name
))