summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.txt2
-rw-r--r--src/map/battle.c7
-rw-r--r--src/map/mob.c5
-rw-r--r--src/map/skill.c4
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;
}