Changed 'killerrid' and 'killedrid' from player vars to player params (bugreport:3249).

Now stored in player session data, so they don't get saved on logout anymore.
Added sql upgrade script 'upgrade_svn14507.sql' to remove the now unused player variables.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14507 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
ultramage 2010-11-26 14:03:41 +00:00
parent 6354bf0a0c
commit 74872445ff
8 changed files with 25 additions and 5 deletions

View File

@ -1,6 +1,9 @@
Date Added
2010/11/26
* Changed 'killerrid' and 'killedrid' from player vars to player params (bugreport:3249) [ultramage]
- Now stored in player session data, so they don't get saved on logout anymore.
- Added sql upgrade script 'upgrade_svn14507.sql' to remove the now unused player variables.
* Some updates and fixes to script command documentation. [Ai4rei]
- Fixed small inaccuracy in description for homevolution (bugreport:125).
- Added ~AnnieRuru~'s fixes to item scripts, variables, and commands addtimer and addnpctimer (bugreport:373).

View File

@ -8,6 +8,8 @@
1475 Equestrian's Spear: NEED INFO.
13005 Angelic Wing Dagger: NEED INFO.
=======================
2010/11/26
* Rev. 14507 Added killerrid and killedrid param constants to const.txt [ultramage]
2010/11/21
* Rev. 14480 Added enumeration RC2_* to const.txt for mob data 'race2' (bugreport:4561). [Ai4rei]
- Fixed bSubRace2 being documented as bSPSubRace2 (since r1257).

View File

@ -276,6 +276,8 @@ Sp 7 1
MaxSp 8 1
BaseJob 119 1
BaseClass 120 1
killerrid 121 1
killedrid 122 1
bMaxHP 6
bMaxSP 8

View File

@ -0,0 +1 @@
DELETE FROM `global_reg_value` WHERE `str` = 'killedrid' OR `str` = 'killerrid';

View File

@ -296,6 +296,8 @@ enum _sp {
SP_BASEJOB=119, // 100+19 - celest
SP_BASECLASS=120, //Hmm.. why 100+19? I just use the next one... [Skotlex]
SP_KILLERRID=121,
SP_KILLEDRID=122,
// Mercenaries
SP_MERCFLEE=165, SP_MERCKILLS=189, SP_MERCFAITH=190,

View File

@ -2406,12 +2406,12 @@ int mob_dead(struct mob_data *md, struct block_list *src, int type)
{
if( sd && battle_config.mob_npc_event_type )
{
pc_setglobalreg(sd,"killerrid",sd->bl.id);
pc_setparam(sd, SP_KILLERRID, sd->bl.id);
npc_event(sd,md->npc_event,0);
}
else if( mvp_sd )
{
pc_setglobalreg(mvp_sd,"killerrid",sd?sd->bl.id:0);
pc_setparam(mvp_sd, SP_KILLERRID, sd?sd->bl.id:0);
npc_event(mvp_sd,md->npc_event,0);
}
else
@ -2419,7 +2419,7 @@ int mob_dead(struct mob_data *md, struct block_list *src, int type)
}
else if( mvp_sd && !md->state.npc_killmonster )
{
pc_setglobalreg(mvp_sd,"killedrid",md->class_);
pc_setparam(mvp_sd, SP_KILLEDRID, md->class_);
npc_script_event(mvp_sd, NPCE_KILLNPC); // PCKillNPC [Lance]
}

View File

@ -5613,7 +5613,7 @@ int pc_dead(struct map_session_data *sd,struct block_list *src)
}
pc_setglobalreg(sd,"PC_DIE_COUNTER",sd->die_counter+1);
pc_setglobalreg(sd,"killerrid",src?src->id:0);
pc_setparam(sd, SP_KILLERRID, src?src->id:0);
if( sd->state.bg_id )
{
struct battleground_data *bg;
@ -5667,7 +5667,7 @@ int pc_dead(struct map_session_data *sd,struct block_list *src)
if (src && src->type == BL_PC)
{
struct map_session_data *ssd = (struct map_session_data *)src;
pc_setglobalreg(ssd, "killedrid", sd->bl.id);
pc_setparam(ssd, SP_KILLEDRID, sd->bl.id);
npc_script_event(ssd, NPCE_KILLPC);
if (battle_config.pk_mode&2) {
@ -5923,6 +5923,8 @@ int pc_readparam(struct map_session_data* sd,int type)
case SP_KARMA: val = sd->status.karma; break;
case SP_MANNER: val = sd->status.manner; break;
case SP_FAME: val = sd->status.fame; break;
case SP_KILLERRID: val = sd->killerrid; break;
case SP_KILLEDRID: val = sd->killedrid; break;
}
return val;
@ -6043,6 +6045,12 @@ int pc_setparam(struct map_session_data *sd,int type,int val)
case SP_FAME:
sd->status.fame = val;
break;
case SP_KILLERRID:
sd->killerrid = val;
return 1;
case SP_KILLEDRID:
sd->killedrid = val;
return 1;
default:
ShowError("pc_setparam: Attempted to set unknown parameter '%d'.\n", type);
return 0;

View File

@ -378,6 +378,8 @@ struct map_session_data {
int duel_group; // duel vars [LuzZza]
int duel_invite;
int killerrid, killedrid;
char away_message[128]; // [LuzZza]
int cashPoints, kafraPoints;