Kaynağa Gözat

- Corrected the define for NK no cardfix (def).
- Updated skills that shouldn't ignore the target's cards: Smoking, Fling, Zenynage
- Fixed the char sql server not escaping the server name before inserting it on the ragsrvinfo table.
- Corrected @lvup not doing the party even share check.
- Corrected breaker's misc part not ignoring element.


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

skotlex 18 yıl önce
ebeveyn
işleme
07e53259a5
7 değiştirilmiş dosya ile 26 ekleme ve 18 silme
  1. 6 0
      Changelog-Trunk.txt
  2. 4 0
      db/Changelog.txt
  3. 3 3
      db/skill_db.txt
  4. 5 4
      src/char_sql/char.c
  5. 6 9
      src/map/atcommand.c
  6. 1 1
      src/map/battle.c
  7. 1 1
      src/map/skill.h

+ 6 - 0
Changelog-Trunk.txt

@@ -3,6 +3,12 @@ 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/03/07
+	* Corrected the define for NK no cardfix (def).
+	* Fixed the char sql server not escaping the server name before inserting
+	  it on the ragsrvinfo table.
+	* Corrected @lvup not doing the party even share check.
+	* Corrected breaker's misc part not ignoring element.
 2007/03/06
 	* Added NK value 0x80: ignore target's cards (0x8 will now only ignore
 	  attacker's cards).

+ 4 - 0
db/Changelog.txt

@@ -19,6 +19,10 @@
 	-----
 
 ========================
+
+03/07
+	* Updated skills that shouldn't ignore the target's cards: Smoking, Fling,
+	  Zenynage. [Skotlex]
 03/06
 	* Fixed Flying Angel headgear [Playtester]
 	* Corrected the NK values of skills (0x08 -> 0x80): Self Destruction,

+ 3 - 3
db/skill_db.txt

@@ -233,7 +233,7 @@
 192,-1,6,1,-1,0,0,10,1,no,0,0x2,0,weapon,0	//NPC_MAGICALATTACK#Demon Shock Attack#
 193,0,0,4,0,0x1,0,10,1,no,0,0x2,0,none,0	//NPC_METAMORPHOSIS#Metamorphosis#
 194,0,0,4,0,0x1,0,10,1,no,0,0x2,0,none,0	//NPC_PROVOCATION#Provocation#
-195,0,6,4,0,0xD0,0,10,1,no,0,0x2,0,misc,0	//NPC_SMOKING#Smoking#
+195,0,6,4,0,0x50,0,10,1,no,0,0x2,0,misc,0	//NPC_SMOKING#Smoking#
 196,0,0,4,0,0x1,0,10,1,no,0,0x2,0,magic,0	//NPC_SUMMONSLAVE#Follower Summons#
 197,0,0,4,0,0x1,0,10,1,no,0,0x2,0,none,0	//NPC_EMOTION#Emotion#
 198,0,0,4,0,0x1,0,10,1,no,0,0x2,0,magic,0	//NPC_TRANSFORMATION#Transformation#
@@ -539,7 +539,7 @@
 498,0,6,4,0,0x1,0,1,0,no,0,0x8,0,none,0	//AM_TWILIGHT3#Twilight Alchemy 3#
 499,-9,8,4,-1,0,0,1,2,no,0,0x208,0,weapon,0	//HT_POWER#Beast Strafing#
 500,0,6,4,0,0x40,0,5,1,no,0,0,0,misc,0	//GS_GLITTERING#Flip the Coin#
-501,9,6,1,-1,0xD0,0,1,1,no,0,0,0,misc,0	//GS_FLING#Fling#
+501,9,6,1,-1,0x50,0,1,1,no,0,0,0,misc,0	//GS_FLING#Fling#
 502,-9,8,1,-1,0,0,1,3,no,0,0,0,weapon,0	//GS_TRIPLEACTION#Triple Action#
 503,-9,6,1,-1,0x8,0,1,1,no,0,0,0,weapon,0	//GS_BULLSEYE#Bulls Eye#
 504,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0	//GS_MADNESSCANCEL#Madness Canceler#
@@ -564,7 +564,7 @@
 523,9,6,1,-1,0x40,0,10,1,no,0,0,0,weapon,0	//NJ_SYURIKEN#NJ_SYURIKEN#
 524,9,8,1,-1,0x40,0,5,3,no,0,0,0,weapon,0	//NJ_KUNAI#NJ_KUNAI#
 525,9,8,1,-1,0x6,1,5,-3:-3:-4:-4:-5,yes,0,0,0,weapon,0	//NJ_HUUMA#NJ_HUUMA#
-526,9,6,1,0,0xD0,0,10,1,no,0,0,0,misc,0	//NJ_ZENYNAGE#NJ_ZENYNAGE#
+526,9,6,1,0,0x50,0,10,1,no,0,0,0,misc,0	//NJ_ZENYNAGE#NJ_ZENYNAGE#
 527,0,6,4,-1,0,0,5,1,no,0,0,0,weapon,3	//NJ_TATAMIGAESHI#NJ_TATAMIGAESHI#
 528,-1,6,1,-1,0,0,10,1,no,0,0,0,weapon,0	//NJ_KASUMIKIRI#NJ_KASUMIKIRI#
 529,7:9:11:13:15,6,2,0,0x1,0,5,1,no,0,0,0,none,0	//NJ_SHADOWJUMP#NJ_SHADOWJUMP#

+ 5 - 4
src/char_sql/char.c

@@ -3003,13 +3003,14 @@ int parse_frommap(int fd) {
 			if (RFIFOREST(fd) < 6 || RFIFOREST(fd) < RFIFOW(fd,8))
 				return 0;
 		{
-			char motd[256], t_name[512]; //Required for jstrescapecpy [Skotlex]
+			char motd[256], t_name[2*sizeof(char)*sizeof(server_name)+1], t_motd[512]; //Required for jstrescapecpy [Skotlex]
 			strncpy(motd, RFIFOP(fd,10), 255); //First copy it to make sure the motd fits.
 			motd[255]='\0';
-			jstrescapecpy(t_name,motd);
-
+			jstrescapecpy(t_motd,motd);
+			jstrescapecpy(t_name,server_name);
+		
 			sprintf(tmp_sql, "INSERT INTO `ragsrvinfo` SET `index`='%d',`name`='%s',`exp`='%d',`jexp`='%d',`drop`='%d',`motd`='%s'",
-				fd, server_name, RFIFOW(fd,2), RFIFOW(fd,4), RFIFOW(fd,6), t_name);
+				fd, t_name, RFIFOW(fd,2), RFIFOW(fd,4), RFIFOW(fd,6), t_motd);
 			if (mysql_query(&mysql_handle, tmp_sql)) {
 				ShowSQL("DB error - %s\n",mysql_error(&mysql_handle));
 				ShowDebug("at %s:%d - %s\n", __FILE__,__LINE__,tmp_sql);

+ 6 - 9
src/map/atcommand.c

@@ -2725,10 +2725,6 @@ int atcommand_baselevelup(const int fd, struct map_session_data* sd, const char*
 		else
 			sd->status.status_point += status_point;
 		sd->status.base_level += (unsigned int)level;
-		clif_updatestatus(sd, SP_BASELEVEL);
-		clif_updatestatus(sd, SP_NEXTBASEEXP);
-		clif_updatestatus(sd, SP_STATUSPOINT);
-		status_calc_pc(sd, 0);
 		status_percent_heal(&sd->bl, 100, 100);
 		clif_misceffect(&sd->bl, 0);
 		clif_displaymessage(fd, msg_txt(21)); /* Base level raised. */
@@ -2748,14 +2744,15 @@ int atcommand_baselevelup(const int fd, struct map_session_data* sd, const char*
 			sd->status.status_point = 0;
 		else
 			sd->status.status_point -= status_point;
-		clif_updatestatus(sd, SP_STATUSPOINT);
 		sd->status.base_level -= (unsigned int)level;
-		clif_updatestatus(sd, SP_BASELEVEL);
-		clif_updatestatus(sd, SP_NEXTBASEEXP);
-		status_calc_pc(sd, 0);
 		clif_displaymessage(fd, msg_txt(22)); /* Base level lowered. */
 	}
-
+	clif_updatestatus(sd, SP_STATUSPOINT);
+	clif_updatestatus(sd, SP_BASELEVEL);
+	clif_updatestatus(sd, SP_NEXTBASEEXP);
+	status_calc_pc(sd, 0);
+	if(sd->status.party_id)
+		party_send_levelup(sd);
 	return 0;
 }
 

+ 1 - 1
src/map/battle.c

@@ -2554,7 +2554,7 @@ struct Damage  battle_calc_misc_attack(
 		break ;
 	case ASC_BREAKER:
 		md.damage = 500+rand()%500 + 5*skill_lv * sstatus->int_;
-		nk|=NK_IGNORE_FLEE; //Only Breaker's Misc part always hits.
+		nk|=NK_IGNORE_FLEE|NK_NO_ELEFIX; //These two are not properties of the weapon based part.
 		break;
 	}
 

+ 1 - 1
src/map/skill.h

@@ -30,7 +30,7 @@
 #define NK_NO_ELEFIX 0x10
 #define NK_IGNORE_DEF 0x20
 #define NK_IGNORE_FLEE 0x40
-#define NK_NO_CARDFIX_DEF 0x08
+#define NK_NO_CARDFIX_DEF 0x80
 
 //A skill with 3 would be no damage + splash: area of effect.
 //Constants to identify a skill's inf2 value.