#ifndef __TROOP_AI_DEF_FILTERS_H__ #define __TROOP_AI_DEF_FILTERS_H__ #define AI_FILTER_ALL 0 // ¸ðµç ºÎ´ë #define AI_FILTER_ALL_BUT_ME 1 // ³¯ Á¦¿ÜÇÑ ¸ðµÎ #define AI_FILTER_NEAREST_ENEMY 2 // °¡Àå °¡±î¿î Àû ºÎ´ë #define AI_FILTER_WEAKEST_ENEMY 3 // °¡Àå ¾àÇÑ Àû ºÎ´ë #define AI_FILTER_MY_WORST_ENEMY 4 // ³¯ ¶§¸° ºÎ´ë #define AI_FILTER_ENEMY 5 #define AI_FILTER_ENEMY_BOSS 6 // Àû ´ëÀå #define AI_FILTER_ENEMY_INFANTRY 7 // Àû º¸º´´ë #define AI_FILTER_ENEMY_ARCHER 8 // Àû ±Ãº´´ë #define AI_FILTER_ENEMY_SAPPER 9 // Àû °øº´´ë #define AI_FILTER_ENEMY_CAVALRY 10 // Àû ±âº´´ë #define AI_FILTER_ENEMY_AIR 11 // Àû ºñÇà ºÎ´ë #define AI_FILTER_ENEMY_SIEGE 12 // Àû °ø¼º ºÎ´ë #define AI_FILTER_ENEMY_SPEAR 13 // Àû ⺴ ºÎ´ë #define AI_FILTER_ENEMY_UNDEAD 14 // Àû ¸®Ä¡ ºÎ´ë #define AI_FILTER_ENEMY_NEAREST_TO_PLAYER 15 // Ç÷¹ÀÌ¾î ºÎ´ë¿¡¼­ °¡Àå °¡±î¿î Àû ºÎ´ë #define AI_FILTER_ENEMY_MORTAR 16 #define AI_FILTER_ENEMY_AXEMAN 17 #define AI_FILTER_ENEMY_RANGED 18 // Àû range ºÎ´ë. IsRangedTroopType ÂüÁ¶ #define AI_FILTER_ENEMY_PALADIN 19 // Àû paladin ºÎ´ë #define AI_FILTER_ENEMY_LARGE 116 // Àû large ºÎ´ë #define AI_FILTER_ENEMY_WITH_MAGIC 117 // ¸¶¹ýÀÌ ÀÖ´Â Àû ºÎ´ë #define AI_FILTER_ENEMY_MAMMOTH 118 // Àû ¸¾¸ð½º #define AI_FILTER_NONE 20 // ¾Æ¹«µµ ¾Æ´Ô #define AI_FILTER_ENEMY_EXCEPT_BOSS 21 // Àû ´ëÀå Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_INFANTRY 22 // Àû º¸º´´ë Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_ARCHER 23 // Àû ±Ãº´´ë Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_SAPPER 24 // Àû °øº´´ë Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_CAVALRY 25 // Àû ±âº´´ë Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_AIR 26 // Àû ºñÇà ºÎ´ë Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_SIEGE 27 // Àû °ø¼º ºÎ´ë Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_UNDEAD 28 // Àû ¸®Ä¡ ºÎ´ë Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_SPEAR 29 // Àû ⺴ Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_MORTAR 30 // Àû ¹Ú°ÝÆ÷º´ Á¦¿Ü #define AI_FILTER_ENEMY_EXCEPT_WALL 31 // Àû ¼ºº® ±Ãº´ Á¦¿Ü #define AI_FILTER_ENEMY_GROUND_EXCEPT_WALL 32 #define AI_FILTER_FRIEND 40 // ¿ì¸®´Â Ä£±¸ #define AI_FILTER_NEAREST_FRIEND 41 // °¡Àå °¡±î¿î ¾Æ±º ºÎ´ë #define AI_FILTER_FRIEND_WITH_HP_BELOW_70 48 #define AI_FILTER_FRIEND_WITH_HP_BELOW_50 42 // HP °¡ 50% ¹Ì¸¸ÀÎ ¾Æ±º #define AI_FILTER_FRIEND_WITH_HP_BELOW_30 43 // HP °¡ 30% ¹Ì¸¸ÀÎ ¾Æ±º #define AI_FILTER_FRIEND_WITH_HP_BELOW_10 44 // HP °¡ 10% ¹Ì¸¸ÀÎ ¾Æ±º #define AI_FILTER_PLAYER 45 // Ç÷¹ÀÌ¾î ºÎ´ë ( ÁÖÀÇ: single mission Àü¿ë AI ) #define AI_FILTER_FRIEND_EXCEPT_PLAYER 46 // Ç÷¹ÀÌ¾î ºÎ´ë¸¦ Á¦¿ÜÇÑ Ä£±¸ #define AI_FILTER_FRIEND_EXCEPT_CAVALRY 49 // ±âº´´ë Á¦¿ÜÇÑ Ä£±¸ #define AI_FILTER_BY_ID 47 // ÀÌ ÇÊÅ͸¦ »ç¿ëÇϸé AI_SET_TARGET_IDÀ¸·Î ¼³Á¤ÇÑ °ªÀÇ ID¸¦ // °®´Â ºÎ´ë°¡ ´ë»óÀ¸·Î ÁöÁ¤µÈ´Ù. #define AI_FILTER_DUMMY0 50 #define AI_FILTER_DUMMY1 51 #define AI_FILTER_DUMMY2 52 #define AI_FILTER_DUMMY3 53 #define AI_FILTER_DUMMY4 54 #define AI_FILTER_DUMMY5 55 #define AI_FILTER_DUMMY6 56 #define AI_FILTER_DUMMY7 57 #define AI_FILTER_DUMMY8 58 #define AI_FILTER_DUMMY9 59 #define AI_FILTER_DUMMY10 60 #define AI_FILTER_DUMMY11 61 #define AI_FILTER_DUMMY12 62 #define AI_FILTER_DUMMY13 63 #define AI_FILTER_DUMMY14 64 #define AI_FILTER_DUMMY15 65 #define AI_FILTER_MY_WORST_ENEMY_ARCHER 70 #define AI_FILTER_MY_WORST_ENEMY_CAVALRY 71 #define AI_FILTER_MY_WORST_ENEMY_SIEGE 72 #define AI_FILTER_SOMEBODYS_WORST_ENEMY_ARCHER 73 // param¿¡¼­ Á¤ÇÑ ºÎ´ë¸¦ °ø°ÝÇÏ´Â archer #define AI_FILTER_SOMEBODYS_WORST_ENEMY_CAVALRY 74 // param¿¡¼­ Á¤ÇÑ ºÎ´ë¸¦ °ø°ÝÇÏ´Â cavalry #define AI_FILTER_SOMEBODYS_WORST_ENEMY_SIEGE 75 // param¿¡¼­ Á¤ÇÑ ºÎ´ë¸¦ °ø°ÝÇÏ´Â siege #define AI_FILTER_SOMEBODYS_WORST_ENEMY_INFANTRY 76 // param¿¡¼­ Á¤ÇÑ ºÎ´ë¸¦ °ø°ÝÇÏ´Â ¶¥±ú #define AI_FILTER_MY_WORST_ENEMY_RANGED 77 #define AI_FILTER_MY_WORST_ENEMY_EXCEPT_WALL 115 #define AI_FILTER_SOMEBODYS_WORST_ENEMY_RANGED 78 #define AI_FILTER_INFANTRY_WORST_ENEMY_MELEE 79 #define AI_FILTER_FRONTAL_WORST_ENEMY_MELEE 80 #define AI_FILTER_RANGED_WORST_ENEMY_MELEE 81 #define AI_FILTER_SAPPER_WORST_ENEMY_MELEE 82 #define AI_FILTER_RIDER_WORST_ENEMY_MELEE 83 #define AI_FILTER_INFANTRY_WORST_ENEMY_RANGED 84 #define AI_FILTER_FRONTAL_WORST_ENEMY_RANGED 85 #define AI_FILTER_RANGED_WORST_ENEMY_RANGED 86 #define AI_FILTER_SAPPER_WORST_ENEMY_RANGED 87 #define AI_FILTER_RIDER_WORST_ENEMY_RANGED 88 #define AI_FILTER_INFANTRY_WORST_ENEMY_CAVALRY 89 #define AI_FILTER_FRONTAL_WORST_ENEMY_CAVALRY 90 #define AI_FILTER_RANGED_WORST_ENEMY_CAVALRY 91 #define AI_FILTER_SAPPER_WORST_ENEMY_CAVALRY 92 #define AI_FILTER_RIDER_WORST_ENEMY_CAVALRY 93 #define AI_FILTER_FRIEND_INFANTRY 94 #define AI_FILTER_FRIEND_RANGE 95 #define AI_FILTER_FRIEND_FRONTAL 96 #define AI_FILTER_FRIEND_SAPPER 97 #define AI_FILTER_FRIEND_RIDER 98 #define AI_FILTER_GROUND_TARGET 100 #define AI_FILTER_ENEMY_GROUND 101 #define AI_FILTER_ENEMY_GROUND_EXCEPT_CAVALRY 102 #define AI_FILTER_ENEMY_GROUND_EXCEPT_RANGE 103 #define AI_FILTER_ENEMY_ANTI_MAMMOTH 104 #define AI_FILTER_INFANTRY_WORST_ENEMY_AIR 110 #define AI_FILTER_FRONTAL_WORST_ENEMY_AIR 111 #define AI_FILTER_RANGED_WORST_ENEMY_AIR 112 #define AI_FILTER_SAPPER_WORST_ENEMY_AIR 113 #define AI_FILTER_RIDER_WORST_ENEMY_AIR 114 #define AI_FILTER_ENEMY_SPEARMAN_ATTACKABLE 119 #define AI_FILTER_ENEMY_SPEARMAN_AVOID 120 #define AI_FILTER_ENEMY_INFANTRY_PRIORITY_RANGED 121 #define AI_FILTER_ENEMY_INFANTRY_ATTACKABLE 122 #define AI_FILTER_ENEMY_INFANTRY_AVOID 124 #define AI_FILTER_ENEMY_CAVALRY_ATTACKABLE 125 #define AI_FILTER_ENEMY_CAVALRY_AVOID 126 #define AI_FILTER_ENEMY_ARCHER_ATTACKABLE 127 #define AI_FILTER_ENEMY_ANTI_AIR 128 #define AI_FILTER_ENEMY_FLYING_ATTACKABLE 129 #define AI_FILTER_ENEMY_SIEGE_PRIORITY 130 #define AI_FILTER_ENEMY_MELEE_ENGAGED 131 #define AI_FILTER_ENEMY_MELEE_ENGAGED1 132 #define AI_FILTER_ENEMY_MELEE_ENGAGED2 133 #define AI_FILTER_ENEMY0 105 #define AI_FILTER_ENEMY0_EXCEPT_ARCHER 123 // Àû ±Ãº´´ë Á¦¿Ü #define AI_FILTER_ENEMY1 205 #define AI_FILTER_ENEMY1_EXCEPT_ARCHER 223 // Àû ±Ãº´´ë Á¦¿Ü #define AI_FILTER_ENEMY2 305 #define AI_FILTER_ENEMY2_EXCEPT_ARCHER 323 // Àû ±Ãº´´ë Á¦¿Ü #endif