瀏覽代碼

- Some cleanups in irc.c
- Changed ASC_BREAKER's cast to 700ms
- Magic skills that ignore element now also don't take into account elemental cards.


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

skotlex 19 年之前
父節點
當前提交
f5c4a9bbfc
共有 5 個文件被更改,包括 16 次插入4 次删除
  1. 3 0
      Changelog-Trunk.txt
  2. 1 0
      db/Changelog.txt
  3. 1 1
      db/skill_cast_db.txt
  4. 4 2
      src/map/battle.c
  5. 7 1
      src/map/irc.c

+ 3 - 0
Changelog-Trunk.txt

@@ -5,6 +5,9 @@ IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.  EV
 GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS
 
 2006/03/22
+	* Some cleanups in irc.c [Skotlex]
+	* Magic skills that ignore element now also don't take into account
+	  elemental cards. [Skotlex]
 	* Fixed compiler warnings in battle.c [Lance]
 	* Changes by [reddozen] -->
 		- Updated Full Buster's damage, status effects, and skill levels

+ 1 - 0
db/Changelog.txt

@@ -27,6 +27,7 @@
 =========================
 
 03/22
+	* Changed Soul Breaker's cast time to 700ms. [Skotlex]
 	* Updated Elemental Converter ingredients. Thanks2 Haplo [Lupus]
 03/21
 	* Fixed the inf2 for BA_DISSONANCE to be dance-skill. [Skotlex]

+ 1 - 1
db/skill_cast_db.txt

@@ -581,7 +581,7 @@
 //-- ASC_EDP
 378,0,2000,0,20000:30000:40000:50000:60000,20000:30000:40000:50000:60000
 //-- ASC_BREAKER
-379,1000,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,0,0,0
+379,700,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,0,0,0
 //==========================================
 
 

+ 4 - 2
src/map/battle.c

@@ -2809,7 +2809,8 @@ struct Damage battle_calc_magic_attack(
 			short cardfix=100;
 
 			cardfix=cardfix*(100+sd->magic_addrace[t_race])/100;
-			cardfix=cardfix*(100+sd->magic_addele[t_ele])/100;
+			if (flag.elefix)
+				cardfix=cardfix*(100+sd->magic_addele[t_ele])/100;
 			cardfix=cardfix*(100+sd->magic_addsize[t_size])/100;
 			cardfix=cardfix*(100+sd->magic_addrace[is_boss(target)?10:11])/100;
 			for(i=0;i<sd->add_mdmg_count;i++) {
@@ -2828,7 +2829,8 @@ struct Damage battle_calc_magic_attack(
 			short s_class= status_get_class(src);
 			short cardfix=100;
 
-			cardfix=cardfix*(100-tsd->subele[s_ele])/100;
+			if (flag.elefix)
+				cardfix=cardfix*(100-tsd->subele[s_ele])/100;
 			cardfix=cardfix*(100-tsd->subsize[s_size])/100;
 			cardfix=cardfix*(100-tsd->subrace2[s_race2])/100;
 			cardfix=cardfix*(100-tsd->subrace[s_race])/100;

+ 7 - 1
src/map/irc.c

@@ -135,6 +135,10 @@ int irc_parse(int fd)
 {
 	if (session[fd]->eof){
 		do_close(fd);
+		if (irc_si) {
+		  	aFree(irc_si);
+			irc_si = NULL;
+		}
 		add_timer(gettick() + 15000, irc_connect_timer, 0, 0);
       	return 0;
 	}
@@ -143,8 +147,10 @@ int irc_parse(int fd)
 		irc_si->fd = fd;
 		irc_si->state = 0;
 		session[fd]->session_data = irc_si;
+	} else if  (!irc_si) {
+		irc_si = (struct IRC_Session_Info*)session[fd]->session_data;
+		irc_si->fd = fd;
 	}
-	irc_si = (struct IRC_Session_Info*)session[fd]->session_data;
 	if(RFIFOREST(fd) > 0){
 		char *incoming_string=aCalloc(RFIFOREST(fd),sizeof(char));
 		memcpy(incoming_string,RFIFOP(fd,0),RFIFOREST(fd));