summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt2
-rw-r--r--src/map/chrif.c4
-rw-r--r--src/map/pc.c6
-rw-r--r--src/map/status.c6
4 files changed, 13 insertions, 5 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 604ba5e71..81dfaeb6b 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,6 +4,8 @@ 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/05/29
+ * Ending SC_CLOAK/SC_HIDE/SC_CHASEWALK will now trigger ontouch npcs.
+ [Skotlex]
* [Fixed]
- Scripting system screwing up script position after mixing timers with menus.
- NPC attached AI mobs display as alive when dead.
diff --git a/src/map/chrif.c b/src/map/chrif.c
index f6f20b2cc..5e622864f 100644
--- a/src/map/chrif.c
+++ b/src/map/chrif.c
@@ -36,7 +36,7 @@ static const int packet_len_table[0x3d] = {
6,-1,18, 7,-1,49,30,10, // 2b00-2b07: U->2b00, U->2b01, U->2b02, U->2b03, U->2b04, U->2b05, U->2b06, U->2b07
6,30,-1,10,86, 7,44,34, // 2b08-2b0f: U->2b08, U->2b09, U->2b0a, U->2b0b, U->2b0c, U->2b0d, U->2b0e, U->2b0f
0,-1,10, 6,11,-1, 0, 0, // 2b10-2b17: U->2b10, U->2b11, U->2b12, U->2b13, U->2b14, U->2b15, U->2b16, U->2b17
- -1,-1,-1,-1,-1,-1,2, 7, // 2b18-2b1f: U->2b18, U->2b19, U->2b1a, U->2b1b, U->2b1c, U->2b1d, U->2b1e, U->2b1f
+ -1,-1,-1,-1,-1,-1, 2, 7, // 2b18-2b1f: U->2b18, U->2b19, U->2b1a, U->2b1b, U->2b1c, U->2b1d, U->2b1e, U->2b1f
-1,-1,-1,-1,-1,-1,-1,-1, // 2b20-2b27: U->2b20, F->2b21, F->2b22, F->2b23, F->2b24, F->2b25, F->2b26, F->2b27
};
@@ -1145,7 +1145,7 @@ int chrif_buildfamelist(void)
{
chrif_check(-1);
- WFIFOHEAD(char_fd, 2);
+ WFIFOHEAD(char_fd, 2);
WFIFOW(char_fd, 0) = 0x2b1a;
WFIFOSET(char_fd, 2);
diff --git a/src/map/pc.c b/src/map/pc.c
index ac3a054f2..4f153252e 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -233,13 +233,13 @@ void pc_addfame(struct map_session_data *sd,int count) {
sd->status.fame = MAX_FAME;
switch(sd->class_&MAPID_UPPERMASK){
case MAPID_BLACKSMITH: // Blacksmith
- clif_fame_blacksmith(sd,count);
+ clif_fame_blacksmith(sd,count);
break;
case MAPID_ALCHEMIST: // Alchemist
- clif_fame_alchemist(sd,count);
+ clif_fame_alchemist(sd,count);
break;
case MAPID_TAEKWON: // Taekwon
- clif_fame_taekwon(sd,count);
+ clif_fame_taekwon(sd,count);
break;
}
chrif_updatefamelist(sd);
diff --git a/src/map/status.c b/src/map/status.c
index 1654d5dc6..bec04d668 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -5688,12 +5688,15 @@ int status_change_end( struct block_list* bl , int type,int tid )
case SC_HIDING:
sc->option &= ~OPTION_HIDE;
+ opt_flag = 2; //Check for warp trigger.
break;
case SC_CLOAKING:
sc->option &= ~OPTION_CLOAK;
+ opt_flag = 2;
break;
case SC_CHASEWALK:
sc->option &= ~(OPTION_CHASEWALK|OPTION_CLOAK);
+ opt_flag = 2;
break;
case SC_SIGHT:
sc->option &= ~OPTION_SIGHT;
@@ -5781,6 +5784,9 @@ int status_change_end( struct block_list* bl , int type,int tid )
if (calc_flag)
status_calc_bl(bl,calc_flag);
+ if(opt_flag == 2 && sd && map_getcell(bl->m,bl->x,bl->y,CELL_CHKNPC))
+ npc_touch_areanpc(sd,bl->m,bl->x,bl->y); //Trigger on-touch event.
+
return 1;
}