diff options
Diffstat (limited to 'npc')
-rw-r--r-- | npc/custom/battleground/bg_common.txt | 140 | ||||
-rw-r--r-- | npc/custom/battleground/bg_kvm01.txt | 52 | ||||
-rw-r--r-- | npc/custom/battleground/bg_kvm02.txt | 52 | ||||
-rw-r--r-- | npc/custom/battleground/bg_kvm03.txt | 52 | ||||
-rw-r--r-- | npc/jobs/2-1/wizard.txt | 17 | ||||
-rw-r--r-- | npc/mapflag/night.txt | 4 | ||||
-rw-r--r-- | npc/mapflag/nobranch.txt | 4 | ||||
-rw-r--r-- | npc/mapflag/nomemo.txt | 4 | ||||
-rw-r--r-- | npc/mapflag/nopet.txt | 78 | ||||
-rw-r--r-- | npc/mapflag/noteleport.txt | 4 | ||||
-rw-r--r-- | npc/quests/quests_amatsu.txt | 33 | ||||
-rw-r--r-- | npc/quests/quests_juperos.txt | 22 | ||||
-rw-r--r-- | npc/quests/quests_lighthalzen.txt | 12 | ||||
-rw-r--r-- | npc/quests/quests_moscovia.txt | 7 | ||||
-rw-r--r-- | npc/quests/seals/god_weapon_creation.txt | 40 | ||||
-rw-r--r-- | npc/quests/the_sign_quest.txt | 18 | ||||
-rw-r--r-- | npc/re/merchants/hd_refiner.txt | 36 | ||||
-rw-r--r-- | npc/scripts.conf | 3 | ||||
-rw-r--r-- | npc/scripts_dev.conf | 2 | ||||
-rw-r--r-- | npc/scripts_mapflags.conf | 1 |
20 files changed, 258 insertions, 323 deletions
diff --git a/npc/custom/battleground/bg_common.txt b/npc/custom/battleground/bg_common.txt index 7ba3eecb0..d997263e6 100644 --- a/npc/custom/battleground/bg_common.txt +++ b/npc/custom/battleground/bg_common.txt @@ -5,7 +5,7 @@ // BattleGround Warper - Entrance // ********************************************************************* -- script Maroll Battle Recruiter::BatRecruit 4_F_JOB_KNIGHT,{ +- script Maroll Battle Recruiter::BatRecruit#custom 4_F_JOB_KNIGHT,{ mes "[Maroll Battle Recruiter]"; mes "Good day, adventurer."; mes "I'm a knight from a far country called Maroll Kingdom."; @@ -26,12 +26,12 @@ end; } -payon,189,104,3 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit1 4_F_JOB_KNIGHT -prontera,123,83,5 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit2 4_F_JOB_KNIGHT -rachel,149,138,5 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit3 4_F_JOB_KNIGHT -moc_ruins,75,162,5 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit4 4_F_JOB_KNIGHT -aldebaran,146,109,5 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit5 4_F_JOB_KNIGHT -lighthalzen,153,86,5 duplicate(BatRecruit) Maroll Battle Recruiter::BatRecruit6 4_F_JOB_KNIGHT +payon,189,104,3 duplicate(BatRecruit#custom) Maroll Battle Recruiter::BatRecruit1#custom 4_F_JOB_KNIGHT +prontera,123,83,5 duplicate(BatRecruit#custom) Maroll Battle Recruiter::BatRecruit2#custom 4_F_JOB_KNIGHT +rachel,149,138,5 duplicate(BatRecruit#custom) Maroll Battle Recruiter::BatRecruit3#custom 4_F_JOB_KNIGHT +moc_ruins,75,162,5 duplicate(BatRecruit#custom) Maroll Battle Recruiter::BatRecruit4#custom 4_F_JOB_KNIGHT +aldebaran,146,109,5 duplicate(BatRecruit#custom) Maroll Battle Recruiter::BatRecruit5#custom 4_F_JOB_KNIGHT +lighthalzen,153,86,5 duplicate(BatRecruit#custom) Maroll Battle Recruiter::BatRecruit6#custom 4_F_JOB_KNIGHT // BattleGround Warper - Exit // ********************************************************************* @@ -59,14 +59,14 @@ bat_room,148,150,4 script Teleporter#bat 4_F_TELEPORTER,{ // Kafra // ********************************************************************* -bat_room,148,147,4 script Kafra Staff::kaf_bat 4_F_KAFRA9,{ +bat_room,148,147,4 script Kafra Staff::kaf_bat#custom 4_F_KAFRA9,{ cutin "kafra_09",2; callfunc "F_Kafra",0,2,1,150,0; } // General Guillaume // ********************************************************************* -bat_room,160,159,3 script General Guillaume 4_M_KY_KIYOM,{ +bat_room,160,159,3 script General Guillaume#custom 4_M_KY_KIYOM,{ cutin "bat_kiyom2",2; mes "[General Guillaume]"; mes "Hot-blooded adventurer, we need your ability to win this battle."; @@ -105,7 +105,7 @@ bat_room,160,159,3 script General Guillaume 4_M_KY_KIYOM,{ // General Croix // ********************************************************************* -bat_room,160,140,3 script Prince Croix 4_M_CRU_CRUA,{ +bat_room,160,140,3 script Prince Croix#custom 4_M_CRU_CRUA,{ cutin "bat_crua1",2; mes "[Prince Croix]"; mes "Wise adventurer, why don't you lend us your power for victory?"; @@ -133,45 +133,9 @@ bat_room,160,140,3 script Prince Croix 4_M_CRU_CRUA,{ end; } -// Time calculation Function -// ********************************************************************* -function script Time2Str { - set .@time_left, getarg(0) - gettimetick(2); - - set .@Days, .@time_left / 86400; - set .@time_left, .@time_left - (.@Days * 86400); - set .@Hours, .@time_left / 3600; - set .@time_left, .@time_left - (.@Hours * 3600); - set .@Minutes, .@time_left / 60; - set .@time_left, .@time_left - (.@Minutes * 60); - - set .@Time$, ""; - if( .@Days > 1 ) - set .@Time$, .@Time$ + .@Days + " days, "; - else if( .@Days > 0 ) - set .@Time$, .@Time$ + .@Days + " day, "; - - if( .@Hours > 1 ) - set .@Time$, .@Time$ + .@Hours + " hours, "; - else if( .@Hours > 0 ) - set .@Time$, .@Time$ + .@Hours + " hour, "; - - if( .@Minutes > 1 ) - set .@Time$, .@Time$ + .@Minutes + " minutes, "; - else if( .@Minutes > 0 ) - set .@Time$, .@Time$ + .@Minutes + " minute, "; - - if( .@time_left > 1 || .@time_left == 0 ) - set .@Time$, .@Time$ + .@time_left + " seconds."; - else if( .@time_left == 1 ) - set .@Time$, .@Time$ + .@time_left + " second."; - - return .@Time$; -} - // Guillaume Knight - Tierra Valley // ********************************************************************* -bat_room,159,178,5 script Guillaume Knight#1 4_M_KY_SOLD,{ +bat_room,159,178,5 script Guillaume Knight#1c 4_M_KY_SOLD,{ mes "[Guillaume Knight]"; mes "Tierra Gorge is a very steep canyon with two forts residing in the north and south ends of the map."; next; @@ -241,7 +205,7 @@ bat_room,156,178,5 script Tierra Valley Officer#1 4_M_KY_KNT,{ // Croix Knight - Tierra Valley // ********************************************************************* -bat_room,159,121,1 script Croix Knight#1 4_M_CRU_SOLD,{ +bat_room,159,121,1 script Croix Knight#1c 4_M_CRU_SOLD,{ mes "[Croix Knight]"; mes "Tierra Gorge is a very steep canyon with two forts residing in the north and south ends of the map."; next; @@ -311,7 +275,7 @@ bat_room,156,121,1 script Tierra Valley Officer#2 4_M_CRU_KNT,{ // Guillaume Knight - Tierra // ********************************************************************* -bat_room,167,178,5 script Guillaume Knight#2 4_M_KY_SOLD,{ +bat_room,167,178,5 script Guillaume Knight#2c 4_M_KY_SOLD,{ mes "[Guillaume Knight]"; mes "Tierra Gorge is a very steep canyon with two forts residing in the north and south ends of the map."; next; @@ -381,7 +345,7 @@ bat_room,164,178,5 script Tierra Valley Officer#3 4_M_KY_KNT,{ // Croix Knight - Tierra // ********************************************************************* -bat_room,167,121,1 script Croix Knight#2 4_M_CRU_SOLD,{ +bat_room,167,121,1 script Croix Knight#2c 4_M_CRU_SOLD,{ mes "[Croix Knight]"; mes "Tierra Gorge is a very steep canyon with two forts residing in the north and south ends of the map."; next; @@ -451,7 +415,7 @@ bat_room,164,121,1 script Tierra Valley Officer#4 4_M_CRU_KNT,{ // Guillaune Knight - Flavius // ********************************************************************* -bat_room,175,178,5 script Guillaume Knight#3 4_M_KY_SOLD,{ +bat_room,175,178,5 script Guillaume Knight#3c 4_M_KY_SOLD,{ mes "[Guillaume Knight]"; mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal."; next; @@ -522,7 +486,7 @@ bat_room,172,178,5 script Flavius Officer#1 4_M_KY_KNT,{ // Croix Knight - Flavius // ********************************************************************* -bat_room,175,121,1 script Croix Knight#3 4_M_CRU_SOLD,{ +bat_room,175,121,1 script Croix Knight#3c 4_M_CRU_SOLD,{ mes "[Croix Knight]"; mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal."; next; @@ -593,7 +557,7 @@ bat_room,172,121,1 script Flavius Officer#2 4_M_CRU_KNT,{ // Guillaune Knight - Flavius // ********************************************************************* -bat_room,151,178,5 script Guillaume Knight#4 4_M_KY_SOLD,{ +bat_room,151,178,5 script Guillaume Knight#4c 4_M_KY_SOLD,{ mes "[Guillaume Knight]"; mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal."; next; @@ -664,7 +628,7 @@ bat_room,148,178,5 script Flavius Officer#3 4_M_KY_KNT,{ // Croix Knight - Flavius // ********************************************************************* -bat_room,151,121,1 script Croix Knight#4 4_M_CRU_SOLD,{ +bat_room,151,121,1 script Croix Knight#4c 4_M_CRU_SOLD,{ mes "[Croix Knight]"; mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal."; next; @@ -1167,58 +1131,58 @@ OnTouch: } // Flavius bat_b02 -bat_room,57,81,0 duplicate(warp2bat_room) bat1 WARPNPC,1,1 -bat_room,57,90,0 duplicate(warp2bat_room) bat2 WARPNPC,1,1 +bat_room,57,81,0 duplicate(warp2bat_room) bat1#custom WARPNPC,1,1 +bat_room,57,90,0 duplicate(warp2bat_room) bat2#custom WARPNPC,1,1 // Free BG -bat_room,57,220,0 duplicate(warp2bat_room) bat3 WARPNPC,1,1 -bat_room,57,211,0 duplicate(warp2bat_room) bat4 WARPNPC,1,1 +bat_room,57,220,0 duplicate(warp2bat_room) bat3#custom WARPNPC,1,1 +bat_room,57,211,0 duplicate(warp2bat_room) bat4#custom WARPNPC,1,1 // Tierra Valley bat_a02 -bat_room,85,81,0 duplicate(warp2bat_room) bat5 WARPNPC,1,1 -bat_room,85,90,0 duplicate(warp2bat_room) bat6 WARPNPC,1,1 +bat_room,85,81,0 duplicate(warp2bat_room) bat5#custom WARPNPC,1,1 +bat_room,85,90,0 duplicate(warp2bat_room) bat6#custom WARPNPC,1,1 // Tierra Valley bat_a01 -bat_room,85,220,0 duplicate(warp2bat_room) bat7 WARPNPC,1,1 -bat_room,85,211,0 duplicate(warp2bat_room) bat8 WARPNPC,1,1 +bat_room,85,220,0 duplicate(warp2bat_room) bat7#custom WARPNPC,1,1 +bat_room,85,211,0 duplicate(warp2bat_room) bat8#custom WARPNPC,1,1 // Free BG -bat_room,113,81,0 duplicate(warp2bat_room) bat9 WARPNPC,1,1 -bat_room,113,90,0 duplicate(warp2bat_room) bat10 WARPNPC,1,1 +bat_room,113,81,0 duplicate(warp2bat_room) bat9#custom WARPNPC,1,1 +bat_room,113,90,0 duplicate(warp2bat_room) bat10#custom WARPNPC,1,1 // Free BG -bat_room,113,220,0 duplicate(warp2bat_room) bat11 WARPNPC,1,1 -bat_room,113,211,0 duplicate(warp2bat_room) bat12 WARPNPC,1,1 +bat_room,113,220,0 duplicate(warp2bat_room) bat11#custom WARPNPC,1,1 +bat_room,113,211,0 duplicate(warp2bat_room) bat12#custom WARPNPC,1,1 // Free BG -bat_room,141,81,0 duplicate(warp2bat_room) bat13 WARPNPC,1,1 -bat_room,141,90,0 duplicate(warp2bat_room) bat14 WARPNPC,1,1 +bat_room,141,81,0 duplicate(warp2bat_room) bat13#custom WARPNPC,1,1 +bat_room,141,90,0 duplicate(warp2bat_room) bat14#custom WARPNPC,1,1 // Free BG -bat_room,141,220,0 duplicate(warp2bat_room) bat15 WARPNPC,1,1 -bat_room,141,211,0 duplicate(warp2bat_room) bat16 WARPNPC,1,1 +bat_room,141,220,0 duplicate(warp2bat_room) bat15#custom WARPNPC,1,1 +bat_room,141,211,0 duplicate(warp2bat_room) bat16#custom WARPNPC,1,1 // Free BG -bat_room,169,81,0 duplicate(warp2bat_room) bat17 WARPNPC,1,1 -bat_room,169,90,0 duplicate(warp2bat_room) bat18 WARPNPC,1,1 +bat_room,169,81,0 duplicate(warp2bat_room) bat17#custom WARPNPC,1,1 +bat_room,169,90,0 duplicate(warp2bat_room) bat18#custom WARPNPC,1,1 // Free BG -bat_room,169,220,0 duplicate(warp2bat_room) bat19 WARPNPC,1,1 -bat_room,169,211,0 duplicate(warp2bat_room) bat20 WARPNPC,1,1 +bat_room,169,220,0 duplicate(warp2bat_room) bat19#custom WARPNPC,1,1 +bat_room,169,211,0 duplicate(warp2bat_room) bat20#custom WARPNPC,1,1 // Free BG -bat_room,197,81,0 duplicate(warp2bat_room) bat21 WARPNPC,1,1 -bat_room,197,90,0 duplicate(warp2bat_room) bat22 WARPNPC,1,1 +bat_room,197,81,0 duplicate(warp2bat_room) bat21#custom WARPNPC,1,1 +bat_room,197,90,0 duplicate(warp2bat_room) bat22#custom WARPNPC,1,1 // KvM bat_c03 -bat_room,197,220,0 duplicate(warp2bat_room) bat23 WARPNPC,1,1 -bat_room,197,211,0 duplicate(warp2bat_room) bat24 WARPNPC,1,1 +bat_room,197,220,0 duplicate(warp2bat_room) bat23#custom WARPNPC,1,1 +bat_room,197,211,0 duplicate(warp2bat_room) bat24#custom WARPNPC,1,1 // Free BG -bat_room,225,81,0 duplicate(warp2bat_room) bat25 WARPNPC,1,1 -bat_room,225,90,0 duplicate(warp2bat_room) bat26 WARPNPC,1,1 +bat_room,225,81,0 duplicate(warp2bat_room) bat25#custom WARPNPC,1,1 +bat_room,225,90,0 duplicate(warp2bat_room) bat26#custom WARPNPC,1,1 // KvM bat_c02 -bat_room,225,220,0 duplicate(warp2bat_room) bat27 WARPNPC,1,1 -bat_room,225,211,0 duplicate(warp2bat_room) bat28 WARPNPC,1,1 +bat_room,225,220,0 duplicate(warp2bat_room) bat27#custom WARPNPC,1,1 +bat_room,225,211,0 duplicate(warp2bat_room) bat28#custom WARPNPC,1,1 // Flavius bat_b01 -bat_room,253,81,0 duplicate(warp2bat_room) bat29 WARPNPC,1,1 -bat_room,253,90,0 duplicate(warp2bat_room) bat30 WARPNPC,1,1 +bat_room,253,81,0 duplicate(warp2bat_room) bat29#custom WARPNPC,1,1 +bat_room,253,90,0 duplicate(warp2bat_room) bat30#custom WARPNPC,1,1 // KvM bat_c01 -bat_room,253,220,0 duplicate(warp2bat_room) bat31 WARPNPC,1,1 -bat_room,253,211,0 duplicate(warp2bat_room) bat32 WARPNPC,1,1 +bat_room,253,220,0 duplicate(warp2bat_room) bat31#custom WARPNPC,1,1 +bat_room,253,211,0 duplicate(warp2bat_room) bat32#custom WARPNPC,1,1 // Badges Repairman // ********************************************************************* -bat_room,138,144,5 script Repairman#bg 4W_M_03,{ +bat_room,138,144,5 script Repairman#bgc 4W_M_03,{ callfunc "repairmain","Repairman"; end; } @@ -1226,7 +1190,7 @@ bat_room,138,144,5 script Repairman#bg 4W_M_03,{ // Badges Exchange // ********************************************************************* -bat_room,160,150,3 script Erundek 4_M_MANAGER,{ +bat_room,160,150,3 script Erundek#custom 4_M_MANAGER,{ mes "[Erundek]"; mes "Welcome, mighty warrior."; mes "What can I do for you today ?"; diff --git a/npc/custom/battleground/bg_kvm01.txt b/npc/custom/battleground/bg_kvm01.txt index bb3ba3e06..cf2d8aa15 100644 --- a/npc/custom/battleground/bg_kvm01.txt +++ b/npc/custom/battleground/bg_kvm01.txt @@ -5,27 +5,27 @@ // Registration NPC's // ********************************************************************* -bat_room,253,227,4 script Registration::KvM01R_Guillaume 4_M_KY_KNT,{ // KvM Guillaume +bat_room,253,227,4 script Registration::KvM01R_Guillaume#custom 4_M_KY_KNT,{ // KvM Guillaume end; OnInit: - waitingroom "Battle Station 5 Players",5,"KvM01_BG::OnGuillaumeJoin",1; + waitingroom "Battle Station 5 Players",5,"KvM01_BG#custom::OnGuillaumeJoin",1; end; OnEnterBG: - set $@KvM01BG_id1, waitingroom2bg("bat_c01",53,128,"KvM01_BG::OnGuillaumeQuit","KvM01_BG::OnGuillaumeDie"); + set $@KvM01BG_id1, waitingroom2bg("bat_c01",53,128,"KvM01_BG#custom::OnGuillaumeQuit","KvM01_BG#custom::OnGuillaumeDie"); end; } -bat_room,253,204,0 script Registration::KvM01R_Croix 4_M_CRU_KNT,{ // KvM Croix +bat_room,253,204,0 script Registration::KvM01R_Croix#custom 4_M_CRU_KNT,{ // KvM Croix end; OnInit: - waitingroom "Battle Station 5 Players",5,"KvM01_BG::OnCroixJoin",1; + waitingroom "Battle Station 5 Players",5,"KvM01_BG#custom::OnCroixJoin",1; end; OnEnterBG: - set $@KvM01BG_id2, waitingroom2bg("bat_c01",146,55,"KvM01_BG::OnCroixQuit","KvM01_BG::OnCroixDie"); + set $@KvM01BG_id2, waitingroom2bg("bat_c01",146,55,"KvM01_BG#custom::OnCroixQuit","KvM01_BG#custom::OnCroixDie"); end; } @@ -49,7 +49,7 @@ bat_c01,145,60,0 duplicate(#bat_c01a) #bat_c01f HIDDEN_NPC // Battleground Engine // ********************************************************************* -- script KvM01_BG FAKE_NPC,{ +- script KvM01_BG#custom FAKE_NPC,{ end; OnInit: @@ -65,7 +65,7 @@ OnInit: OnGuillaumeJoin: OnCroixJoin: - donpcevent "KvM01_BG::OnReadyCheck"; + donpcevent "KvM01_BG#custom::OnReadyCheck"; end; OnGuillaumeQuit: @@ -76,7 +76,7 @@ OnGuillaumeDie: set .Guillaume_Count, .Guillaume_Count - 1; set .Croix_Score, .Croix_Score + 1; bg_updatescore "bat_c01",.Guillaume_Score,.Croix_Score; - if( .Guillaume_Count < 1 ) donpcevent "KvM01_BG::OnCroixWin"; + if( .Guillaume_Count < 1 ) donpcevent "KvM01_BG#custom::OnCroixWin"; } end; @@ -88,15 +88,15 @@ OnCroixDie: set .Croix_Count, .Croix_Count - 1; set .Guillaume_Score, .Guillaume_Score + 1; bg_updatescore "bat_c01",.Guillaume_Score,.Croix_Score; - if( .Croix_Count < 1 ) donpcevent "KvM01_BG::OnGuillaumeWin"; + if( .Croix_Count < 1 ) donpcevent "KvM01_BG#custom::OnGuillaumeWin"; } end; OnReadyCheck: if( $@KvM01BG ) end; - set .@Guillaume, getwaitingroomstate(0,"KvM01R_Guillaume"); - set .@Croix, getwaitingroomstate(0,"KvM01R_Croix"); + set .@Guillaume, getwaitingroomstate(0,"KvM01R_Guillaume#custom"); + set .@Croix, getwaitingroomstate(0,"KvM01R_Croix#custom"); if( .@Guillaume < 5 || .@Croix < 5 ) { @@ -111,9 +111,9 @@ OnReadyCheck: } set $@KvM01BG, 1; // Starting - donpcevent "KvM01R_Croix::OnEnterBG"; - donpcevent "KvM01R_Guillaume::OnEnterBG"; - donpcevent "KvM01_BG::OnStart"; + donpcevent "KvM01R_Croix#custom::OnEnterBG"; + donpcevent "KvM01R_Guillaume#custom::OnEnterBG"; + donpcevent "KvM01_BG#custom::OnStart"; end; OnStart: @@ -166,7 +166,7 @@ OnTimer30000: mapannounce "bat_c01","There are not enough players to start the battle",1,0x696969; stopnpctimer; sleep 2000; - donpcevent "KvM01_BG::OnStop"; + donpcevent "KvM01_BG#custom::OnStop"; end; } @@ -187,9 +187,9 @@ OnTimer300000: OnTimer330000: if( .Croix_Count > .Guillaume_Count ) - donpcevent "KvM01_BG::OnCroixWin"; + donpcevent "KvM01_BG#custom::OnCroixWin"; else if( .Croix_Count < .Guillaume_Count ) - donpcevent "KvM01_BG::OnGuillaumeWin"; + donpcevent "KvM01_BG#custom::OnGuillaumeWin"; else { // Draw Game set $@KvM01BG, 3; @@ -198,7 +198,7 @@ OnTimer330000: stopnpctimer; sleep 2000; mapannounce "bat_c01","The time is out! This is a Tie...",1,0x696969; - donpcevent "KvM01_BG::OnStop"; + donpcevent "KvM01_BG#custom::OnStop"; } end; @@ -209,7 +209,7 @@ OnGuillaumeWin: stopnpctimer; sleep 2000; mapannounce "bat_c01","The Guillaume Army has won the Battle of Kreiger Von Midgard",1,0x0000FF; - donpcevent "KvM01_BG::OnStop"; + donpcevent "KvM01_BG#custom::OnStop"; end; OnCroixWin: @@ -219,7 +219,7 @@ OnCroixWin: stopnpctimer; sleep 2000; mapannounce "bat_c01","The Croix Army has won the Battle of Kreiger Von Midgard",1,0xFF0000; - donpcevent "KvM01_BG::OnStop"; + donpcevent "KvM01_BG#custom::OnStop"; end; OnStop: @@ -230,12 +230,12 @@ OnStop: // Warp Teams bg_warp $@KvM01BG_id1,"bat_c01",53,128; bg_warp $@KvM01BG_id2,"bat_c01",146,55; - donpcevent "KvM01_BG_Out::OnBegin"; + donpcevent "KvM01_BG_Out#custom::OnBegin"; end; OnReset: stopnpctimer; - stopnpctimer "KvM01_BG_Out"; + stopnpctimer "KvM01_BG_Out#custom"; set .Croix_Count, 0; set .Guillaume_Count, 0; set .Croix_Score, 0; @@ -254,11 +254,11 @@ OnReset: bg_updatescore "bat_c01",0,0; sleep 2000; set $@KvM01BG, 0; - donpcevent "KvM01_BG::OnReadyCheck"; // Maybe a game is ready to start + donpcevent "KvM01_BG#custom::OnReadyCheck"; // Maybe a game is ready to start end; } -- script KvM01_BG_Out FAKE_NPC,{ +- script KvM01_BG_Out#custom FAKE_NPC,{ end; OnBegin: @@ -275,7 +275,7 @@ OnTimer50000: mapannounce "bat_c01","Battle of Kreiger Von Midgard will close in 10 seconds!",1,0x696969; end; OnTimer60000: - donpcevent "KvM01_BG::OnReset"; + donpcevent "KvM01_BG#custom::OnReset"; end; } diff --git a/npc/custom/battleground/bg_kvm02.txt b/npc/custom/battleground/bg_kvm02.txt index a6cadb3af..9ffc508a6 100644 --- a/npc/custom/battleground/bg_kvm02.txt +++ b/npc/custom/battleground/bg_kvm02.txt @@ -5,27 +5,27 @@ // Registration NPC's // ********************************************************************* -bat_room,225,227,4 script Registration::KvM02R_Guillaume 4_M_KY_KNT,{ // KvM Guillaume +bat_room,225,227,4 script Registration::KvM02R_Guillaume#custom 4_M_KY_KNT,{ // KvM Guillaume end; OnInit: - waitingroom "Battle Station 5 Players",5,"KvM02_BG::OnGuillaumeJoin",1; + waitingroom "Battle Station 5 Players",5,"KvM02_BG#custom::OnGuillaumeJoin",1; end; OnEnterBG: - set $@KvM02BG_id1, waitingroom2bg("bat_c02",53,128,"KvM02_BG::OnGuillaumeQuit","KvM02_BG::OnGuillaumeDie"); + set $@KvM02BG_id1, waitingroom2bg("bat_c02",53,128,"KvM02_BG#custom::OnGuillaumeQuit","KvM02_BG#custom::OnGuillaumeDie"); end; } -bat_room,225,204,0 script Registration::KvM02R_Croix 4_M_CRU_KNT,{ // KvM Croix +bat_room,225,204,0 script Registration::KvM02R_Croix#custom 4_M_CRU_KNT,{ // KvM Croix end; OnInit: - waitingroom "Battle Station 5 Players",5,"KvM02_BG::OnCroixJoin",1; + waitingroom "Battle Station 5 Players",5,"KvM02_BG#custom::OnCroixJoin",1; end; OnEnterBG: - set $@KvM02BG_id2, waitingroom2bg("bat_c02",146,55,"KvM02_BG::OnCroixQuit","KvM02_BG::OnCroixDie"); + set $@KvM02BG_id2, waitingroom2bg("bat_c02",146,55,"KvM02_BG#custom::OnCroixQuit","KvM02_BG#custom::OnCroixDie"); end; } @@ -49,7 +49,7 @@ bat_c02,145,60,0 duplicate(#bat_c02a) #bat_c02f HIDDEN_NPC // Battleground Engine // ********************************************************************* -- script KvM02_BG FAKE_NPC,{ +- script KvM02_BG#custom FAKE_NPC,{ end; OnInit: @@ -65,7 +65,7 @@ OnInit: OnGuillaumeJoin: OnCroixJoin: - donpcevent "KvM02_BG::OnReadyCheck"; + donpcevent "KvM02_BG#custom::OnReadyCheck"; end; OnGuillaumeQuit: @@ -76,7 +76,7 @@ OnGuillaumeDie: set .Guillaume_Count, .Guillaume_Count - 1; set .Croix_Score, .Croix_Score + 1; bg_updatescore "bat_c02",.Guillaume_Score,.Croix_Score; - if( .Guillaume_Count < 1 ) donpcevent "KvM02_BG::OnCroixWin"; + if( .Guillaume_Count < 1 ) donpcevent "KvM02_BG#custom::OnCroixWin"; } end; @@ -88,15 +88,15 @@ OnCroixDie: set .Croix_Count, .Croix_Count - 1; set .Guillaume_Score, .Guillaume_Score + 1; bg_updatescore "bat_c02",.Guillaume_Score,.Croix_Score; - if( .Croix_Count < 1 ) donpcevent "KvM02_BG::OnGuillaumeWin"; + if( .Croix_Count < 1 ) donpcevent "KvM02_BG#custom::OnGuillaumeWin"; } end; OnReadyCheck: if( $@KvM02BG ) end; - set .@Guillaume, getwaitingroomstate(0,"KvM02R_Guillaume"); - set .@Croix, getwaitingroomstate(0,"KvM02R_Croix"); + set .@Guillaume, getwaitingroomstate(0,"KvM02R_Guillaume#custom"); + set .@Croix, getwaitingroomstate(0,"KvM02R_Croix#custom"); if( .@Guillaume < 5 || .@Croix < 5 ) { @@ -111,9 +111,9 @@ OnReadyCheck: } set $@KvM02BG, 1; // Starting - donpcevent "KvM02R_Croix::OnEnterBG"; - donpcevent "KvM02R_Guillaume::OnEnterBG"; - donpcevent "KvM02_BG::OnStart"; + donpcevent "KvM02R_Croix#custom::OnEnterBG"; + donpcevent "KvM02R_Guillaume#custom::OnEnterBG"; + donpcevent "KvM02_BG#custom::OnStart"; end; OnStart: @@ -166,7 +166,7 @@ OnTimer30000: mapannounce "bat_c02","There are not enough players to start the battle",1,0x808080; stopnpctimer; sleep 2000; - donpcevent "KvM02_BG::OnStop"; + donpcevent "KvM02_BG#custom::OnStop"; end; } @@ -187,9 +187,9 @@ OnTimer300000: OnTimer330000: if( .Croix_Count > .Guillaume_Count ) - donpcevent "KvM02_BG::OnCroixWin"; + donpcevent "KvM02_BG#custom::OnCroixWin"; else if( .Croix_Count < .Guillaume_Count ) - donpcevent "KvM02_BG::OnGuillaumeWin"; + donpcevent "KvM02_BG#custom::OnGuillaumeWin"; else { // Draw Game set $@KvM02BG, 3; @@ -198,7 +198,7 @@ OnTimer330000: stopnpctimer; sleep 2000; mapannounce "bat_c02","The time is out! This is a Tie...",1,0x808080; - donpcevent "KvM02_BG::OnStop"; + donpcevent "KvM02_BG#custom::OnStop"; } end; @@ -209,7 +209,7 @@ OnGuillaumeWin: stopnpctimer; sleep 2000; mapannounce "bat_c02","The Guillaume Army has won the Battle of Kreiger Von Midgard",1,0x0000FF; - donpcevent "KvM02_BG::OnStop"; + donpcevent "KvM02_BG#custom::OnStop"; end; OnCroixWin: @@ -219,7 +219,7 @@ OnCroixWin: stopnpctimer; sleep 2000; mapannounce "bat_c02","The Croix Army has won the Battle of Kreiger Von Midgard",1,0xFF0000; - donpcevent "KvM02_BG::OnStop"; + donpcevent "KvM02_BG#custom::OnStop"; end; OnStop: @@ -230,12 +230,12 @@ OnStop: // Warp Teams bg_warp $@KvM02BG_id1,"bat_c02",53,128; bg_warp $@KvM02BG_id2,"bat_c02",146,55; - donpcevent "KvM02_BG_Out::OnBegin"; + donpcevent "KvM02_BG_Out#custom::OnBegin"; end; OnReset: stopnpctimer; - stopnpctimer "KvM02_BG_Out"; + stopnpctimer "KvM02_BG_Out#custom"; set .Croix_Count, 0; set .Guillaume_Count, 0; set .Croix_Score, 0; @@ -254,11 +254,11 @@ OnReset: bg_updatescore "bat_c02",0,0; sleep 2000; set $@KvM02BG, 0; - donpcevent "KvM02_BG::OnReadyCheck"; // Maybe a game is ready to start + donpcevent "KvM02_BG#custom::OnReadyCheck"; // Maybe a game is ready to start end; } -- script KvM02_BG_Out FAKE_NPC,{ +- script KvM02_BG_Out#custom FAKE_NPC,{ end; OnBegin: @@ -275,7 +275,7 @@ OnTimer50000: mapannounce "bat_c02","Battle of Kreiger Von Midgard will close in 10 seconds!",1,0x808080; end; OnTimer60000: - donpcevent "KvM02_BG::OnReset"; + donpcevent "KvM02_BG#custom::OnReset"; end; } diff --git a/npc/custom/battleground/bg_kvm03.txt b/npc/custom/battleground/bg_kvm03.txt index 8f255c90f..14d7c03a3 100644 --- a/npc/custom/battleground/bg_kvm03.txt +++ b/npc/custom/battleground/bg_kvm03.txt @@ -5,27 +5,27 @@ // Registration NPC's // ********************************************************************* -bat_room,197,227,4 script Registration::KvM03R_Guillaume 4_M_KY_KNT,{ // KvM Guillaume +bat_room,197,227,4 script Registration::KvM03R_Guillaume#custom 4_M_KY_KNT,{ // KvM Guillaume end; OnInit: - waitingroom "Battle Station 5 Players",5,"KvM03_BG::OnGuillaumeJoin",1; + waitingroom "Battle Station 5 Players",5,"KvM03_BG#custom::OnGuillaumeJoin",1; end; OnEnterBG: - set $@KvM03BG_id1, waitingroom2bg("bat_c03",53,128,"KvM03_BG::OnGuillaumeQuit","KvM03_BG::OnGuillaumeDie"); + set $@KvM03BG_id1, waitingroom2bg("bat_c03",53,128,"KvM03_BG#custom::OnGuillaumeQuit","KvM03_BG#custom::OnGuillaumeDie"); end; } -bat_room,197,204,0 script Registration::KvM03R_Croix 4_M_CRU_KNT,{ // KvM Croix +bat_room,197,204,0 script Registration::KvM03R_Croix#custom 4_M_CRU_KNT,{ // KvM Croix end; OnInit: - waitingroom "Battle Station 5 Players",5,"KvM03_BG::OnCroixJoin",1; + waitingroom "Battle Station 5 Players",5,"KvM03_BG#custom::OnCroixJoin",1; end; OnEnterBG: - set $@KvM03BG_id2, waitingroom2bg("bat_c03",146,55,"KvM03_BG::OnCroixQuit","KvM03_BG::OnCroixDie"); + set $@KvM03BG_id2, waitingroom2bg("bat_c03",146,55,"KvM03_BG#custom::OnCroixQuit","KvM03_BG#custom::OnCroixDie"); end; } @@ -49,7 +49,7 @@ bat_c03,145,60,0 duplicate(#bat_c03a) #bat_c03f HIDDEN_NPC // Battleground Engine // ********************************************************************* -- script KvM03_BG FAKE_NPC,{ +- script KvM03_BG#custom FAKE_NPC,{ end; OnInit: @@ -65,7 +65,7 @@ OnInit: OnGuillaumeJoin: OnCroixJoin: - donpcevent "KvM03_BG::OnReadyCheck"; + donpcevent "KvM03_BG#custom::OnReadyCheck"; end; OnGuillaumeQuit: @@ -76,7 +76,7 @@ OnGuillaumeDie: set .Guillaume_Count, .Guillaume_Count - 1; set .Croix_Score, .Croix_Score + 1; bg_updatescore "bat_c03",.Guillaume_Score,.Croix_Score; - if( .Guillaume_Count < 1 ) donpcevent "KvM03_BG::OnCroixWin"; + if( .Guillaume_Count < 1 ) donpcevent "KvM03_BG#custom::OnCroixWin"; } end; @@ -88,15 +88,15 @@ OnCroixDie: set .Croix_Count, .Croix_Count - 1; set .Guillaume_Score, .Guillaume_Score + 1; bg_updatescore "bat_c03",.Guillaume_Score,.Croix_Score; - if( .Croix_Count < 1 ) donpcevent "KvM03_BG::OnGuillaumeWin"; + if( .Croix_Count < 1 ) donpcevent "KvM03_BG#custom::OnGuillaumeWin"; } end; OnReadyCheck: if( $@KvM03BG ) end; - set .@Guillaume, getwaitingroomstate(0,"KvM03R_Guillaume"); - set .@Croix, getwaitingroomstate(0,"KvM03R_Croix"); + set .@Guillaume, getwaitingroomstate(0,"KvM03R_Guillaume#custom"); + set .@Croix, getwaitingroomstate(0,"KvM03R_Croix#custom"); if( .@Guillaume < 5 || .@Croix < 5 ) { @@ -111,9 +111,9 @@ OnReadyCheck: } set $@KvM03BG, 1; // Starting - donpcevent "KvM03R_Croix::OnEnterBG"; - donpcevent "KvM03R_Guillaume::OnEnterBG"; - donpcevent "KvM03_BG::OnStart"; + donpcevent "KvM03R_Croix#custom::OnEnterBG"; + donpcevent "KvM03R_Guillaume#custom::OnEnterBG"; + donpcevent "KvM03_BG#custom::OnStart"; end; OnStart: @@ -166,7 +166,7 @@ OnTimer30000: mapannounce "bat_c03","There are not enough players to start the battle",1,0xC0C0C0; stopnpctimer; sleep 2000; - donpcevent "KvM03_BG::OnStop"; + donpcevent "KvM03_BG#custom::OnStop"; end; } @@ -187,9 +187,9 @@ OnTimer300000: OnTimer330000: if( .Croix_Count > .Guillaume_Count ) - donpcevent "KvM03_BG::OnCroixWin"; + donpcevent "KvM03_BG#custom::OnCroixWin"; else if( .Croix_Count < .Guillaume_Count ) - donpcevent "KvM03_BG::OnGuillaumeWin"; + donpcevent "KvM03_BG#custom::OnGuillaumeWin"; else { // Draw Game set $@KvM03BG, 3; @@ -198,7 +198,7 @@ OnTimer330000: stopnpctimer; sleep 2000; mapannounce "bat_c03","The time is out! This is a Tie...",1,0xC0C0C0; - donpcevent "KvM03_BG::OnStop"; + donpcevent "KvM03_BG#custom::OnStop"; } end; @@ -209,7 +209,7 @@ OnGuillaumeWin: stopnpctimer; sleep 2000; mapannounce "bat_c03","The Guillaume Army has won the Battle of Kreiger Von Midgard",1,0x0000FF; - donpcevent "KvM03_BG::OnStop"; + donpcevent "KvM03_BG#custom::OnStop"; end; OnCroixWin: @@ -219,7 +219,7 @@ OnCroixWin: stopnpctimer; sleep 2000; mapannounce "bat_c03","The Croix Army has won the Battle of Kreiger Von Midgard",1,0xFF0000; - donpcevent "KvM03_BG::OnStop"; + donpcevent "KvM03_BG#custom::OnStop"; end; OnStop: @@ -230,12 +230,12 @@ OnStop: // Warp Teams bg_warp $@KvM03BG_id1,"bat_c03",53,128; bg_warp $@KvM03BG_id2,"bat_c03",146,55; - donpcevent "KvM03_BG_Out::OnBegin"; + donpcevent "KvM03_BG_Out#custom::OnBegin"; end; OnReset: stopnpctimer; - stopnpctimer "KvM03_BG_Out"; + stopnpctimer "KvM03_BG_Out#custom"; set .Croix_Count, 0; set .Guillaume_Count, 0; set .Croix_Score, 0; @@ -254,11 +254,11 @@ OnReset: bg_updatescore "bat_c03",0,0; sleep 2000; set $@KvM03BG, 0; - donpcevent "KvM03_BG::OnReadyCheck"; // Maybe a game is ready to start + donpcevent "KvM03_BG#custom::OnReadyCheck"; // Maybe a game is ready to start end; } -- script KvM03_BG_Out FAKE_NPC,{ +- script KvM03_BG_Out#custom FAKE_NPC,{ end; OnBegin: @@ -275,7 +275,7 @@ OnTimer50000: mapannounce "bat_c03","Battle of Kreiger Von Midgard will close in 10 seconds!",1,0xC0C0C0; end; OnTimer60000: - donpcevent "KvM03_BG::OnReset"; + donpcevent "KvM03_BG#custom::OnReset"; end; } diff --git a/npc/jobs/2-1/wizard.txt b/npc/jobs/2-1/wizard.txt index 3814e1880..3c779f188 100644 --- a/npc/jobs/2-1/wizard.txt +++ b/npc/jobs/2-1/wizard.txt @@ -1527,7 +1527,7 @@ OnTimer183000: end; OnTimer184000: - enablenpc "Room of Fire#Failed"; + areawarp("job_wiz", 30, 83, 62, 115, "geffen", 120, 110); end; OnTimer185000: @@ -1535,8 +1535,6 @@ OnTimer185000: end; OnTimer186000: - disablenpc "Room of Fire#Failed"; - donpcevent "Room of Fire::OnDisable"; donpcevent "Arena Assistant::OnStart"; end; } @@ -1604,7 +1602,7 @@ OnTimer120000: end; OnTimer121000: - enablenpc "Room of Fire#Failed"; + areawarp("job_wiz", 30, 83, 62, 115, "geffen", 120, 110); end; OnTimer122000: @@ -1612,21 +1610,10 @@ OnTimer122000: end; OnTimer123000: - disablenpc "Room of Fire#Failed"; donpcevent "Room of Fire#Door::OnDisable"; donpcevent "Arena Assistant::OnStart"; } -job_wiz,46,99,0 script Room of Fire#Failed FAKE_NPC,16,16,{ -OnInit: - disablenpc "Room of Fire#Failed"; - end; - -OnTouch: - warp "geffen",120,110; - end; -} - job_wiz,1,7,1 script Test Helper#wiz 1_F_01,{ end; diff --git a/npc/mapflag/night.txt b/npc/mapflag/night.txt index 3e421bf13..444189412 100644 --- a/npc/mapflag/night.txt +++ b/npc/mapflag/night.txt @@ -263,8 +263,8 @@ ve_fild06 mapflag nightenabled ve_fild07 mapflag nightenabled //Episode 12 ==================== -poring_c01 mapflag nightenabled -poring_c02 mapflag nightenabled +//poring_c01 mapflag nightenabled +//poring_c02 mapflag nightenabled nameless_i mapflag nightenabled nameless_n mapflag nightenabled poring_w01 mapflag nightenabled diff --git a/npc/mapflag/nobranch.txt b/npc/mapflag/nobranch.txt index 4007c8203..7e4f3b49d 100644 --- a/npc/mapflag/nobranch.txt +++ b/npc/mapflag/nobranch.txt @@ -153,8 +153,8 @@ que_god01 mapflag nobranch que_god02 mapflag nobranch que_bingo mapflag nobranch que_hugel mapflag nobranch -poring_c01 mapflag nobranch -poring_c02 mapflag nobranch +//poring_c01 mapflag nobranch +//poring_c02 mapflag nobranch kh_mansion mapflag nobranch kh_rossi mapflag nobranch kh_school mapflag nobranch diff --git a/npc/mapflag/nomemo.txt b/npc/mapflag/nomemo.txt index 548f1563e..d4f7140fe 100644 --- a/npc/mapflag/nomemo.txt +++ b/npc/mapflag/nomemo.txt @@ -259,8 +259,8 @@ que_hugel mapflag nomemo que_rachel mapflag nomemo que_san04 mapflag nomemo que_thor mapflag nomemo -poring_c01 mapflag nomemo -poring_c02 mapflag nomemo +//poring_c01 mapflag nomemo +//poring_c02 mapflag nomemo // Dungeons ================= alde_dun01 mapflag nomemo alde_dun02 mapflag nomemo diff --git a/npc/mapflag/nopet.txt b/npc/mapflag/nopet.txt new file mode 100644 index 000000000..82f9e36eb --- /dev/null +++ b/npc/mapflag/nopet.txt @@ -0,0 +1,78 @@ +//================= Hercules Script ======================================= +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2012-2020 Hercules Dev Team +//= +//= Hercules is free software: you can redistribute it and/or modify +//= it under the terms of the GNU General Public License as published by +//= the Free Software Foundation, either version 3 of the License, or +//= (at your option) any later version. +//= +//= This program is distributed in the hope that it will be useful, +//= but WITHOUT ANY WARRANTY; without even the implied warranty of +//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//= GNU General Public License for more details. +//= +//= You should have received a copy of the GNU General Public License +//= along with this program. If not, see <http://www.gnu.org/licenses/>. +//========================================================================= +//= Mapflag: Disable pet in map. +//================= Current Version ======================================= +//= 1.0 +//================= Description =========================================== +//= Players can't hatch pet in the map, existing pet will return to egg. +//========================================================================= + +// GvG Arenas ============= +// guild_vs1 mapflag nopet +// guild_vs2 mapflag nopet +// guild_vs3 mapflag nopet +// guild_vs4 mapflag nopet +// guild_vs5 mapflag nopet + +// Guild Castles ========== +// aldeg_cas01 mapflag nopet +// aldeg_cas02 mapflag nopet +// aldeg_cas03 mapflag nopet +// aldeg_cas04 mapflag nopet +// aldeg_cas05 mapflag nopet +// gefg_cas01 mapflag nopet +// gefg_cas02 mapflag nopet +// gefg_cas03 mapflag nopet +// gefg_cas04 mapflag nopet +// gefg_cas05 mapflag nopet +// payg_cas01 mapflag nopet +// payg_cas02 mapflag nopet +// payg_cas03 mapflag nopet +// payg_cas04 mapflag nopet +// payg_cas05 mapflag nopet +// prtg_cas01 mapflag nopet +// prtg_cas02 mapflag nopet +// prtg_cas03 mapflag nopet +// prtg_cas04 mapflag nopet +// prtg_cas05 mapflag nopet +// schg_cas01 mapflag nopet +// schg_cas02 mapflag nopet +// schg_cas03 mapflag nopet +// schg_cas04 mapflag nopet +// schg_cas05 mapflag nopet +// arug_cas01 mapflag nopet +// arug_cas02 mapflag nopet +// arug_cas03 mapflag nopet +// arug_cas04 mapflag nopet +// arug_cas05 mapflag nopet + +// Novice Guild Castles === +// n_castle mapflag nopet +// nguild_alde mapflag nopet +// nguild_gef mapflag nopet +// nguild_pay mapflag nopet +// nguild_prt mapflag nopet diff --git a/npc/mapflag/noteleport.txt b/npc/mapflag/noteleport.txt index 537781075..9f41e4342 100644 --- a/npc/mapflag/noteleport.txt +++ b/npc/mapflag/noteleport.txt @@ -186,8 +186,8 @@ kh_kiehl01 mapflag noteleport kh_kiehl02 mapflag noteleport que_rachel mapflag noteleport que_thor mapflag noteleport -poring_c01 mapflag noteleport -poring_c02 mapflag noteleport +//poring_c01 mapflag noteleport +//poring_c02 mapflag noteleport que_job01 mapflag noteleport que_job02 mapflag noteleport que_job03 mapflag noteleport diff --git a/npc/quests/quests_amatsu.txt b/npc/quests/quests_amatsu.txt index 3c55f91a3..504ab6032 100644 --- a/npc/quests/quests_amatsu.txt +++ b/npc/quests/quests_amatsu.txt @@ -399,11 +399,14 @@ OnStartArena: enablenpc "Grandma#ama1"; enablenpc "Grandpa#ama"; warpwaitingpc "ama_test",50,83; - donpcevent "Timer#ama::OnEnable"; + enablenpc("Timer#ama"); + initnpctimer("Timer#ama"); disablewaitingroomevent "Assistant#ama"; end; OnReset: + stopnpctimer("Timer#ama"); + disablenpc("Timer#ama"); enablewaitingroomevent "Assistant#ama"; end; } @@ -620,7 +623,6 @@ ama_test,50,100,3 script Coach#ama 4_M_JPN2,15,15,{ mes "Don't lose your high self-esteem"; mes "in the future. Farewell."; close2; - donpcevent "Timer#ama::OnDisable"; warp "amatsu",223,230; disablenpc "Coach#ama"; donpcevent "Assistant#ama::OnReset"; @@ -665,7 +667,6 @@ ama_test,50,100,3 script Coach#ama 4_M_JPN2,15,15,{ setquest 8128; warp "amatsu",223,230; disablenpc "Coach#ama"; - donpcevent "Timer#ama::OnDisable"; donpcevent "Assistant#ama::OnReset"; end; } @@ -754,7 +755,6 @@ OnTouch: changequest 8129,8130; warp "amatsu",223,230; disablenpc "Coach#after"; - donpcevent "Timer#ama::OnDisable"; donpcevent "Assistant#ama::OnReset"; end; } @@ -764,14 +764,6 @@ OnInit: disablenpc "Timer#ama"; end; -OnEnable: - enablenpc "Timer#ama"; - initnpctimer; - end; -OnDisable: - stopnpctimer; - end; - OnTimer1000: mapannounce "ama_test"," The Timer has been activated. You have 6 minutes. Annihilate the monsters in time! ",bc_map; end; @@ -788,26 +780,11 @@ OnTimer361000: end; OnTimer361500: - enablenpc "backwarp#ama"; - end; - -OnTimer362000: - disablenpc "backwarp#ama"; + areawarp("ama_test", 25, 75, 80, 130, "amatsu", 115, 95); end; OnTimer362500: donpcevent "Assistant#ama::OnReset"; - donpcevent "Timer#ama::OnDisable"; - end; -} - -ama_test,50,100,0 script backwarp#ama FAKE_NPC,25,25,{ -OnInit: - disablenpc "backwarp#ama"; - end; - -OnTouch: - warp "amatsu",115,95; end; } diff --git a/npc/quests/quests_juperos.txt b/npc/quests/quests_juperos.txt index d120bfc27..f9120796d 100644 --- a/npc/quests/quests_juperos.txt +++ b/npc/quests/quests_juperos.txt @@ -4914,7 +4914,7 @@ OnTouch: case 1: specialeffect(EF_LIGHTSPHERE, AREA, playerattached()); close2; - stopnpctimer; + stopnpctimer(1); warp "juperos_02",130,142; break; case 2: @@ -4922,7 +4922,7 @@ OnTouch: mes "Not now!"; mes "I can't leave yet!"; close2; - stopnpctimer; + stopnpctimer(1); warp "jupe_gate",50,168; break; } @@ -4930,23 +4930,7 @@ OnTouch: OnTimer10000: warp "juperos_02",128,278; - enablenpc "gate#start#2"; - disablenpc "gate#start"; - end; -} - -jupe_gate,50,171,0 script gate#start#2 FAKE_NPC,2,2,{ -OnInit: - disablenpc "gate#start#2"; - end; - -OnTouch: - warp "juperos_02",130,142; - end; - -OnTimer2000: - enablenpc "gate#start"; - disablenpc "gate#start#2"; + areawarp("jupe_gate", 48, 169, 52, 173, "juperos_02", 130, 142); end; } diff --git a/npc/quests/quests_lighthalzen.txt b/npc/quests/quests_lighthalzen.txt index fe8abf473..0d83efd3c 100644 --- a/npc/quests/quests_lighthalzen.txt +++ b/npc/quests/quests_lighthalzen.txt @@ -9774,27 +9774,17 @@ OnTouch: } lhz_in01,177,44,0 script Timer_Sneak FAKE_NPC,8,12,{ - -OnTouch: - warp "lhz_in01",191,49; - end; - -OnInit: - disablenpc "Timer_Sneak"; - end; - OnEnter: stopnpctimer; initnpctimer; end; OnTimer180000: - enablenpc "Timer_Sneak"; + areawarp("lhz_in01", 169, 32, 185, 56, "lhz_in01", 191, 49); end; OnTimer190000: stopnpctimer; - disablenpc "Timer_Sneak"; end; } diff --git a/npc/quests/quests_moscovia.txt b/npc/quests/quests_moscovia.txt index 3f44a9b0a..e0678cec9 100644 --- a/npc/quests/quests_moscovia.txt +++ b/npc/quests/quests_moscovia.txt @@ -1134,7 +1134,7 @@ mosk_ship,101,111,4 script rudder#ship HIDDEN_NPC,{ mes "Hey! Listen to what I am saying."; mes "How come you go there without my"; mes "permission..."; - next; + close; } mes "[Mr. Ibanoff]"; mes "What? How did you get on"; @@ -1171,7 +1171,10 @@ S_Rud1: mes "ever encountered! Be careful! We"; mes "must repulse these monsters!"; ++$@mos1_edq; - donpcevent "Baehideun3#ship::OnEnable"; + if (mos_whale_edq >= 241) + donpcevent "Baehideun4#ship::OnEnable"; + else + donpcevent "Baehideun3#ship::OnEnable"; } mos_whale_edq = (getarg(1) == 2)?((mos_whale_edq >= 241)?((.@r != 3)?26:25):((.@r != 3)?10:11)):mos_whale_edq + 1; close; diff --git a/npc/quests/seals/god_weapon_creation.txt b/npc/quests/seals/god_weapon_creation.txt index 8009bd36d..17979e51a 100644 --- a/npc/quests/seals/god_weapon_creation.txt +++ b/npc/quests/seals/god_weapon_creation.txt @@ -807,41 +807,15 @@ OnTimer610000: end; OnTimer612000: - donpcevent "god_wep_warpmaster::OnEnable"; + areawarp("que_god01", 130, 55, 190, 135, "prontera", 156, 324); end; OnTimer615000: - donpcevent "god_wep_warpmaster::OnDisable"; donpcevent "#god_hopewarp1::OnReset"; stopnpctimer; end; } -que_god01,169,82,0 script god_wep_warpmaster FAKE_NPC,{ -OnEnable: - for(.@i = 1; .@i<=6; ++.@i) - enablenpc "god_failwarp#"+.@i; - end; -OnDisable: - for(.@i = 1; .@i<=6; ++.@i) - disablenpc "god_failwarp#"+.@i; - end; -} - -que_god01,154,67,0 script god_failwarp#1 FAKE_NPC,4,7,{ -OnInit: - disablenpc strnpcinfo(NPC_NAME); - end; -OnTouch: - warp "prontera",156,324; - end; -} -que_god01,154,82,0 duplicate(god_failwarp#1) god_failwarp#2 FAKE_NPC,4,7 -que_god01,145,99,0 duplicate(god_failwarp#1) god_failwarp#3 FAKE_NPC,9,9 -que_god01,164,99,0 duplicate(god_failwarp#1) god_failwarp#4 FAKE_NPC,9,9 -que_god01,145,118,0 duplicate(god_failwarp#1) god_failwarp#5 FAKE_NPC,9,9 -que_god01,164,118,0 duplicate(god_failwarp#1) god_failwarp#6 FAKE_NPC,9,9 - // Original name: "Godly Item Quests Related#god" que_god01,293,3,0 script Godly Item Quests#god 4_F_01,{ callfunc "F_GM_NPC"; @@ -864,24 +838,16 @@ que_god01,293,3,0 script Godly Item Quests#god 4_F_01,{ mes "[Use in case of emergency]"; mes "What services would you like to use?"; next; - switch(select("Turn off Warps.", "Reset Timer.", "Reset chat room.")) { + switch(select("Reset Timer.", "Reset chat room.")) { case 1: mes "[Use in case of emergency]"; - mes "Press the 'Next' button to turn off warps."; - next; - donpcevent "god_wep_warpmaster::OnDisable"; - mes "[Use in case of emergency]"; - mes "You have successfully turned off warps."; - close; - case 2: - mes "[Use in case of emergency]"; mes "Press the 'Next' button to reset timer."; next; donpcevent "Grunburti#god::OnEnable"; mes "[Use in case of emergency]"; mes "You have successfully reset timer."; close; - case 3: + case 2: mes "[Use in case of emergency]"; mes "Please press the 'Next' button to reset the arena chat room in que_god01."; next; diff --git a/npc/quests/the_sign_quest.txt b/npc/quests/the_sign_quest.txt index 5949c3558..d7db39dff 100644 --- a/npc/quests/the_sign_quest.txt +++ b/npc/quests/the_sign_quest.txt @@ -12317,34 +12317,18 @@ OnEnable: end; } -que_sign01,196,44,0 script Warp#serin FAKE_NPC,35,35,{ -OnDisable: -OnInit: - disablenpc "Warp#serin"; - end; - -OnTouch: - warp "niflheim",30,156; - end; - -OnEnable: - enablenpc "Warp#serin"; - end; -} - que_sign01,1,0,0 script Timer#serin FAKE_NPC,{ OnStart: initnpctimer; end; OnTimer600000: - donpcevent "Warp#serin::OnEnable"; + areawarp("que_sign01", 161, 9, 231, 79, "niflheim", 30, 156); end; OnTimer620000: $@sign_w2 = 0; donpcevent "Starter#serin::OnEnable"; - donpcevent "Warp#serin::OnDisable"; donpcevent "Serin#serin::OnEnable"; donpcevent "Dark Lord#serin::OnDisable"; donpcevent "Serin#dummy::OnDisable"; diff --git a/npc/re/merchants/hd_refiner.txt b/npc/re/merchants/hd_refiner.txt index 43cdc2c01..7b032efff 100644 --- a/npc/re/merchants/hd_refiner.txt +++ b/npc/re/merchants/hd_refiner.txt @@ -38,7 +38,7 @@ //========================================================================= //== Blacksmith Mighty Hammer (+7~9) ======================= -- script ::MightyHammer FAKE_NPC,{ +- script ::MightyHammer#re FAKE_NPC,{ mes("[Blacksmith Mighty Hammer]"); mes("I'm a blacksmith skilled in refining weapons and armors."); mes("I can refine an item of your choice among the items you are equipped with."); @@ -171,20 +171,20 @@ mes "I am sure a person like you would never blame me for a decrease in refine level by 1. Hmm."; close; } -prt_in,59,54,3 duplicate(MightyHammer) Mighty Hammer#prt 4_M_DWARF -morocc_in,65,30,3 duplicate(MightyHammer) Mighty Hammer#morocc 4_M_DWARF -payon,148,176,3 duplicate(MightyHammer) Mighty Hammer#pay 4_M_DWARF -alberta_in,16,56,3 duplicate(MightyHammer) Mighty Hammer#alb 4_M_DWARF -yuno_in01,171,18,3 duplicate(MightyHammer) Mighty Hammer#yuno 4_M_DWARF -ein_in01,22,82,3 duplicate(MightyHammer) Mighty Hammer#ein 4_M_DWARF -lhz_in02,280,19,3 duplicate(MightyHammer) Mighty Hammer#lhz 4_M_DWARF +prt_in,59,54,3 duplicate(MightyHammer#re) Mighty Hammer#prtre 4_M_DWARF +morocc_in,65,30,3 duplicate(MightyHammer#re) Mighty Hammer#moroccre 4_M_DWARF +payon,148,176,3 duplicate(MightyHammer#re) Mighty Hammer#payre 4_M_DWARF +alberta_in,16,56,3 duplicate(MightyHammer#re) Mighty Hammer#albre 4_M_DWARF +yuno_in01,171,18,3 duplicate(MightyHammer#re) Mighty Hammer#yunore 4_M_DWARF +ein_in01,22,82,3 duplicate(MightyHammer#re) Mighty Hammer#einre 4_M_DWARF +lhz_in02,280,19,3 duplicate(MightyHammer#re) Mighty Hammer#lhzre 4_M_DWARF //- iRO NPC locations - -//moc_para01,38,185,4 duplicate(MightyHammer) Mighty Hammer#ed 4_M_DWARF -//payon,174,133,4 duplicate(MightyHammer) Mighty Hammer#im 4_M_DWARF +//moc_para01,38,185,4 duplicate(MightyHammer#re) Mighty Hammer#edre 4_M_DWARF +//payon,174,133,4 duplicate(MightyHammer#re) Mighty Hammer#imre 4_M_DWARF //== Basta (+10 and up) ==================================== -- script ::Basta FAKE_NPC,{ +- script ::Basta#re FAKE_NPC,{ disable_items; mes "[Basta]"; mes "I'm the best Blacksmith in the whole world, Basta."; @@ -327,10 +327,10 @@ lhz_in02,280,19,3 duplicate(MightyHammer) Mighty Hammer#lhz 4_M_DWARF mes "I'll do better next time! Don't worry!"; close; } -prt_in,57,54,3 duplicate(Basta) Basta#prt 4_M_DWARF -morocc_in,68,30,3 duplicate(Basta) Basta#morocc 4_M_DWARF -payon,148,174,3 duplicate(Basta) Basta#payon 4_M_DWARF -alberta_in,18,56,3 duplicate(Basta) Basta#alberta 4_M_DWARF -yuno_in01,173,18,3 duplicate(Basta) Basta#yuno 4_M_DWARF -ein_in01,24,82,3 duplicate(Basta) Basta#einbroch 4_M_DWARF -lhz_in02,280,17,3 duplicate(Basta) Basta#lighthalzen 4_M_DWARF +prt_in,57,54,3 duplicate(Basta#re) Basta#prtre 4_M_DWARF +morocc_in,68,30,3 duplicate(Basta#re) Basta#moroccre 4_M_DWARF +payon,148,174,3 duplicate(Basta#re) Basta#payonre 4_M_DWARF +alberta_in,18,56,3 duplicate(Basta#re) Basta#albertare 4_M_DWARF +yuno_in01,173,18,3 duplicate(Basta#re) Basta#yunore 4_M_DWARF +ein_in01,24,82,3 duplicate(Basta#re) Basta#einbrochre 4_M_DWARF +lhz_in02,280,17,3 duplicate(Basta#re) Basta#lighthalzenre 4_M_DWARF diff --git a/npc/scripts.conf b/npc/scripts.conf index 086370899..c5dd2b54b 100644 --- a/npc/scripts.conf +++ b/npc/scripts.conf @@ -120,7 +120,8 @@ "npc/events/god_se_festival.txt", // - Official Halloween Events (iRO) //"npc/events/halloween_2006.txt", -//"npc/events/halloween_2008.txt", +// missing map +// "npc/events/halloween_2008.txt", //"npc/events/halloween_2009.txt", // - Official idRO Idul Fitri Event //"npc/events/idul_fitri.txt", diff --git a/npc/scripts_dev.conf b/npc/scripts_dev.conf index d6d807a74..df644013d 100644 --- a/npc/scripts_dev.conf +++ b/npc/scripts_dev.conf @@ -31,4 +31,4 @@ //========================================================================= //================= Script Engine self-test =============================== -//"npc: npc/dev/test.txt", +//"npc/dev/test.txt", diff --git a/npc/scripts_mapflags.conf b/npc/scripts_mapflags.conf index 084004244..74fb40610 100644 --- a/npc/scripts_mapflags.conf +++ b/npc/scripts_mapflags.conf @@ -58,3 +58,4 @@ "npc/mapflag/skillduration.txt", "npc/mapflag/notomb.txt", "npc/mapflag/private_airship.txt", +"npc/mapflag/nopet.txt", |