diff options
-rw-r--r-- | Changelog.txt | 2 | ||||
-rw-r--r-- | src/map/battle.c | 7 | ||||
-rw-r--r-- | src/map/mob.c | 5 | ||||
-rw-r--r-- | src/map/skill.c | 4 |
4 files changed, 17 insertions, 1 deletions
diff --git a/Changelog.txt b/Changelog.txt index 86013a941..7ad7d87ab 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,5 +1,7 @@ Date Added 12/3 + * hacked the frozen mob issue [MouseJstr] + * Fixed a battle_range crash [MouseJstr] * Updated Stone Curse, Soul Drain, Auto Berserk [celest] * Added a fix for MVP exp being multiplied twice by Gengar diff --git a/src/map/battle.c b/src/map/battle.c index 95ac787a9..be22723d3 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -4394,8 +4394,13 @@ struct Damage battle_calc_misc_attack( } break; case SN_FALCONASSAULT: /* ファルコンアサルト */ +#ifdef TWILIGHT + skill = pc_checkskill(sd,HT_BLITZBEAT); + damage=(100+50*skill_lv+(dex/10+int_/2+skill*3+40)*2) * 2; +#else skill = pc_checkskill(sd,HT_STEELCROW); // Celest damage=((150+50*skill_lv)*(dex/10+int_/2+skill*3+40)*2)/100; +#endif break; } @@ -4958,7 +4963,7 @@ int battle_check_range(struct block_list *src,struct block_list *bl,int range) if( range>0 && range < arange ) {// 遠すぎる // be lenient if the skill was cast before we have moved to the correct position [Celest] if (src->type != BL_PC || - (src->type == BL_PC && ((struct map_session_data *)bl)->walktimer != -1 && + (bl->type == BL_PC && ((struct map_session_data *)bl)->walktimer != -1 && !((arange-=battle_config.skill_range_leniency)<=range))) return 0; } diff --git a/src/map/mob.c b/src/map/mob.c index 2f7d748a8..f56b5e4bf 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -765,6 +765,11 @@ static int mob_timer(int tid,unsigned int tick,int id,int data) break; } map_freeblock_unlock(); + if (md->timer == -1) { + mob_changestate(md,MS_WALK,0); + if (md->timer == -1) + printf("mob_timer : mob %x STILL has no timer\n", md); + } return 0; } diff --git a/src/map/skill.c b/src/map/skill.c index 4442ac81c..8f711fd57 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -8891,7 +8891,11 @@ int skill_status_change_timer(int tid, unsigned int tick, int id, int data) case SC_ENDURE: /* インデュア */ case SC_AUTOBERSERK: // Celest if(sd && sd->special_state.infinite_endure) { +#ifdef TWILIGHT + sc_data[type].timer=add_timer( 1000*600+tick,skill_status_change_timer, bl->id, data ); +#else sc_data[type].timer=add_timer( 1000*60+tick,skill_status_change_timer, bl->id, data ); +#endif //sc_data[type].val2=1; return 0; } |