summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt1
-rw-r--r--db/skill_unit_db.txt2
-rw-r--r--src/map/battle.c1
-rw-r--r--src/map/map.c6
-rw-r--r--src/map/skill.c35
5 files changed, 22 insertions, 23 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index e98658185..5744c8818 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,6 +4,7 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/11/08
+ * Fixed Desperado's hit-rate, now it behaves as it should. [Skotlex]
* The GVG map-packet will now also be sent for guild dungeon maps.
[Skotlex]
* Added clif_gospel_info which displays info about the buffs you are
diff --git a/db/skill_unit_db.txt b/db/skill_unit_db.txt
index 58090fdeb..986e2e724 100644
--- a/db/skill_unit_db.txt
+++ b/db/skill_unit_db.txt
@@ -88,7 +88,7 @@
430,0x86, , 0, 1, 500,enemy, 0x000 //SG_STAR_WARM
484,0xb8, , 2, 0,1000,enemy, 0x808 //HW_GRAVITATION
488,0xb9, , 3, 0, -1,all, 0x200 //CG_HERMODE
-516,0xba, , 0, 3, 100,enemy, 0x000 //GS_DESPERADO
+516,0xba, , 3, 0, 100,enemy, 0x000 //GS_DESPERADO
521,0xbe, , 0, 1,1000,enemy, 0x000 //GS_GROUNDDRIFT
527,0xbc, , -1, 0,2000,enemy, 0x000 //NJ_TATAMIGAESHI
535,0xbd, , -1, 0, 200,enemy, 0x008 //NJ_KAENSIN
diff --git a/src/map/battle.c b/src/map/battle.c
index b0a3995cd..0a7dee67c 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -217,7 +217,6 @@ int battle_attr_fix(struct block_list *src, struct block_list *target, int damag
damage <<= 1;
status_change_end(target, SC_SPIDERWEB, -1);
}
-
}
return damage*ratio/100;
}
diff --git a/src/map/map.c b/src/map/map.c
index 6c00496cd..1036edd15 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -1681,7 +1681,7 @@ int map_quit(struct map_session_data *sd) {
unit_remove_map(&sd->pd->bl, 0);
}
}
-
+
//Do we really need to remove the name?
idb_remove(charid_db,sd->status.char_id);
idb_remove(id_db,sd->bl.id);
@@ -3917,8 +3917,8 @@ int do_init(int argc, char *argv[]) {
mapindex_init();
grfio_init(GRF_PATH_FILENAME);
- map_readallmaps();
-
+ map_readallmaps();
+
add_timer_func_list(map_freeblock_timer, "map_freeblock_timer");
add_timer_func_list(map_clearflooritem_timer, "map_clearflooritem_timer");
add_timer_func_list(map_removemobs_timer, "map_removemobs_timer");
diff --git a/src/map/skill.c b/src/map/skill.c
index 4925922c8..5c1c6448d 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -6767,7 +6767,7 @@ struct skill_unit_group *skill_unitsetting (struct block_list *src, int skillid,
ux+=(i%5-2);
uy+=(i/5-2);
break;
- case UNT_DESPERADO:
+ case GS_DESPERADO:
val1 = abs(layout->dx[i]);
val2 = abs(layout->dy[i]);
if (val1 < 2 || val2 < 2) { //Nearby cross, linear decrease with no diagonals
@@ -7185,21 +7185,6 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
sg->state.into_abyss = 1; //Prevent Remove Trap from giving you the trap back. [Skotlex]
break;
- case UNT_GROUNDDRIFT_WIND:
- case UNT_GROUNDDRIFT_DARK:
- case UNT_GROUNDDRIFT_POISON:
- case UNT_GROUNDDRIFT_WATER:
- case UNT_GROUNDDRIFT_FIRE:
- map_foreachinrange(skill_trap_splash,&src->bl,
- skill_get_splash(sg->skill_id, sg->skill_lv), sg->bl_flag,
- &src->bl,tick,0);
- sg->unit_id = UNT_USED_TRAPS;
- clif_changetraplook(&src->bl, UNT_FIREPILLAR_ACTIVE);
- sg->limit=DIFF_TICK(tick,sg->tick)+1500;
- sg->state.into_abyss = 1;
- break;
-
-
case UNT_TALKIEBOX:
if (sg->src_id == bl->id)
break;
@@ -7261,7 +7246,7 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
status_change_clear_buffs(bl,2);
if (sd) clif_gospel_info(sd, 0x15);
break;
- case 2: // 100% resist to status changes.
+ case 2: // Immunity to all status
sc_start(bl,SC_SCRESIST,100,100,type);
if (sd) clif_gospel_info(sd, 0x16);
break;
@@ -7351,6 +7336,20 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
skill_attack(BF_WEAPON,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
break;
+ case UNT_GROUNDDRIFT_WIND:
+ case UNT_GROUNDDRIFT_DARK:
+ case UNT_GROUNDDRIFT_POISON:
+ case UNT_GROUNDDRIFT_WATER:
+ case UNT_GROUNDDRIFT_FIRE:
+ map_foreachinrange(skill_trap_splash,&src->bl,
+ skill_get_splash(sg->skill_id, sg->skill_lv), sg->bl_flag,
+ &src->bl,tick,0);
+ sg->unit_id = UNT_USED_TRAPS;
+ clif_changetraplook(&src->bl, UNT_FIREPILLAR_ACTIVE);
+ sg->limit=DIFF_TICK(tick,sg->tick)+1500;
+ sg->state.into_abyss = 1;
+ break;
+
case UNT_KAENSIN:
skill_attack(BF_MAGIC,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
if (--src->val2 <= 0)
@@ -9339,7 +9338,7 @@ int skill_landprotector (struct block_list *bl, va_list ap)
}
if (unit->group->skill_id == SA_LANDPROTECTOR &&
!(skill_get_unit_flag(skillid)&(UF_DANCE|UF_SONG|UF_ENSEMBLE)))
- { //Block stuff from being placed on an LP except for song/dances
+ { //It deletes everything except songs/dances/encores.
(*alive) = 0;
return 1;
}