aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--advtrains.zipbin4985744 -> 4986367 bytes
-rw-r--r--advtrains/advtrains_luaautomation/atc_rail.lua4
-rw-r--r--advtrains/advtrains_luaautomation/init.lua7
3 files changed, 11 insertions, 0 deletions
diff --git a/advtrains.zip b/advtrains.zip
index bb215bd..0a9a0ec 100644
--- a/advtrains.zip
+++ b/advtrains.zip
Binary files differ
diff --git a/advtrains/advtrains_luaautomation/atc_rail.lua b/advtrains/advtrains_luaautomation/atc_rail.lua
index 141f119..ab84986 100644
--- a/advtrains/advtrains_luaautomation/atc_rail.lua
+++ b/advtrains/advtrains_luaautomation/atc_rail.lua
@@ -48,6 +48,7 @@ function r.fire_event(pos, evtdata)
local customfct={
atc_send = function(cmd)
if not train_id then return false end
+ assertt(cmd, "string")
advtrains.atc.train_reset_command(train_id)
train.atc_command=cmd
train.atc_arrow=atc_arrow
@@ -55,6 +56,7 @@ function r.fire_event(pos, evtdata)
end,
atc_reset = function(cmd)
if not train_id then return false end
+ assertt(cmd, "string")
advtrains.atc.train_reset_command(train_id)
return true
end,
@@ -63,11 +65,13 @@ function r.fire_event(pos, evtdata)
atc_speed = tvel,
atc_set_text_outside = function(text)
if not train_id then return false end
+ if text then assertt(text, "string") end
advtrains.trains[train_id].text_outside=text
return true
end,
atc_set_text_inside = function(text)
if not train_id then return false end
+ if text then assertt(text, "string") end
advtrains.trains[train_id].text_inside=text
return true
end,
diff --git a/advtrains/advtrains_luaautomation/init.lua b/advtrains/advtrains_luaautomation/init.lua
index 87f5921..71808e7 100644
--- a/advtrains/advtrains_luaautomation/init.lua
+++ b/advtrains/advtrains_luaautomation/init.lua
@@ -16,6 +16,13 @@ atlatc = { envs = {}}
minetest.register_privilege("atlatc", { description = "Player can place and modify LUA ATC components. Grant with care! Allows to execute bad LUA code.", give_to_singleplayer = false, default= false })
+--assertt helper. error if a variable is not of a type
+function assertt(var, typ)
+ if type(var)~=typ then
+ error("Assertion failed, variable has to be of type "..typ)
+ end
+end
+
local mp=minetest.get_modpath("advtrains_luaautomation")
if not mp then
error("Mod name error: Mod folder is not named 'advtrains_luaautomation'!")