#pragma once #include "BsScriptEnginePrerequisites.h" #include "BsScriptObject.h" #include "../../../bsf/Source/Foundation/bsfCore/Physics/BsCharacterController.h" #include "Math/BsVector3.h" namespace bs { struct __ControllerCollisionInterop { Vector3 position; Vector3 normal; Vector3 motionDir; float motionAmount; }; class BS_SCR_BE_EXPORT ScriptControllerCollision : public ScriptObject { public: SCRIPT_OBJ(ENGINE_ASSEMBLY, "BansheeEngine", "ControllerCollision") static MonoObject* box(const __ControllerCollisionInterop& value); static __ControllerCollisionInterop unbox(MonoObject* value); static ControllerCollision fromInterop(const __ControllerCollisionInterop& value); static __ControllerCollisionInterop toInterop(const ControllerCollision& value); private: ScriptControllerCollision(MonoObject* managedInstance); }; }