diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-09 19:28:58 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-09 19:28:58 +0000 |
commit | 3e87e8e3153ec82d1c3c2cea32dd910323949455 (patch) | |
tree | d7bd52f160bf9a4d83c6b5a10f5a9d1e18c5439d /src/map | |
parent | d0a7c2090946362a77301684f50e2c350b0e2218 (diff) | |
download | hercules-3e87e8e3153ec82d1c3c2cea32dd910323949455.tar.gz hercules-3e87e8e3153ec82d1c3c2cea32dd910323949455.tar.bz2 hercules-3e87e8e3153ec82d1c3c2cea32dd910323949455.tar.xz hercules-3e87e8e3153ec82d1c3c2cea32dd910323949455.zip |
- Fix on pc_skill which fixes overlapping when one gets more than one bonus for the same skill.
- Updated main.sql's loginlog table structure.
- Added svn_update6533.sql to update the loginlog structure as suggested by theultramage.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6533 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/pc.c | 7 | ||||
-rw-r--r-- | src/map/skill.c | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index 4657d3bcf..c3da30b6a 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -2158,9 +2158,10 @@ int pc_skill(struct map_session_data *sd,int id,int level,int flag) clif_skillinfoblock(sd);
}
else if(sd->status.skill[id].lv < level){ // ?えられるがlvが小さいなら
- if(sd->status.skill[id].id==id)
- sd->status.skill[id].flag=sd->status.skill[id].lv+2; // lvを記憶
- else {
+ if(sd->status.skill[id].id==id) {
+ if (!sd->status.skill[id].flag) //Non-granted skill, store it's level.
+ sd->status.skill[id].flag=sd->status.skill[id].lv+2;
+ } else {
sd->status.skill[id].id=id;
sd->status.skill[id].flag=1; // cardスキルとする
}
diff --git a/src/map/skill.c b/src/map/skill.c index ec421d1c5..409cbcb4c 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4087,7 +4087,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in dstsd->char_id == sd->status.partner_id ||
dstsd->char_id == sd->status.child
)) {
- status_change_start(src,SC_STUN,10000,skilllv,0,0,0,3000,8);
+ status_change_start(src,SC_STUN,10000,skilllv,0,0,0,500,8);
clif_skill_fail(sd,skillid,0,0);
break;
}
|