BsScriptCJoint.generated.cpp 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. #include "BsScriptCJoint.generated.h"
  2. #include "BsMonoMethod.h"
  3. #include "BsMonoClass.h"
  4. #include "BsMonoUtil.h"
  5. #include "../../../bsf/Source/Foundation/bsfCore/Components/BsCJoint.h"
  6. #include "BsScriptGameObjectManager.h"
  7. #include "BsScriptCRigidbody.generated.h"
  8. #include "Wrappers/BsScriptVector.h"
  9. #include "Wrappers/BsScriptQuaternion.h"
  10. namespace bs
  11. {
  12. ScriptCJointBase::ScriptCJointBase(MonoObject* managedInstance)
  13. :ScriptComponentBase(managedInstance)
  14. { }
  15. ScriptCJoint::onJointBreakThunkDef ScriptCJoint::onJointBreakThunk;
  16. ScriptCJoint::ScriptCJoint(MonoObject* managedInstance, const GameObjectHandle<CJoint>& value)
  17. :TScriptComponent(managedInstance, value)
  18. {
  19. value->onJointBreak.connect(std::bind(&ScriptCJoint::onJointBreak, this));
  20. }
  21. void ScriptCJoint::initRuntimeData()
  22. {
  23. metaData.scriptClass->addInternalCall("Internal_getBody", (void*)&ScriptCJoint::Internal_getBody);
  24. metaData.scriptClass->addInternalCall("Internal_setBody", (void*)&ScriptCJoint::Internal_setBody);
  25. metaData.scriptClass->addInternalCall("Internal_getPosition", (void*)&ScriptCJoint::Internal_getPosition);
  26. metaData.scriptClass->addInternalCall("Internal_getRotation", (void*)&ScriptCJoint::Internal_getRotation);
  27. metaData.scriptClass->addInternalCall("Internal_setTransform", (void*)&ScriptCJoint::Internal_setTransform);
  28. metaData.scriptClass->addInternalCall("Internal_getBreakForce", (void*)&ScriptCJoint::Internal_getBreakForce);
  29. metaData.scriptClass->addInternalCall("Internal_setBreakForce", (void*)&ScriptCJoint::Internal_setBreakForce);
  30. metaData.scriptClass->addInternalCall("Internal_getBreakTorque", (void*)&ScriptCJoint::Internal_getBreakTorque);
  31. metaData.scriptClass->addInternalCall("Internal_setBreakTorque", (void*)&ScriptCJoint::Internal_setBreakTorque);
  32. metaData.scriptClass->addInternalCall("Internal_getEnableCollision", (void*)&ScriptCJoint::Internal_getEnableCollision);
  33. metaData.scriptClass->addInternalCall("Internal_setEnableCollision", (void*)&ScriptCJoint::Internal_setEnableCollision);
  34. onJointBreakThunk = (onJointBreakThunkDef)metaData.scriptClass->getMethodExact("Internal_onJointBreak", "")->getThunk();
  35. }
  36. void ScriptCJoint::onJointBreak()
  37. {
  38. MonoUtil::invokeThunk(onJointBreakThunk, getManagedInstance());
  39. }
  40. MonoObject* ScriptCJoint::Internal_getBody(ScriptCJointBase* thisPtr, JointBody body)
  41. {
  42. GameObjectHandle<CRigidbody> tmp__output;
  43. tmp__output = static_object_cast<CJoint>(thisPtr->getComponent())->getBody(body);
  44. MonoObject* __output;
  45. ScriptComponentBase* script__output;
  46. script__output = ScriptGameObjectManager::instance().getBuiltinScriptComponent(tmp__output);
  47. if(script__output != nullptr)
  48. __output = script__output->getManagedInstance();
  49. else
  50. __output = nullptr;
  51. return __output;
  52. }
  53. void ScriptCJoint::Internal_setBody(ScriptCJointBase* thisPtr, JointBody body, MonoObject* value)
  54. {
  55. GameObjectHandle<CRigidbody> tmpvalue;
  56. ScriptCRigidbody* scriptvalue;
  57. scriptvalue = ScriptCRigidbody::toNative(value);
  58. if(scriptvalue != nullptr)
  59. tmpvalue = scriptvalue->getHandle();
  60. static_object_cast<CJoint>(thisPtr->getComponent())->setBody(body, tmpvalue);
  61. }
  62. void ScriptCJoint::Internal_getPosition(ScriptCJointBase* thisPtr, JointBody body, Vector3* __output)
  63. {
  64. Vector3 tmp__output;
  65. tmp__output = static_object_cast<CJoint>(thisPtr->getComponent())->getPosition(body);
  66. *__output = tmp__output;
  67. }
  68. void ScriptCJoint::Internal_getRotation(ScriptCJointBase* thisPtr, JointBody body, Quaternion* __output)
  69. {
  70. Quaternion tmp__output;
  71. tmp__output = static_object_cast<CJoint>(thisPtr->getComponent())->getRotation(body);
  72. *__output = tmp__output;
  73. }
  74. void ScriptCJoint::Internal_setTransform(ScriptCJointBase* thisPtr, JointBody body, Vector3* position, Quaternion* rotation)
  75. {
  76. static_object_cast<CJoint>(thisPtr->getComponent())->setTransform(body, *position, *rotation);
  77. }
  78. float ScriptCJoint::Internal_getBreakForce(ScriptCJointBase* thisPtr)
  79. {
  80. float tmp__output;
  81. tmp__output = static_object_cast<CJoint>(thisPtr->getComponent())->getBreakForce();
  82. float __output;
  83. __output = tmp__output;
  84. return __output;
  85. }
  86. void ScriptCJoint::Internal_setBreakForce(ScriptCJointBase* thisPtr, float force)
  87. {
  88. static_object_cast<CJoint>(thisPtr->getComponent())->setBreakForce(force);
  89. }
  90. float ScriptCJoint::Internal_getBreakTorque(ScriptCJointBase* thisPtr)
  91. {
  92. float tmp__output;
  93. tmp__output = static_object_cast<CJoint>(thisPtr->getComponent())->getBreakTorque();
  94. float __output;
  95. __output = tmp__output;
  96. return __output;
  97. }
  98. void ScriptCJoint::Internal_setBreakTorque(ScriptCJointBase* thisPtr, float torque)
  99. {
  100. static_object_cast<CJoint>(thisPtr->getComponent())->setBreakTorque(torque);
  101. }
  102. bool ScriptCJoint::Internal_getEnableCollision(ScriptCJointBase* thisPtr)
  103. {
  104. bool tmp__output;
  105. tmp__output = static_object_cast<CJoint>(thisPtr->getComponent())->getEnableCollision();
  106. bool __output;
  107. __output = tmp__output;
  108. return __output;
  109. }
  110. void ScriptCJoint::Internal_setEnableCollision(ScriptCJointBase* thisPtr, bool value)
  111. {
  112. static_object_cast<CJoint>(thisPtr->getComponent())->setEnableCollision(value);
  113. }
  114. }