summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-03-03 14:38:13 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-03-03 14:38:13 +0000
commitd214e16b4875f2be40c817f609d940a6ff5ef088 (patch)
tree52cd02c0d0d6c90dd74d26db0755223f3dc818c9 /src/map/status.c
parentecfd2c2ae5e714347dd86eba90d2ad051d84e447 (diff)
downloadhercules-d214e16b4875f2be40c817f609d940a6ff5ef088.tar.gz
hercules-d214e16b4875f2be40c817f609d940a6ff5ef088.tar.bz2
hercules-d214e16b4875f2be40c817f609d940a6ff5ef088.tar.xz
hercules-d214e16b4875f2be40c817f609d940a6ff5ef088.zip
- Trick dead now ends on logout
- Added mapflag nocommand which blocks @/# commands unless your gm level is above gm_skill_unconditional's level. - Fixed weapon scripts not being executed unless the weapon was forged. - gm_skill_unconditional is now a no/gm-level setting instead of yes/no git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5446 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 12c832063..48c699087 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -855,6 +855,18 @@ int status_calc_pc(struct map_session_data* sd,int first)
if((r-=refinebonus[wlv][2])>0) //Overrefine bonus.
wd->overrefine = r*refinebonus[wlv][1];
+ if (wd == &sd->left_weapon) {
+ sd->attackrange_ += sd->inventory_data[index]->range;
+ sd->state.lr_flag = 1;
+ run_script(sd->inventory_data[index]->script,0,sd->bl.id,0);
+ sd->state.lr_flag = 0;
+ } else {
+ sd->attackrange += sd->inventory_data[index]->range;
+ run_script(sd->inventory_data[index]->script,0,sd->bl.id,0);
+ }
+ if (!calculating) //Abort, run_script retriggered status_calc_pc. [Skotlex]
+ return 1;
+
if(sd->status.inventory[index].card[0]==0x00ff)
{ // Forged weapon
wd->star += (sd->status.inventory[index].card[1]>>8);
@@ -865,17 +877,6 @@ int status_calc_pc(struct map_session_data* sd,int first)
if (!wd->atk_ele) //Do not overwrite element from previous bonuses.
wd->atk_ele = (sd->status.inventory[index].card[1]&0x0f);
- if (wd == &sd->left_weapon) {
- sd->attackrange_ += sd->inventory_data[index]->range;
- sd->state.lr_flag = 1;
- run_script(sd->inventory_data[index]->script,0,sd->bl.id,0);
- sd->state.lr_flag = 0;
- } else {
- sd->attackrange += sd->inventory_data[index]->range;
- run_script(sd->inventory_data[index]->script,0,sd->bl.id,0);
- }
- if (!calculating) //Abort, run_script retriggered status_calc_pc. [Skotlex]
- return 1;
}
}
else if(sd->inventory_data[index]->type == 5) {