• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

string:load()

Mock

Mock the bear (MTB)
Joined
Jul 29, 2008
Messages
619
Reaction score
106
Location
Brazil
Is a useless function, it do a piece of lua inside of a string.
Lua:
function string:load()
	for lua in self:gmatch('<%%lua(.-)%%>') do
		local printed = ""
		local f,err = loadstring(lua)
		if not f and err then
			printed = err
		elseif f then
			local r,err = pcall(f)
			err = err or ''
			printed = err
		end
		self = self:gsub('<%%lua.-%%>',printed,1)
	end
	return self
end
If you run it:
Lua:
local str = [[<%lua
math.randomseed(os.time())
%>
My name is mock and i am a bear.
Time now is <%lua return os.date('%H:%M:%S') %>
Random number: <%lua return math.random(0,1000000) %>
Error: <%lua error('omg') %>
Syntax error: <%lua dogas %>
Bye]]
function string:load()
	for lua in self:gmatch('<%%lua(.-)%%>') do
		local printed = ""
		local f,err = loadstring(lua)
		if not f and err then
			printed = err
		elseif f then
			local r,err = pcall(f)
			err = err or ''
			printed = err
		end
		self = self:gsub('<%%lua.-%%>',printed,1)
	end
	return self
end
print(str:load())
It will print:
My name is mock and i am a bear.
Time now is 00:26:14
Random number: 465224
Error: [string " error('omg') "]:1: omg
Syntax error: [string " dogas "]:1: '=' expected near '<eof>'
Bye
 
Back
Top