浏览代码

- Corrected High Jump so it works on Guild Castles when WoE is off.
- Moonlit petals now always knocks to the back of the character rather than pushing the character away from it's center.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10355 54d463be-8e91-2dee-dedb-b68131a5f0ec

skotlex 18 年之前
父节点
当前提交
e345f25bd3
共有 2 个文件被更改,包括 9 次插入3 次删除
  1. 4 0
      Changelog-Trunk.txt
  2. 5 3
      src/map/skill.c

+ 4 - 0
Changelog-Trunk.txt

@@ -3,6 +3,10 @@ Date	Added
 AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 
+2007/04/26
+	* Corrected High Jump so it works on Guild Castles when WoE is off.
+	* Moonlit petals now always knocks to the back of the character rather than
+	  pushing the character away from it's center.
 2007/04/25
 	* Modified the mob ai think time update after using skills from
 	  adelay/amotion to 100ms since the previous method adds a large delay before

+ 5 - 3
src/map/skill.c

@@ -1775,7 +1775,7 @@ int skill_blown (struct block_list *src, struct block_list *target, int count)
 
 	if (src != target && map_flag_gvg(target->m))
 		return 0; //No knocking back in WoE
-	if (!count&0xffff)
+	if (!(count&0xffff))
 		return 0; //Actual knockback distance is 0.
 	
 	switch (target->type) {
@@ -4743,7 +4743,9 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
 			int x,y, dir = unit_getdir(src);
 
 		  	//Fails on noteleport maps, except for vs maps [Skotlex]
-			if(map[src->m].flag.noteleport && !map_flag_vs(src->m)) {
+			if(map[src->m].flag.noteleport &&
+				!(map_flag_vs(src->m) || map_flag_gvg2(src->m))
+			) {
 				x = src->x;
 				y = src->y;
 			} else {
@@ -7096,7 +7098,7 @@ int skill_unit_onplace (struct skill_unit *src, struct block_list *bl, unsigned
 			break;
 		if (ss == bl) //Also needed to prevent infinite loop crash.
 			break;
-		skill_blown(ss, bl, skill_get_blewcount(sg->skill_id,sg->skill_lv));
+		skill_blown(ss, bl, 0x10000|skill_get_blewcount(sg->skill_id,sg->skill_lv));
 		break;
 	}
 	return skillid;