´«ÆæÕ½·¨Öí¶´Éý¼¶¹Ò»ú½Å±¾±àд ÍêÕûʵ²Ù½Ì³Ì

À´Ô´£º ×÷Õߣº µã»÷£º
Ò»¡¢ºËÐÄÐèÇóÃ÷È·£ºÕ½·¨Öí¶´¹Ò»úºËÐÄÂß¼­

½Å±¾ºËÐÄÄ¿±ê£ºÊÊÅäÖí¶´£¨Ê¯Ä¹Õ󣩵ØÍ¼¹ÖÎïÌØÐÔ£¨Ãܼ¯ÐÍ¡¢¶àΪ½üÕ½¹Ö£©£¬ÊµÏÖսʿ¡¢·¨Ê¦×Ô¶¯Òƶ¯ÕÒ¹Ö¡¢¼¼ÄÜÊÍ·Å¡¢ÑªÁ¿/À¶Á¿²¹¸ø¡¢×Ô¶¯¼ñÈ¡¡¢°²È«»Ø³ÇµÈ¹¦ÄÜ£¬±£ÕϳÖÐøÉý¼¶²»Öжϡ£Á½Ö°ÒµºËÐIJîÒ죺սʿ²àÖØ½üÕ½´Ìɱ¡¢ÑªÁ¿Ðøº½£»·¨Ê¦²àÖØÔ¶³ÌȺ¹¥¡¢À¶Á¿²¹¸øÓë¹ÖÎïÀ­³¶¡£

»ù´¡ÊÊÅ䳡¾°£ºÖí¶´1-7²ãͨÓã¬Ä¬ÈϹÖÎïΪºìÒ°Öí¡¢ºÚÒ°Öí¡¢°×Ò°Öí£¨°×Ò°ÖíÓÅÏȹ¥»÷´¦Àí£©£¬Ö§³Ö×Ô¶¯Çл»¹Ò»úµã룬±Ü¿ªµØÍ¼Õϰ­ÎïÓëÏÝÚå¡£

¶þ¡¢½Å±¾±àдǰÖÃ×¼±¸£º»·¾³ÓëºËÐĺ¯ÊýÊáÀí

1. ÊÊÅä»·¾³£º»ùÓÚ´«ÆæÖ÷Á÷ÒýÇæ£¨GOM¡¢GEE¡¢HEROµÈ£©±àд£¬ÐèÌáǰȷÈÏËùÓÃÒýÇæµÄµØÍ¼Òƶ¯¡¢¼¼ÄÜÊÍ·Å¡¢×´Ì¬¼ì²â¡¢ÎïÆ·Ê¹ÓᢼñÈ¡Ïà¹Øº¯Êý¿â£¬²»Í¬ÒýÇæº¯ÊýÃû³ÆÂÔÓвîÒ죬ºóÐøÊ¾Àý¸½Í¨ÓÃÓï·¨ÓëÒýÇæÊÊÅäÌáʾ¡£

2. ±Ø±¸ºËÐĺ¯Êý£¨Í¨ÓÃÓ﷨ʾÀý£©£º

- ״̬¼ì²âº¯Êý£ºCheckHP <°Ù·Ö±È>£¨¼ì²âѪÁ¿Õ¼±È£©¡¢CheckMP <°Ù·Ö±È>£¨¼ì²âÀ¶Á¿Õ¼±È£©¡¢CheckMonsterNearby <·¶Î§>£¨¼ì²âÖ¸¶¨·¶Î§ÄÚ¹ÖÎ£»

- ÒÆ¶¯ÕÒ¹Öº¯Êý£ºMoveToRandomPoint <µØÍ¼ID> <×îСX> <×î´óX> <×îСY> <×î´óY>£¨Ëæ»úÒÆ¶¯µ½µØÍ¼Ö¸¶¨×ø±ê·¶Î§£©¡¢MoveToMonster <¾àÀë>£¨Òƶ¯µ½¹ÖÎïÉí±ßÖ¸¶¨¾àÀ룩£»

- ¼¼ÄÜÊͷź¯Êý£ºCastSkill <¼¼ÄÜID>£¨ÊÍ·ÅÖ¸¶¨¼¼ÄÜ£©¡¢CheckSkillCD <¼¼ÄÜID>£¨¼ì²â¼¼ÄÜÀäÈ´£©£»

- ²¹¸øº¯Êý£ºUseItem <ÎïÆ·ID>£¨Ê¹ÓÃÖ¸¶¨ÎïÆ·£¬ÈçºìÒ©¡¢À¶Ò©£©¡¢CheckItemCount <ÎïÆ·ID>£¨¼ì²âÎïÆ·ÊýÁ¿£©£»

- °²È«º¯Êý£ºReturnCity£¨»Ø³Ç£©¡¢CheckDead£¨¼ì²â½ÇÉ«ÊÇ·ñËÀÍö£©¡¢CheckSafeArea£¨¼ì²âÊÇ·ñÔÚ°²È«Çø£©¡£

3. Öí¶´»ù´¡²ÎÊý£ºµØÍ¼ID£¨Ä¬ÈÏÖí¶´1²ãΪ3£¬ºóÐø²ãÊý°´Êµ¼Ê·þÎñ¶Ë²ÎÊýµ÷Õû£©¡¢¹ÖÎïID£¨ºìÒ°Öí101¡¢ºÚÒ°Öí102¡¢°×Ò°Öí103£©¡¢Õ½·¨ºËÐļ¼ÄÜID£¨Õ½Ê¿£º´Ìɱ½£Êõ11¡¢Áһ𽣷¨12£»·¨Ê¦£º»ðǽ13¡¢±ùÅØÏø14¡¢À×µçÊõ15£©¡£

Èý¡¢·ÖÖ°Òµ±àд½Å±¾£ºÕ½Ê¿Öí¶´¹Ò»úÍêÕûÂß¼­

²½Öè1£º¶¨Òåսʿ¹Ò»úºËÐÄÅäÖÃ

ͨ¹ýÅäÖñíÃ÷ȷսʿ¹Ò»ú²ÎÊý£¬±ãÓÚºóÆÚµ÷Õû£¬±ÜÃâÓ²±àÂ룺

; սʿÖí¶´¹Ò»úÅäÖñí
WarriorAFK.MapID = 3 ; Öí¶´1²ãµØÍ¼ID£¨°´Êµ¼Êµ÷Õû£©
WarriorAFK.MoveRangeX1 = 100 ; ¹Ò»ú·¶Î§×îСX×ø±ê
WarriorAFK.MoveRangeX2 = 300 ; ¹Ò»ú·¶Î§×î´óX×ø±ê
WarriorAFK.MoveRangeY1 = 100 ; ¹Ò»ú·¶Î§×îСY×ø±ê
WarriorAFK.MoveRangeY2 = 300 ; ¹Ò»ú·¶Î§×î´óY×ø±ê
WarriorAFK.HPThreshold = 30 ; ѪÁ¿µÍÓÚ30%ʹÓúìÒ©
WarriorAFK.HPPotionID = 201 ; ǿЧ̫ÑôË®ID£¨²¹Ñª£©
WarriorAFK.HPPotionCount = 10 ; ºìÒ©µÍÓÚ10¸ö»Ø³Ç²¹¸ø
WarriorAFK.AttackSkill1 = 11 ; Ö÷Á¦¼¼ÄÜ£º´Ìɱ½£Êõ
WarriorAFK.AttackSkill2 = 12 ; ±¬·¢¼¼ÄÜ£ºÁһ𽣷¨
WarriorAFK.MonsterRange = 5 ; ¼ì²â¹ÖÎﷶΧ£¨5¸ñÄÚ£©
WarriorAFK.SafeDistance = 1 ; ¹¥»÷¹ÖÎï¾àÀ루1¸ñ£¬½üÕ½£©

²½Öè2£º±àдսʿºËÐĹһúÑ­»·º¯Êý

´´½¨Ö÷Ñ­»·º¯ÊýWarriorAFKLoop()£¬ÊµÏ֓״̬¼ì²â-²¹¸ø-ÕÒ¹Ö-¹¥»÷”µÄÑ­»·Âß¼­£¬ºËÐÄÓÅÏȼ¶£ºÉú´æ£¨ÑªÁ¿/²¹¸ø£©> ¹¥»÷£¨ÕÒ¹Ö/¼¼ÄÜ£©> ¼ñÈ¡£º

; սʿÖí¶´¹Ò»úÖ÷Ñ­»·º¯Êý£¨³ÖÐøÖ´ÐУ©
Function WarriorAFKLoop()
; ¼ì²âÊÇ·ñËÀÍö£¬ËÀÍöÔòÍ£Ö¹¹Ò»ú
if CheckDead() then
SendMsgToPlayer "½ÇÉ«ÒÑËÀÍö£¬¹Ò»úÍ£Ö¹£¡"
return
end
; 1. °²È«Óë²¹¸ø¼ì²â£¨ÓÅÏȼ¶×î¸ß£©
; ¼ì²âºìÒ©ÊýÁ¿£¬²»×ãÔò»Ø³Ç
if CheckItemCount(WarriorAFK.HPPotionID) < WarriorAFK.HPPotionCount then
SendMsgToPlayer "ºìÒ©²»×㣬׼±¸»Ø³Ç²¹¸ø£¡"
ReturnCity()
Wait 2000 ; µÈ´ý2ÃëÈ·ÈϻسÇ
return
end
; ¼ì²âѪÁ¿£¬µÍÓÚãÐֵʹÓúìÒ©
if CheckHP(WarriorAFK.HPThreshold) then
UseItem(WarriorAFK.HPPotionID)
Wait 500 ; ±ÜÃâÁ¬ÐøÊ¹ÓÃÒ©Æ·
end
; 2. ÕÒ¹ÖÂß¼­
if CheckMonsterNearby(WarriorAFK.MonsterRange) then
; ·¶Î§ÄÚÓйÖÎï£¬ÒÆ¶¯µ½¹¥»÷¾àÀë
MoveToMonster(WarriorAFK.SafeDistance)
Wait 1000 ; µÈ´ýÒÆ¶¯Íê³É
; 3. ¼¼Äܹ¥»÷Âß¼­
; ¼ì²âÁһ𽣷¨ÀäÈ´£¬ÀäÈ´½áÊøÊÍ·Å£¨±¬·¢ÓÅÏÈ£©
if not CheckSkillCD(WarriorAFK.AttackSkill2) then
CastSkill(WarriorAFK.AttackSkill2)
else
; ÁÒ»ðÀäȴʱ£¬Ê¹ÓôÌɱ½£Êõ³ÖÐø¹¥»÷
CastSkill(WarriorAFK.AttackSkill1)
end
Wait 800 ; ¹¥»÷¼ä¸ô£¨Æ¥Åä¼¼ÄÜÊÍ·ÅËÙ¶È£©
else
; ·¶Î§ÄÚÎÞ¹ÖÎï£¬Ëæ»úÒÆ¶¯µ½¹Ò»úÇøÓòÕÒ¹Ö
MoveToRandomPoint(WarriorAFK.MapID, WarriorAFK.MoveRangeX1, WarriorAFK.MoveRangeX2, WarriorAFK.MoveRangeY1, WarriorAFK.MoveRangeY2)
Wait 2000 ; ÒÆ¶¯¼ä¸ô£¬±ÜÃâÆµ·±Òƶ¯
end
; 4. ×Ô¶¯¼ñÈ¡µØÃæÎïÆ·£¨¹¥»÷¼ä϶ִÐУ©
PickUpAllItem() ; ¼ñÈ¡·¶Î§ÄÚËùÓÐÎïÆ·
Wait 500
; Ñ­»·Ö´Ðйһúº¯Êý
WarriorAFKLoop()
End Function

²½Öè3£ºÌí¼Ó°×Ò°ÖíÌØÊâ´¦ÀíÂß¼­£¨¿ÉÑ¡£©

°×Ò°ÖíѪÁ¿¸ß¡¢¹¥»÷Ç¿£¬Ðèµ¥¶ÀÌí¼ÓÓÅÏȹ¥»÷ÓëѪÁ¿Ô¤¾¯Âß¼­£¬ÔÚÕÒ¹Ö»·½Ú²¹³ä£º

; ÔÚ“ÕÒ¹ÖÂß¼­”ÖÐÌæ»»Ô­Óмì²â¹ÖÎï´úÂë
if CheckMonsterNearby(WarriorAFK.MonsterRange) then
; ÓÅÏȼì²â°×Ò°Öí£¨ID£º103£©£¬´æÔÚÔòÓÅÏȹ¥»÷
if CheckSpecificMonster(103, WarriorAFK.MonsterRange) then
MoveToMonster(WarriorAFK.SafeDistance)
Wait 1000
; °×Ò°Öí¹¥»÷¸ß£¬ÑªÁ¿±£³ÖÔÚ50%ÒÔÉÏ
if CheckHP(50) then
UseItem(WarriorAFK.HPPotionID)
Wait 500
end
; ÊÍ·ÅÁÒ»ð+´Ìɱ×éºÏ¼¼ÄÜ
if not CheckSkillCD(WarriorAFK.AttackSkill2) then
CastSkill(WarriorAFK.AttackSkill2)
else
CastSkill(WarriorAFK.AttackSkill1)
end
else
; ÆÕͨ¹ÖÎï¹¥»÷Âß¼­£¨Ô­ÓдúÂ룩
MoveToMonster(WarriorAFK.SafeDistance)
Wait 1000
if not CheckSkillCD(WarriorAFK.AttackSkill2) then
CastSkill(WarriorAFK.AttackSkill2)
else
CastSkill(WarriorAFK.AttackSkill1)
end
end
Wait 800
end

ËÄ¡¢·ÖÖ°Òµ±àд½Å±¾£º·¨Ê¦Öí¶´¹Ò»úÍêÕûÂß¼­

²½Öè1£º¶¨Ò巨ʦ¹Ò»úºËÐÄÅäÖÃ

·¨Ê¦²àÖØÀ¶Á¿²¹¸ø¡¢Èº¹¥¼¼ÄÜÊÍ·ÅÓë¹ÖÎïÀ­³¶£¬ÅäÖñíÖØµã²¹³äÀ¶Á¿²ÎÊýÓëȺ¹¥¼¼ÄÜÉèÖãº

; ·¨Ê¦Öí¶´¹Ò»úÅäÖñí
MageAFK.MapID = 3 ; Öí¶´1²ãµØÍ¼ID£¨°´Êµ¼Êµ÷Õû£©
MageAFK.MoveRangeX1 = 100 ; ¹Ò»ú·¶Î§×îСX×ø±ê
MageAFK.MoveRangeX2 = 300 ; ¹Ò»ú·¶Î§×î´óX×ø±ê
MageAFK.MoveRangeY1 = 100 ; ¹Ò»ú·¶Î§×îСY×ø±ê
MageAFK.MoveRangeY2 = 300 ; ¹Ò»ú·¶Î§×î´óY×ø±ê
MageAFK.HPThreshold = 40 ; ѪÁ¿µÍÓÚ40%ʹÓúìÒ©
MageAFK.MPThreshold = 30 ; À¶Á¿µÍÓÚ30%ʹÓÃÀ¶Ò©
MageAFK.HPPotionID = 201 ; ǿЧ̫ÑôË®ID£¨²¹Ñª£©
MageAFK.MPPotionID = 202 ; ǿЧħ·¨Ë®ID£¨²¹À¶£©
MageAFK.PotionCount = 15 ; ºìÀ¶Ò©¾ùµÍÓÚ15¸ö»Ø³Ç²¹¸ø
MageAFK.GroupSkill1 = 13 ; Ⱥ¹¥¼¼ÄÜ1£º»ðǽ£¨ÆÌ³¡£©
MageAFK.GroupSkill2 = 14 ; Ⱥ¹¥¼¼ÄÜ2£º±ùÅØÏø£¨Çå¹Ö£©
MageAFK.SingleSkill = 15 ; µ¥Ìå¼¼ÄÜ£ºÀ×µçÊõ£¨²¹µ¶£©
MageAFK.MonsterRange = 8 ; ¼ì²â¹ÖÎﷶΧ£¨8¸ñÄÚ£¬Ô¶³ÌÓÅÊÆ£©
MageAFK.SafeDistance = 3 ; ¹¥»÷¹ÖÎï¾àÀ루3¸ñ£¬Ô¶³ÌÀ­³¶£©
MageAFK.MonsterCount = 3 ; ¹ÖÎïÊýÁ¿≥3ʱʹÓÃȺ¹¥

²½Öè2£º±àд·¨Ê¦ºËÐĹһúÑ­»·º¯Êý

´´½¨Ö÷Ñ­»·º¯ÊýMageAFKLoop()£¬ºËÐÄÓÅÏȼ¶£ºÀ¶Á¿²¹¸ø£¨±£Õϼ¼ÄÜÊÍ·Å£©> ѪÁ¿Éú´æ > Ⱥ¹¥ÆÌ³¡ > ¼ñÈ¡£¬ÖصãʵÏÖ»ðǽÆÌ³¡+±ùÅØÏøÇå¹ÖµÄЧÂÊÂß¼­£º

; ·¨Ê¦Öí¶´¹Ò»úÖ÷Ñ­»·º¯Êý£¨³ÖÐøÖ´ÐУ©
Function MageAFKLoop()
; ¼ì²âÊÇ·ñËÀÍö£¬ËÀÍöÔòÍ£Ö¹¹Ò»ú
if CheckDead() then
SendMsgToPlayer "½ÇÉ«ÒÑËÀÍö£¬¹Ò»úÍ£Ö¹£¡"
return
end
; 1. °²È«Óë²¹¸ø¼ì²â£¨ÓÅÏȼ¶×î¸ß£©
; ¼ì²âºìÀ¶Ò©ÊýÁ¿£¬²»×ãÔò»Ø³Ç
if CheckItemCount(MageAFK.HPPotionID) < MageAFK.PotionCount or CheckItemCount(MageAFK.MPPotionID) < MageAFK.PotionCount then
SendMsgToPlayer "Ò©Æ·²»×㣬׼±¸»Ø³Ç²¹¸ø£¡"
ReturnCity()
Wait 2000 ; µÈ´ý2ÃëÈ·ÈϻسÇ
return
end
; ¼ì²âѪÁ¿£¬µÍÓÚãÐֵʹÓúìÒ©
if CheckHP(MageAFK.HPThreshold) then
UseItem(MageAFK.HPPotionID)
Wait 500
end
; ¼ì²âÀ¶Á¿£¬µÍÓÚãÐֵʹÓÃÀ¶Ò©£¨·¨Ê¦ºËÐÄ£©
if CheckMP(MageAFK.MPThreshold) then
UseItem(MageAFK.MPPotionID)
Wait 500
end
; 2. ÕÒ¹ÖÓëÀ­³¶Âß¼­
if CheckMonsterNearby(MageAFK.MonsterRange) then
; ·¶Î§ÄÚÓйÖÎï£¬ÒÆ¶¯µ½Ô¶³Ì¹¥»÷¾àÀë
MoveToMonster(MageAFK.SafeDistance)
Wait 1000
; ¼ì²â¹ÖÎïÊýÁ¿£¬¾ö¶¨Ê¹ÓÃȺ¹¥»òµ¥Ìå¼¼ÄÜ
local monsterCount = GetMonsterCountNearby(MageAFK.MonsterRange)
if monsterCount >= MageAFK.MonsterCount then
; ¹ÖÎï≥3Ö»£¬ÏÈÆÌ»ðǽÔÙÓñùÅØÏøÇå¹Ö
if not CheckSkillCD(MageAFK.GroupSkill1) then
CastSkill(MageAFK.GroupSkill1) ; ÊÍ·Å»ðǽ£¨½ÅÏ»ò¹ÖÎïÃܼ¯´¦£©
Wait 1500 ; »ðǽÊͷżä¸ô
end
if not CheckSkillCD(MageAFK.GroupSkill2) then
CastSkill(MageAFK.GroupSkill2) ; ÊͷűùÅØÏøÈº¹¥
end
else
; ¹ÖÎï<3Ö»£¬Ê¹ÓÃÀ×µçÊõµ¥Ìå²¹µ¶
CastSkill(MageAFK.SingleSkill)
end
Wait 1000 ; ¼¼ÄÜÊͷżä¸ô
else
; ·¶Î§ÄÚÎÞ¹ÖÎï£¬Ëæ»úÒÆ¶¯ÕÒ¹Ö
MoveToRandomPoint(MageAFK.MapID, MageAFK.MoveRangeX1, MageAFK.MoveRangeX2, MageAFK.MoveRangeY1, MageAFK.MoveRangeY2)
Wait 2000
end
; 3. ×Ô¶¯¼ñÈ¡µØÃæÎïÆ·
PickUpAllItem()
Wait 500
; Ñ­»·Ö´Ðйһúº¯Êý
MageAFKLoop()
End Function

²½Öè3£ºÌí¼Ó·¨Ê¦·ÀΧ¶ÂÂß¼­£¨¹Ø¼ü£©

·¨Ê¦ÑªÁ¿µÍ£¬Ò×±»Öí¶´¹ÖÎïΧ¶Â£¬²¹³äΧ¶Â¼ì²âÓëÍÑÀ§Âß¼­£¬ÔÚÒÆ¶¯»·½ÚÌí¼Ó£º

; ÔÚ“ÕÒ¹ÖÓëÀ­³¶Âß¼­”ǰÌí¼ÓΧ¶Â¼ì²â
; ¼ì²âÊÇ·ñ±»¹ÖÎïΧ¶Â£¨3¸ñÄÚ¹ÖÎïÊýÁ¿≥4Ö»£©
if GetMonsterCountNearby(3) >= 4 then
SendMsgToPlayer "±»¹ÖÎïΧ¶Â£¬×¼±¸ÍÑÀ§£¡"
; Ëæ»úÏòÒ»¸ö·½ÏòÒÆ¶¯2¸ñÍÑÀ§
MoveToDirection(Random(1,4), 2) ; Random(1,4)´ú±íÉÏÏÂ×óÓÒËĸö·½Ïò
Wait 1000
; ÍÑÀ§ºóÊͷűùÅØÏøÇå³ö°²È«ÇøÓò
if not CheckSkillCD(MageAFK.GroupSkill2) then
CastSkill(MageAFK.GroupSkill2)
end
Wait 500
end

Îå¡¢½Å±¾µ÷ÊÔÓë×¢ÒâÊÂÏî

1. ºËÐĵ÷ÊÔÒªµã

¢Ù ²ÎÊýÊÊÅ䣺°´×ÔÉí·þÎñ¶Ëµ÷ÕûµØÍ¼ID¡¢¹ÖÎïID¡¢¼¼ÄÜID£¬¿ÉÔÚ·þÎñ¶Ë“DB/MapDB.ini”“DB/Skill.ini”Öвéѯ׼ȷ²ÎÊý£»

¢Ú º¯ÊýÌæ»»£º²»Í¬ÒýÇæº¯ÊýÌæ»»£¬ÈçGOMÒýÇæ“¼ñÈ¡ÎïÆ·”ΪPickUpAll£¬HEROÒýÇæÎªHero_PickUpAll£¬Ðè²éÔĶÔÓ¦ÒýÇæÊֲ᣻

¢Û ½Ú×à²âÊÔ£ºµ÷Õû¼¼ÄÜÊͷżä¸ô¡¢Òƶ¯¼ä¸ô£¬±ÜÃâÒò¼ä¸ô¹ý¶Ìµ¼Ö·þÎñÆ÷¸ºÔØÔö¼Ó£¬»ò¼ä¸ô¹ý³¤Ó°ÏìÉý¼¶Ð§ÂÊ£»

¢Ü Éú´æ²âÊÔ£º·Ö±ð²âÊÔսʿѪÁ¿µÍÓÚãÐÖµ¡¢·¨Ê¦À¶Á¿²»×ãʱµÄ²¹¸øÏìÓ¦£¬È·ÈÏҩƷʹÓÃÓë»Ø³ÇÂß¼­Õý³£¡£

2. ¹Ø¼üϸ½Ú²¹³ä

¢Ù Õϰ­Îï¹æ±Ü£º²¿·ÖÒýÇæÖ§³Ö“×Ô¶¯ÈÆÂ·”º¯Êý£¨ÈçAutoRoute£©£¬¿ÉÔÚÒÆ¶¯º¯ÊýÖÐÌí¼Ó£¬±ÜÃâ½ÇÉ«¿¨ÔÚµØÍ¼Õϰ­Îï´¦£»

¢Ú ÎïÆ·¹ýÂË£ºÌí¼Ó¼ñÈ¡¹ýÂ˺¯Êý£¨ÈçFilterItem <ÎïÆ·ID>£©£¬½ö¼ñȡҩƷ¡¢ÓÐÓÃ×°±¸£¬¹ýÂËÀ¬»øÎïÆ·£¬¼õÉÙ¼ñÈ¡ºÄʱ£»

¢Û ¶à²ã¹Ò»ú£¨¿ÉÑ¡£©£ºÌí¼ÓµØÍ¼²ãÊýÇл»Âß¼­£¬¼ì²âµ±Ç°²ã¹ÖÎïÃܶȣ¬ÃܶȹýµÍÔò×Ô¶¯Çл»µ½ÏÂÒ»²ã£¨ÈçÖí¶´1²ã→2²ã£©£»

¢Ü ÀëÏß±£»¤£ºÌí¼ÓÀëÏß¼ì²âº¯Êý£¬¼ì²â½ÇÉ«ÀëÏß״̬£¬ÀëÏßǰ×Ô¶¯»Ø³Ç£¬±ÜÃâ½ÇÉ«ÔÚÒ°Íâ±»¹ÖÎï»÷ɱ¡£

Áù¡¢³£¼ûÎÊÌâÅŲ鷽·¨

1. ½ÇɫԭµØ²»¶¯£º¼ì²éµØÍ¼IDÓë×ø±ê·¶Î§ÊÇ·ñÕýÈ·£¬Òƶ¯º¯ÊýÊÇ·ñÊÊÅ䵱ǰÒýÇæ£¬»òÊÇ·ñ±»Õϰ­Îï×èµ²£¬¿ÉÀ©´óÒÆ¶¯·¶Î§²âÊÔ£»

2. ¼¼Äܲ»ÊÍ·Å£ºÑéÖ¤¼¼ÄÜIDÊÇ·ñÕýÈ·£¬¼¼ÄÜÀäÈ´¼ì²âº¯ÊýÊÇ·ñ·´Ð´£¨È罫“not CheckSkillCD”ÎóдΪ“CheckSkillCD”£©£»

3. ²¹¸ø²»¼°Ê±£ºµ÷ÕûѪÁ¿/À¶Á¿ãÐÖµ£¬¼ì²éÒ©Æ·IDÊÇ·ñÕýÈ·£¬±ÜÃâÒòÒ©Æ·Ãû³ÆÓëID²»Æ¥Åäµ¼ÖÂÎÞ·¨Ê¹Óã»

4. ·¨Ê¦±»Î§¶ÂÖÂËÀ£ºÀ©´ó°²È«¹¥»÷¾àÀ룬µ÷ÕûΧ¶Â¼ì²âµÄ¹ÖÎïÊýÁ¿ãÐÖµ£¬È·±£ÍÑÀ§Âß¼­ÓÅÏÈÖ´ÐУ»

5. ÎÞ·¨¼ñÈ¡ÎïÆ·£º¼ì²é¼ñÈ¡º¯ÊýÊÇ·ñÕýÈ·£¬ÊÇ·ñÌí¼ÓÎïÆ·¹ýÂ˹æÔòµ¼ÖÂÓÐÓÃÎïÆ·±»Îó¹ýÂË¡£