* Fixed "--en/ja--" usage in 'monster' script not working properly
* Speedup player autosaving * Optimised guild castle saving when autosaving player data * Added sd check in mob_damage git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/stable@1224 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
fac2e7f552
commit
a3fbd42dd5
@ -1,6 +1,13 @@
|
|||||||
Date Added
|
Date Added
|
||||||
|
|
||||||
03/11
|
03/11
|
||||||
|
* Fixed "--en/ja--" usage in 'monster' script not working properly, thanks
|
||||||
|
to sbilly [celest]
|
||||||
|
* Speedup player autosaving -- don't save guild castle data at the same time,
|
||||||
|
thanks to Alex14 [celest]
|
||||||
|
* Optimised guild castle saving when autosaving player data, thanks to Yor /
|
||||||
|
Freya (UPDATE: view above)
|
||||||
|
* Added sd check in mob_damage, thanks to sbilly [celest]
|
||||||
* Added Sage enchanting skills can only be cast on party members [celest]
|
* Added Sage enchanting skills can only be cast on party members [celest]
|
||||||
* Fixed Magic Power not working for ground-targeted skills [celest]
|
* Fixed Magic Power not working for ground-targeted skills [celest]
|
||||||
* Fixed Frost Diver having double freezing chances [celest]
|
* Fixed Frost Diver having double freezing chances [celest]
|
||||||
|
@ -35,6 +35,9 @@ Other Ppl
|
|||||||
Date Added
|
Date Added
|
||||||
======
|
======
|
||||||
|
|
||||||
|
03/11
|
||||||
|
* Reverted the Moving HP skill quest change, thanks to DracoRPG [celest]
|
||||||
|
|
||||||
03/07
|
03/07
|
||||||
* Fixed a typo in high mage job changing, thanks to hongmei [celest]
|
* Fixed a typo in high mage job changing, thanks to hongmei [celest]
|
||||||
|
|
||||||
|
@ -234,7 +234,8 @@ L_Check:
|
|||||||
mes "Haha! You have just learned HP Moving Recovery!";
|
mes "Haha! You have just learned HP Moving Recovery!";
|
||||||
delitem 713,200;
|
delitem 713,200;
|
||||||
delitem 1058,1;
|
delitem 1058,1;
|
||||||
delitem 2312,1;
|
//-- Padded armor does not have to be deleted! --
|
||||||
|
// delitem 2312,1;
|
||||||
skill 144,1,0;
|
skill 144,1,0;
|
||||||
set MOVHPREC, 0;
|
set MOVHPREC, 0;
|
||||||
next;
|
next;
|
||||||
|
@ -2612,7 +2612,7 @@ int mob_damage(struct block_list *src,struct mob_data *md,int damage,int type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Ore Discovery [Celest]
|
// Ore Discovery [Celest]
|
||||||
if (pc_checkskill(sd,BS_FINDINGORE)>0 && battle_config.finding_ore_rate/100 >= rand()%1000) {
|
if (sd && pc_checkskill(sd,BS_FINDINGORE)>0 && battle_config.finding_ore_rate/100 >= rand()%1000) {
|
||||||
struct delay_item_drop *ditem;
|
struct delay_item_drop *ditem;
|
||||||
int itemid[17] = { 714, 756, 757, 969, 984, 985, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1002 };
|
int itemid[17] = { 714, 756, 757, 969, 984, 985, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1002 };
|
||||||
ditem=(struct delay_item_drop *)aCalloc(1,sizeof(struct delay_item_drop));
|
ditem=(struct delay_item_drop *)aCalloc(1,sizeof(struct delay_item_drop));
|
||||||
@ -2631,7 +2631,7 @@ int mob_damage(struct block_list *src,struct mob_data *md,int damage,int type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
//this drop log contains ALL dropped items + ORE (if there was ORE Recovery) [Lupus]
|
//this drop log contains ALL dropped items + ORE (if there was ORE Recovery) [Lupus]
|
||||||
if(log_config.drop > 0 && drop_items) //we check were there any drops.. and if not - don't write the log
|
if(sd && log_config.drop > 0 && drop_items) //we check were there any drops.. and if not - don't write the log
|
||||||
log_drop(sd, md->class_, log_item); //mvp_sd
|
log_drop(sd, md->class_, log_item); //mvp_sd
|
||||||
|
|
||||||
if(sd && sd->state.attack_type == BF_WEAPON) {
|
if(sd && sd->state.attack_type == BF_WEAPON) {
|
||||||
|
56
src/map/pc.c
56
src/map/pc.c
@ -6821,6 +6821,8 @@ int pc_setsavepoint(struct map_session_data *sd,char *mapname,int x,int y)
|
|||||||
*------------------------------------------
|
*------------------------------------------
|
||||||
*/
|
*/
|
||||||
static int last_save_fd,save_flag;
|
static int last_save_fd,save_flag;
|
||||||
|
static int Ghp[MAX_GUILDCASTLE][8]; // so save only if HP are changed // experimental code [Yor]
|
||||||
|
|
||||||
static int pc_autosave_sub(struct map_session_data *sd,va_list ap)
|
static int pc_autosave_sub(struct map_session_data *sd,va_list ap)
|
||||||
{
|
{
|
||||||
nullpo_retr(0, sd);
|
nullpo_retr(0, sd);
|
||||||
@ -6828,8 +6830,11 @@ static int pc_autosave_sub(struct map_session_data *sd,va_list ap)
|
|||||||
Assert((sd->status.pet_id == 0 || sd->pd == 0) || sd->pd->msd == sd);
|
Assert((sd->status.pet_id == 0 || sd->pd == 0) || sd->pd->msd == sd);
|
||||||
|
|
||||||
if(save_flag==0 && sd->fd>last_save_fd && !sd->state.waitingdisconnect){
|
if(save_flag==0 && sd->fd>last_save_fd && !sd->state.waitingdisconnect){
|
||||||
struct guild_castle *gc=NULL;
|
// --- uncomment to reenable guild castle saving ---//
|
||||||
int i;
|
// struct guild_castle *gc=NULL;
|
||||||
|
// int i;
|
||||||
|
//
|
||||||
|
|
||||||
// if(battle_config.save_log)
|
// if(battle_config.save_log)
|
||||||
// printf("autosave %d\n",sd->fd);
|
// printf("autosave %d\n",sd->fd);
|
||||||
// pet
|
// pet
|
||||||
@ -6839,18 +6844,43 @@ static int pc_autosave_sub(struct map_session_data *sd,va_list ap)
|
|||||||
chrif_save(sd);
|
chrif_save(sd);
|
||||||
storage_storage_save(sd);
|
storage_storage_save(sd);
|
||||||
|
|
||||||
for(i=0;i<MAX_GUILDCASTLE;i++){
|
// --- uncomment to reenable guild castle saving ---//
|
||||||
gc=guild_castle_search(i);
|
/* for(i = 0; i < MAX_GUILDCASTLE; i++) { // [Yor]
|
||||||
if(!gc) continue;
|
gc = guild_castle_search(i);
|
||||||
if(gc->visibleG0==1) guild_castledatasave(gc->castle_id,18,gc->Ghp0);
|
if (!gc) continue;
|
||||||
if(gc->visibleG1==1) guild_castledatasave(gc->castle_id,19,gc->Ghp1);
|
if (gc->visibleG0 == 1 && Ghp[i][0] != gc->Ghp0) {
|
||||||
if(gc->visibleG2==1) guild_castledatasave(gc->castle_id,20,gc->Ghp2);
|
guild_castledatasave(gc->castle_id, 18, gc->Ghp0);
|
||||||
if(gc->visibleG3==1) guild_castledatasave(gc->castle_id,21,gc->Ghp3);
|
Ghp[i][0] = gc->Ghp0;
|
||||||
if(gc->visibleG4==1) guild_castledatasave(gc->castle_id,22,gc->Ghp4);
|
|
||||||
if(gc->visibleG5==1) guild_castledatasave(gc->castle_id,23,gc->Ghp5);
|
|
||||||
if(gc->visibleG6==1) guild_castledatasave(gc->castle_id,24,gc->Ghp6);
|
|
||||||
if(gc->visibleG7==1) guild_castledatasave(gc->castle_id,25,gc->Ghp7);
|
|
||||||
}
|
}
|
||||||
|
if (gc->visibleG1 == 1 && Ghp[i][1] != gc->Ghp1) {
|
||||||
|
guild_castledatasave(gc->castle_id, 19, gc->Ghp1);
|
||||||
|
Ghp[i][1] = gc->Ghp1;
|
||||||
|
}
|
||||||
|
if (gc->visibleG2 == 1 && Ghp[i][2] != gc->Ghp2) {
|
||||||
|
guild_castledatasave(gc->castle_id, 20, gc->Ghp2);
|
||||||
|
Ghp[i][2] = gc->Ghp2;
|
||||||
|
}
|
||||||
|
if (gc->visibleG3 == 1 && Ghp[i][3] != gc->Ghp3) {
|
||||||
|
guild_castledatasave(gc->castle_id, 21, gc->Ghp3);
|
||||||
|
Ghp[i][3] = gc->Ghp3;
|
||||||
|
}
|
||||||
|
if (gc->visibleG4 == 1 && Ghp[i][4] != gc->Ghp4) {
|
||||||
|
guild_castledatasave(gc->castle_id, 22, gc->Ghp4);
|
||||||
|
Ghp[i][4] = gc->Ghp4;
|
||||||
|
}
|
||||||
|
if (gc->visibleG5 == 1 && Ghp[i][5] != gc->Ghp5) {
|
||||||
|
guild_castledatasave(gc->castle_id, 23, gc->Ghp5);
|
||||||
|
Ghp[i][5] = gc->Ghp5;
|
||||||
|
}
|
||||||
|
if (gc->visibleG6 == 1 && Ghp[i][6] != gc->Ghp6) {
|
||||||
|
guild_castledatasave(gc->castle_id, 24, gc->Ghp6);
|
||||||
|
Ghp[i][6] = gc->Ghp6;
|
||||||
|
}
|
||||||
|
if (gc->visibleG7 == 1 && Ghp[i][7] != gc->Ghp7) {
|
||||||
|
guild_castledatasave(gc->castle_id, 25, gc->Ghp7);
|
||||||
|
Ghp[i][7] = gc->Ghp7;
|
||||||
|
}
|
||||||
|
}*/
|
||||||
|
|
||||||
save_flag=1;
|
save_flag=1;
|
||||||
last_save_fd = sd->fd;
|
last_save_fd = sd->fd;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user