77 lines
1.8 KiB
C
77 lines
1.8 KiB
C
|
|
||
|
/* 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<RJSelector>
|
||
|
Ref<RJSelector> includeSelector;
|
||
|
|
||
|
// excludeSelector : Ref<RJSelector>
|
||
|
Ref<RJSelector> 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<RJSelector>
|
||
|
Ref<RJSelector> get_includeSelector() const; void set_includeSelector( const Ref<RJSelector> &p_includeSelector );
|
||
|
|
||
|
// excludeSelector : Ref<RJSelector>
|
||
|
Ref<RJSelector> get_excludeSelector() const; void set_excludeSelector( const Ref<RJSelector> &p_excludeSelector );
|
||
|
|
||
|
// numColliders() : int
|
||
|
GDVIRTUAL0R( int, numColliders );
|
||
|
|
||
|
// getCollider( int index ) : Ref<Node>
|
||
|
GDVIRTUAL1R( Ref<Node>, getCollider, int );
|
||
|
|
||
|
// getCollisionPosition( int index ) : Vector3
|
||
|
GDVIRTUAL1R( Vector3, getCollisionPosition, int );
|
||
|
|
||
|
// getCollisionNormal( int index ) : Vector3
|
||
|
GDVIRTUAL1R( Vector3, getCollisionNormal, int );
|
||
|
|
||
|
// getCollisionShape( int index ) : Ref<Shape3D>
|
||
|
GDVIRTUAL1R( Ref<Shape3D>, getCollisionShape, int );
|
||
|
|
||
|
// Constructor
|
||
|
RJCaster();
|
||
|
|
||
|
// Destructor
|
||
|
~RJCaster();
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif // ROKOJORI__CASTER_H
|