1 // Copyright 2001-2018 Crytek GmbH / Crytek Group. All rights reserved.
3 #ifndef __aibehavior_h__
4 #define __aibehavior_h__
10 /** AI Behavior definition.
12 class CAIBehavior
: public _i_reference_target_t
16 virtual ~CAIBehavior() {};
18 void SetName(const string
& name
) { m_name
= name
; }
19 const string
& GetName() { return m_name
; }
21 //! Set name of script that implements this behavior.
22 void SetScript(const string
& script
) { m_script
= script
; };
23 const string
& GetScript() const { return m_script
; };
25 //! Get human readable description of this goal.
26 const string
& GetDescription() { return m_description
; }
27 //! Set human readable description of this goal.
28 void SetDescription(const string
& desc
) { m_description
= desc
; }
30 //! Force reload of script file.
33 //! Start editing script file in Text editor.
42 /** AICharacter behaviour definition.
44 class CAICharacter
: public _i_reference_target_t
48 virtual ~CAICharacter() {};
50 void SetName(const string
& name
) { m_name
= name
; }
51 const string
& GetName() { return m_name
; }
53 //! Set name of script that implements this behavior.
54 void SetScript(const string
& script
) { m_script
= script
; };
55 const string
& GetScript() const { return m_script
; };
57 //! Get human readable description of this goal.
58 const string
& GetDescription() { return m_description
; }
59 //! Set human readable description of this goal.
60 void SetDescription(const string
& desc
) { m_description
= desc
; }
62 //! Force reload of script file.
65 //! Start editing script file in Text editor.
74 typedef TSmartPtr
<CAIBehavior
> CAIBehaviorPtr
;
75 typedef TSmartPtr
<CAICharacter
> CAICharacterPtr
;
77 #endif // __aibehavior_h__