* Fixed map server crashing upon level changes, thanks Akinari! (bugreport:7428)

* Fixed a couple minor issues with r17220 (incl. bugreport:7427).
* Added documentation and constants for costume slots where missing.
* Removed references to TXT save files in script_commands.txt.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17221 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
euphyy 2013-03-29 05:20:53 +00:00
parent 5edd3e023a
commit 6eb7ce1f11
4 changed files with 19 additions and 20 deletions

View File

@ -605,6 +605,10 @@ EQI_ACC_L 7
EQI_ACC_R 8
EQI_HEAD_MID 9
EQI_HEAD_LOW 10
EQI_COSTUME_HEAD_LOW 11
EQI_COSTUME_HEAD_MID 12
EQI_COSTUME_HEAD_TOP 13
EQI_COSTUME_GARMENT 14
LOOK_BASE 0
LOOK_HAIR 1

View File

@ -428,16 +428,13 @@ temporary - They cease to exist when the server resets.
Prefix: scope and extent
nothing - A permanent variable attached to the character, the default variable
type. They are stored with all the account data in "save\athena.txt"
in TXT versions and in the SQL versions in the `global_reg_value`
table using type 3.
type. They are stored in the `global_reg_value` table using type 3.
"@" - A temporary variable attached to the character.
SVN versions before 2094 revision and RC5 version will also treat
'l' as a temporary variable prefix, so beware of having variable
names starting with 'l' if you want full backward compatibility.
"$" - A global permanent variable.
They are stored in "save\mapreg.txt" or database table `mapreg`,
depending on server type.
They are stored in database table `mapreg`.
"$@" - A global temporary variable.
This is important for scripts which are called with no RID
attached, that is, not triggered by a specific character object.
@ -457,16 +454,13 @@ nothing - A permanent variable attached to the character, the default variable
These are used with the instancing system, and are unique to each
party's instance.
"#" - A permanent local account variable.
They are stored with all the account data in "save\accreg.txt" in
TXT versions and in the SQL versions in the 'global_reg_value'
table using type 2.
They are stored in the `global_reg_value` table using type 2.
"##" - A permanent global account variable stored by the login server.
They are stored in "save\account.txt" and in the SQL versions in the
'global_reg_value' table, using type 1. The only difference you will
note from normal # variables is when you have multiple char-servers
connected to the same login server. The # variables are unique to
each char-server, while the ## variables are shared by all these
char-servers.
They are stored in the `global_reg_value` table using type 1.
The only difference you will note from normal # variables is when
you have multiple char-servers connected to the same login server.
The # variables are unique to each char-server, while the ## variables
are shared by all these char-servers.
Postfix: integer or string
nothing - integer variable, can store positive and negative numbers, but only
@ -2468,6 +2462,7 @@ EQI_HEAD_LOW (10) - Lower Headgear (beards, some masks)
EQI_COSTUME_HEAD_LOW (11) - Lower Costume Headgear
EQI_COSTUME_HEAD_MID (12) - Middle Costume Headgear
EQI_COSTUME_HEAD_TOP (13) - Upper Costume Headgear
EQI_COSTUME_GARMENT (14) - Costume Garment
Notice that a few items occupy several equipment slots, and if the character is
wearing such an item, 'getequipid' will return it's ID number for either slot.

View File

@ -167,7 +167,7 @@ struct map_session_data {
struct registry save_reg;
struct item_data* inventory_data[MAX_INVENTORY]; // direct pointers to itemdb entries (faster than doing item_id lookups)
short equip_index[14];
short equip_index[15];
unsigned int weight,max_weight;
int cart_weight,cart_num,cart_weight_max;
int fd;

View File

@ -7349,7 +7349,7 @@ BUILDIN_FUNC(strnpcinfo)
static unsigned int equip[] = {EQP_HEAD_TOP,EQP_ARMOR,EQP_HAND_L,EQP_HAND_R,EQP_GARMENT,EQP_SHOES,EQP_ACC_L,EQP_ACC_R,EQP_HEAD_MID,EQP_HEAD_LOW,EQP_COSTUME_HEAD_LOW,EQP_COSTUME_HEAD_MID,EQP_COSTUME_HEAD_TOP,EQP_COSTUME_GARMENT};
/*==========================================
* GetEquipID(Pos); Pos: 1-13
* GetEquipID(Pos); Pos: 1-14
*------------------------------------------*/
BUILDIN_FUNC(getequipid)
{
@ -10181,7 +10181,7 @@ BUILDIN_FUNC(homunculus_mutate)
BUILDIN_FUNC(morphembryo)
{
struct item item_tmp;
int m_class, i;
int m_class, i=0;
TBL_PC *sd;
sd = script_rid2sd(st);
@ -10232,9 +10232,9 @@ BUILDIN_FUNC(homunculus_shuffle)
/*==========================================
* Check for homunculus state.
* Return: -1 = No homunculus
* 0 = Homunculus is vaporized (rest)
* 1 = Homunculus is in morph state
* 2 = Homunculus is active
* 0 = Homunculus is active
* 1 = Homunculus is vaporized (rest)
* 2 = Homunculus is in morph state
*------------------------------------------*/
BUILDIN_FUNC(checkhomcall)
{