/* RJCaster.h */ #ifndef ROKOJORI__CASTER_H #define ROKOJORI__CASTER_H #include "./RJGodotHeaders.h" #include "./RJAction.h" #include "./RJSelector.h" #include "core/math/vector3.h" #include "scene/resources/3d/shape_3d.h" #include "scene/3d/node_3d.h" class RJCaster : public Node3D { GDCLASS( RJCaster, Node3D ); protected: static void _bind_methods(); // beforeProcess : RJAction* RJAction* beforeProcess = nullptr; // afterProcess : RJAction* RJAction* afterProcess = nullptr; // includeSelector : Ref Ref includeSelector; // excludeSelector : Ref Ref excludeSelector; public: // beforeProcess : RJAction* RJAction* get_beforeProcess() const; void set_beforeProcess( RJAction* p_beforeProcess ); // afterProcess : RJAction* RJAction* get_afterProcess() const; void set_afterProcess( RJAction* p_afterProcess ); // includeSelector : Ref Ref get_includeSelector() const; void set_includeSelector( const Ref &p_includeSelector ); // excludeSelector : Ref Ref get_excludeSelector() const; void set_excludeSelector( const Ref &p_excludeSelector ); // numColliders() : int GDVIRTUAL0R( int, numColliders ); // getCollider( int index ) : Ref GDVIRTUAL1R( Ref, getCollider, int ); // getCollisionPosition( int index ) : Vector3 GDVIRTUAL1R( Vector3, getCollisionPosition, int ); // getCollisionNormal( int index ) : Vector3 GDVIRTUAL1R( Vector3, getCollisionNormal, int ); // getCollisionShape( int index ) : Ref GDVIRTUAL1R( Ref, getCollisionShape, int ); // Constructor RJCaster(); // Destructor ~RJCaster(); }; #endif // ROKOJORI__CASTER_H