- Fixed compilation error.

- idletime will now be updated on attack-request, not on sit/standup
- Party members sitting will no longer be considered idle.
- hide_gvg_damage will now send 1 instead of -1 as damage.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6517 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
skotlex 2006-05-08 16:19:02 +00:00
parent 3b5ab1ba35
commit aae1ae1832
5 changed files with 14 additions and 10 deletions

View File

@ -4,6 +4,10 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/05/08
* hide_gvg_damage will now send 1 instead of -1 as damage. [Skotlex]
* idletime will now be updated on attack-request, not on sit/standup
[Skotlex]
* Party members sitting will no longer be considered idle. [Skotlex]
* Removed SP_DISGUISE from the bonus list (onequip/onunequip should be used
with the disguise/undisguise script commands instead). [Skotlex]
* Moved Sharp Shooting display to the block with Auto-Counter (since that's

View File

@ -42,7 +42,7 @@ party_item_share_type: 0
// Is exp sharing disabled for idle members in the party?
// Set to no, or the amount of seconds (NOT milliseconds) that need to pass before considering
// a character idle.
// Characters sitting/in a chat are always considered idle.
// Characters in a chat are always considered idle.
// A character's idle status is reset upon item use/skill use/attack (auto attack counts too)/movement.
idle_no_share: no

View File

@ -3872,8 +3872,8 @@ int clif_damage(struct block_list *src,struct block_list *dst,unsigned int tick,
WBUFL(buf,14)=sdelay;
WBUFL(buf,18)=ddelay;
if (battle_config.hide_woe_damage && map_flag_gvg(src->m)) {
WBUFW(buf,22)=-1;
WBUFW(buf,27)=-1;
WBUFW(buf,22)=1;
WBUFW(buf,27)=1;
} else {
WBUFW(buf,22)=(damage > SHRT_MAX)?SHRT_MAX:damage;
WBUFW(buf,27)=damage2;
@ -4392,7 +4392,7 @@ int clif_skill_damage(struct block_list *src,struct block_list *dst,
WBUFL(buf,16)=sdelay;
WBUFL(buf,20)=ddelay;
if (battle_config.hide_woe_damage && map_flag_gvg(src->m)) {
WBUFW(buf,24)=-1;
WBUFW(buf,24)=1;
} else {
WBUFW(buf,24)=damage;
}
@ -4423,7 +4423,7 @@ int clif_skill_damage(struct block_list *src,struct block_list *dst,
WBUFL(buf,16)=sdelay;
WBUFL(buf,20)=ddelay;
if (battle_config.hide_woe_damage && map_flag_gvg(src->m)) {
WBUFL(buf,24)=-1;
WBUFL(buf,24)=1;
} else {
WBUFL(buf,24)=damage;
}
@ -4483,7 +4483,7 @@ int clif_skill_damage2(struct block_list *src,struct block_list *dst,
WBUFW(buf,24)=dst->x;
WBUFW(buf,26)=dst->y;
if (battle_config.hide_woe_damage && map_flag_gvg(src->m)) {
WBUFW(buf,28)=-1;
WBUFW(buf,28)=1;
} else {
WBUFW(buf,28)=damage;
}
@ -8723,8 +8723,6 @@ void clif_parse_ActionRequest(int fd, struct map_session_data *sd) {
target_id = RFIFOL(fd,packet_db[sd->packet_ver][RFIFOW(fd,0)].pos[0]);
action_type = RFIFOB(fd,packet_db[sd->packet_ver][RFIFOW(fd,0)].pos[1]);
//Regardless of what they have to do, they have just requested an action, no longer idle. [Skotlex]
sd->idletime = last_tick;
if(target_id<0) // for disguises [Valaris]
target_id-=(target_id*2);
@ -8747,6 +8745,8 @@ void clif_parse_ActionRequest(int fd, struct map_session_data *sd) {
}
if (sd->invincible_timer != -1)
pc_delinvincibletimer(sd);
sd->idletime = last_tick;
unit_attack(&sd->bl, target_id, action_type != 0);
break;
case 0x02: // sitdown

View File

@ -1131,7 +1131,7 @@ enum {
SP_DELAYRATE,SP_HP_DRAIN_RATE_RACE,SP_SP_DRAIN_RATE_RACE, // 1083-1085
SP_RESTART_FULL_RECOVER=2000,SP_NO_CASTCANCEL,SP_NO_SIZEFIX,SP_NO_MAGIC_DAMAGE,SP_NO_WEAPON_DAMAGE,SP_NO_GEMSTONE, // 2000-2005
SP_NO_CASTCANCEL2,SP_FREE,SP_UNBREAKABLE_WEAPON,SP_UNBREAKABLE_ARMOR, SP_UNBREAKABLE_HELM, // 2006-2010
SP_NO_CASTCANCEL2,SP_FREE1,SP_UNBREAKABLE_WEAPON,SP_UNBREAKABLE_ARMOR, SP_UNBREAKABLE_HELM, // 2006-2010
SP_UNBREAKABLE_SHIELD, SP_LONG_ATK_RATE, // 2011-2012
SP_CRIT_ATK_RATE, SP_CRITICAL_ADDRACE, SP_NO_REGEN, SP_ADDEFF_WHENHIT, SP_AUTOSPELL_WHENHIT, // 2013-2017

View File

@ -664,7 +664,7 @@ int party_exp_share(struct party *p,int map,unsigned int base_exp,unsigned int j
for (i = c = 0; i < MAX_PARTY; i++)
if ((sd[c] = p->member[i].sd)!=NULL && sd[c]->bl.m == map && !pc_isdead(sd[c])) {
if (battle_config.idle_no_share && (pc_issit(sd[c]) || sd[c]->chatID || (sd[c]->idletime < (last_tick - battle_config.idle_no_share))))
if (battle_config.idle_no_share && (sd[c]->chatID || (sd[c]->idletime < (last_tick - battle_config.idle_no_share))))
continue;
c++;
}