#ifndef __TROOP_AI_DEF_MODES_H__ #define __TROOP_AI_DEF_MODES_H__ #define AI_MODE_IDLE 0 // Çൿ ¾øÀ½ #define AI_MODE_ENGAGE 1 // °ø°Ý #define AI_MODE_DISENGAGE 2 // µµ¸Á #define AI_MODE_ENGAGE_SMART 3 // ÇÊÅÍ1ÀÇ ´ë»óÀ» °ø°ÝÇ쵂 ÇÊÅÍ2ÀÇ ´ë»óµé·Î ºÎÅÍ´Â µµ¸Á°£´Ù. #define AI_MODE_CAVALRY_CHARGE 4 // ³» ºÎ´ë¿¡¼­ Ÿ°ÙÀÌ µÈ ºÎ´ë±îÁö Á÷¼±À» ±×¾î ±× ¹æÇâÀ¸·Î ´Þ¸®µÇ, // Ÿ°Ù ºÎ´ë¸¦ Áö³ªÃļ­ ±× µÚ ¾ó¸¶±îÁö ´Þ¸®µµ·Ï ÇØÁØ´Ù. #define AI_MODE_USE_ABILITY 5 // Default ability »ç¿ë #define AI_MODE_FOLLOW 6 // ´ë»óÀÌ ÁöÁ¤µÈ °Å¸® ¾È¿¡ ÀÖÀ» °æ¿ì. // ÀÏÁ¤ °Å¸®¸¦ µÎ°í ÂѾư£´Ù. "ÀÏÁ¤ °Å¸®"´Â ÇϵåÄÚµù µÇ¾îÀÖÀ½. #define AI_MODE_FOLLOW_SMART 7 // ÇÊÅÍ1ÀÇ ´ë»óÀ» ÀÏÁ¤°Å¸®·Î ÂѵÇ, ÇÊÅÍ 2ÀÇ ´ë»óµé·Î ºÎÅÍ´Â µÇµµ·Ï ÇÇÇÑ´Ù. #define AI_MODE_ENGAGE_MERCIFULLY1 8 // ENGAGE_SMART¿Í µ¿ÀÏÇϳª »ó´ë°¡ ¸î ¸íÇÑÅ× Âѱâ°í ÀÖ´ÂÁö¸¦ #define AI_MODE_ENGAGE_MERCIFULLY2 9 // º¸°í ÁöÁ¤µÈ ¼ýÀÚ (1,2,3) ÀÌ»ó¿¡°Ô Âѱâ°í ÀÖÀ¸¸é °ø°ÝÇÏÁö ¾Ê´Â´Ù. #define AI_MODE_ENGAGE_MERCIFULLY3 10 #define AI_MODE_STOP_AND_DEFENSE 11 // Á¦ÀÚ¸®¿¡ ¼±´Ù. #define AI_MODE_ENGAGE_MERCIFULLY1_WALK 12 // engage mercifully¿Í µ¿ÀÏÇϳª °É¾î¼­ °ø°ÝÇÑ´Ù. #define AI_MODE_ENGAGE_MERCIFULLY2_WALK 13 #define AI_MODE_ENGAGE_MERCIFULLY3_WALK 14 #define AI_MODE_FOLLOW_SMART_BY_WALK 15 #define AI_MODE_ENGAGE_SCOUTER 16 // filter¿¡¼­ scouter´Â ±âº»ÀûÀ¸·Î Á¦¿Ü½ÃŰ³ª, ÀÌ ³× modeµéÀº #define AI_MODE_FOLLOW_SCOUTER 17 // filter¿¡¼­ scouter¸¸! °ñ¶ó³»¾î ÀÛµ¿ÇÑ´Ù. #define AI_MODE_FOLLOW_SCOUTER_BY_WALK 18 #define AI_MODE_DISENGAGE_SCOUTER 19 #define AI_MODE_CAVALRY_ARCHER_ENGAGE 20 #define AI_MODE_USE_ABILITY_ON_ME 21 // AI_SET_ABILITY·Î ÁöÁ¤ÇÑ ability¸¦ ³»°¡ ÀÖ´Â ÀÚ¸®¿¡ »ç¿ë. #define AI_MODE_USE_ABILITY_ON_A_PROP 22 #define AI_MODE_USE_ABILITY_ON_A_WALL 23 #define AI_MODE_RANGE_ATTACK_ON_THE_GROUND 24 // Filtered enemy ±ÙóÀÇ ¶¥À» °ø°ÝÇÑ´Ù. #define AI_MODE_RANGE_ATTACK_ON_A_PROP 25 // Filtered enemy ±ÙóÀÇ ¼º, Áö·Ú, ÇÔÁ¤µîÀ» °ø°ÝÇÑ´Ù. #define AI_MODE_RANGE_ATTACK_ON_A_WALL 26 // Filtered enemy ±ÙóÀÇ ¼ºº®À» °ø°ÝÇÑ´Ù. #define AI_MODE_MOVE_ALONG_A_PATH 27 // path¸¦ µû¶ó¼­ À̵¿. °¡Àå °¡±î¿î WP¸¦ ã´Â´Ù. #define AI_MODE_WALK_ALONG_A_PATH 28 // path¸¦ µû¶ó¼­ °É¾î°£´Ù. °¡Àå °¡±î¿î WP¸¦ ã´Â´Ù. #define AI_MODE_MOVE_ALONG_A_PATH_LOOP 29 // path¸¦ µû¶ó¼­ À̵¿. loop °¡Àå °¡±î¿î WP¸¦ ã´Â´Ù. #define AI_MODE_WALK_ALONG_A_PATH_LOOP 30 // path¸¦ µû¶ó¼­ °É¾î°£´Ù. loop °¡Àå °¡±î¿î WP¸¦ ã´Â´Ù. #define AI_MODE_MOVE_ALONG_A_RANDOM_PATH 31 // ÁÖ¾îÁø pathÁß ¾Æ¹«°Å³ª Çϳª °ñ¶ó À̵¿. °¡Àå °¡±î¿î WP¸¦ ã´Â´Ù. #define AI_MODE_WALK_ALONG_A_RANDOM_PATH 32 // ÁÖ¾îÁø pathÁß ¾Æ¹«°Å³ª Çϳª °ñ¶ó À̵¿. °¡Àå °¡±î¿î WP¸¦ ã´Â´Ù. #define AI_MODE_MOVE_ALONG_A_FULL_PATH 33 // path¸¦ µû¶ó¼­ À̵¿. WP0 ºÎÅÍ À̵¿ #define AI_MODE_WALK_ALONG_A_FULL_PATH 34 // path¸¦ µû¶ó¼­ °É¾î°£´Ù. WP0 ºÎÅÍ #define AI_MODE_WAIT_FOR_TARGET 35 // ÁöÁ¤µÈ ºÎ´ë°¡ param¿¡¼­ ÁöÁ¤µÈ °Å¸® (+- 30m) ¾È¿¡ µé¾î¿Ã ¶§ ±îÁö ±â´Ù·Á ÁØ´Ù. // Àü¸êµÈ ºÎ´ë´Â Á¦¿Ü #define AI_MODE_ATTACK_ENEMY_NEAR_SOMEBODY 36 // filter1À» ±âÁØÀ¸·Î, ParamÀÇ ¹ÝÁö¸§ ³»¿¡ ÀÖ´Â ÀûÁß Filter2¸¦ ¸¸Á·ÇÏ´Â // ³à¼®À» °ø°ÝÇÑ´Ù. #define AI_MODE_AVOID_ENEMY_AND_MOVE_TO 37 // filter1À» ÇÇÇØ filter2ÀÇ À§Ä¡·Î °£´Ù. #define AI_MODE_AVOID_ENEMY_AND_FOLLOW 38 // filter1À» ÇÇÇØ filter2¸¦ ÂѴ´Ù. #define AI_MODE_ENGAGE_BY_WALK 39 // °É¾î¼­ ÀûÀ» °ø°Ý #define AI_MODE_FOLLOW_BY_WALK 40 // °É¾î¼­ Ÿ°ÙÀ» ÂѾư£´Ù. #define AI_MODE_DISENGAGE_BY_WALK 41 // °É¾î¼­ µµ¸Á #define AI_MODE_ENGAGE_MERCIFULLY10 42 #define AI_MODE_DISENGAGE_GUARANTEED 43 // sight¿¡¼­ ¾Èº¸ÀÏ ¶§ ±îÁö µµ¸Á. #define AI_MODE_ENGAGE_MERCIFULLY1_NOSMART 44 // engage¿Í µ¿ÀÏ, Ÿ°Ù¿¡ mercifully Àû¿ë #define AI_MODE_ENGAGE_MERCIFULLY2_NOSMART 45 #define AI_MODE_ENGAGE_MERCIFULLY3_NOSMART 46 #define AI_SET_PARAM 100 #define AI_SET_TARGET_ID 101 // FILTER¸¦ type´ë½Å id·Î »ç¿ëÇÏ°í ½ÍÀ» ¶§ #define AI_SET_ABILITY_PARAM 102 // »ç¿ëÇÒ Ability¹× »ç¿ë Á¶°Çµî ÁöÁ¤. #define AI_ENABLE_FIRE_DETECT 103 // ºÒÀ» ÀÎÁöÇÏ¿© ÇÇÇÏ°í ½ÍÀ» ¶§ #define AI_IF 104 // Á¶°ÇºÐ±â #define AI_LEVEL 105 // AI level¿¡ µû¶ó ½ÃÀÛÇÒ À§Ä¡¸¦ ÁöÁ¤ÇÑ´Ù. #endif