Íæ¼Òµã»÷Èë¿ÚNPC → ¼ì²éÊÇ·ñÓпÕÏвã → ·ÖÅä×îµÍ¿ÕÏвã → ´«ËͽøÍ¼ + Æô¶¯¼ÆÊ±Æ÷
½øÈëºóÁ¢¼´Ë¢BOSS → Íæ¼Òɱ¹Ö → µã»÷NPC½øÈëÏÂÒ»²ã
À뿪µ±Ç°²ãʱ£ºÇå³ýÍæ¼Ò±äÁ¿ → ÖØÖòã״̬Ϊ"¿ÕÏÐ" → ×¼±¸Ó½ÓÏÂÒ»Î»Íæ¼Ò
ÐÂÍæ¼Ò½øÈë → ϵͳ¼ì²â¿ÕÏвã → ×Ô¶¯Ë¢Ð¶ÔÓ¦²ãBOSS
Ò»¡¢ Îļþ²¿ÊðλÖã¨ÒÔGEEÒýÇæÎªÀý£©
NPC½Å±¾£º MirServer\Mir200\Envir\Market_Def\ÃËÖØÊ¡-´³¹ØÊ¹Õß.txt (Èë¿ÚNPC)
µØÍ¼´¥·¢½Å±¾£º MirServer\Mir200\Envir\MapQuest_Def\QManage.txt (È«¾Ö¹ÜÀí¶¨Ê±Æ÷)
²ãµØÍ¼²ÎÊý£º MirServer\Mir200\Envir\MapInfo.txt (ÉèÖõØÍ¼ÏÞÖÆ²ÎÊý)
Ë¢¹ÖÎļþ£º MirServer\Mir200\Envir\MonGen.txt (³£¹æË¢¹Ö£¬µ«±¾·½°¸Ö÷ÒªÓýű¾Ë¢)
¶þ¡¢ ³¬Ïêϸ½Å±¾ÊµÏÖ£¨GEEÒýÇæÓï·¨£©
📍 ²½Öè1£º¶¨Òå´³¹ØµØÍ¼ÐÅÏ¢£¨MapInfo.txt£©
[TDG001 µÚÒ»²ã] SAFE DAY NORECALL NODEAL NORECONNECT(N) NOTALLOWUSEITEMS(»Ø³Ç¾í|Ëæ»ú´«Ë;í) INCGAMEPOINT(0/1) TIMELIMIT(30) NEEDHOLE
[TDG002 µÚ¶þ²ã] SAFE DAY NORECALL NODEAL NORECONNECT(N) ... TIMELIMIT(30) NEEDHOLE
... ͬÑù¸ñʽ¶¨ÒåµÚ3²ãµ½µÚ10²ã TDG003-TDG010
¹Ø¼ü²ÎÊý½âÊÍ£º
NOTALLOWUSEITEMS(»Ø³Ç¾í|Ëæ»ú´«Ë;í)£º½ûֹʹÓÃÌÓÅܵÀ¾ß
TIMELIMIT(30)£ºÏÞÖÆ±¾Í¼×î¶àÍ£Áô30·ÖÖÓ
NEEDHOLE£º±ØÐëͨ¹ý¶´¿Ú/NPC´«Ëͽø³ö£¨ÅäºÏ½Å±¾¿ØÖÆ£©
NORECONNECT(N)£ºµôÏßÖØÁ¬²»»ØµØÍ¼£¨·ÀÖ¹ÀûÓé¶´£©
📍 ²½Öè2£ºÈë¿ÚNPC½Å±¾ (ÃËÖØÊ¡-´³¹ØÊ¹Õß.txt)
[@Main]
if
act
ÏÔʾ´³¹ØÐÅÏ¢
SAY
<´³¹ØÊ¹Õß/SCOLOR=249>£ºÏëÌôÕ½Ê®ÖØÌì¹Ø£¿\ \
ÿ²ã½öÏÞÒ»ÈË£¬ÏÞʱ30·ÖÖÓ£¡\ \
³É¹¦Í¨¹Ø¿É»ñ¼«Æ·½±Àø£¡\ \
<ÎÒÒªÌôÕ½! / @EnterChallange >\ \
<ÅÅÐаñ / @ShowRank>\
[@EnterChallange]
IF
¼ì²éÍæ¼ÒÊÇ·ñÒÑÔÚ´³¹ØÏµÍ³ÖÐ
CHECKVAR HUMAN IsInTDG = 1
ACT
MESSAGEBOX [ʧ°Ü] ÄúÕýÔÚÌôÕ½ÖУ¡ÇëÏÈÍê³Éµ±Ç°²ãÌôÕ½£¡
BREAK
IF
³¢ÊÔÎªÍæ¼Ò·ÖÅäÒ»¸ö¿ÕÏвã
GetAvailTDGLevel
ACT
·ÖÅä³É¹¦£¨·µ»ØÖµÔÚP0£©
SETTING:
SETTING:
ÉèÖÃÍæ¼ÒËùÔÚ²ã±äÁ¿
SET HUMAN TDGLevel = <$STR(P0)>
SET HUMAN IsInTDG = 1
¼Ç¼½øÈëʱ¼ä£¨µ¥Î»£ºÃ룩
SET HUMAN TDGEnterTime = <$DATETIME>
´«ËÍÍæ¼Òµ½¶ÔÓ¦²ã
MAPMOVE TDG0<$STR(P0)>
·¢ËÍÌáʾ
SENDMSG 6 [ϵͳ] ÄãÒѽøÈëµÚ[<$STR(P0)>]²ã£¬ÏÞʱ30·ÖÖÓ£¡
ELSEACT
ËùÓв㶼ÂúÁË
MESSAGEBOX [ʧ°Ü] ËùÓйؿ¨ÒÑÂúÔ±£¡ÇëÉÔºóÔÙÊÔ£¡
BREAK
;--- ²éÕÒ×îµÍ¿ÕÏв㺯Êý ---
[@GetAvailTDGLevel()]
ACT
³õʼ»¯²ãºÅ P0 = 0 (δÕÒµ½)
SET P0 0
Ñ»·¼ì²é1-10²ã״̬
LoopSet P1 1 10 1
; ¼ì²âÈ«¾Ö±äÁ¿G101-G110£¨1-10²ã״̬ 0=¿ÕÏÐ 1=Õ¼Óã©
CHECKVAR GLOBAL TDG_Status_<$STR(P1)> = 0
SET P0 <$STR(P1)> ; ÕÒµ½¿ÕÏв㣬¸³Öµ¸øP0
½«¸Ã²ã״̬±ê¼ÇΪռÓÃ
SET GLOBAL TDG_Status_<$STR(P1)> = 1
Ìø³öÑ»·
BREAK
}
·µ»ØP0£¨0±íʾÎÞ¿ÕÏУ¬1-10±íʾ²ãºÅ£©
RETURN P0
📍 ²½Öè3£ºÃ¿²ãͨ¹ØNPC (·ÅÔÚÿ²ãµØÍ¼ÀÀýÈç TDG001-NPC.txt)
[@Main]
IF
¼ì²éÍæ¼ÒÊÇ·ñÔÚ±¾²ã£¨·ÀÖ¹¿ç²ãµã£©
CHECKVAR HUMAN TDGLevel = 1 ; ×¢Ò⣺µÚ2²ã¾Í¸Ä³É2£¬ÒÔ´ËÀàÍÆ
SAY
<ÊØ¹ØÌ콫/SCOLOR=250>£º»÷°Ü±¾²ãBOSS·½¿ÉǰÍùÏÂÒ»¹Ø£¡\ \
<BOSSË¢ÐÂ״̬£º>{Ŀǰ´æ»î|/SCOLOR=254}\ \
<À뿪ÌôÕ½/@Exit> | <ÏÂÒ»¹Ø/@NextLevel>\
[@NextLevel]
IF
¼ì²é±¾²ãBOSSÊÇ·ñËÀÍö£¨¸ù¾ÝÒýÇæ²»Í¬£¬¿ÉÒÔÓñäÁ¿¿ØÖÆ£©
CHECKVAR GLOBAL TDG1_BOSS_Alive = 0 ; 0=ËÀÍö
ACT
Çå³ýµ±Ç°²ã±äÁ¿
SET HUMAN TDGLevel = 0
¹Ø±Õ¼ÆÊ±Æ÷
DELTIMER TDGTimer
ÉèÖÃÍæ¼Ò½øÈëÏÂÒ»²ã״̬
SET HUMAN IsInTDG = 1
SET HUMAN TDGLevel = 2 ; ½øÈëµÚ2²ã
SET HUMAN TDGEnterTime = <$DATETIME> ; ÖØÖüÆÊ±
±ê¼Ç±¾²ãΪ¿ÕÏÐ״̬
SET GLOBAL TDG_Status_1 = 0
´«ËÍÖÁÏÂÒ»²ã
MAPMOVE TDG002
Ìáʾ
SENDMSG 6 [ϵͳ] ÄãÒѽøÈëµÚ2²ã£¬ÏÞÊ±ÖØÐ¼ÆË㣡
ELSEACT
MESSAGEBOX [ʧ°Ü] BOSSÉÐδ»÷°Ü£¡
BREAK
[@Exit]
IF
ACT
µ÷Óù«¹²Í˳öº¯Êý£¨ÔÚQManage.txtÀïʵÏÖ£©
Gmexecute Í˳ö´³¹Ø
📍 ²½Öè4£ºÈ«¾Ö¹ÜÀí´¥·¢£¨QManage.txt£©
= Íæ¼Ò½øÈëÈκδ³¹ØµØÍ¼Ê±´¥·¢Ë¢¹Ö =
[@EnterMap]
IF
¼ì²éÊÇ·ñ½øÈë´³¹ØµØÍ¼£¨¸ñʽ£ºTDG001 - TDG010£©
ISONMAP TDG0
ACT
»ñÈ¡Íæ¼ÒËùÔÚ²ãºÅ£¨Èç1£©
GetUserVar Human TDGLevel P0
Á¢¼´Ë¢³ö±¾²ãBOSS
PARAM1 TDG0<$STR(P0)> ; µØÍ¼Ãû
PARAM2 ±¾²ãBOSSÃû³Æ ; Ìæ»»ÎªÕæÊµBOSSÃû
PARAM3 50 ; X×ø±ê
PARAM4 50 ; Y×ø±ê
PARAM4 1 ; ·¶Î§
PARAM5 1 ; ÊýÁ¿
MONGEN ; ¹Ø¼üË¢¹ÖÃüÁî
±ê¼Ç±¾²ãBOSSΪ´æ»î״̬(²ãºÅ±äÁ¿)
SET GLOBAL TDG<$STR(P0)>_BOSS_Alive = 1
Æô¶¯Íæ¼ÒרÊô¼ÆÊ±Æ÷
SETONTIMER 1 1 TDGTimer
= ¹Ø¼üÏÞʱÓë¼à¿Ø¼ÆÊ±Æ÷ =
[@OnTimerTDGTimer]
if
¼ì²éÍæ¼ÒÊÇ·ñ»¹ÔÚ´³¹ØµØÍ¼ÖÐ
ISONMAP TDG0
ACT
¼ÆËãÍ£Áôʱ¼ä£¨Ã룩
GetUserVar Human TDGEnterTime P0
CALCULATION_TIME_PASSED: SET P1 = <DATETIME> - <STR(P0)>
¼ì²éÊÇ·ñ³¬Ê±£¨30*60=1800Ã룩
if
LARGE P1 1799
ACT
³¬Ê±´¦Àí£¡Ì߻ذ²È«Çø
MESSAGEBOX [³¬Ê±] Í£Áôʱ¼äÒѵ½30·ÖÖÓ£¡
Gmexecute Í˳ö´³¹Ø
BREAK
endif
= ͳһÍ˳ö´³¹Øº¯Êý£¨ÖØÒª£¡£© =
[@Exit_Challenge]
ACT
»ñÈ¡Íæ¼Òµ±Ç°²ã
GetUserVar Human TDGLevel P0
Èç¹û²ãºÅÓÐЧ£¨1-10£©£¬ÖØÖÃ״̬
if
RANGE <$STR(P0)> 1 10
ACT
Çå³ýÍæ¼Ò´³¹Ø±ê¼Ç
SET HUMAN IsInTDG = 0
SET HUMAN TDGLevel = 0
DELTIMER TDGTimer ; ¹Ø±Õ¼ÆÊ±Æ÷
±ê¼Ç±¾²ãΪ¿ÕÏÐ
SET GLOBAL TDG_Status_<$STR(P0)> = 0
´«ËÍ»ØÍÁ³Ç°²È«Çø
MAPMOVE 3 330 330
SENDMSG 6 [ϵͳ] ÄãÒѱ»´«Ëͻذ²È«Çø£¡
ÌØÊ⣺Èç¹ûÍæ¼ÒÊÇÕý³£Í¨¹ØÏÂÒ»²ã£¬´Ëº¯Êý»á±»¸²¸Ç±äÁ¿
´Ë´¦½ö´¦ÀíÒì³£Í˳ö£¨³¬Ê±/Ö÷¶¯À뿪£©
ELSEACT
·Ç´³¹Ø×´Ì¬µ÷Óô˺¯ÊýÔòºöÂÔ
BREAK
📍 ²½Öè5£ºBOSSËÀÍö´¥·¢£¨MonItemsĿ¼ÏµÄBOSSÅäÖã©
·¾¶£ºMir200\Envir\MonItems\±¾²ãBOSSÃû³Æ.txt
#IF
#ACT
ÖØÒª£¡±ê¼Ç±¾²ãBOSSËÀÍö
SET GLOBAL TDG1_BOSS_Alive = 0 ; ×¢ÒâÐ޸ĶÔÓ¦²ãºÅ
SENDMSG 6 [È«·þ] µÚ1²ãÊØ¹ØBOSSÒѱ»ÓÂÊ¿»÷°Ü£¡
Èý¡¢ ºËÐÄ»úÖÆ×ܽá±í
¹¦ÄÜ ÊµÏÖ·½Ê½ ¹Ø¼ü±äÁ¿/ÃüÁî
µ¥²ãÈËÊý¿ØÖÆ È«¾Ö±äÁ¿G±ê¼Ç²ã״̬(G101-G110) TDG_Status_X (X=²ãºÅ)
ÏÞʱ30·ÖÖÓ Íæ¼Ò±äÁ¿¼Ç¼½øÈëʱ¼ä + OnTimerÿÃë¼ì²é HUMAN TDGEnterTime + <$DATETIME>
¶¯Ì¬Ë¢¹Ö Íæ¼Ò½øÈëµØÍ¼Ê¼þ + MONGENÃüÁî @EnterMap + MONGEN
²ã×´Ì¬ÖØÖà ͨ¹Ø»òÍ˳öʱÇå³ýÍæ¼Ò²ã±äÁ¿£¬ÖØÖÃG±ê¼Ç SET GLOBAL TDG_Status_X=0
·À×÷±× µØÍ¼²ÎÊý½ûÓþíÖá + µôÏß²»»ØÍ¼ + NPCУÑéÍæ¼ÒËùÔÚ²ã NOTALLOWUSEITEMS + NORECONNECT(N)
BOSS״̬¸ú×Ù È«¾Ö±äÁ¿¼Ç¼´æ»î״̬£¬ËÀÍöʱ¸üРTDGX_BOSS_Alive
ËÄ¡¢ ½Å±¾µ÷ÊÔ¼¼ÇÉ
±äÁ¿²é¿´£º ÓÎÏ·ÖÐÊäÈë @ViewGVar ²é¿´È«¾Ö±äÁ¿£¬@ViewSVar ²é¿´¸öÈ˱äÁ¿
ʵʱ²âÊÔ£º
// Ç¿ÖÆ½øÈëµÚ1²ã£¨²âÊÔÓã©
#ACT
SET HUMAN TDGLevel = 1
SET HUMAN IsInTDG = 1
MAPMOVE TDG001
³£¼û´íÎóÅŲ飺
BOSS²»Ë¢Ð£º ¼ì²é@EnterMapÊÇ·ñ´¥·¢£¬×ø±êÊÇ·ñÓÐЧ
³¬Ê±ÎÞЧ£º È·ÈÏQManage.txt¼ÓÔØ£¬<$DATETIME>ÊÇ·ñÕý³£·µ»ØÃëÊý
²ã״̬»ìÂÒ£º ÓÃ@ViewGVar²é¿´G101-G110µÄÖµÊÇ·ñÕý³£ÖØÖÃ
NPC²»ÏìÓ¦£º ¼ì²éNPCÎļþÃûÊÇ·ñÓëMapInfo.txtÖеØÍ¼ÃûÆ¥Åä
Îå¡¢ ×îÖÕЧ¹ûÄ£Äâ
Íæ¼ÒAµã»÷Èë¿ÚNPC£º
ϵͳɨÃèG101-G110£¬·¢ÏÖG101=0£¨¿ÕÏУ©
´«ËÍAµ½µÚ1²ã£¬Í¬Ê±£º
ÉèÖà G101 = 1£¨Õ¼Óã©
ˢеÚ1²ãBOSS
Æô¶¯30·ÖÖÓµ¹¼ÆÊ±
A»÷°ÜBOSSºóµãNPC½øÈëµÚ2²ã£º
ÖØÖÃG101=0
ˢеÚ2²ãBOSS£¨AרÓã©
ÖØÖÃAµÄ¼ÆÊ±Æ÷
´ËÊ±Íæ¼ÒBµã»÷NPC£º
ϵͳɨÃè·¢ÏÖG101=0£¨¿ÕÏУ©
´«ËÍBµ½µÚ1²ã£¬Á¢¼´Ë¢ÐÂרÊôBOSS
Á½È˶ÀÁ¢´³¹Ø£¬»¥²»¸ÉÈÅ
ͶÈëÔËӪǰÎñ±ØÈ«Á÷³Ì²âÊÔ10´ÎÒÔÉÏ£¡½¨ÒéÓòâÊÔÕ˺ÅÄ£Äâ¶àÈ˲¢·¢ÇÀÕ¼×ÊÔ´³ØÇé¿ö¡£
½øÈëºóÁ¢¼´Ë¢BOSS → Íæ¼Òɱ¹Ö → µã»÷NPC½øÈëÏÂÒ»²ã
À뿪µ±Ç°²ãʱ£ºÇå³ýÍæ¼Ò±äÁ¿ → ÖØÖòã״̬Ϊ"¿ÕÏÐ" → ×¼±¸Ó½ÓÏÂÒ»Î»Íæ¼Ò
ÐÂÍæ¼Ò½øÈë → ϵͳ¼ì²â¿ÕÏвã → ×Ô¶¯Ë¢Ð¶ÔÓ¦²ãBOSS
Ò»¡¢ Îļþ²¿ÊðλÖã¨ÒÔGEEÒýÇæÎªÀý£©
NPC½Å±¾£º MirServer\Mir200\Envir\Market_Def\ÃËÖØÊ¡-´³¹ØÊ¹Õß.txt (Èë¿ÚNPC)
µØÍ¼´¥·¢½Å±¾£º MirServer\Mir200\Envir\MapQuest_Def\QManage.txt (È«¾Ö¹ÜÀí¶¨Ê±Æ÷)
²ãµØÍ¼²ÎÊý£º MirServer\Mir200\Envir\MapInfo.txt (ÉèÖõØÍ¼ÏÞÖÆ²ÎÊý)
Ë¢¹ÖÎļþ£º MirServer\Mir200\Envir\MonGen.txt (³£¹æË¢¹Ö£¬µ«±¾·½°¸Ö÷ÒªÓýű¾Ë¢)
¶þ¡¢ ³¬Ïêϸ½Å±¾ÊµÏÖ£¨GEEÒýÇæÓï·¨£©
📍 ²½Öè1£º¶¨Òå´³¹ØµØÍ¼ÐÅÏ¢£¨MapInfo.txt£©
[TDG001 µÚÒ»²ã] SAFE DAY NORECALL NODEAL NORECONNECT(N) NOTALLOWUSEITEMS(»Ø³Ç¾í|Ëæ»ú´«Ë;í) INCGAMEPOINT(0/1) TIMELIMIT(30) NEEDHOLE
[TDG002 µÚ¶þ²ã] SAFE DAY NORECALL NODEAL NORECONNECT(N) ... TIMELIMIT(30) NEEDHOLE
... ͬÑù¸ñʽ¶¨ÒåµÚ3²ãµ½µÚ10²ã TDG003-TDG010
¹Ø¼ü²ÎÊý½âÊÍ£º
NOTALLOWUSEITEMS(»Ø³Ç¾í|Ëæ»ú´«Ë;í)£º½ûֹʹÓÃÌÓÅܵÀ¾ß
TIMELIMIT(30)£ºÏÞÖÆ±¾Í¼×î¶àÍ£Áô30·ÖÖÓ
NEEDHOLE£º±ØÐëͨ¹ý¶´¿Ú/NPC´«Ëͽø³ö£¨ÅäºÏ½Å±¾¿ØÖÆ£©
NORECONNECT(N)£ºµôÏßÖØÁ¬²»»ØµØÍ¼£¨·ÀÖ¹ÀûÓé¶´£©
📍 ²½Öè2£ºÈë¿ÚNPC½Å±¾ (ÃËÖØÊ¡-´³¹ØÊ¹Õß.txt)
[@Main]
if
act
ÏÔʾ´³¹ØÐÅÏ¢
SAY
<´³¹ØÊ¹Õß/SCOLOR=249>£ºÏëÌôÕ½Ê®ÖØÌì¹Ø£¿\ \
ÿ²ã½öÏÞÒ»ÈË£¬ÏÞʱ30·ÖÖÓ£¡\ \
³É¹¦Í¨¹Ø¿É»ñ¼«Æ·½±Àø£¡\ \
<ÎÒÒªÌôÕ½! / @EnterChallange >\ \
<ÅÅÐаñ / @ShowRank>\
[@EnterChallange]
IF
¼ì²éÍæ¼ÒÊÇ·ñÒÑÔÚ´³¹ØÏµÍ³ÖÐ
CHECKVAR HUMAN IsInTDG = 1
ACT
MESSAGEBOX [ʧ°Ü] ÄúÕýÔÚÌôÕ½ÖУ¡ÇëÏÈÍê³Éµ±Ç°²ãÌôÕ½£¡
BREAK
IF
³¢ÊÔÎªÍæ¼Ò·ÖÅäÒ»¸ö¿ÕÏвã
GetAvailTDGLevel
ACT
·ÖÅä³É¹¦£¨·µ»ØÖµÔÚP0£©
SETTING:
SETTING:
ÉèÖÃÍæ¼ÒËùÔÚ²ã±äÁ¿
SET HUMAN TDGLevel = <$STR(P0)>
SET HUMAN IsInTDG = 1
¼Ç¼½øÈëʱ¼ä£¨µ¥Î»£ºÃ룩
SET HUMAN TDGEnterTime = <$DATETIME>
´«ËÍÍæ¼Òµ½¶ÔÓ¦²ã
MAPMOVE TDG0<$STR(P0)>
·¢ËÍÌáʾ
SENDMSG 6 [ϵͳ] ÄãÒѽøÈëµÚ[<$STR(P0)>]²ã£¬ÏÞʱ30·ÖÖÓ£¡
ELSEACT
ËùÓв㶼ÂúÁË
MESSAGEBOX [ʧ°Ü] ËùÓйؿ¨ÒÑÂúÔ±£¡ÇëÉÔºóÔÙÊÔ£¡
BREAK
;--- ²éÕÒ×îµÍ¿ÕÏв㺯Êý ---
[@GetAvailTDGLevel()]
ACT
³õʼ»¯²ãºÅ P0 = 0 (δÕÒµ½)
SET P0 0
Ñ»·¼ì²é1-10²ã״̬
LoopSet P1 1 10 1
; ¼ì²âÈ«¾Ö±äÁ¿G101-G110£¨1-10²ã״̬ 0=¿ÕÏÐ 1=Õ¼Óã©
CHECKVAR GLOBAL TDG_Status_<$STR(P1)> = 0
SET P0 <$STR(P1)> ; ÕÒµ½¿ÕÏв㣬¸³Öµ¸øP0
½«¸Ã²ã״̬±ê¼ÇΪռÓÃ
SET GLOBAL TDG_Status_<$STR(P1)> = 1
Ìø³öÑ»·
BREAK
}
·µ»ØP0£¨0±íʾÎÞ¿ÕÏУ¬1-10±íʾ²ãºÅ£©
RETURN P0
📍 ²½Öè3£ºÃ¿²ãͨ¹ØNPC (·ÅÔÚÿ²ãµØÍ¼ÀÀýÈç TDG001-NPC.txt)
[@Main]
IF
¼ì²éÍæ¼ÒÊÇ·ñÔÚ±¾²ã£¨·ÀÖ¹¿ç²ãµã£©
CHECKVAR HUMAN TDGLevel = 1 ; ×¢Ò⣺µÚ2²ã¾Í¸Ä³É2£¬ÒÔ´ËÀàÍÆ
SAY
<ÊØ¹ØÌ콫/SCOLOR=250>£º»÷°Ü±¾²ãBOSS·½¿ÉǰÍùÏÂÒ»¹Ø£¡\ \
<BOSSË¢ÐÂ״̬£º>{Ŀǰ´æ»î|/SCOLOR=254}\ \
<À뿪ÌôÕ½/@Exit> | <ÏÂÒ»¹Ø/@NextLevel>\
[@NextLevel]
IF
¼ì²é±¾²ãBOSSÊÇ·ñËÀÍö£¨¸ù¾ÝÒýÇæ²»Í¬£¬¿ÉÒÔÓñäÁ¿¿ØÖÆ£©
CHECKVAR GLOBAL TDG1_BOSS_Alive = 0 ; 0=ËÀÍö
ACT
Çå³ýµ±Ç°²ã±äÁ¿
SET HUMAN TDGLevel = 0
¹Ø±Õ¼ÆÊ±Æ÷
DELTIMER TDGTimer
ÉèÖÃÍæ¼Ò½øÈëÏÂÒ»²ã״̬
SET HUMAN IsInTDG = 1
SET HUMAN TDGLevel = 2 ; ½øÈëµÚ2²ã
SET HUMAN TDGEnterTime = <$DATETIME> ; ÖØÖüÆÊ±
±ê¼Ç±¾²ãΪ¿ÕÏÐ״̬
SET GLOBAL TDG_Status_1 = 0
´«ËÍÖÁÏÂÒ»²ã
MAPMOVE TDG002
Ìáʾ
SENDMSG 6 [ϵͳ] ÄãÒѽøÈëµÚ2²ã£¬ÏÞÊ±ÖØÐ¼ÆË㣡
ELSEACT
MESSAGEBOX [ʧ°Ü] BOSSÉÐδ»÷°Ü£¡
BREAK
[@Exit]
IF
ACT
µ÷Óù«¹²Í˳öº¯Êý£¨ÔÚQManage.txtÀïʵÏÖ£©
Gmexecute Í˳ö´³¹Ø
📍 ²½Öè4£ºÈ«¾Ö¹ÜÀí´¥·¢£¨QManage.txt£©
= Íæ¼Ò½øÈëÈκδ³¹ØµØÍ¼Ê±´¥·¢Ë¢¹Ö =
[@EnterMap]
IF
¼ì²éÊÇ·ñ½øÈë´³¹ØµØÍ¼£¨¸ñʽ£ºTDG001 - TDG010£©
ISONMAP TDG0
ACT
»ñÈ¡Íæ¼ÒËùÔÚ²ãºÅ£¨Èç1£©
GetUserVar Human TDGLevel P0
Á¢¼´Ë¢³ö±¾²ãBOSS
PARAM1 TDG0<$STR(P0)> ; µØÍ¼Ãû
PARAM2 ±¾²ãBOSSÃû³Æ ; Ìæ»»ÎªÕæÊµBOSSÃû
PARAM3 50 ; X×ø±ê
PARAM4 50 ; Y×ø±ê
PARAM4 1 ; ·¶Î§
PARAM5 1 ; ÊýÁ¿
MONGEN ; ¹Ø¼üË¢¹ÖÃüÁî
±ê¼Ç±¾²ãBOSSΪ´æ»î״̬(²ãºÅ±äÁ¿)
SET GLOBAL TDG<$STR(P0)>_BOSS_Alive = 1
Æô¶¯Íæ¼ÒרÊô¼ÆÊ±Æ÷
SETONTIMER 1 1 TDGTimer
= ¹Ø¼üÏÞʱÓë¼à¿Ø¼ÆÊ±Æ÷ =
[@OnTimerTDGTimer]
if
¼ì²éÍæ¼ÒÊÇ·ñ»¹ÔÚ´³¹ØµØÍ¼ÖÐ
ISONMAP TDG0
ACT
¼ÆËãÍ£Áôʱ¼ä£¨Ã룩
GetUserVar Human TDGEnterTime P0
CALCULATION_TIME_PASSED: SET P1 = <DATETIME> - <STR(P0)>
¼ì²éÊÇ·ñ³¬Ê±£¨30*60=1800Ã룩
if
LARGE P1 1799
ACT
³¬Ê±´¦Àí£¡Ì߻ذ²È«Çø
MESSAGEBOX [³¬Ê±] Í£Áôʱ¼äÒѵ½30·ÖÖÓ£¡
Gmexecute Í˳ö´³¹Ø
BREAK
endif
= ͳһÍ˳ö´³¹Øº¯Êý£¨ÖØÒª£¡£© =
[@Exit_Challenge]
ACT
»ñÈ¡Íæ¼Òµ±Ç°²ã
GetUserVar Human TDGLevel P0
Èç¹û²ãºÅÓÐЧ£¨1-10£©£¬ÖØÖÃ״̬
if
RANGE <$STR(P0)> 1 10
ACT
Çå³ýÍæ¼Ò´³¹Ø±ê¼Ç
SET HUMAN IsInTDG = 0
SET HUMAN TDGLevel = 0
DELTIMER TDGTimer ; ¹Ø±Õ¼ÆÊ±Æ÷
±ê¼Ç±¾²ãΪ¿ÕÏÐ
SET GLOBAL TDG_Status_<$STR(P0)> = 0
´«ËÍ»ØÍÁ³Ç°²È«Çø
MAPMOVE 3 330 330
SENDMSG 6 [ϵͳ] ÄãÒѱ»´«Ëͻذ²È«Çø£¡
ÌØÊ⣺Èç¹ûÍæ¼ÒÊÇÕý³£Í¨¹ØÏÂÒ»²ã£¬´Ëº¯Êý»á±»¸²¸Ç±äÁ¿
´Ë´¦½ö´¦ÀíÒì³£Í˳ö£¨³¬Ê±/Ö÷¶¯À뿪£©
ELSEACT
·Ç´³¹Ø×´Ì¬µ÷Óô˺¯ÊýÔòºöÂÔ
BREAK
📍 ²½Öè5£ºBOSSËÀÍö´¥·¢£¨MonItemsĿ¼ÏµÄBOSSÅäÖã©
·¾¶£ºMir200\Envir\MonItems\±¾²ãBOSSÃû³Æ.txt
#IF
#ACT
ÖØÒª£¡±ê¼Ç±¾²ãBOSSËÀÍö
SET GLOBAL TDG1_BOSS_Alive = 0 ; ×¢ÒâÐ޸ĶÔÓ¦²ãºÅ
SENDMSG 6 [È«·þ] µÚ1²ãÊØ¹ØBOSSÒѱ»ÓÂÊ¿»÷°Ü£¡
Èý¡¢ ºËÐÄ»úÖÆ×ܽá±í
¹¦ÄÜ ÊµÏÖ·½Ê½ ¹Ø¼ü±äÁ¿/ÃüÁî
µ¥²ãÈËÊý¿ØÖÆ È«¾Ö±äÁ¿G±ê¼Ç²ã״̬(G101-G110) TDG_Status_X (X=²ãºÅ)
ÏÞʱ30·ÖÖÓ Íæ¼Ò±äÁ¿¼Ç¼½øÈëʱ¼ä + OnTimerÿÃë¼ì²é HUMAN TDGEnterTime + <$DATETIME>
¶¯Ì¬Ë¢¹Ö Íæ¼Ò½øÈëµØÍ¼Ê¼þ + MONGENÃüÁî @EnterMap + MONGEN
²ã×´Ì¬ÖØÖà ͨ¹Ø»òÍ˳öʱÇå³ýÍæ¼Ò²ã±äÁ¿£¬ÖØÖÃG±ê¼Ç SET GLOBAL TDG_Status_X=0
·À×÷±× µØÍ¼²ÎÊý½ûÓþíÖá + µôÏß²»»ØÍ¼ + NPCУÑéÍæ¼ÒËùÔÚ²ã NOTALLOWUSEITEMS + NORECONNECT(N)
BOSS״̬¸ú×Ù È«¾Ö±äÁ¿¼Ç¼´æ»î״̬£¬ËÀÍöʱ¸üРTDGX_BOSS_Alive
ËÄ¡¢ ½Å±¾µ÷ÊÔ¼¼ÇÉ
±äÁ¿²é¿´£º ÓÎÏ·ÖÐÊäÈë @ViewGVar ²é¿´È«¾Ö±äÁ¿£¬@ViewSVar ²é¿´¸öÈ˱äÁ¿
ʵʱ²âÊÔ£º
// Ç¿ÖÆ½øÈëµÚ1²ã£¨²âÊÔÓã©
#ACT
SET HUMAN TDGLevel = 1
SET HUMAN IsInTDG = 1
MAPMOVE TDG001
³£¼û´íÎóÅŲ飺
BOSS²»Ë¢Ð£º ¼ì²é@EnterMapÊÇ·ñ´¥·¢£¬×ø±êÊÇ·ñÓÐЧ
³¬Ê±ÎÞЧ£º È·ÈÏQManage.txt¼ÓÔØ£¬<$DATETIME>ÊÇ·ñÕý³£·µ»ØÃëÊý
²ã״̬»ìÂÒ£º ÓÃ@ViewGVar²é¿´G101-G110µÄÖµÊÇ·ñÕý³£ÖØÖÃ
NPC²»ÏìÓ¦£º ¼ì²éNPCÎļþÃûÊÇ·ñÓëMapInfo.txtÖеØÍ¼ÃûÆ¥Åä
Îå¡¢ ×îÖÕЧ¹ûÄ£Äâ
Íæ¼ÒAµã»÷Èë¿ÚNPC£º
ϵͳɨÃèG101-G110£¬·¢ÏÖG101=0£¨¿ÕÏУ©
´«ËÍAµ½µÚ1²ã£¬Í¬Ê±£º
ÉèÖà G101 = 1£¨Õ¼Óã©
ˢеÚ1²ãBOSS
Æô¶¯30·ÖÖÓµ¹¼ÆÊ±
A»÷°ÜBOSSºóµãNPC½øÈëµÚ2²ã£º
ÖØÖÃG101=0
ˢеÚ2²ãBOSS£¨AרÓã©
ÖØÖÃAµÄ¼ÆÊ±Æ÷
´ËÊ±Íæ¼ÒBµã»÷NPC£º
ϵͳɨÃè·¢ÏÖG101=0£¨¿ÕÏУ©
´«ËÍBµ½µÚ1²ã£¬Á¢¼´Ë¢ÐÂרÊôBOSS
Á½È˶ÀÁ¢´³¹Ø£¬»¥²»¸ÉÈÅ
ͶÈëÔËӪǰÎñ±ØÈ«Á÷³Ì²âÊÔ10´ÎÒÔÉÏ£¡½¨ÒéÓòâÊÔÕ˺ÅÄ£Äâ¶àÈ˲¢·¢ÇÀÕ¼×ÊÔ´³ØÇé¿ö¡£

