From 4b78f6c13650c26825b33f93d0c816ed327d2d27 Mon Sep 17 00:00:00 2001 From: RedSparr0w Date: Sun, 24 Nov 2019 23:41:43 +1300 Subject: [PATCH] give slayer xp on kill --- .../content/combat/range/DwarfCannon.java | 34 +++++++----------- .../src/redone/game/npcs/NpcHandler.java | 3 +- .../content/combat/range/DwarfCannon.class | Bin 12658 -> 12602 bytes 3 files changed, 15 insertions(+), 22 deletions(-) diff --git a/2006Redone Server/src/redone/game/content/combat/range/DwarfCannon.java b/2006Redone Server/src/redone/game/content/combat/range/DwarfCannon.java index e599f1e3..a4fc1543 100644 --- a/2006Redone Server/src/redone/game/content/combat/range/DwarfCannon.java +++ b/2006Redone Server/src/redone/game/content/combat/range/DwarfCannon.java @@ -1,5 +1,6 @@ package redone.game.content.combat.range; +import redone.Constants; import redone.Server; import redone.event.CycleEvent; import redone.event.CycleEventContainer; @@ -356,7 +357,7 @@ public class DwarfCannon { } public boolean noSetUpArea() { - return (player.absX >= 2024 && player.absX <= 2047 && player.absY >= 2047 && player.absY <= 4542) || player.inBank() || player.inFightCaves() || (player.absX >= 3161 && player.absX <= 3168 && player.absY >= 3486 && player.absY <= 3493); + return player.inBank() || player.inFightCaves(); } private int getHit() { @@ -379,17 +380,6 @@ public class DwarfCannon { if (damage > target.HP) { damage = target.HP; } - if (player.inMulti() && target.inMulti()) { - cannonProjectile(target); - target.hitDiff2 = damage; - target.HP -= damage; - target.killerId = player.playerId; - target.facePlayer(player.playerId); - target.hitUpdateRequired2 = true; - target.updateRequired = true; - myBalls -= 1; - player.getPlayerAssistant().addSkillXP(damage * expRate, player.playerRanged); - } if (!player.inMulti()) { if (target.underAttackBy > 0 && target.underAttackBy != player.playerId) { return; @@ -397,16 +387,18 @@ public class DwarfCannon { if (player.underAttackBy2 > 0 && player.underAttackBy2 != target.npcId) { return; } - cannonProjectile(target); - target.hitDiff2 = damage; - target.HP -= damage; - target.killerId = player.playerId; - target.facePlayer(player.playerId); - target.hitUpdateRequired2 = true; - target.updateRequired = true; - myBalls -= 1; - player.getPlayerAssistant().addSkillXP(damage * expRate, player.playerRanged); } + cannonProjectile(target); + target.hitDiff2 = damage; + target.HP -= damage; + player.globalDamageDealt += damage; + target.killerId = player.playerId; + target.killedBy = player.playerId; + target.facePlayer(player.playerId); + target.hitUpdateRequired2 = true; + target.updateRequired = true; + myBalls -= 1; + player.getPlayerAssistant().addSkillXP(damage * Constants.RANGE_EXP_RATE, player.playerRanged); } } diff --git a/2006Redone Server/src/redone/game/npcs/NpcHandler.java b/2006Redone Server/src/redone/game/npcs/NpcHandler.java index da2393d1..6bd0fa4d 100644 --- a/2006Redone Server/src/redone/game/npcs/NpcHandler.java +++ b/2006Redone Server/src/redone/game/npcs/NpcHandler.java @@ -585,7 +585,8 @@ public class NpcHandler { && npcs[i].needRespawn == false) { npcs[i].updateRequired = true; npcs[i].facePlayer(0); - npcs[i].killedBy = NpcData.getNpcKillerId(i); + if (npcs[i].killedBy <= 0) + npcs[i].killedBy = NpcData.getNpcKillerId(i); npcs[i].animNumber = NpcEmotes.getDeadEmote(i); // dead // emote Client c = (Client) PlayerHandler.players[npcs[i].killedBy]; diff --git a/CompiledServer/production/2006rebotted/redone/game/content/combat/range/DwarfCannon.class b/CompiledServer/production/2006rebotted/redone/game/content/combat/range/DwarfCannon.class index 4762d14d539fa0a27fe6a406a64815d3b7da7362..49b865792b3c1adaae1599551d49f443ba67e8e8 100644 GIT binary patch delta 4793 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 VDYCz^*X#d=9yG<1(O-c({0G!ANoW87 delta 4951 zcma)933yc175>jGc{7t2!i4O5LP9VJ2}=x-gosE{svyd)B7sCjL{!`n9S}hULE;mI zh=dpx0o#g!sA$ouh}x>PtqX14uoi4T+fQ+;iKhQ~Z!#H`d^&ubd+vQ_yZ=4++>?EC zKAY3`xDIu88== zrK8&?9-nyq5+jBZpC1#%uOtwVSTPNW3m{MW=pIyZC-gQ!`UNCWl5{y)Ns1w< zx{{`D(p4}c5F*X=NtUi>E6Fh=H-KR{=94^*lCPw{PYQG_^vM996!~PJPfkz+#Xc#~ zu~dT_WJp;6qZtjIl?P<74DrcOH9AaJDtvOH%2w*iaGzB9Fr-@JsnJg(RjyXa z$pIN9r|8;fC8zpjjQm1Bj17<*t81s}+UdHnamxKtKb)c5nM%g%hY1?QSvsAl)3cR3 z$1js)vXUvB4kDUd3@DkZWSW|uu4IOib5-v=HFLfpGu!&P7Q2j8LoP66mUXY^sMNKE zyw&bGze1ylrMTY25-c`xyOP^xZaR? zrd%rX1!Y!UOlfk#5OsaTl*?p+DVM9)d#FD*P?LIvTxrNcQ?8P$O}R$(uf_F(Qq@Z| za@x$&~wax?af!B~7x*l>3Q_Y*g}qu5Ch-Db31lR??!NK4?m-PPWKa zQ?_Aowkg{=#{tUXHTCyLjrt*#*&#dI68h})v>i+cO6Uq!gm}0#9moYW1vn;Xj@To! z0fHOIyRe8H6T{}2H1^0G;V7CW_ME9^kIXxJWae;8(Bz5Oxs`L~kR$0qZzGmQyQ>#mQ#E(RY2jJo2_*?_2i14NY_QVDvQ!J;7RP~9wl_gt70ooNgFh_M{$F#m}|$K8CC=` zaeo-MOl&0Qg5t()r_+?^)w4~#m{vMYO(noX`T&vI#BDbt4K21==g>03W=#Um1g54M zBf_0XQ){dowzZMzmrPP?$#ev4<>RxBZ_##4BtI29BNknl968qMQF}Gv?u1J^Fy1-S zmhj>HFMSO0to-?sO~V-1d&k;q64GbfE!W1KWf@h=J{0^b%QcalybtG2hr}x5Ej6 zZvLc3{*yV6k<7>%R;`gZhgKKyUl;LT7j}Aw9bB0%Td+d7!a_UA)WtHv5$vit^w+wP3=4)sB`J^B%q{k3Yd8vmX4N=9w z7qRZ^4xI<(gf7|&s10gANo}o_w-oPzu?N{f<7f+tBa^OHWI2a;? zqv8`zE)v1F=$!c@eTpB$G1*Pqnz5&y$?4qK$ zcFZjG?ByECENf;_#)!Ih%$^n&Zo&%c&e?D!Wd}COF0{$R*ej3V1=)=kWiQ^Bb{v*{I3`cx3wc^h zc}Duk^O7S6Bu`%ApBOJowY(~4%4;$~nq{)QVFPzMj1V1F;29gGd@056h@6{F`{P-1 z9=guLbL6}XAO+8pi{VpuPIuLosZr@&22BP!LmwJqZ9g_hO-M`N|1Lh*d}p@t z+By~C0K86b@MQ5>J-vY(>N!@Hq3+JB7BA4fUin%aBp2xoYDQ_B!G2ax(wbP3oHM^} zWcZAV+i_W4ZDt7%s=+n4(vwAQuC=@*KeXU#PhH>ac3iH>>9TLH{VvEmh?92-%X=u0 z_faMvV6q&xBhr!xOo>D^1uqjgcKbLTzqcbwM>YOH&W!>L!7JoEC_@omC8zBkdt(if zR;)v%Bdz+4!)&>E>yV$BV2COxV)(4k&JTrG1?W2F|N3u z;h?V%ud^|5Hd4+}55-Hw{aOhfES*L+0juk|8oKBXPmqD zxcdC))I`HkS7E$KJcWkd!rN-diZ4sH_Zjhe9H)oy*Ra#*kc~$u`h$>7Pt8CgD+A>SJ8Vk(CmoIqJ{I HbH@Jzy)9tp