* Fixed script command getusers causing map server to crash when called with type 0 without attached character (bugreport:4565).
- Lack of character is now reported like other script commands do. Additionally invalid types are reported as well. git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/renewal@14495 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
b0089b0edc
commit
c1bd43aef6
@ -8,7 +8,9 @@ Date Added
|
||||
- Fixed data type inconsistency in @statuspoint and @skillpoint (since r5762, related r13541).
|
||||
- Silenced truncation warnings in CR_ACIDDEMONSTRATION damage calculation and cardfix application (since r13700).
|
||||
- Reformatted unit_blown to make it look cleaner (follow up to r14492).
|
||||
* Labels longer than 23 characters will no longer cause the server to exit immediately (bugreport:4563, since r1213).
|
||||
* Labels longer than 23 characters will no longer cause the server to exit immediately (bugreport:4563, since r1213). [Ai4rei]
|
||||
* Fixed script command getusers causing map server to crash when called with type 0 without attached character (bugreport:4565). [Ai4rei]
|
||||
- Lack of character is now reported like other script commands do. Additionally invalid types are reported as well.
|
||||
2010/11/22
|
||||
* mail_deliveryfail no longer attempts to log (since r12910) and give items (since r11855), when there is no item attached to the mail (bugreport:3239). [Ai4rei]
|
||||
* Fixed a crash when shutting down char-server (TXT only), after it failed to load storage save data (since r1275). [Ai4rei]
|
||||
|
@ -8220,13 +8220,38 @@ BUILDIN_FUNC(areaannounce)
|
||||
*------------------------------------------*/
|
||||
BUILDIN_FUNC(getusers)
|
||||
{
|
||||
int flag=script_getnum(st,2);
|
||||
struct block_list *bl=map_id2bl((flag&0x08)?st->oid:st->rid);
|
||||
int val=0;
|
||||
switch(flag&0x07){
|
||||
case 0: val=map[bl->m].users; break;
|
||||
case 1: val=map_getusers(); break;
|
||||
int flag, val = 0;
|
||||
struct map_session_data* sd;
|
||||
struct block_list* bl = NULL;
|
||||
|
||||
flag = script_getnum(st,2);
|
||||
|
||||
if(flag&0x8)
|
||||
{// npc
|
||||
bl = map_id2bl(st->oid);
|
||||
}
|
||||
else if((sd = script_rid2sd(st))!=NULL)
|
||||
{// pc
|
||||
bl = &sd->bl;
|
||||
}
|
||||
|
||||
switch(flag&0x07)
|
||||
{
|
||||
case 0:
|
||||
if(bl)
|
||||
{
|
||||
val = map[bl->m].users;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
val = map_getusers();
|
||||
break;
|
||||
default:
|
||||
ShowWarning("buildin_getusers: Unknown type %d.\n", flag);
|
||||
script_pushint(st,0);
|
||||
return 1;
|
||||
}
|
||||
|
||||
script_pushint(st,val);
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user