master
wzy2006 2020-10-04 14:04:50 +08:00
parent 25446e8370
commit b9616e2688
3 changed files with 35 additions and 16 deletions

View File

@ -48,16 +48,21 @@ local function way_step(player, dtime)
local jetpack = inventory:get_stack("main", i) local jetpack = inventory:get_stack("main", i)
if jetpack:get_name()=="fastway:jetpack" then if jetpack:get_name()=="fastway:jetpack" then
local meta = minetest.deserialize(jetpack:get_metadata()) local meta = minetest.deserialize(jetpack:get_metadata())
if not meta or not meta.charge or not meta.enable then if not meta or not meta.charge or meta.mode == nil then
break break
end end
if meta.enable == true then if meta.mode ~= nil and meta.mode ~= "disable" then
local meta = minetest.deserialize(jetpack:get_metadata()) if meta.mode == "enable" then
if not meta or not meta.charge then meta.charge = meta.charge - dtime*600
break elseif meta.mode == "fast" then
meta.charge = meta.charge - dtime*3000
end
if meta.charge<=0 then
meta.charge=0
meta.enable=false
player_monoids.fly:del_change(player,"fastway:jetpack")
end end
meta.charge = meta.charge - dtime*6000
minetest.debug(meta.charge)
jetpack:set_metadata(minetest.serialize(meta)) jetpack:set_metadata(minetest.serialize(meta))
technic.set_RE_wear(jetpack, meta.charge, 65535) technic.set_RE_wear(jetpack, meta.charge, 65535)
inventory:set_stack("main", i,jetpack) inventory:set_stack("main", i,jetpack)
@ -195,18 +200,25 @@ minetest.register_tool("fastway:jetpack", {
if not meta then if not meta then
return return
end end
if meta.enable == nil then if meta.mode == nil then
meta.enable = false meta.mode = "disable"
end end
if meta.enable==false then if meta.mode=="disable" then
player_monoids.fly:add_change(player,true,"fastway:jetpack") player_monoids.fly:add_change(player,true,"fastway:jetpack")
meta.enable = true player_monoids.speed:del_change(player,"fastway:jetpack")
elseif meta.enable==true then meta.mode = "enable"
player_monoids.fly:add_change(player,false,"fastway:jetpack") elseif meta.mode=="enable" then
meta.enable = false player_monoids.speed:add_change(player,3,"fastway:jetpack")
player_monoids.fly:add_change(player,true,"fastway:jetpack")
meta.mode = "fast"
elseif meta.mode=="fast" then
player_monoids.fly:del_change(player,"fastway:jetpack")
player_monoids.speed:del_change(player,"fastway:jetpack")
meta.mode = "disable"
end end
minetest.chat_send_player(player:get_player_name(), meta.mode)
itemstack:set_metadata(minetest.serialize(meta)) itemstack:set_metadata(minetest.serialize(meta))
return itemstacks return itemstack
end end
}) })
minetest.register_craft({ minetest.register_craft({

View File

@ -2,4 +2,5 @@
parachute=降落伞 parachute=降落伞
track=跑道 track=跑道
trampoline=蹦床 trampoline=蹦床
jetpack=喷气背包

6
locale/template.txt Normal file
View File

@ -0,0 +1,6 @@
# textdomain: fastway
parachute=
track=
trampoline=
jetpack=