You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
	
	
		
			
				
					
						
							|  |  |  |  | namespace Game | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     public class AIMonster01 : AIEntityBase<AIMonster01> | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         protected override void OnCreate() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Sequence(() => | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 SetHungry(); | 
					
						
							|  |  |  |  |                 CheckStagger(); | 
					
						
							|  |  |  |  |                 FindTarget(); | 
					
						
							|  |  |  |  |                 Selector(() => | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     CaseLongRange(); | 
					
						
							|  |  |  |  |                     CaseMelee(); | 
					
						
							|  |  |  |  |                     CaseSpectator(); | 
					
						
							|  |  |  |  |                 }); | 
					
						
							|  |  |  |  |             }); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         private void SetHungry() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Selector("设置饥饿值", () => | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 SetHungryIncrease(EAIModuleType.LongRange, 1, 1); | 
					
						
							|  |  |  |  |                 SetHungryIncrease(EAIModuleType.Melee, 1, 1); | 
					
						
							|  |  |  |  |                 SetHungryIncrease(EAIModuleType.Spectator, 1, 1); | 
					
						
							|  |  |  |  |             }); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         private void CaseLongRange() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Sequence("远程", () => | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 CheckModuleType(EAIModuleType.LongRange); | 
					
						
							|  |  |  |  |                 Selector(() => | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     Sequence(() => | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         CheckDistance(0, 2); | 
					
						
							|  |  |  |  |                         CastSkill(3, false); | 
					
						
							|  |  |  |  |                     }); | 
					
						
							|  |  |  |  |                     Sequence(() => | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         CheckDistance(2, 3); | 
					
						
							|  |  |  |  |                         Selector(() => | 
					
						
							|  |  |  |  |                         { | 
					
						
							|  |  |  |  |                             CastSkill(2, true); | 
					
						
							|  |  |  |  |                             MoveAroundTo(); | 
					
						
							|  |  |  |  |                         }); | 
					
						
							|  |  |  |  |                     }); | 
					
						
							|  |  |  |  |                     MoveTo(); | 
					
						
							|  |  |  |  |                 }); | 
					
						
							|  |  |  |  |             }); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         private void CaseMelee() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Sequence("近战", () => | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 CheckModuleType(EAIModuleType.Melee); | 
					
						
							|  |  |  |  |                 Selector(() => | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     Sequence(() => | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         CheckDistance(0, 1); | 
					
						
							|  |  |  |  |                         Selector(() => | 
					
						
							|  |  |  |  |                         { | 
					
						
							|  |  |  |  |                             CastSkill(0, true); | 
					
						
							|  |  |  |  |                             CastSkill(3, false); | 
					
						
							|  |  |  |  |                         }); | 
					
						
							|  |  |  |  |                     }); | 
					
						
							|  |  |  |  |                     Sequence(() => | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         CheckDistance(1, 2); | 
					
						
							|  |  |  |  |                         MoveTo(); | 
					
						
							|  |  |  |  |                     }); | 
					
						
							|  |  |  |  |                     Selector(() => | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         CastSkill(1, true); | 
					
						
							|  |  |  |  |                         MoveAroundTo(); | 
					
						
							|  |  |  |  |                     }); | 
					
						
							|  |  |  |  |                 }); | 
					
						
							|  |  |  |  |             }); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         private void CaseSpectator() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Sequence("观战", () => | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 CheckModuleType(EAIModuleType.Spectator); | 
					
						
							|  |  |  |  |                 Selector(() => | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     Sequence(() => | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         CheckDistance(0, 2); | 
					
						
							|  |  |  |  |                         CastSkill(3, false); | 
					
						
							|  |  |  |  |                     }); | 
					
						
							|  |  |  |  |                     Sequence(() => | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         CheckDistance(2, 3); | 
					
						
							|  |  |  |  |                         Selector(() => | 
					
						
							|  |  |  |  |                         { | 
					
						
							|  |  |  |  |                             CastSkill(1, true); | 
					
						
							|  |  |  |  |                             MoveAround(); | 
					
						
							|  |  |  |  |                         }); | 
					
						
							|  |  |  |  |                     }); | 
					
						
							|  |  |  |  |                     MoveTo(); | 
					
						
							|  |  |  |  |                 }); | 
					
						
							|  |  |  |  |             }); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | } |