- added sending a dummy 0x08b9 packet in the char-server, required to support clients from this year.

- added a fix to status_heal to take into account that -int_max == int_max in some architectures, which leads to an infinite loop (bugreport:3410)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14930 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
Skotlex 2011-08-10 16:53:47 +00:00
parent b7ad7aa055
commit ac41a46e44
4 changed files with 23 additions and 0 deletions

View File

@ -1,6 +1,7 @@
Date Added
2011/08/10
* Added sending a dummy 0x08b9 packet (PIN auth system) in the char-server, required to support clients from this year. [Skotlex]
* Updated unitwarp so that an id of "0" causes the script's rid to be warped. This allows OnTouchNPC scripts to warp the monster. [Skotlex]
* Updated @warp/@jump commands so that when an invalid tile is specified, a nearby cell is chosen.
2011/08/06

View File

@ -2223,6 +2223,16 @@ int parse_fromlogin(int fd)
{
// send characters to player
mmo_char_send006b(i, sd);
#if PACKETVER >= 20110309
// PIN code system, disabled
WFIFOHEAD(i, 12);
WFIFOW(i, 0) = 0x08B9;
WFIFOW(i, 2) = 0;
WFIFOW(i, 4) = 0;
WFIFOL(i, 6) = sd->account_id;
WFIFOW(i, 10) = 0;
WFIFOSET(i, 12);
#endif
}
}
RFIFOSKIP(fd,62);

View File

@ -1942,6 +1942,16 @@ int parse_fromlogin(int fd)
{
// send characters to player
mmo_char_send006b(i, sd);
#if PACKETVER >= 20110309
// PIN code system, disabled
WFIFOHEAD(i, 12);
WFIFOW(i, 0) = 0x08B9;
WFIFOW(i, 2) = 0;
WFIFOW(i, 4) = 0;
WFIFOL(i, 6) = sd->account_id;
WFIFOW(i, 10) = 0;
WFIFOSET(i, 12);
#endif
}
}
RFIFOSKIP(fd,62);

View File

@ -869,6 +869,7 @@ int status_heal(struct block_list *bl,int hp,int sp, int flag)
sc = NULL;
if (hp < 0) {
if (hp == INT_MIN) hp++; //-INT_MIN == INT_MIN in some architectures!
status_damage(NULL, bl, -hp, 0, 0, 1);
hp = 0;
}
@ -882,6 +883,7 @@ int status_heal(struct block_list *bl,int hp,int sp, int flag)
}
if(sp < 0) {
if (sp==INT_MIN) sp++;
status_damage(NULL, bl, 0, -sp, 0, 1);
sp = 0;
}