Advertisement
Guest User

Class Inheriting Code

a guest
Jul 7th, 2022
565
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.37 KB | None | 0 0
  1. local Class = {} Class.__index = function(self,Index) if rawget(Class,Index) then return Class[Index] elseif rawget(self,"_Inherited") and self._Inherited[Index] then return self._Inherited[Index] else return nil end end Class.__newindex = function(self,Index,Value) if self._Inherited and self._Inherited[Index] then self._Inherited[Index] = Value else rawset(self,Index,Value) end end
  2. Class.ClassName = "Test"
  3. Class.Superclass = nil if(Class.Superclass)then setmetatable(Class,require(Class.Superclass))end
  4.  
  5.  
  6. function Class.new()
  7. local self = setmetatable({}, Class) if Class.Superclass and Class.Superclass.new then self._Inherited =
  8. Class.Superclass.new() end
  9.  
  10. return self
  11. end function Class.isA(ClassName) if(Class.ClassName == ClassName)then return true elseif(Class.Superclass)then return Class.Superclass.isA(ClassName) else return false end end
  12.  
  13.  
  14. function Class:IsA(ClassName)
  15. return self.isA(ClassName)
  16. end
  17. function Class:Destroy()
  18.  
  19. end
  20.  
  21.  
  22. return Class
  23.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement