From 58ac1ba82e3c860bc104f7d17bb69de4ec8d1835 Mon Sep 17 00:00:00 2001 From: jesusalva Date: Fri, 2 Mar 2018 02:12:00 -0300 Subject: Move Cassia and lieutenants to GM island, Aeros --- npc/001-1/_import.txt | 1 + npc/001-1/bgmaster.txt | 308 ++++++++++++++++++++++++++++++++++++++++++ npc/004-1/_import.txt | 1 - npc/004-1/bgmaster.txt | 354 ------------------------------------------------- 4 files changed, 309 insertions(+), 355 deletions(-) create mode 100644 npc/001-1/bgmaster.txt delete mode 100644 npc/004-1/bgmaster.txt diff --git a/npc/001-1/_import.txt b/npc/001-1/_import.txt index 87e80b62a..0c9567cfa 100644 --- a/npc/001-1/_import.txt +++ b/npc/001-1/_import.txt @@ -1,5 +1,6 @@ // Map 001-1: Floating Island of Aeros // This file is generated automatically. All manually added changes will be removed when running the Converter. +"npc/001-1/bgmaster.txt", "npc/001-1/mapflags.txt", "npc/001-1/portal.txt", "npc/001-1/rewards.txt", diff --git a/npc/001-1/bgmaster.txt b/npc/001-1/bgmaster.txt new file mode 100644 index 000000000..b24996411 --- /dev/null +++ b/npc/001-1/bgmaster.txt @@ -0,0 +1,308 @@ +// TMW2 Scripts. +// Author: +// Jesusalva + +// Original File + +001-1,96,37,0 script Cassia NPC_FEMALE,{ + mesn; + /* + //if ($@BattleOn) goto L_Busy; + mesq l("Hello! I am @@, currently in charge of the Desert Pass.", .name$); + next; + atcommand("@time"); + mesq l("The Fallen Kings challenge ownership of this pass at ##B08:00##b, ##B16:00##b and ##B00:00##b."); + next; + mesq l("Right click on one of their representatives, and choose to join a \'Chat\' when it is close of the time!"); + next; + mesq l("Just as a warning, main chat will change. Use it to discuss the strategy!"); + if (!getgmlevel()) goto L_Close; + mes ""; + menu + l("Join team 1."), L_T1, + l("Join team 2."), L_T2; + */ + if ($@BGMaster1) goto L_Busy; + if (getgmlevel()) goto L_Control; + +L_Intro: + mesq l("Hello! I am Cassia, Ambassator. During the Monster War outbreak, Frostia and Halinarzo felt."); + next; + mesq l("To train their soldiers, they frequently face one against other in duels. Adventurers are welcome to join their drills."); + next; + mesq l("To join a drill, right click on one of the lieutenants and join their Battle Stations. The drill can last up to 10 minutes."); + next; + mesq l("The sides accept only one adventurer. You'll also lose access to General Chat upon joining, and will have to use #world."); + next; + mesq l("Be sure to have a friend before joining, or you may have to logout in order to be able to move again!"); + close; + +L_Close: + close; + +L_Busy: + if ($@BGMaster1 == 2) { + mesq l("The soldiers are resting at the moment."); + } else { + mesq l("People are challenging now."); + } + close; + +L_Control: + menu + l("Introduce"), L_Intro, + l("Enable BG"), L_On, + l("Disable BG"), L_Off; + +L_On: + enablenpc "Lt. Randy"; + enablenpc "Lt. Gerry"; + mapannounce "001-1", "Frostia and Halinarzo are now on a spar!", bc_map; + mes "Event enabled."; + close; + +L_Off: + disablenpc "Lt. Randy"; + disablenpc "Lt. Gerry"; + mes "Event disabled."; + close; + +OnPcQuit: + warp "002-4", 0, 0; + bg_leave(); + end; + +OnPcDeath: + warp "002-4", 0, 0; + bg_leave(); + end; + +OnTimer60000: + if (getmapusers("001-2") < 2 || .BGC > 10) goto L_Cancel; + + mapannounce("001-2", "Reinforcements raise!", bc_map); + $@FKing_T1 = bg_monster($@FK_Team1, "001-2", 125, 38, "FallenGuard1", 1081, "Cassia::OnSkip"); + $@FKing_T2 = bg_monster($@FK_Team2, "001-2",124, 213, "FallenGuard2", 1082, "Cassia::OnSkip"); + .BGC+=1; + stopnpctimer(); + initnpctimer(); + end; + +// Arena Cooldown (every 8 hours) (CET time) +OnClock0000: +OnClock0800: +OnClock1600: + if ($@BGMaster1 == 2) $@BGMaster1=0; + end; + +OnSkip: + end; + +L_Skip: + end; + +L_RestartTimer: + stopnpctimer(); + initnpctimer(); + end; + +L_Cancel: + stopnpctimer(); + announce "The Fallen Kings Duel ended in a draw!", bc_all; + killmonsterall "001-2"; + + mapwarp "001-2", "001-1", 235, 27; + bg_destroy($@FK_Team1); + bg_destroy($@FK_Team2); + $@BGMaster1=2; + end; + +OnVictor1: + if (!$@BGMaster1) goto L_Skip; + stopnpctimer(); + announce "Team 1 raises victorious at the Fallen Kings Duel!", bc_all; // TODO: Give players a reward + killmonsterall "001-2"; + + mapwarp "001-2", "001-1", 117, 72; + bg_destroy($@FK_Team1); + bg_destroy($@FK_Team2); + $@BGMaster1=2; + end; + +OnVictor2: + if (!$@BGMaster1) goto L_Skip; + stopnpctimer(); + announce "Team 2 raises victorious at the Fallen Kings Duel!", bc_all; + killmonsterall "001-2"; + + mapwarp "001-2", "001-1", 117, 72; + bg_destroy($@FK_Team1); + bg_destroy($@FK_Team2); + $@BGMaster1=2; + end; + +OnInit: + .@npcId = getnpcid(0, .name$); + setunitdata(.@npcId, UDT_HEADTOP, 1322); // Dress + setunitdata(.@npcId, UDT_HEADMIDDLE, 2204); // Not needed + setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes + setunitdata(.@npcId, UDT_WEAPON, 3501); + setunitdata(.@npcId, UDT_HAIRSTYLE, 12); + setunitdata(.@npcId, UDT_HAIRCOLOR, 5); + npcsit; + + .sex = G_FEMALE; + .distance = 7; + /* + // This script is TODO + if (!debug) { + disablenpc "Cassia"; + }*/ + end; + +OnDoEvent: + .BGC=0; + mapannounce("001-2", "May the fight begin!", bc_map); + $@FKing_T1 = bg_monster($@FK_Team1, "001-2", 125, 38, "FallenKing1", 1079, "Cassia::OnVictor2"); + $@FKing_T2 = bg_monster($@FK_Team2, "001-2", 124, 213, "FallenKing2", 1080, "Cassia::OnVictor1"); + initnpctimer(); + end; +} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +001-1,94,36,0 script Lt. Randy NPC_ELF,{ + hello; + +OnInit: + .@npcId = getnpcid(0, .name$); + setunitdata(.@npcId, UDT_HEADTOP, 1312); // Light armor + setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants + setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes + setunitdata(.@npcId, UDT_WEAPON, 3501); + setunitdata(.@npcId, UDT_HAIRSTYLE, 13); + setunitdata(.@npcId, UDT_HAIRCOLOR, 7); + + waitingroom("Battle Station", 2, "start#bat_a02::OnReadyCheck", 1); + + disablenpc("Lt. Randy"); + end; + +OnEnterBG: + $@FK_Team1 = waitingroom2bg("001-2",126, 38,"start#bat_a02::OnSide1Quit",""); + end; +} + +001-1,98,36,0 script Lt. Gerry NPC_ELF,{ + hello; + +OnInit: + .@npcId = getnpcid(0, .name$); + setunitdata(.@npcId, UDT_HEADTOP, 1311); // Terranite armor + setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants + setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes + setunitdata(.@npcId, UDT_WEAPON, 3501); + setunitdata(.@npcId, UDT_HAIRSTYLE, 13); + setunitdata(.@npcId, UDT_HAIRCOLOR, 7); + + waitingroom("Battle Station", 2, "start#bat_a02::OnReadyCheck", 1); + + disablenpc("Lt. Gerry"); + end; + +OnEnterBG: + $@FK_Team2 = waitingroom2bg("001-2",124,213,"start#bat_a02::OnSide2Quit",""); + end; +} + +//== Tierra Gorge Battleground Engine ====================== +001-2,0,0,3 script start#bat_a02 NPC_HIDDEN,{ +OnInit: + //mapwarp "bat_a02","bat_room",154,150; + end; + +OnEnable: + end; + +OnSide1Quit: +OnSide2Quit: + bg_leave; + end; + +OnReadyCheck: + if( $@BGMaster1 ) + end; + .@Guillaume = getwaitingroomstate(0,"Lt. Randy"); + .@Croix = getwaitingroomstate(0,"Lt. Gerry"); + if( !.@Guillaume && !.@Croix ) { + donpcevent "#bat_a02_timer::OnStop"; + end; + } + else if( .@Guillaume < 1 || .@Croix < 1 ) + end; + $@BGMaster1 = 1; + donpcevent "Lt. Randy::OnEnterBG"; + donpcevent "Lt. Gerry::OnEnterBG"; + donpcevent "Cassia::OnDoEvent"; + bg_warp $@FK_Team1,"001-2",126,38; + bg_warp $@FK_Team2,"001-2",125,213; + //initnpctimer; + end; +} + diff --git a/npc/004-1/_import.txt b/npc/004-1/_import.txt index 123369a47..d8897b37d 100644 --- a/npc/004-1/_import.txt +++ b/npc/004-1/_import.txt @@ -2,5 +2,4 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/004-1/_mobs.txt", "npc/004-1/_warps.txt", -"npc/004-1/bgmaster.txt", "npc/004-1/elanore.txt", diff --git a/npc/004-1/bgmaster.txt b/npc/004-1/bgmaster.txt deleted file mode 100644 index 7df29e8c1..000000000 --- a/npc/004-1/bgmaster.txt +++ /dev/null @@ -1,354 +0,0 @@ -// TMW2 Scripts. -// Author: -// Jesusalva - -// Original File - -004-1,119,96,0 script Cassia NPC_FEMALE,{ - mesn; - /* - //if ($@BattleOn) goto L_Busy; - mesq l("Hello! I am @@, currently in charge of the Desert Pass.", .name$); - next; - atcommand("@time"); - mesq l("The Fallen Kings challenge ownership of this pass at ##B08:00##b, ##B16:00##b and ##B00:00##b."); - next; - mesq l("Right click on one of their representatives, and choose to join a \'Chat\' when it is close of the time!"); - next; - mesq l("Just as a warning, main chat will change. Use it to discuss the strategy!"); - if (!getgmlevel()) goto L_Close; - mes ""; - menu - l("Join team 1."), L_T1, - l("Join team 2."), L_T2; - */ - if ($@BGMaster1) goto L_Busy; - mesq l("Hello! I am Cassia, Ambassator. During the Monster War outbreak, Frostia and Halinarzo felt."); - next; - mesq l("To train their soldiers, they frequently face one against other in duels. Adventurers are welcome to join their drills."); - next; - mesq l("To join a drill, right click on one of the lieutenants and join their Battle Stations. The drill can last up to 10 minutes."); - next; - mesq l("The sides accept only one adventurer. You'll also lose access to General Chat upon joining, and will have to use #world."); - next; - mesq l("Be sure to have a friend before joining, or you may have to logout in order to be able to move again!"); - close; - -L_T1: - mesn; - if (bg_join_team($@FK_Team1)) - goto L_SuccessJoin; - mes "An error happened."; - goto L_Close; - -L_T2: - mesn; - if (bg_join_team($@FK_Team1)) - goto L_SuccessJoin; - mes "An error happened."; - goto L_Close; - -L_SuccessJoin: - mesq l("Done!"); - next; - warp "001-2", 0, 0; - close; - -L_Close: - close; - -L_Busy: - if ($@BGMaster1 == 2) { - mesq l("The soldiers are resting. You can join them starting at ##B07:00, 15:00 and 23:00##b in UTC."); - } else { - mesq l("People are challenging now."); - } - close; - -OnPcQuit: - warp "002-4", 0, 0; - bg_leave(); - end; - -OnPcDeath: - warp "002-4", 0, 0; - bg_leave(); - end; - -OnTimer60000: - if (getmapusers("001-2") < 2 || .BGC > 10) goto L_Cancel; - - mapannounce("001-2", "Reinforcements raise!", bc_map); - $@FKing_T1 = bg_monster($@FK_Team1, "001-2", 125, 38, "FallenGuard1", 1081, "Cassia::OnSkip"); - $@FKing_T2 = bg_monster($@FK_Team2, "001-2",124, 213, "FallenGuard2", 1082, "Cassia::OnSkip"); - .BGC+=1; - stopnpctimer(); - initnpctimer(); - end; - -// Arena Cooldown (every 8 hours) (CET time) -OnClock0000: -OnClock0800: -OnClock1600: - if ($@BGMaster1 == 2) $@BGMaster1=0; - end; - -OnSkip: - end; - -L_Skip: - end; - -L_RestartTimer: - stopnpctimer(); - initnpctimer(); - end; - -L_Cancel: - stopnpctimer(); - announce "The Fallen Kings Duel ended in a draw!", bc_all; - killmonsterall "001-2"; - - mapwarp "001-2", "004-2", 29, 23; - bg_destroy($@FK_Team1); - bg_destroy($@FK_Team2); - $@BGMaster1=2; - end; - -OnVictor1: - if (!$@BGMaster1) goto L_Skip; - stopnpctimer(); - announce "Team 1 raises victorious at the Fallen Kings Duel!", bc_all; // TODO: Give players a reward - killmonsterall "001-2"; - - mapwarp "001-2", "004-2", 29, 23; - bg_destroy($@FK_Team1); - bg_destroy($@FK_Team2); - $@BGMaster1=2; - end; - -OnVictor2: - if (!$@BGMaster1) goto L_Skip; - stopnpctimer(); - announce "Team 2 raises victorious at the Fallen Kings Duel!", bc_all; - killmonsterall "001-2"; - - mapwarp "001-2", "004-2", 29, 23; - bg_destroy($@FK_Team1); - bg_destroy($@FK_Team2); - $@BGMaster1=2; - end; - -OnInit: - .@npcId = getnpcid(0, .name$); - setunitdata(.@npcId, UDT_HEADTOP, 1322); // Dress - setunitdata(.@npcId, UDT_HEADMIDDLE, 2204); // Not needed - setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes - setunitdata(.@npcId, UDT_WEAPON, 3501); - setunitdata(.@npcId, UDT_HAIRSTYLE, 12); - setunitdata(.@npcId, UDT_HAIRCOLOR, 5); - npcsit; - - .sex = G_FEMALE; - .distance = 7; - /* - // This script is TODO - if (!debug) { - disablenpc "Cassia"; - }*/ - end; - -OnDoEvent: - .BGC=0; - mapannounce("001-2", "May the fight begin!", bc_map); - $@FKing_T1 = bg_monster($@FK_Team1, "001-2", 125, 38, "FallenKing1", 1079, "Cassia::OnVictor2"); - $@FKing_T2 = bg_monster($@FK_Team2, "001-2", 124, 213, "FallenKing2", 1080, "Cassia::OnVictor1"); - initnpctimer(); - end; -} - - - - - - -// This script is TODO WIP -/* -004-1,115,93,0 script Emissary#1 NPC_ELF,{ - hello; - -OnSendToBattle: - $@FK_Team1=waitingroom2bg("testbg", 13, 4, "Cassia::OnPcQuit", "Cassia::OnPcDeath"); - setbgteam $@FK_Team1, 1; - bg_warp $@FK_Team1, "testbg", 13, 4; - end; - -OnInit: - .@npcId = getnpcid(0, .name$); - setunitdata(.@npcId, UDT_HEADTOP, 1312); // Light armor - setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants - setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes - setunitdata(.@npcId, UDT_WEAPON, 3501); - setunitdata(.@npcId, UDT_HAIRSTYLE, 13); - setunitdata(.@npcId, UDT_HAIRCOLOR, 7); - - waitingroom("Winterfall", 30, "Cassia::OnSkip", 1); - .sex = G_OTHER; - .distance = 5; - end; -} - - -004-1,117,93,0 script Emissary#2 NPC_ELF,{ - hello; - -OnSendToBattle: - $@FK_Team2=waitingroom2bg("testbg", 13, 26, "Cassia::OnPcQuit", "Cassia::OnPcDeath"); - setbgteam $@FK_Team2, 2; - bg_warp $@FK_Team2, "testbg", 13, 26; - end; - -OnInit: - .@npcId = getnpcid(0, .name$); - setunitdata(.@npcId, UDT_HEADTOP, 1311); // Terran armor - setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants - setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes - setunitdata(.@npcId, UDT_WEAPON, 3501); - setunitdata(.@npcId, UDT_HAIRSTYLE, 13); - setunitdata(.@npcId, UDT_HAIRCOLOR, 7); - - waitingroom("Summerfall", 30, "Cassia::OnSkip", 1); - .sex = G_OTHER; - .distance = 5; - end; - -} -*/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -004-1,115,93,0 script Lt. Randy NPC_ELF,{ - hello; - -OnInit: - .@npcId = getnpcid(0, .name$); - setunitdata(.@npcId, UDT_HEADTOP, 1312); // Light armor - setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants - setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes - setunitdata(.@npcId, UDT_WEAPON, 3501); - setunitdata(.@npcId, UDT_HAIRSTYLE, 13); - setunitdata(.@npcId, UDT_HAIRCOLOR, 7); - - waitingroom("Battle Station", 2, "start#bat_a02::OnReadyCheck", 1); - end; - -OnEnterBG: - $@FK_Team1 = waitingroom2bg("001-2",126, 38,"start#bat_a02::OnSide1Quit",""); - end; -} - -001-2,0,0,0 script Lt. Gerry NPC_ELF,{ - hello; - -OnInit: - .@npcId = getnpcid(0, .name$); - setunitdata(.@npcId, UDT_HEADTOP, 1311); // Terranite armor - setunitdata(.@npcId, UDT_HEADMIDDLE, 2212); // Pants - setunitdata(.@npcId, UDT_HEADBOTTOM, 1800); // Shoes - setunitdata(.@npcId, UDT_WEAPON, 3501); - setunitdata(.@npcId, UDT_HAIRSTYLE, 13); - setunitdata(.@npcId, UDT_HAIRCOLOR, 7); - - waitingroom("Battle Station", 2, "start#bat_a02::OnReadyCheck", 1); - end; - -OnEnterBG: - $@FK_Team2 = waitingroom2bg("001-2",124,213,"start#bat_a02::OnSide2Quit",""); - end; -} - -//== Tierra Gorge Battleground Engine ====================== -001-2,0,0,3 script start#bat_a02 NPC_HIDDEN,{ -OnInit: - //mapwarp "bat_a02","bat_room",154,150; - end; - -OnEnable: - end; - -OnSide1Quit: -OnSide2Quit: - bg_leave; - end; - -OnReadyCheck: - if( $@BGMaster1 ) - end; - .@Guillaume = getwaitingroomstate(0,"Lt. Randy"); - .@Croix = getwaitingroomstate(0,"Lt. Gerry"); - if( !.@Guillaume && !.@Croix ) { - donpcevent "#bat_a02_timer::OnStop"; - end; - } - else if( .@Guillaume < 1 || .@Croix < 1 ) - end; - $@BGMaster1 = 1; - donpcevent "Lt. Randy::OnEnterBG"; - donpcevent "Lt. Gerry::OnEnterBG"; - donpcevent "Cassia::OnDoEvent"; - bg_warp $@FK_Team1,"001-2",126,38; - bg_warp $@FK_Team2,"001-2",125,213; - //initnpctimer; - end; -} - -- cgit v1.2.3-60-g2f50