🎉
隐藏内容已自动解锁 (满足: 时间满90天)
importPackage(net.貌似会被和谐自己打上去.odinms.tools); eHuJFM
importPackage(net.貌似会被和谐自己打上去.odinms.server.life); njF$1? )sq
importPackage(java.awt); WJ25fTsG
RZzHlZ
var status; y
%Q. (
var curMap; 4"|Xndh1.
var playerStatus; =
/!lK&
var chatState; A^>@6d $2
var questions = Array("首先给你出一个问题!请仔细听好:作为一名战士,他在1转的时候需要达到的等级是多少,那么请交给我同样数量的通行证。", A~2)ZdAN
"首先给你出一个问题! 请仔细听好:作为一名战士,他在1转的时候需要力量的能力值最小是多少点,那么请交给我同样数量的通行证。", f9W:-00QD
"首先给你出一个问题!请仔细听好: 作为一名法师,他在1转的时候需要智力的能力值最小是多少点,那么请交给我同样数量的通行证。", O\ZC$XF
"首先给你出一个问题!请仔细听好: 作为一名弓箭手,他在1转的时候需要敏捷的能力值最小是多少点,那么请交给我同样数量的通行证。", #GE]]7:Na
"首先给你出一个问题!请仔细听好: 作为一名飞侠,他在1转的时候需要敏捷的能力值最小是多少点,那么请交给我同样数量的通行证。", ];OvV ,*
"首先给你出一个问题!请仔细听好: 所有职业在2转的时候需要达到的等级是多少,那么请交给我同样数量的通行证。"); ('tXv"fT
var qanswers = Array(10, 35, 20, 25, 25, 30); gvA}s/
var party; N2v/<
var preamble; e
@Lxduq
var stage2rects = Array(Rectangle(-755,-132,4,218),Rectangle(-721,-340,4,166), (4T0U5jgT
Rectangle(-586,-326,4,150),Rectangle(-483,-181,4,222)); FfdB%
var stage2combos = Array(Array(0,1,1,1),Array(1,0,1,1),Array(1,1,0,1),Array(1,1,1,0)); y|2
<Vc
var stage3rects = Array(Rectangle(608,-180,140,50),Rectangle(791,-117,140,45), z# ^fS
|
Rectangle(958,-180,140,50),Rectangle(876,-238,140,45), G}fBd
Rectangle(702,-238,140,45)); AJ bCC
var stage3combos = Array(Array(0,0,1,1,1),Array(0,1,0,1,1),Array(0,1,1,0,1), n^Ca?|}
,
Array(0,1,1,1,0),Array(1,0,0,1,1),Array(1,0,1,0,1), 4|=>gdW)KN
Array(1,0,1,1,0),Array(1,1,0,0,1),Array(1,1,0,1,0), /ce;-3+
Array(1,1,1,0,0)); @ph!3<(In,
var stage4rects = Array(Rectangle(910,-236,35,5),Rectangle(877,-184,35,5), |oi+|r
Rectangle(946,-184,35,5),Rectangle(845,-132,35,5), 6OAs%QZ
Rectangle(910,-132,35,5),Rectangle(981,-132,35,5)); ]>t~Bcnm
var stage4combos = Array(Array(0,0,0,1,1,1),Array(0,0,1,0,1,1),Array(0,0,1,1,0,1), x9"Cm;H%
Array(0,0,1,1,1,0),Array(0,1,0,0,1,1),Array(0,1,0,1,0,1), LE\=Y;%
Array(0,1,0,1,1,0),Array(0,1,1,0,0,1),Array(0,1,1,0,1,0), j#1G?MF
Array(0,1,1,1,0,0),Array(1,0,0,0,1,1),Array(1,0,0,1,0,1), z3jkxWAZ
Array(1,0,0,1,1,0),Array(1,0,1,0,0,1),Array(1,0,1,0,1,0), }OpUG
Array(1,0,1,1,0,0),Array(1,1,0,0,0,1),Array(1,1,0,0,1,0), l1)~WqhE}
Array(1,1,0,1,0,0),Array(1,1,1,0,0,0)); #;]#NqFX
var eye = 9300002; "`$,qvNN
var necki = 9300000; STp9Gh-
var slime = 9300003; %.Ma_4o
Z
var monsterIds = Array(eye, eye, eye, _&uJE&xl}
necki, necki, necki, necki, necki, necki, rm8Ys61\=
slime); .eR1\IAm
var prizeIdScroll = Array(2040502,2040505,2040514,2040517, // overall JaCX}[R
2040802, 2040805, // glove DB5J3r81
2040002, 2040402, 2040602, 2040902, // armor def (top/bottom/shield/hat) kAQ(8xV
2044502, 2044702, 2044602, 2043302, // weapon atk iT>u&0B-
2043102, 2043202, 2043002, 2044402, L"qJZU
2044302, 2044102, 2044202, 2044002); FH+X<
var prizeIdUse = Array( 2000001, 2000002, 2000003, 2000006, // orange white blue manalixir pots zuV%`n
2000004, 2000005, 2001000, 2001001, // elix/p.elix, watermelon/sundae *M1GVhW(+
2002006, 2002007, 2002008, 2002010); // warrior/sniper/magic/speed pills v;x0=I&%
var prizeQtyUse = Array(100, 75, 100, 45, 9 {&g.+
20, 10, 35, 30, H~a
~'tm
10, 10, 10, 10); HIXAA?_eh=
var prizeIdEquip = Array(1032000, 1032009, 1032004, 1032005, // 20-25 earrings jYHn J}<
1032006, 1032007, 1032010, // 30 earrings ;=Ma+d#
1032002, 1032008, // 35 earrings \8 `7E1d
1002026, 1002089, 1002090); // bamboo hats C\EIaLN<
var prizeIdEtc = Array( 4010000, 4010001, 4010002, 4010003, // Mineral ores #ES[),+|mB
4010004, 4010005, 4010006, // Mineral ores + gold <+_XGOt0<
4020000, 4020001, 4020002, 4020003, // Jewel ores !6KX^j-
4020004, 4020005, 4020006, // Jewel ores >R+-mP!nj
4020007, 4020007, 4003000); // Diamond/BC/screws
/MGapmqV9
var prizeQtyEtc = Array(15, 15, 15, 15, j
uA@"SG
15, 15, 8, bj
pruJ`=
15, 15, 15, 15, \c<
oVF'
15, 15, 15, @>)VQf8s1
8, 5, 20); <RY =y?%z
566!T_
&-3e3)
function start() { _MBhwNBxZ
status = -1; 2R[v*i^S
mapId = cm.getChar().getMapId(); 9D T<
if (mapId == 103000800) /jG?PZ=m
curMap = 1; @C)s4{V
else if (mapId == 103000801) +e>SK!kB7
curMap = 2; &h-_|N
else if (mapId == 103000802) #ibwD:{
curMap = 3; g2vm]j
else if (mapId == 103000803) 2n:<F9^"
curMap = 4; T/_u;My;
else if (mapId == 103000804) um.ZAS_kmc
curMap = 5; 7q?ZieR
playerStatus = cm.isLeader(); ^M'(/O1
preamble = null; S6<o?X9,I
action(1, 0, 0); ;W,* B.~
} YThVG0I =
*;fTiL
function action(mode, type, selection) { T$5wH )<
if (mode == -1) { (?jK|_
cm.dispose(); '
;tlV
u
} else { ~#r>@C
if (mode == 0 && status == 0) { qGk.7wf%
cm.dispose(); Qr.{_M
return; >)kKP8l7
} WH:dcU
if (mode == 1) V<QpC5
status++; Uwc%'=@
else >jW**F
status--; Lce,]z\_
if (curMap == 1) { // First Stage. ;m]V12
if (playerStatus) { // party leader .z>/A/&+
if (status == 0) { GV0\+A"vD
var eim = cm.getChar().getEventInstance(); B\J[O5},
party = eim.getPlayers(); ;6G]~}>o
preamble = eim.getProperty("leader1stpreamble"); >Xn,jMUW
if (preamble == null) { A{+/$7vek
cm.sendNext("Hello,欢迎您的第一阶段。环顾四周,你会看到很多鳄鱼游荡。当你打败他们,他们就会咳嗽了#bpasses#k队长应该对我说话,收集了相同数量的#bpasses#k为回答这个问题我给他们。\r\n如果你收集的数额#bpasses#k,我给了#bpass#k该成员。当所有的队员聚集了#bpasses#k和给他们的队长,队长将交出#bpasses#k对我来说,清理阶段的进程。更快你照顾的阶段,更多的阶段就可以挑战。因此,我建议你照顾快速和迅速。那么,最好的你好运。"); j3Od7bBS]
eim.setProperty("leader1stpreamble","done"); y2A\7&7
cm.dispose(); J,=K1>8s
} p&(0e,`z/
else { // check how many they have compared to number of party members ?Mjs [|
// check for stage completed -9b=-K.y
var complete = eim.getProperty(curMap.toString() + "stageclear"); uY]';OtG
if (complete != null) { 16iTE-J_
cm.sendNext("请赶紧去下一关,们已经打开了"); 7=P)` @
cm.dispose(); %;[DMc/
} &}"kF\
else { 6] x6FeuS
var numpasses = party.size()-1; $*C
}iJsF
var passes = cm.haveItem(4001008,numpasses); OrkcY39"~a
var strpasses = "#b" + numpasses.toString() + " passes#k"; Kxsd@^E
if (!passes) { %xkuW]xk
cm.sendNext("对不起,你的通行证没有达到指定的数目。你需要给指定的通行证数目给我;应当的队员数目减去你的队长, " + strpasses + ",以明确的阶段。告诉您的队员解决问题,收集了通行证,并让他们给你."); MntmBj-T
cm.dispose(); ?"yjgt7+y
} [V'c
else { :zHSy&i`
cm.sendNext("你们已经通过 " + strpasses + "! 恭喜大家完成本阶段的挑战! 我将打开传送门,带大家进入到下一关的挑战.因为本次任务有时间限制,请大家抓紧时间,祝大家好运!"); )Te\6qM
clear(1,eim,cm); TO6
F
cm.givePartyExp(100, party); X-\$<DiJGv
cm.gainItem(4001008,-numpasses); Y&
6jFT_
cm.dispose(); + -<8^y
// TODO: make the shiny thing flash {7:1F)Pj
} .>"xp6
}
|! 9~
} :3D8rqi:
} w
<r*&
/*debug q8{Bx03m6
cm.sendNext("你好,这仅仅只是一个测试."); |]&3*%b@
cm.dispose();*/ j1_>>xB
} u$\.aWol
else { // non leader ;jzJ6~<
var eim = cm.getChar().getEventInstance(); opfnIkCe
pstring = "member1stpreamble" + cm.getChar().getId().toString(); iC#a+G*N_M
preamble = eim.getProperty(pstring); 2*cNd}qr
if (status == 0 && preamble == null) { F5*-HR
var qstring = "member1st" + cm.getChar().getId().toString(); YWIA(p8Qkk
var question = eim.getProperty(qstring); G*=HjLmZg
if (question == null) { Y=XDN:
// Select a random question to ask the player. L4 po1
var questionNum = Math.floor(Math.random() * questions.length); $DDO9
eim.setProperty(qstring, questionNum.toString()); ygz2bHpD~
} S Qmn*CW
cm.sendNext("在这里,你需要收集#bcoupons#k击败同样数目的Ligators作为回答提问个别。"); +6WjOcu
x6/u+Urn
} V^s, 3C
else if (status == 0) {// otherwise v}DNeIh~
// check for stage completed ?NoNg^ Of
var complete = eim.getProperty(curMap.toString() + "stageclear"); >WZ.Dj0n
if (complete != null) { `wi+/^);
cm.sendNext("请赶紧去下一关,们已经打开了"); Ku[q#_7
cm.dispose(); f7&ni#^Ztj
} gq('8*S
else { If&))$7u
// else correct/incorrect response to question here !X}+JeU'
var qstring = "member1st" + cm.getChar().getId().toString();
=[n !3M+X
var numcoupons = qanswers[parseInt(eim.getProperty(qstring))]; < se ~wR
var qcorr = cm.haveItem(4001007,(numcoupons+1)); b 8@}Jv
var enough = false; ]3v)3Wp
if (!qcorr) { // not too many =oSD)z1c?x
qcorr = cm.haveItem(4001007,numcoupons); *d8
%FQ
if (qcorr) { // just right C6e5*S
cm.sendNext("这是正确的答案!对于你刚才收到了#bpass#k请交给你的队长。"); ToHx!,tDS
cm.gainItem(4001007,-numcoupons); >!fTWdD^
cm.gainItem(4001008,1); MHpG
G00,
enough = true; -RP{viGWK
} g2f"tu_/%
} WI1YP0V
if (!enough) { AF:_&gF
cm.sendNext("很抱歉,你数量错误! 请仔细对照问题,再来给我正确数量的通行证吧."); %DttkrhL
} T
e+
#
cm.dispose(); !zK"y[V
} #VhdYDbW
} upMs yLp(
else if (status == 1) { @1j*\gYz
if (preamble == null) { s)
\PY
var qstring = "member1st" + cm.getChar().getId().toString(); >)4~,-;k
var question = parseInt(eim.getProperty(qstring)); rCo}^M4Pb
cm.sendNextPrev(questions[question]); ug%7}&
} c]*yo
else { // shouldn't happen, if it does then just dispose \; XJ$~>
cm.dispose(); 9O- otAGM
} [vr"FLM|9
Mc?_2<u-
} 8(? &=>@
else if (status == 2) { // preamble completed o "r
eim.setProperty(pstring,"done"); {L$$"r,
cm.dispose(); Ku'a,\7z
} Ic3a\FTr\
else { // shouldn't happen, but still... =ls+vH40&
eim.setProperty(pstring,"done"); // just to be sure rO}1E<g
(
cm.dispose(); 1feVFRx'
} Y~Uf2(7b5
} ndQw>
} // end first map scripts L 0Ckw},,
OdNo2SO
else if (2 <= curMap && 4 >= curMap) { KcT(/!
rectanglestages(cm); 5YrzOqg=
} %s}{5Qcl/
else if (curMap == 5) { // Final stage ~=yU%5 s@
var eim = cm.getChar().getEventInstance(); T>'w]wi
var stage5done = eim.getProperty("5stageclear"); 5%TSUU+<I
if (stage5done == null) { %R5- 6
if (playerStatus) { // Leader IR"C
?
var map = eim.getMapInstance(cm.getChar().getMapId()); 7^>~k}H
var passes = cm.haveItem(4001008,10); ^qL<=UC.
if (passes) { @kSfF[4H
// clear ZKI8x1>Iq
cm.sendNext("这是个任务,导致您在过去,奖金阶段。这是一个阶段,可让您打败怪物经常变得更轻松。您可以一套大量的时间来寻找尽可能多的,但您随时可以离开该阶段中。同样,祝贺结算的所有阶段。"); 2z;nP
up,
party = eim.getPlayers(); BiU>h.4=\(
cm.gainItem(4001008,-10); rw)!>j+&A
clear(5,eim,cm); >_Tyzl>z
cm.givePartyExp(1500, party); =bp'5h8_
cm.dispose(); e\}@w1
} 56Lxr{+X
else { // not done yet xjp0w7L)J
cm.sendNext("欢迎您到第5次和最后阶段。步行游览地图,你可以找到一些怪物。打败所有的人,收集了#bthepasses#k,并请您给我。在队长下将收集,然后让他们给我一旦#bpasses#k聚集了。怪物可能是熟悉的你,但他们可能会远远超出你觉得,所以请小心。祝您好运!由于投诉,现在是强制性的要杀死所有的泥!做到这一点! "); l(1.Ll
} ",~ZO<P
cm.dispose(); %|4Kak]:Q
} );HhV,$n
else { // Members fhg
'4FO
cm.sendNext("欢迎您到第5次和最后阶段。步行游览地图,你将能够找到一些怪物。打败他们所有,收集了#bpasses#k,并给予他们到您的队长。一旦您完成时,返回给我,收集您的奖励。 "); (%6fZ
cm.dispose(); 1!zd#TX
} O=K0KOj
} U2`:'
else { // give rewards and warp out @Ov}X]ELi
if (status == 0) { ,L%]}8EL"
cm.sendNext("难以置信!您通过了所有阶段进入了这一点。这里有一个小奖为您所做的出色工作。在您接受它,但是,请确保您的使用等物品栏要有空格 \r\n#b你将无法收到奖品,如果您有没有空格!#k"); b0}dy\dnQ
} ^4IJL",
if (status == 1) { h7eb/xEto
getPrize(eim,cm); TTO8tT3[6}
cm.dispose(); hGKQK
^bn
} CL7_3^2qI
} J[}j8x?r
} `{ Ox=+]M
// etc KEy8EB
else { // no map found h8WM4
PK
cm.sendNext("无效的计划,这意味着在现阶段是不完整的."); :H>I`)bw
cm.dispose(); ]HWeVhG
} 2a-]TVL3
} ce$[H}rDB
} 0<V/[$}\D
g8/ ,E-u
function clear(stage, eim, cm) { z$QoMq]
eim.setProperty(stage.toString() + "stageclear","true"); NP3
e^
var packetef = MaplePacketCreator.showEffect("quest/party/clear"); {JdXn
var packetsnd = MaplePacketCreator.playSound("Party1/Clear"); 1#L%Q(G
var packetglow = MaplePacketCreator.environmentChange("gate",2); wtbN@g0
var map = eim.getMapInstance(cm.getChar().getMapId()); {yNeZXA>
map.broadcastMessage(packetef); SOPair <r
map.broadcastMessage(packetsnd); ?*
+>T@MH
map.broadcastMessage(packetglow); 7Ws88Qs)
var mf = eim.getMapFactory(); |7K>`
map = mf.getMap(103000800 + stage); ;QVTb3Th
var nextStage = eim.getMapInstance(103000800 + stage); 9<&*iIrM
var portal = nextStage.getPortal("next00"); 3B]E2
if (portal != null) { ~"*W;|)
portal.setScriptName("kpq" + (stage+1).toString()); 6# bTlmcg
} zn/>t-Bc
else { // into final stage xsU%?"r
//cm.sendNext("Initiating final stage monsters..."); # ,H!<X;SS
// spawn monsters - removed since lerks patch makes -1 monsters spawn ONCE anyway _gH$
,.j/
// var map = eim.getMapInstance(103000804); ?yG[
VW
// map.spawnMonsters(monsterIds); A p zC
} Swf%WuDj
} #)L}{mHLM-
J<0sT=/2$
function failstage(eim, cm) { (0@b4}Z
var packetef = MaplePacketCreator.showEffect("quest/party/wrong_kor"); {*;K>%r\o
var packetsnd = MaplePacketCreator.playSound("Party1/Failed"); sw9ri}oc
var map = eim.getMapInstance(cm.getChar().getMapId()); 8i^
./P
map.broadcastMessage(packetef); F(j;|okf;
map.broadcastMessage(packetsnd); 44 8%yP
} C\{ KB@C\*
md bi@ms@
function rectanglestages (cm) { iYiTkq
// debug makes these stages clear without being correct BW)@.!C
var debug = false; LT)I
?ud
var eim = cm.getChar().getEventInstance(); T:
My3&6
if (curMap == 2) { P\@kqf~pC
var nthtext = "2nd"; %V1j M
var nthobj = "ropes"; SP<(24zdd
var nthverb = "hang"; ;P'5RCqj
var nthpos = "hang on the ropes too low"; id,' + <
var curcombo = stage2combos; Ca5LLG
//var curtestcombo = [0,0,0,1]; |"}7)[BW}
var currect = stage2rects; aQHR=.S]X
var objset = [0,0,0,0]; Z6b]EcP)#
} pcIS}+L
else if (curMap == 3) { }x#e.}hf&
var nthtext = "3rd"; pSAtn
var nthobj = "platforms"; Fsl="RB7f
var nthverb = "stand"; $J<WFDn9
var nthpos = "stand too close to the edges"; x;SY80D
var curcombo = stage3combos; J>M 9t%f@
//var curtestcombo = [0,0,1,0,0]; F7<u1Rx]
var currect = stage3rects; t!xdKX& }
var objset = [0,0,0,0,0]; bp" @p:
} ES^JRX
else if (curMap == 4) { ~[F7M{LS
var nthtext = "4th"; !5'4FUlJ
var nthobj = "barrels"; "C3J[) qC
var nthverb = "stand"; X
var nthpos = "stand too close to the edges"; IPn!iv)
var curcombo = stage4combos; -~RGjx
//var curtestcombo = [0,1,0,0,0,0]; By9CliOy:
var currect = stage4rects; R:l &2
var objset = [0,0,0,0,0,0]; 8_wh9
} *oLDy1<
if (playerStatus) { // leader /)RH-_63
if (status == 0) { HP7~Zn)c
// check for preamble eKuF7Oo
7z{N}
party = eim.getPlayers(); yFd .tQs
preamble = eim.getProperty("leader" + nthtext + "preamble"); r=37Q14v
if (preamble == null) { +P9eE,WR
cm.sendNext("嗨。欢迎您到" + nthtext + " 的阶段。我旁边,你会看到一些" + nthobj + ". 在这些" + nthobj +", #b第3关,向您发送到下一阶段#k所有您需要做的是有#b的队员找到正确的" + nthobj + "和" + nthverb +"上.#k\r\nBUT ,但这不能作为答案如果您" + nthobj + ";请靠近中间的" + nthobj +"算作一个正确的答案。此外,只有3名队员是不被允许的" + nthobj + " 。一旦" + nthverb +"技术对他们来说,队长必须双击我来检查,看看答案的正确与否#k现在,找到正确的" + nthobj + "到" + nthverb +"对!"); u)zv`m
eim.setProperty("leader" + nthtext + "preamble","done"); 'pUJREb
var sequenceNum = Math.floor(Math.random() * curcombo.length); :W>PKW`^
eim.setProperty("stage" + nthtext + "combo",sequenceNum.toString()); *N: $,xf
cm.dispose(); w)&4i$Lk6
} K8&) kfyI
else { EXbZ9 o*
// otherwise 4C?4M;
// check for stage completed iW2\;}y
var complete = eim.getProperty(curMap.toString() + "stageclear"); KL!cPnAUu
if (complete != null) { 1.N2!:&G|
var mapClear = curMap.toString() + "stageclear"; CL`+\
.
eim.setProperty(mapClear,"true"); // Just to be sure +tt!xfy
cm.sendNext("Please hurry on to the next stage, the portal opened!");
)zy;!
} $v_&jE
// check for people on ropes [CI0N
I6F
else { \
C$t
// check for people on ropes(objset) z&c}
var totplayers = 0; "J*>g(H53
for (i = 0; i < objset.length; i++) { # bjK]+
for (j = 0; j < party.size(); j++) { Jza?DhSAZ
var present = currect.contains(party.get(j).getPosition()); 2&pE
if (present) { &E6V'*<93
objset = objset + 1; HNc/p4z
totplayers = totplayers + 1; PZ#up{[o
} gB%"JDn8
} OVxg9
} 0s Jp,4Vv
// compare to correct LRaO}-<b
// first, are there 3 players on the objset? Xe:rPxZf~
if (totplayers == 3 || debug) { e ?7NW
var combo = curcombo[parseInt(eim.getProperty("stage" + nthtext + "combo"))]; }%c>Hh
// debug -Ju;
i<
// combo = curtestcombo; g9;s3qXiG
var testcombo = true; [zq2h3r
for (i = 0; i < objset.length; i++) { u
e?3;BF 5
if (combo != objset) XgXXBKf$
testcombo = false; hwvi tD!0
} FjizPg/|!
if (testcombo || debug) { @@-TW`G7
// do clear Cb|1Jtb
clear(curMap,eim,cm); 2 ( I4h[
var exp = (Math.pow(2,curMap) * 50); 4*o?2P$Q
cm.givePartyExp(exp, party); _u;pD-
cm.dispose(); mJ(
ElDG
} @+~>utr
else { // wrong !?).4yr
// do wrong Y~!A"$
failstage(eim,cm); cL%"AVsj
>
cm.dispose(); 1he5Zevm}
} v:Gy>&
} "
1XTgCu\
else { K;Hgq4
// oops, it doesn't display fail if you're not on the ropes E
?bqEW
(
// failstage(eim,cm); SmvMjZ+7Y
if (debug) { - q(a~Ge
var outstring = "Objects contain:" _E8Cvaob
for (i = 0; i < objset.length; i++) { 9Nna-}e?W
outstring += "\r\n" + (i+1).toString() + ". " + objset.toString(); |c2sJy j*
} =z"8#_3A
cm.sendNext(outstring); \ntUxPox.
} 4i&Rd1#0dI
else gm-9 oA
X
cm.sendNext("看来你还没有发现3个" + nthobj + "呀。请考虑一个不同的组合" + nthpos + " 。只有3个可以" + nthverb+ "上" + nthobj + " ,如果你“ + nthpos + ”它可能不能算作一个答案,所以请记住这一点。继续下去!"); +Q"~2_q5/;
o~CEja&(
cm.dispose(); Dk$<fMS,7c
} b>i5r$S8G
} _iDVd2X"H
} ai?N!RX%H
// just in case. *"Iz)Xzc`
} 1M_Vhs^
else { `'5vkO>
var complete = eim.getProperty(curMap.toString() + "stageclear"); Wr
RY3X
if (complete != null) { gMZ+kP`
var target = eim.getMapInstance(103000800 + curMap); >z
/.8!#Q
var targetPortal = target.getPortal("st00"); FG!hb?_1
cm.getChar().changeMap(target, targetPortal); N^wHO<IO1
} 3b#L*-
cm.dispose(); 3
G<4rH]
} N5`z S79W
} NX8hFwR
else { // not leader t,r:='
if (status == 0) { {98e_z w
var complete = eim.getProperty(curMap.toString() + "stageclear"); N(yd<Mw
if (complete != null) { &tf(vU;,'
cm.sendNext("请赶紧到下一阶段,门已经开通!"); ,uNJz -B8
} ZNDi;6e
else {
JC9$"0d7
cm.sendNext("请队长对我说话。"); rH,@"(p\
cm.dispose(); 5}_=q;sZ
} L^Q;M,.c;
} 2 A";oE
else { <}'=@a
var complete = eim.getProperty(curMap.toString() + "stageclear"); n'q:L(`M
if (complete != null) { K1R?Qt,qDF
var target = eim.getMapInstance(103000800 + curMap); :x5O1Zn/t
var targetPortal = target.getPortal("st00"); SO
STtuT
cm.getChar().changeMap(target, targetPortal); p_]b=3wt~
} f[R~oc5P0
cm.dispose(); mN.[bz
} sV5") /~
} ypGt6t(;
} yZm=
#.f
x@/:{B
function getPrize(eim,cm) { .#iot(g
var itemSetSel = Math.random(); 4W49*Je
var itemSet; ?*
,
var itemSetQty; |*b-m k
var hasQty = false; >!lpI5'Z&
if (itemSetSel < 0.3) ux!YVvTPd
itemSet = prizeIdScroll; 6ce-92n
else if (itemSetSel < 0.6) JKrS;J^97v
itemSet = prizeIdEquip; UU[z\^w| E
else if (itemSetSel < 0.9) { dKD:mU",M
itemSet = prizeIdUse; 1tI=Dwx
itemSetQty = prizeQtyUse; \o72VHG66
hasQty = true; \X!NoF
} ]auqf
else { Nmt~1.J
itemSet = prizeIdEtc; !J!&JQ|
itemSetQty = prizeQtyEtc; Ac*J;fI
hasQty = true; '3syS
sD&O
} I
S'Uuuz7g
var sel = Math.floor(Math.random()*itemSet.length); [dz3k@ >0
var qty = 1; KZ#\ >
if (hasQty) r_,;[+!
qty = itemSetQty[sel]; nN-S5
?X#
cm.gainItem(itemSet[sel],qty); 7hu7rWY`E
var map = eim.getMapInstance(103000805); }(XKy!G6
var portal = map.getPortal("sp"); \G)F*
cm.getPlayer().changeMap(map,portal); {,*vMQ<^
}