You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
SigFiesta/ScenarioBookShelf/Promote/JobChange2-1.ps

225 lines
6.7 KiB

; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>
open [main]
var PlayerHandle ""
Roumenos ""
NPC ""
NPCList ""
LoopIndex ""
LoginWait ""
InterruptBlock ""
InterruptArg "".
scriptfile "JobChange2-1".
; <EFBFBD><EFBFBD><EFBFBD><EFBFBD> npc<EFBFBD><EFBFBD>
npcstand NPC "RouSmithJames" 5937 6644 0 1000 "Normal".
npcstand NPC "RouSoulMctJulia" 8032 6469 0 1000 "Normal".
npcstand Roumenos "RouTownChiefRoumenus" 5988 4677 178 1000 "Normal".
npcstand NPC "RouWeaponTitleMctZach" 4985 5853 171 1000 "Normal".
npcstand NPC "RouSkillRubi" 7129 6115 173 1000 "Normal".
npcstand NPC "RouItemMctPey" 7133 5428 0 1000 "Normal".
npcstand NPC "RouStoreRaina" 6139 5197 342 1000 "Normal".
npcstand NPC "RouRookieGuideRaemi" 7720 4623 80 1000 "Normal".
npcstand NPC "RouGrandfatherRobin" 4478 6735 0 1000 "Normal".
npcstand NPC "RouGuildBrom" 4948 5015 0 1000 "Normal".
open [BaggerRegen]
LoopIndex = 0.
var coord ""
x ""
y ""
d "".
while LoopIndex < 15
open
coord = @CircularScatter(6242 4646 1000). ; 6242, 4646<EFBFBD><EFBFBD> <EFBFBD>߽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1000 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>Ѹ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ǥ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>("7276 9217" <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
x = @RemoveFirst("coord" " "). ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> coord<EFBFBD><EFBFBD><EFBFBD><EFBFBD> " "<EFBFBD><EFBFBD> <EFBFBD>и<EFBFBD><EFBFBD><EFBFBD> ù°<EFBFBD><EFBFBD><EFBFBD>Ҹ<EFBFBD> x<EFBFBD><EFBFBD> <EFBFBD>ְ<EFBFBD> coord<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>. coord<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ؾ<EFBFBD> <EFBFBD>ϹǷ<EFBFBD> coord <EFBFBD><EFBFBD>ü<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
y = @RemoveFirst("coord" " "). ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> coord<EFBFBD><EFBFBD><EFBFBD><EFBFBD> " "<EFBFBD><EFBFBD> <EFBFBD>и<EFBFBD><EFBFBD><EFBFBD> ù°<EFBFBD><EFBFBD><EFBFBD>Ҹ<EFBFBD> y<EFBFBD><EFBFBD> <EFBFBD>ְ<EFBFBD> coord<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>. coord<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ؾ<EFBFBD> <EFBFBD>ϹǷ<EFBFBD> coord <EFBFBD><EFBFBD>ü<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
d = @Random(0 360).
; Bandit <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NPC<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> NPC<EFBFBD><EFBFBD> <EFBFBD>ٲ<EFBFBD>
mobregen NPC "Slime" x y d 1000 "Normal" "Beggar". ; <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>ڵ<EFBFBD><EFBFBD≯<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, "Beggar"<EFBFBD≯<EFBFBD> Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
change2npc NPC "Slime".
LoopIndex = LoopIndex + 1.
close
LoopIndex = 0.
while LoopIndex < 5
open
coord = @CircularScatter(5807 6234 500).
x = @RemoveFirst("coord" " ").
y = @RemoveFirst("coord" " ").
d = @Random(0 360).
; Bandit <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NPC<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> NPC<EFBFBD><EFBFBD> <EFBFBD>ٲ<EFBFBD>
mobregen NPC "Slime" x y d 1000 "Normal" "Beggar". ; <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD> <EFBFBD>ڵ<EFBFBD><EFBFBD≯<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, "Beggar"<EFBFBD≯<EFBFBD> Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
change2npc NPC "Slime".
LoopIndex = LoopIndex + 1.
close
close
waitlogin LoginWait. ; <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>α<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD>
if LoginWait == 0
then open
call "QuestFail".
close
findhandle PlayerHandle "Player" 0. ; <EFBFBD>÷<EFBFBD><EFBFBD>̾<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD> ã<EFBFBD><EFBFBD>(ó<EFBFBD><EFBFBD> <EFBFBD>ϳ<EFBFBD><EFBFBD><EFBFBD>)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; <EFBFBD>÷<EFBFBD><EFBFBD>̾ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD> <EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
open [Arrive] ; NPC<EFBFBD><EFBFBD> Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD>
var ClickNum 0
ClickHandle 0.
interruptclear all.
interruptset NPCClickAny "NPCClickInt" 99999 "NPCClick". ; <EFBFBD> NPC<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> NPCClick ȣ<EFBFBD><EFBFBD>
interruptset PlayerEliminate "" 1 "QuestFail".
infinite
open
waitinterrupt InterruptBlock "InterruptArg".
call InterruptBlock.
close
close
interrupterase "NPCClickInt". ; NPC Ŭ<EFBFBD><EFBFBD><EFBFBD>Ҷ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD>̺<EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; <EFBFBD><EFBFBD><EFBFBD><EFBFBD> NPC<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ٲ<EFBFBD> ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
maplight 150 70 70.
mapfog 100 1400.
NPCList = @GetObjectList(PlayerHandle "NPC" "BANDIT"). ; PlayerHandle<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NPC, Bandit ã<EFBFBD><EFBFBD>
open [Zombinaze]
var ScreamNo 0.
infinite
open
NPC = @RemoveFirst("NPCList" " ").
if NPC == "" ; <EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD> ã<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
then open
break "Zombinaze".
close
npcchat NPC "Scream" % ScreamNo. ; "<EFBFBD>ƾƾ<EFBFBD>!", "<EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD>!", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>!" <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
exchange2mob NPC "Job2_Zombie". ; NPC<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ְ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ο<EFBFBD> ZombieKnight<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
npcchat NPC "Scream" % ScreamNo. ; "<EFBFBD>ƾƾ<EFBFBD>!", "<EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD>!", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>!" <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ScreamNo = ScreamNo + 1.
if ScreamNo >= 3
then open
ScreamNo = 0.
close
close
close
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD> ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
timelimit Min 20. ; <EFBFBD><EFBFBD><EFBFBD>ѽð<EFBFBD> 20<EFBFBD><EFBFBD>
interruptset TimeOut "" 1 "QuestFail".
interruptset MobEliminate "" 1 "QuestSuccess".
interruptset DeadIndex "" 99999 "Job2_Zombie" "ZombieMessage".
infinite
open
waitinterrupt InterruptBlock "InterruptArg".
call InterruptBlock.
close
close
open [ZombieMessage]
var ZombieNum 0.
ZombieNum = @Count("Job2_Zombie").
printf "Zombie : " % ZombieNum.
if ZombieNum === 0
then open
call "QuestSuccess".
close
if ZombieNum > 10
then open
ZombieNum = 10.
close
broadcast All "ReftMob" % ZombieNum.
close
open [NPCClick]
npcchat InterruptArg "NoChat". ; "..."<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if ClickHandle =!= InterruptArg
then open
ClickNum = ClickNum + 1.
ClickHandle = InterruptArg.
; if ClickNum >= 5
; then open
; break "Arrive".
; close
if InterruptArg === Roumenos
then open
break "Arrive".
close
close
close
open [QuestSuccess]
; itemattrset PlayerHandle "Job2_STpiece1" "-s1". ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Job2_STpiece1(ItemClass_KQStep)<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
itemerase PlayerHandle "Job2_STpiece1".
itemcreate PlayerHandle "Job2_STpiece1-1".
pause Sec 1.
questresult Suc. ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
scinariocode PlayerHandle 16.
pause Sec 2.
broadcast all "KQReturn30".
pause sec 10.
broadcast all "KQReturn20".
pause sec 10.
broadcast all "KQReturn10".
pause sec 5.
broadcast all "KQReturn5".
pause sec 5.
linkto all "RouVal01" "RouVal01" 12842 6467.
break "main".
close
open [QuestFail]
questresult Fail. ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
broadcast all "RouReturn30".
pause sec 10.
broadcast all "RouReturn20".
pause sec 10.
broadcast all "RouReturn10".
pause sec 5.
broadcast all "RouReturn5".
pause sec 5.
linkto all "RouVal01" "RouVal01" 12842 6467.
break "main".
close