aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOch Noe <och_noe@forksworld.de>2021-07-20 20:30:14 +0200
committerOch Noe <och_noe@forksworld.de>2021-07-20 20:30:14 +0200
commit01e27c77577f60b715242298bfe536fedb36866b (patch)
tree62d393021e44216a0a5e83eb58099e378ddaf45e
parente735475a106370aa60e72b12498b30e221fec325 (diff)
downloadcs_waypoints-01e27c77577f60b715242298bfe536fedb36866b.tar.gz
cs_waypoints-01e27c77577f60b715242298bfe536fedb36866b.tar.bz2
cs_waypoints-01e27c77577f60b715242298bfe536fedb36866b.zip
'wp_export' added
-rw-r--r--init.lua44
1 files changed, 35 insertions, 9 deletions
diff --git a/init.lua b/init.lua
index a483344..1e56890 100644
--- a/init.lua
+++ b/init.lua
@@ -4,7 +4,7 @@
local mod_name = minetest.get_current_modname()
-local mod_version = "2.11"
+local mod_version = "2.13"
local function log(level, message)
minetest.log(level, ('[%s] %s'):format(mod_name, message))
@@ -151,7 +151,7 @@ local function stack_pop()
end
local function stack_use()
- wp_stack = load_waypoints_stack()
+ local wp_stack = load_waypoints_stack()
count = 0
if nil ~= wp_stack then count = #wp_stack end
if count<1 then
@@ -163,7 +163,7 @@ local function stack_use()
end
local function stack_exch()
- wp_stack = load_waypoints_stack()
+ local wp_stack = load_waypoints_stack()
count = 0
if nil ~= wp_stack then count = #wp_stack end
if count<2 then
@@ -179,7 +179,7 @@ end
local function stack_show()
- wp_stack = load_waypoints_stack()
+ local wp_stack = load_waypoints_stack()
count = 0
if nil ~= wp_stack then count = #wp_stack end
if count<1 then
@@ -252,17 +252,17 @@ end
local function position_shift2(p)
if not p then return end
- param = p:split(" ")
+ local param = p:split(" ")
- shift = {}
+ local shift = {}
shift.x = 0
shift.y = 0
shift.z = 0
- vp = 1
+ local vp = 1
while (vp+1 <= #param )
do
- direction = param[vp]
+ local direction = param[vp]
d = ""
if direction == "x" or direction == "X" then d = "x" end
if direction == "y" or direction == "Y" then d = "y" end
@@ -281,7 +281,7 @@ local function position_shift2(p)
return
end
- here = minetest.localplayer:get_pos()
+ local here = minetest.localplayer:get_pos()
here.x = here.x+shift.x
here.y = here.y+shift.y
@@ -425,6 +425,26 @@ local function teleport_bounce(params)
end
+local function wp_export(param)
+ local wpl = load_waypoints()
+ if not wpl then return end
+ local list = ""
+ for k,p in pairsByKeys(wpl,lc_cmp) do
+ if param == "" or string.find(k,param,1,true) then
+ local line = "("..p.x..","..p.y..","..p.y..") name = "..k.."\n"
+ list = list .. line
+ end
+ end
+ minetest.display_chat_message(list)
+ minetest.show_formspec("cs_waypoints:export",
+ "size[15,12]" ..
+ "label[3.5,0;Waypoint List]"..
+ "textarea[0.3,1;15,11;note;;".. list .."]"..
+ "button_exit[4.5,11.2;1.4,1;e;Close]")
+
+ return
+end
+
--
--
@@ -674,6 +694,12 @@ minetest.register_chatcommand('bounce', {
}
)
+minetest.register_chatcommand('wp_export', {
+ params = '[<name part>]',
+ description = 'Export all waypoints as list',
+ func = wp_export,
+ }
+ )