diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-07-10 19:57:47 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-07-10 19:57:47 +0000 |
commit | e50e157f6c854dcfde2765b9b5e7bf10a2200476 (patch) | |
tree | f61f917c83574db9986c218ac17c4b7c27fd8d9c | |
parent | 85bdc1dc6c13036984310f39428c82968ecffba7 (diff) | |
download | hercules-e50e157f6c854dcfde2765b9b5e7bf10a2200476.tar.gz hercules-e50e157f6c854dcfde2765b9b5e7bf10a2200476.tar.bz2 hercules-e50e157f6c854dcfde2765b9b5e7bf10a2200476.tar.xz hercules-e50e157f6c854dcfde2765b9b5e7bf10a2200476.zip |
- The on-place function won't be invoked on setting ground skills if the group's tick is greater than the current tick. As Buuyo pointed out, this should fix Sanctuary and Gospel taking effect inmediately instead of after "x" amount of ms as they should.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7601 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | Changelog-Trunk.txt | 4 | ||||
-rw-r--r-- | src/map/skill.c | 6 |
2 files changed, 9 insertions, 1 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 0c2aee7fe..a6a69b7f4 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,10 @@ 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/07/10
+ * The on-place function won't be invoked on setting ground skills if the
+ group's tick is greater than the current tick. As Buuyo pointed out, this
+ should fix Sanctuary and Gospel taking effect inmediately instead of after
+ "x" amount of ms as they should. [Skotlex]
* Added login-char packet 0x2737. Sets all characters offline (login-server
side). [Skotlex]
* Cleaned up char server "set all offline" implementation to remove only
diff --git a/src/map/skill.c b/src/map/skill.c index 7aad7d7e2..b31f8e93f 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -6445,7 +6445,11 @@ struct skill_unit_group *skill_unitsetting (struct block_list *src, int skillid, group->state.magic_power = (flag&2 || (sc && sc->data[SC_MAGICPOWER].timer != -1)); //Store the magic power flag. [Skotlex] group->state.ammo_consume = (sd && sd->state.arrow_atk); //Store if this skill needs to consume ammo. group->state.song_dance = (unit_flag&(UF_DANCE|UF_SONG)); //Signals if this is a song/dance (does not counts duets) - + + //if tick is greater than current, do not invoke onplace function just yet. [Skotlex] + if (DIFF_TICK(group->tick, gettick()) > 100) + active_flag = 0; + if(skillid==HT_TALKIEBOX || skillid==RG_GRAFFITI){ group->valstr=(char *) aMallocA(MESSAGE_SIZE*sizeof(char)); |