Creating a schedule: Difference between revisions
Jump to navigation
Jump to search
m (referred to file rather than bulking up the wiki) |
No edit summary |
||
Line 1: | Line 1: | ||
{{npc tut}} | {{npc tut}} | ||
==Declaration== | |||
The first step to creating a schedule for your NPC is to create a name for it and add it to the enum. Here's an example name for a schedule: '''SCHED_COMBINE_GRENADE_COVER1'''. | The first step to creating a schedule for your NPC is to create a name for it and add it to the enum. Here's an example name for a schedule: '''SCHED_COMBINE_GRENADE_COVER1'''. | ||
Line 29: | Line 30: | ||
See <code>SCOND_t</code> in <code>src\dlls\AI_Condition.h</code> for shared interruptions allowed in a schedule. | See <code>SCOND_t</code> in <code>src\dlls\AI_Condition.h</code> for shared interruptions allowed in a schedule. | ||
==Implementation== | |||
{{todo|Implementation}} | |||
{{navbar-last|Creating an interaction|Creating an NPC}} | {{navbar-last|Creating an interaction|Creating an NPC}} |
Revision as of 13:34, 8 June 2006
Declaration
The first step to creating a schedule for your NPC is to create a name for it and add it to the enum. Here's an example name for a schedule: SCHED_COMBINE_GRENADE_COVER1.
Once the schedule is added to the enum, you must use the DEFINE_SCHEDULE macro in the AI_BEGIN_CUSTOM_NPC section.
Here's an example of the schedule code:
DEFINE_SCHEDULE ( SCHED_NEWNPC_SCHEDULE, " Tasks" " TASK_STOP_MOVING 0" " TASK_FACE_ENEMY 0" " TASK_ANNOUNCE_ATTACK 1" " TASK_WAIT 1" " TASK_RANGE_ATTACK1 0" " TASK_CIT_RPG_AUGER 1" "" " Interrupts" " COND_ENEMY_DEAD" " COND_LIGHT_DAMAGE" " COND_HEAVY_DAMAGE" " COND_HEAR_DANGER" " COND_NEW_ENEMY" )
It is also possible to use custom tasks and conditions here.
See sharedtasks_e
in src\dlls\AI_Task.h
for shared tasks allowed in a schedule.
See SCOND_t
in src\dlls\AI_Condition.h
for shared interruptions allowed in a schedule.
Implementation
Todo: Implementation
← Creating an interaction | Return to Creating an NPC |