Object Oriented Programming - ADA-Funni/Lua-OOP-Template GitHub Wiki
How to add OOP (Object Oriented Programming) to your "class"
Big thanks to @voxov_tired for this part.
YourObject = {}
YourObject.__index = YourObject
--- @param tag string
--[[
This function creates your object.
]]--
function YourObject.new(tag)
local self = setmetatable({}, YourObject)
self.tag = tag
-- Code goes here.
return self
end
Name YourObject the name of your script, only uppercase.
Leave YourObject blank, it gets filled in when you call new().
(e.g. if your script is called "object_oriented_programming",
YourObject should be named ObjectOrientedProgramming.)
How to make an OOP (Object Oriented Programming) function
You're supposed to format it like this:
--- @param printEnabled boolean
--[[
This function does something.
]]--
function YourObject:functionName(printEnabled)
if printEnabled == true then
print(self.tag)
end
end