SceneEntityInstance.lua 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. require "Polycode/Entity"
  2. class "SceneEntityInstance" (Entity)
  3. function SceneEntityInstance:__getvar(name)
  4. if name == "cloneUsingReload" then
  5. return Polycode.SceneEntityInstance_get_cloneUsingReload(self.__ptr)
  6. elseif name == "fileName" then
  7. return Polycode.SceneEntityInstance_get_fileName(self.__ptr)
  8. end
  9. if Entity["__getvar"] ~= nil then
  10. return Entity.__getvar(self, name)
  11. end
  12. end
  13. function SceneEntityInstance:__setvar(name,value)
  14. if name == "cloneUsingReload" then
  15. Polycode.SceneEntityInstance_set_cloneUsingReload(self.__ptr, value)
  16. return true
  17. elseif name == "fileName" then
  18. Polycode.SceneEntityInstance_set_fileName(self.__ptr, value)
  19. return true
  20. end
  21. if Entity["__setvar"] ~= nil then
  22. return Entity.__setvar(self, name, value)
  23. else
  24. return false
  25. end
  26. end
  27. function SceneEntityInstance:SceneEntityInstance(...)
  28. local arg = {...}
  29. if type(arg[1]) == "table" and count(arg) == 1 then
  30. if ""..arg[1].__classname == "Entity" then
  31. self.__ptr = arg[1].__ptr
  32. return
  33. end
  34. end
  35. for k,v in pairs(arg) do
  36. if type(v) == "table" then
  37. if v.__ptr ~= nil then
  38. arg[k] = v.__ptr
  39. end
  40. end
  41. end
  42. if self.__ptr == nil and arg[1] ~= "__skip_ptr__" then
  43. self.__ptr = Polycode.SceneEntityInstance(unpack(arg))
  44. end
  45. end
  46. function SceneEntityInstance:reloadEntityInstance()
  47. local retVal = Polycode.SceneEntityInstance_reloadEntityInstance(self.__ptr)
  48. end
  49. function SceneEntityInstance:clearInstance()
  50. local retVal = Polycode.SceneEntityInstance_clearInstance(self.__ptr)
  51. end
  52. function SceneEntityInstance:loadFromFile(fileName)
  53. local retVal = Polycode.SceneEntityInstance_loadFromFile(self.__ptr, fileName)
  54. return retVal
  55. end
  56. function SceneEntityInstance:getNumLinkedResourePools()
  57. local retVal = Polycode.SceneEntityInstance_getNumLinkedResourePools(self.__ptr)
  58. return retVal
  59. end
  60. function SceneEntityInstance:getResourceEntry()
  61. local retVal = Polycode.SceneEntityInstance_getResourceEntry(self.__ptr)
  62. if retVal == nil then return nil end
  63. local __c = _G["shared_ptr<SceneEntityInstanceResourceEntry>"]("__skip_ptr__")
  64. __c.__ptr = retVal
  65. return __c
  66. end
  67. function SceneEntityInstance:hasLayerID(layerID)
  68. local retVal = Polycode.SceneEntityInstance_hasLayerID(self.__ptr, layerID.__ptr)
  69. return retVal
  70. end
  71. function SceneEntityInstance:getNumLayers()
  72. local retVal = Polycode.SceneEntityInstance_getNumLayers(self.__ptr)
  73. return retVal
  74. end
  75. function SceneEntityInstance:getFileName()
  76. local retVal = Polycode.SceneEntityInstance_getFileName(self.__ptr)
  77. return retVal
  78. end
  79. function SceneEntityInstance:__delete()
  80. if self then Polycode.delete_SceneEntityInstance(self.__ptr) end
  81. end