1
0
mirror of https://github.com/HybridDog/pdisc.git synced 2024-11-13 22:00:39 +01:00
a mod supposed to be used for programming robots in minetest https://github.com/HybridDog/pdisc
Go to file
HybridDog 258f127ad7 remove superfluous depends.txt
D  depends.txt
2016-11-13 14:54:53 +01:00
textures 💥 2016-11-13 14:42:57 +01:00
.gitignore 💥 2016-11-13 14:42:57 +01:00
faden.lua update readme 2016-11-13 14:53:52 +01:00
init.lua 💥 2016-11-13 14:42:57 +01:00
LICENSE.txt 💥 2016-11-13 14:42:57 +01:00
parser.lua 💥 2016-11-13 14:42:57 +01:00
README.md update readme 2016-11-13 14:53:52 +01:00
standardbefehlssatz.lua 💥 2016-11-13 14:42:57 +01:00

commands are read line by line

[<labelname>:] [<commandname> [<arg1>[,<arg2[…]]]] [; <comment>]

arguments can be either variables, labels or immediates, labels are replaced with immediates which have the line numbers of the labels as their values true/false: boolean (immediate) 12.6: number (immediate) $hello nwae: string (immediate) nodolla: either a label is called so (immediate) or it's a variable

How to use this mod:

local mylog = print

local parsed_code = pdisc.parse(code_text)

local function mystart(parsed_code)
	local thread = pdisc.create_thread(function(thread)
		thread.flush = function(self)
			mylog(self.log)
			self.log = ""
			return true
		end
	end, parsed_code)
	mykeepalive()
end

mystart(parsed_code)

local function mykeepalive()
	thread:suscitate()
	if not thread.stopped then
		return
	end
	thread:try_rebirth()
	minetest.after(0.1, function()
		mykeepalive()
	end)
end