From 0465893d31020aa8b78eed3105b3b37761d3038c Mon Sep 17 00:00:00 2001 From: Vincent Petithory Date: Sun, 24 Mar 2013 12:26:20 +0100 Subject: Candor Fix: * Clean player variables when the player dies / at end of round * Do no punish players before round 600 * Hurt players based on a % of their Max HP, not a fixed value * Make the poison duration depend on the severity of the punishment (8s per increment) --- world/map/npc/029-3/parua.txt | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/world/map/npc/029-3/parua.txt b/world/map/npc/029-3/parua.txt index c4b258f2..4fab5b6b 100644 --- a/world/map/npc/029-3/parua.txt +++ b/world/map/npc/029-3/parua.txt @@ -273,18 +273,19 @@ onTick: // called on each player when a new round begins onNewRound: - // TODO initialization and clean-up of the variables if (isdead()) + goto L_CleanUp_Player; + if ($@FIGHT_CAVE_LEVEL < 600) end; set @candor_oldx, @candor_x; set @candor_oldy, @candor_y; set @candor_x, getx(); set @candor_y, gety(); if (!(@candor_oldx == @candor_x && @candor_oldy == @candor_y)) - end; - @candor_poscounter, @candor_poscounter + 1; - sc_start sc_poison, 1, 20; - heal -20 * @candor_poscounter, 0; + goto L_IdleCheckPassed; + set @candor_idle_counter, @candor_idle_counter + 1; + sc_start sc_poison, 1, @candor_idle_counter*8; + percentheal -20 * @candor_idle_counter, 0; message strcharinfo(0), "The evil energy of this place hurts you. You should keep moving!"; end; @@ -317,10 +318,24 @@ L_CleanUp_Announcement: setnpctimer 0; end; +L_CleanUp_Player: + set @candor_oldx, 0; + set @candor_oldy, 0; + set @candor_x, 0; + set @candor_y, 0; + set @candor_idle_counter, 0; + end; + +L_IdleCheckPassed: + //FIXME we could do that, but I'd say, let's be severe. + //set @candor_idle_counter, 0; + end; + onReward: - if (isdead()) end; + if (isdead()) + goto L_CleanUp_Player; set BOSS_POINTS, BOSS_POINTS + 100; message strcharinfo(0), "You gain 100 Boss Points giving you a total of " + BOSS_POINTS; - end; + goto L_CleanUp_Player; } -- cgit v1.2.3-60-g2f50