From 7377f8576c897329e4a96feb45848717b4f26848 Mon Sep 17 00:00:00 2001 From: mekolat Date: Tue, 28 Oct 2014 22:45:32 -0400 Subject: use bitmasking & merge death handler --- world/map/npc/009-7/battlemaster.txt | 68 ++++++++++-------------------------- 1 file changed, 18 insertions(+), 50 deletions(-) (limited to 'world/map/npc/009-7/battlemaster.txt') diff --git a/world/map/npc/009-7/battlemaster.txt b/world/map/npc/009-7/battlemaster.txt index e211092c..776950c0 100644 --- a/world/map/npc/009-7/battlemaster.txt +++ b/world/map/npc/009-7/battlemaster.txt @@ -25,7 +25,7 @@ L_Brodomir: mes "[Battle Master]"; mes "\"Get ready!\""; close2; - set Duel_LMS, 1; // tell the arena to send the player back here when he exits + set DUELS, DUELS | $@DuelPvpBit; // tell the arena to send the player back here when he exits warp "009-6.gat", 33, 37; savepoint "009-7.gat", 39, 37; end; @@ -36,7 +36,7 @@ L_PVP: mes "[Battle Master]"; mes "\"Get ready!\""; close2; - set Duel_PVP, 1; // tell the arena to send the player back here when he dies + set DUELS, DUELS | $@DuelPvpBit; // tell the arena to send the player back here when he dies warp "001-3.gat", 0, 0; savepoint "009-7.gat", 39, 37; end; @@ -51,34 +51,25 @@ L_NoMoney: function|script|fightclub_GoBack|, { - if(Duel_LMS == 1) goto L_GoBack; + set @Duel_PVP, DUELS & $@DuelPvpBit; + if((@Duel_PVP == 0) && ((getmap() == "009-6") || (getmap() == "009-5"))) goto L_NormalExit; + if((getmap() != "009-6") && (getmap() != "009-5") && (getmap() != "001-2") && (getmap() != "001-3")) goto L_Clean; + if(@Duel_PVP != 0) goto L_GoBack; return; L_GoBack: - set Duel_LMS, 0; + set DUELS, DUELS &~ $@DuelPvpBit; warp "009-7.gat", 39, 37; gmcommand "@alive"; - message strcharinfo(0), "Thank you for participating in Last Man Standing!"; + message strcharinfo(0), "Thank you for participating!"; return; L_Clean: - set Duel_LMS, 0; + set DUELS, DUELS &~ $@DuelPvpBit; return; -L_Death: - if((Duel_LMS != 1) && ((getmap() == "009-6") || (getmap() == "009-5"))) L_NormalExit; - if(Duel_LMS != 1) end; - if((getmap() != "009-6") && (getmap() != "009-5")) goto L_Clean; - goto L_GoBack; - -OnPCKilledEvent: - goto L_Death; - -OnPCDieEvent: - goto L_Death; - OnResave: - if(Duel_LMS != 1) end; + if(@Duel_PVP == 0) end; savepoint "009-7.gat", 39, 37; return; @@ -89,46 +80,23 @@ L_NormalExit: } 009-6.gat,36,48,0|script|#GoBack2#Duels|127,0,1, { - callfunc "fightclub_GoBack"; end; + callfunc "fightclub_GoBack"; + end; } 009-5.gat,53,74,0|script|#GoBack3#Duels|127,3,1, { - callfunc "fightclub_GoBack"; end; + callfunc "fightclub_GoBack"; + end; } -function|script|fightclub_GoBack2|, -{ - if(Duel_PVP == 1) goto L_GoBack; - return; - -L_GoBack: - set Duel_PVP, 0; - warp "009-7.gat", 39, 37; - gmcommand "@alive"; - message strcharinfo(0), "Thank you for participating in the PVP cave!"; - return; - -L_Clean: - set Duel_PVP, 0; - return; - -L_Death: - if(Duel_PVP != 1) end; - if((getmap() != "001-2") && (getmap() != "001-3")) goto L_Clean; - goto L_GoBack; - -OnPCKilledEvent: - goto L_Death; - -OnPCDieEvent: - goto L_Death; -} 001-2.gat,130,22,0|script|#GoBack4#Duels|127,1,1, { - callfunc "fightclub_GoBack2"; end; + callfunc "fightclub_GoBack"; + end; } 001-3.gat,73,28,0|script|#GoBack#Duels|127,0,1, { - callfunc "fightclub_GoBack2"; end; + callfunc "fightclub_GoBack"; + end; } -- cgit v1.2.3-60-g2f50