// TMW2 scripts. // Authors: // Jesusalva // Description: // Gemini Sisters Quest - Bandit Den 034-2,24,60,0 script #GeminiBack1 NPC_HIDDEN,0,0,{ end; OnTouch: if (instance_id() < 0 || getcharid(1) < 1) end; GeminiCheck(6); .@p=getcharid(1); warp "val1@"+.@p, 169, 25; end; } 034-2,37,24,0 script #GeminiExit3 NPC_HIDDEN,0,0,{ end; OnTouch: if (instance_id() < 0 || getcharid(1) < 1) end; GeminiCheck(7); .@p=getcharid(1); if ($@VALIA_STATUS[.@p] < 8) { dispbottom l("One of the bandits locked this door; We need to find the key!"); end; } .@p=getcharid(1); warp "val3@"+.@p, 23, 51; end; } // Ambush 034-2,29,73,0 script #GeminiDen1 NPC_HIDDEN,0,0,{ end; OnTouch: if (instance_id() < 0 || getcharid(1) < 1) end; GeminiCheck(6); // TODO: areasc... stun ... etc. .@c=getunits(BL_PC, .@mbs, false, getmap(), 23, 67, 32, 74); for (.@i = 0; .@i < .@c; .@i++) { sc_start(SC_STUN, 15000, 1, 10000, SCFLAG_NOAVOID|SCFLAG_FIXEDTICK, .@mbs[.@i]); specialeffect(FX_CRITICAL, AREA, .@mbs[.@i]); } .@p=getcharid(1); .@m$=getmap(); .@b1=monster(.@m$, 30, 70, "Bandit A", Bandit, 1); .@b2=monster(.@m$, 32, 71, "Bandit B", RobinBandit, 1); immortal(.@b1); immortal(.@b2); sc_start(SC_STUN, 12000, 1, 10000, SCFLAG_NOAVOID|SCFLAG_FIXEDTICK, .@b1); sc_start(SC_STUN, 12000, 1, 10000, SCFLAG_NOAVOID|SCFLAG_FIXEDTICK, .@b2); // Begin cutscene sleep2(2000); // 13 s unittalk(.@b1, "Did you think you could sneak in our den without a problem?"); sleep2(2000); // 11s unittalk(.@b2, "Haha, we caught them, n00bs!"); sleep2(3000); // 8s unittalk(.@b1, "Drop your weapons, and come with us!"); sleep2(3000); // 5s unittalk(.@b2, "Ahaha, that was easy! Ok, knock them out!"); sleep2(3000); // 2s areawarp(.@m$, 23, 67, 32, 77, .@m$, 30, 92, 33, 95); unitwalk(.@b1, 37, 90); unitwalk(.@b2, 37, 90); sleep2(2000); // Get them... wherever unitwarp(.@b1, "034-2", 37, 90); unitwarp(.@b2, "034-2", 37, 90); unitkill(.@b1); unitkill(.@b2); areawarp(.@m$, 30, 92, 33, 95, .@m$, 57, 101, 66, 104); // First ambush, set some stuff up if ($@VALIA_STATUS[.@p] == 6) { $@VALIA_STATUS[.@p]=7; .@mob=monster("val2@"+.@p, 57, 104, strmobinfo(1, CopperSlime), CopperSlime, 1, "Valia::OnKey1"); setunitdata(.@mob, UDT_LEVEL, 1); .@mob=monster("val2@"+.@p, 61, 104, strmobinfo(1, CopperSlime), CopperSlime, 1, "Valia::OnKey2"); setunitdata(.@mob, UDT_LEVEL, 1); .@mob=monster("val2@"+.@p, 66, 104, strmobinfo(1, CopperSlime), CopperSlime, 1, "Valia::OnKey3"); setunitdata(.@mob, UDT_LEVEL, 1); monster("val2@"+.@p, 47, 72, strmobinfo(1, BanditLord), BanditLord, 1, "Valia::OnLord"); monster("val2@"+.@p, 85, 106, strmobinfo(1, BanditLord), BanditLord, 1, "Valia::OnLord"); monster("val2@"+.@p, 58, 45, strmobinfo(1, BanditLord), BanditLord, 1, "Valia::OnLord"); monster("val2@"+.@p, 40, 42, strmobinfo(1, BanditLord), BanditLord, 1, "Valia::OnLord"); monster("val2@"+.@p, 47, 25, strmobinfo(1, RedSlimeMother), RedSlimeMother, 1); } end; } // Cell Doors 034-2,58,100,0 script Cell Door#G01 NPC_NO_SPRITE,{ if (instance_id() < 0 || getcharid(1) < 1) end; GeminiCheck(7); mes l("A complex lock seems to be posing a threat to you."); mes l("But thanks to your %s skills, maybe you can pry this open.", thiefrank()); next; .@s=LockPicking(3, 3, false); // You broke free! if (.@s) { slide .x, 98; closeclientdialog; end; } @lockpicks=false; mes l("What's this dark magic, the password has changed!"); close; OnInit: OnInstanceInit: .distance=2; end; } 034-2,62,100,0 script Cell Door#G02 NPC_NO_SPRITE,{ if (instance_id() < 0 || getcharid(1) < 1) end; GeminiCheck(7); mes l("A complex lock seems to be posing a threat to you."); mes l("But thanks to your %s skills, maybe you can pry this open.", thiefrank()); next; .@s=LockPicking(3, 3, false); // You broke free! if (.@s) { slide .x, 98; closeclientdialog; end; } @lockpicks=false; mes l("What's this dark magic, the password has changed!"); close; OnInit: OnInstanceInit: .distance=2; end; } 034-2,64,100,0 script Cell Door#G03 NPC_NO_SPRITE,{ if (instance_id() < 0 || getcharid(1) < 1) end; GeminiCheck(7); mes l("A complex lock seems to be posing a threat to you."); mes l("But thanks to your %s skills, maybe you can pry this open.", thiefrank()); next; .@s=LockPicking(3, 3, false); // You broke free! if (.@s) { slide .x, 98; closeclientdialog; end; } @lockpicks=false; mes l("What's this dark magic, the password has changed!"); close; OnInit: OnInstanceInit: .distance=2; end; }