Changed the 'getpartyleader' script command so that it returns a map name instead of the useless mapindex number.

Also fixed it so that it doesn't throw a 'args of aFree is not valid pointer' error (although I'm not at all sure that the fix is correct).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9787 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
ultramage 2007-02-05 14:11:43 +00:00
parent 5f0de40e38
commit 12a784cf17
3 changed files with 16 additions and 9 deletions

View File

@ -4,6 +4,11 @@ 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.
2007/02/05
* Changed the 'getpartyleader' script command so that it returns a map
name instead of the useless mapindex number. Also fixed it so that it
doesn't throw a 'args of aFree is not valid pointer' error.
(although I'm not at all sure that the fix is correct)
Ref: http://www.eathena.ws/board/index.php?showtopic=137274
* Removed the silly and misleading 'firewall detected' message
2007/02/03
* Added missing vc6 project file

View File

@ -2155,18 +2155,19 @@ Example:
*getpartyleader <party id>,[<type>];
This function returns some information about the given party-id's leader. When type is ommitted,
the default information retrieved is Character name of the party leader. Possible types are:
This function returns some information about the given party-id's leader.
When type is ommitted, the default information retrieved is the leader's name.
Possible types are:
1: Leader account id
2: Leader character id
3: Leader's class
4: Leader's current map index
4: Leader's current map name
5: Leader's current level as stored on the party structure (may not be
current level if leader leveled up recently).
If retrieval fails (leader not found or party does not exists), "null" is returned instead of character name,
and -1 is returned for the other types.
If retrieval fails (leader not found or party does not exist), this function
returns "null" instead of the character name, and -1 is for the other types.
---------------------------------------
*getguildname(<guild id>)
@ -3548,7 +3549,8 @@ four values:
- val3 is the second element, val4 is the resistance to said element.
eg: sc_start4 SC_DefEle,60000,Ele_Fire,20,Ele_Water,-15;
'sc_end' will remove a specified status effect.
'sc_end' will remove a specified status effect. If SC_All is used (-1), it will
do a complete removal of all statuses (although permanent ones will re-apply).
You can see the full list of status effects caused by skills in
'src/map/status.h' - they are currently not fully documented, but most of that

View File

@ -3877,7 +3877,7 @@ struct script_function buildin_func[] = {
{buildin_getcharid,"getcharid","i*"},
{buildin_getpartyname,"getpartyname","i"},
{buildin_getpartymember,"getpartymember","i*"},
{buildin_getpartyleader,"getpartyleader","i*"},
{buildin_getpartyleader,"getpartyleader","i?"},
{buildin_getguildname,"getguildname","i"},
{buildin_getguildmaster,"getguildmaster","i"},
{buildin_getguildmasterid,"getguildmasterid","i"},
@ -6006,13 +6006,13 @@ int buildin_getpartyleader(struct script_state *st)
push_val(st->stack,C_INT,p->party.member[i].class_);
break;
case 4:
push_val(st->stack,C_INT,p->party.member[i].map);
push_str(st->stack,C_CONSTSTR,(char*)mapindex_id2name(p->party.member[i].map));
break;
case 5:
push_val(st->stack,C_INT,p->party.member[i].lv);
break;
default:
push_str(st->stack,C_STR,p->party.member[i].name);
push_str(st->stack,C_CONSTSTR,p->party.member[i].name);
break;
}
return 0;