BsScriptCRigidbody.generated.cpp 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387
  1. #include "BsScriptCRigidbody.generated.h"
  2. #include "BsMonoMethod.h"
  3. #include "BsMonoClass.h"
  4. #include "BsMonoUtil.h"
  5. #include "../../../bsf/Source/Foundation/bsfCore/Components/BsCRigidbody.h"
  6. #include "Wrappers/BsScriptVector.h"
  7. #include "Wrappers/BsScriptQuaternion.h"
  8. #include "BsScriptCollisionData.generated.h"
  9. namespace bs
  10. {
  11. ScriptCRigidbody::onCollisionBeginThunkDef ScriptCRigidbody::onCollisionBeginThunk;
  12. ScriptCRigidbody::onCollisionStayThunkDef ScriptCRigidbody::onCollisionStayThunk;
  13. ScriptCRigidbody::onCollisionEndThunkDef ScriptCRigidbody::onCollisionEndThunk;
  14. ScriptCRigidbody::ScriptCRigidbody(MonoObject* managedInstance, const GameObjectHandle<CRigidbody>& value)
  15. :TScriptComponent(managedInstance, value)
  16. {
  17. value->onCollisionBegin.connect(std::bind(&ScriptCRigidbody::onCollisionBegin, this, std::placeholders::_1));
  18. value->onCollisionStay.connect(std::bind(&ScriptCRigidbody::onCollisionStay, this, std::placeholders::_1));
  19. value->onCollisionEnd.connect(std::bind(&ScriptCRigidbody::onCollisionEnd, this, std::placeholders::_1));
  20. }
  21. void ScriptCRigidbody::initRuntimeData()
  22. {
  23. metaData.scriptClass->addInternalCall("Internal_move", (void*)&ScriptCRigidbody::Internal_move);
  24. metaData.scriptClass->addInternalCall("Internal_rotate", (void*)&ScriptCRigidbody::Internal_rotate);
  25. metaData.scriptClass->addInternalCall("Internal_setMass", (void*)&ScriptCRigidbody::Internal_setMass);
  26. metaData.scriptClass->addInternalCall("Internal_getMass", (void*)&ScriptCRigidbody::Internal_getMass);
  27. metaData.scriptClass->addInternalCall("Internal_setIsKinematic", (void*)&ScriptCRigidbody::Internal_setIsKinematic);
  28. metaData.scriptClass->addInternalCall("Internal_getIsKinematic", (void*)&ScriptCRigidbody::Internal_getIsKinematic);
  29. metaData.scriptClass->addInternalCall("Internal_isSleeping", (void*)&ScriptCRigidbody::Internal_isSleeping);
  30. metaData.scriptClass->addInternalCall("Internal_sleep", (void*)&ScriptCRigidbody::Internal_sleep);
  31. metaData.scriptClass->addInternalCall("Internal_wakeUp", (void*)&ScriptCRigidbody::Internal_wakeUp);
  32. metaData.scriptClass->addInternalCall("Internal_setSleepThreshold", (void*)&ScriptCRigidbody::Internal_setSleepThreshold);
  33. metaData.scriptClass->addInternalCall("Internal_getSleepThreshold", (void*)&ScriptCRigidbody::Internal_getSleepThreshold);
  34. metaData.scriptClass->addInternalCall("Internal_setUseGravity", (void*)&ScriptCRigidbody::Internal_setUseGravity);
  35. metaData.scriptClass->addInternalCall("Internal_getUseGravity", (void*)&ScriptCRigidbody::Internal_getUseGravity);
  36. metaData.scriptClass->addInternalCall("Internal_setVelocity", (void*)&ScriptCRigidbody::Internal_setVelocity);
  37. metaData.scriptClass->addInternalCall("Internal_getVelocity", (void*)&ScriptCRigidbody::Internal_getVelocity);
  38. metaData.scriptClass->addInternalCall("Internal_setAngularVelocity", (void*)&ScriptCRigidbody::Internal_setAngularVelocity);
  39. metaData.scriptClass->addInternalCall("Internal_getAngularVelocity", (void*)&ScriptCRigidbody::Internal_getAngularVelocity);
  40. metaData.scriptClass->addInternalCall("Internal_setDrag", (void*)&ScriptCRigidbody::Internal_setDrag);
  41. metaData.scriptClass->addInternalCall("Internal_getDrag", (void*)&ScriptCRigidbody::Internal_getDrag);
  42. metaData.scriptClass->addInternalCall("Internal_setAngularDrag", (void*)&ScriptCRigidbody::Internal_setAngularDrag);
  43. metaData.scriptClass->addInternalCall("Internal_getAngularDrag", (void*)&ScriptCRigidbody::Internal_getAngularDrag);
  44. metaData.scriptClass->addInternalCall("Internal_setInertiaTensor", (void*)&ScriptCRigidbody::Internal_setInertiaTensor);
  45. metaData.scriptClass->addInternalCall("Internal_getInertiaTensor", (void*)&ScriptCRigidbody::Internal_getInertiaTensor);
  46. metaData.scriptClass->addInternalCall("Internal_setMaxAngularVelocity", (void*)&ScriptCRigidbody::Internal_setMaxAngularVelocity);
  47. metaData.scriptClass->addInternalCall("Internal_getMaxAngularVelocity", (void*)&ScriptCRigidbody::Internal_getMaxAngularVelocity);
  48. metaData.scriptClass->addInternalCall("Internal_setCenterOfMassPosition", (void*)&ScriptCRigidbody::Internal_setCenterOfMassPosition);
  49. metaData.scriptClass->addInternalCall("Internal_getCenterOfMassPosition", (void*)&ScriptCRigidbody::Internal_getCenterOfMassPosition);
  50. metaData.scriptClass->addInternalCall("Internal_setCenterOfMassRotation", (void*)&ScriptCRigidbody::Internal_setCenterOfMassRotation);
  51. metaData.scriptClass->addInternalCall("Internal_getCenterOfMassRotation", (void*)&ScriptCRigidbody::Internal_getCenterOfMassRotation);
  52. metaData.scriptClass->addInternalCall("Internal_setPositionSolverCount", (void*)&ScriptCRigidbody::Internal_setPositionSolverCount);
  53. metaData.scriptClass->addInternalCall("Internal_getPositionSolverCount", (void*)&ScriptCRigidbody::Internal_getPositionSolverCount);
  54. metaData.scriptClass->addInternalCall("Internal_setVelocitySolverCount", (void*)&ScriptCRigidbody::Internal_setVelocitySolverCount);
  55. metaData.scriptClass->addInternalCall("Internal_getVelocitySolverCount", (void*)&ScriptCRigidbody::Internal_getVelocitySolverCount);
  56. metaData.scriptClass->addInternalCall("Internal_setCollisionReportMode", (void*)&ScriptCRigidbody::Internal_setCollisionReportMode);
  57. metaData.scriptClass->addInternalCall("Internal_getCollisionReportMode", (void*)&ScriptCRigidbody::Internal_getCollisionReportMode);
  58. metaData.scriptClass->addInternalCall("Internal_setFlags", (void*)&ScriptCRigidbody::Internal_setFlags);
  59. metaData.scriptClass->addInternalCall("Internal_getFlags", (void*)&ScriptCRigidbody::Internal_getFlags);
  60. metaData.scriptClass->addInternalCall("Internal_addForce", (void*)&ScriptCRigidbody::Internal_addForce);
  61. metaData.scriptClass->addInternalCall("Internal_addTorque", (void*)&ScriptCRigidbody::Internal_addTorque);
  62. metaData.scriptClass->addInternalCall("Internal_addForceAtPoint", (void*)&ScriptCRigidbody::Internal_addForceAtPoint);
  63. metaData.scriptClass->addInternalCall("Internal_getVelocityAtPoint", (void*)&ScriptCRigidbody::Internal_getVelocityAtPoint);
  64. onCollisionBeginThunk = (onCollisionBeginThunkDef)metaData.scriptClass->getMethodExact("Internal_onCollisionBegin", "CollisionData&")->getThunk();
  65. onCollisionStayThunk = (onCollisionStayThunkDef)metaData.scriptClass->getMethodExact("Internal_onCollisionStay", "CollisionData&")->getThunk();
  66. onCollisionEndThunk = (onCollisionEndThunkDef)metaData.scriptClass->getMethodExact("Internal_onCollisionEnd", "CollisionData&")->getThunk();
  67. }
  68. void ScriptCRigidbody::onCollisionBegin(const CollisionData& p0)
  69. {
  70. __CollisionDataInterop tmpp0;
  71. tmpp0 = ScriptCollisionData::toInterop(p0);
  72. MonoUtil::invokeThunk(onCollisionBeginThunk, getManagedInstance(), &tmpp0);
  73. }
  74. void ScriptCRigidbody::onCollisionStay(const CollisionData& p0)
  75. {
  76. __CollisionDataInterop tmpp0;
  77. tmpp0 = ScriptCollisionData::toInterop(p0);
  78. MonoUtil::invokeThunk(onCollisionStayThunk, getManagedInstance(), &tmpp0);
  79. }
  80. void ScriptCRigidbody::onCollisionEnd(const CollisionData& p0)
  81. {
  82. __CollisionDataInterop tmpp0;
  83. tmpp0 = ScriptCollisionData::toInterop(p0);
  84. MonoUtil::invokeThunk(onCollisionEndThunk, getManagedInstance(), &tmpp0);
  85. }
  86. void ScriptCRigidbody::Internal_move(ScriptCRigidbody* thisPtr, Vector3* position)
  87. {
  88. thisPtr->getHandle()->move(*position);
  89. }
  90. void ScriptCRigidbody::Internal_rotate(ScriptCRigidbody* thisPtr, Quaternion* rotation)
  91. {
  92. thisPtr->getHandle()->rotate(*rotation);
  93. }
  94. void ScriptCRigidbody::Internal_setMass(ScriptCRigidbody* thisPtr, float mass)
  95. {
  96. thisPtr->getHandle()->setMass(mass);
  97. }
  98. float ScriptCRigidbody::Internal_getMass(ScriptCRigidbody* thisPtr)
  99. {
  100. float tmp__output;
  101. tmp__output = thisPtr->getHandle()->getMass();
  102. float __output;
  103. __output = tmp__output;
  104. return __output;
  105. }
  106. void ScriptCRigidbody::Internal_setIsKinematic(ScriptCRigidbody* thisPtr, bool kinematic)
  107. {
  108. thisPtr->getHandle()->setIsKinematic(kinematic);
  109. }
  110. bool ScriptCRigidbody::Internal_getIsKinematic(ScriptCRigidbody* thisPtr)
  111. {
  112. bool tmp__output;
  113. tmp__output = thisPtr->getHandle()->getIsKinematic();
  114. bool __output;
  115. __output = tmp__output;
  116. return __output;
  117. }
  118. bool ScriptCRigidbody::Internal_isSleeping(ScriptCRigidbody* thisPtr)
  119. {
  120. bool tmp__output;
  121. tmp__output = thisPtr->getHandle()->isSleeping();
  122. bool __output;
  123. __output = tmp__output;
  124. return __output;
  125. }
  126. void ScriptCRigidbody::Internal_sleep(ScriptCRigidbody* thisPtr)
  127. {
  128. thisPtr->getHandle()->sleep();
  129. }
  130. void ScriptCRigidbody::Internal_wakeUp(ScriptCRigidbody* thisPtr)
  131. {
  132. thisPtr->getHandle()->wakeUp();
  133. }
  134. void ScriptCRigidbody::Internal_setSleepThreshold(ScriptCRigidbody* thisPtr, float threshold)
  135. {
  136. thisPtr->getHandle()->setSleepThreshold(threshold);
  137. }
  138. float ScriptCRigidbody::Internal_getSleepThreshold(ScriptCRigidbody* thisPtr)
  139. {
  140. float tmp__output;
  141. tmp__output = thisPtr->getHandle()->getSleepThreshold();
  142. float __output;
  143. __output = tmp__output;
  144. return __output;
  145. }
  146. void ScriptCRigidbody::Internal_setUseGravity(ScriptCRigidbody* thisPtr, bool gravity)
  147. {
  148. thisPtr->getHandle()->setUseGravity(gravity);
  149. }
  150. bool ScriptCRigidbody::Internal_getUseGravity(ScriptCRigidbody* thisPtr)
  151. {
  152. bool tmp__output;
  153. tmp__output = thisPtr->getHandle()->getUseGravity();
  154. bool __output;
  155. __output = tmp__output;
  156. return __output;
  157. }
  158. void ScriptCRigidbody::Internal_setVelocity(ScriptCRigidbody* thisPtr, Vector3* velocity)
  159. {
  160. thisPtr->getHandle()->setVelocity(*velocity);
  161. }
  162. void ScriptCRigidbody::Internal_getVelocity(ScriptCRigidbody* thisPtr, Vector3* __output)
  163. {
  164. Vector3 tmp__output;
  165. tmp__output = thisPtr->getHandle()->getVelocity();
  166. *__output = tmp__output;
  167. }
  168. void ScriptCRigidbody::Internal_setAngularVelocity(ScriptCRigidbody* thisPtr, Vector3* velocity)
  169. {
  170. thisPtr->getHandle()->setAngularVelocity(*velocity);
  171. }
  172. void ScriptCRigidbody::Internal_getAngularVelocity(ScriptCRigidbody* thisPtr, Vector3* __output)
  173. {
  174. Vector3 tmp__output;
  175. tmp__output = thisPtr->getHandle()->getAngularVelocity();
  176. *__output = tmp__output;
  177. }
  178. void ScriptCRigidbody::Internal_setDrag(ScriptCRigidbody* thisPtr, float drag)
  179. {
  180. thisPtr->getHandle()->setDrag(drag);
  181. }
  182. float ScriptCRigidbody::Internal_getDrag(ScriptCRigidbody* thisPtr)
  183. {
  184. float tmp__output;
  185. tmp__output = thisPtr->getHandle()->getDrag();
  186. float __output;
  187. __output = tmp__output;
  188. return __output;
  189. }
  190. void ScriptCRigidbody::Internal_setAngularDrag(ScriptCRigidbody* thisPtr, float drag)
  191. {
  192. thisPtr->getHandle()->setAngularDrag(drag);
  193. }
  194. float ScriptCRigidbody::Internal_getAngularDrag(ScriptCRigidbody* thisPtr)
  195. {
  196. float tmp__output;
  197. tmp__output = thisPtr->getHandle()->getAngularDrag();
  198. float __output;
  199. __output = tmp__output;
  200. return __output;
  201. }
  202. void ScriptCRigidbody::Internal_setInertiaTensor(ScriptCRigidbody* thisPtr, Vector3* tensor)
  203. {
  204. thisPtr->getHandle()->setInertiaTensor(*tensor);
  205. }
  206. void ScriptCRigidbody::Internal_getInertiaTensor(ScriptCRigidbody* thisPtr, Vector3* __output)
  207. {
  208. Vector3 tmp__output;
  209. tmp__output = thisPtr->getHandle()->getInertiaTensor();
  210. *__output = tmp__output;
  211. }
  212. void ScriptCRigidbody::Internal_setMaxAngularVelocity(ScriptCRigidbody* thisPtr, float maxVelocity)
  213. {
  214. thisPtr->getHandle()->setMaxAngularVelocity(maxVelocity);
  215. }
  216. float ScriptCRigidbody::Internal_getMaxAngularVelocity(ScriptCRigidbody* thisPtr)
  217. {
  218. float tmp__output;
  219. tmp__output = thisPtr->getHandle()->getMaxAngularVelocity();
  220. float __output;
  221. __output = tmp__output;
  222. return __output;
  223. }
  224. void ScriptCRigidbody::Internal_setCenterOfMassPosition(ScriptCRigidbody* thisPtr, Vector3* position)
  225. {
  226. thisPtr->getHandle()->setCenterOfMassPosition(*position);
  227. }
  228. void ScriptCRigidbody::Internal_getCenterOfMassPosition(ScriptCRigidbody* thisPtr, Vector3* __output)
  229. {
  230. Vector3 tmp__output;
  231. tmp__output = thisPtr->getHandle()->getCenterOfMassPosition();
  232. *__output = tmp__output;
  233. }
  234. void ScriptCRigidbody::Internal_setCenterOfMassRotation(ScriptCRigidbody* thisPtr, Quaternion* rotation)
  235. {
  236. thisPtr->getHandle()->setCenterOfMassRotation(*rotation);
  237. }
  238. void ScriptCRigidbody::Internal_getCenterOfMassRotation(ScriptCRigidbody* thisPtr, Quaternion* __output)
  239. {
  240. Quaternion tmp__output;
  241. tmp__output = thisPtr->getHandle()->getCenterOfMassRotation();
  242. *__output = tmp__output;
  243. }
  244. void ScriptCRigidbody::Internal_setPositionSolverCount(ScriptCRigidbody* thisPtr, uint32_t count)
  245. {
  246. thisPtr->getHandle()->setPositionSolverCount(count);
  247. }
  248. uint32_t ScriptCRigidbody::Internal_getPositionSolverCount(ScriptCRigidbody* thisPtr)
  249. {
  250. uint32_t tmp__output;
  251. tmp__output = thisPtr->getHandle()->getPositionSolverCount();
  252. uint32_t __output;
  253. __output = tmp__output;
  254. return __output;
  255. }
  256. void ScriptCRigidbody::Internal_setVelocitySolverCount(ScriptCRigidbody* thisPtr, uint32_t count)
  257. {
  258. thisPtr->getHandle()->setVelocitySolverCount(count);
  259. }
  260. uint32_t ScriptCRigidbody::Internal_getVelocitySolverCount(ScriptCRigidbody* thisPtr)
  261. {
  262. uint32_t tmp__output;
  263. tmp__output = thisPtr->getHandle()->getVelocitySolverCount();
  264. uint32_t __output;
  265. __output = tmp__output;
  266. return __output;
  267. }
  268. void ScriptCRigidbody::Internal_setCollisionReportMode(ScriptCRigidbody* thisPtr, CollisionReportMode mode)
  269. {
  270. thisPtr->getHandle()->setCollisionReportMode(mode);
  271. }
  272. CollisionReportMode ScriptCRigidbody::Internal_getCollisionReportMode(ScriptCRigidbody* thisPtr)
  273. {
  274. CollisionReportMode tmp__output;
  275. tmp__output = thisPtr->getHandle()->getCollisionReportMode();
  276. CollisionReportMode __output;
  277. __output = tmp__output;
  278. return __output;
  279. }
  280. void ScriptCRigidbody::Internal_setFlags(ScriptCRigidbody* thisPtr, RigidbodyFlag flags)
  281. {
  282. thisPtr->getHandle()->setFlags(flags);
  283. }
  284. RigidbodyFlag ScriptCRigidbody::Internal_getFlags(ScriptCRigidbody* thisPtr)
  285. {
  286. RigidbodyFlag tmp__output;
  287. tmp__output = thisPtr->getHandle()->getFlags();
  288. RigidbodyFlag __output;
  289. __output = tmp__output;
  290. return __output;
  291. }
  292. void ScriptCRigidbody::Internal_addForce(ScriptCRigidbody* thisPtr, Vector3* force, ForceMode mode)
  293. {
  294. thisPtr->getHandle()->addForce(*force, mode);
  295. }
  296. void ScriptCRigidbody::Internal_addTorque(ScriptCRigidbody* thisPtr, Vector3* torque, ForceMode mode)
  297. {
  298. thisPtr->getHandle()->addTorque(*torque, mode);
  299. }
  300. void ScriptCRigidbody::Internal_addForceAtPoint(ScriptCRigidbody* thisPtr, Vector3* force, Vector3* position, PointForceMode mode)
  301. {
  302. thisPtr->getHandle()->addForceAtPoint(*force, *position, mode);
  303. }
  304. void ScriptCRigidbody::Internal_getVelocityAtPoint(ScriptCRigidbody* thisPtr, Vector3* point, Vector3* __output)
  305. {
  306. Vector3 tmp__output;
  307. tmp__output = thisPtr->getHandle()->getVelocityAtPoint(*point);
  308. *__output = tmp__output;
  309. }
  310. }