ソースを参照

- The status window now shows the addition of the damage of your both weapons when dual wielding.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5256 54d463be-8e91-2dee-dedb-b68131a5f0ec
skotlex 19 年 前
コミット
5e170d8da9
3 ファイル変更10 行追加8 行削除
  1. 2 0
      Changelog-Trunk.txt
  2. 4 4
      src/map/clif.c
  3. 4 4
      src/map/status.c

+ 2 - 0
Changelog-Trunk.txt

@@ -5,6 +5,8 @@ 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/02/10
+	* The status window will now show the total power of both weapons instead
+	  of just the right-hand weapon for dual wielders. [Skotlex]
 	* Removed #include <lcms.h> from irc.c, since it's unused and some people don't have it. [Valaris]
 	* Changed the default MAX_LEVEL supported by the map server to 1000. [Skotlex]
 	* Pet Lures won't be consumed now when used on a non-mob. [Skotlex]

+ 4 - 4
src/map/clif.c

@@ -3073,7 +3073,7 @@ int clif_updatestatus(struct map_session_data *sd,int type)
 		WFIFOL(fd,4)=sd->aspd;
 		break;
 	case SP_ATK1:
-		WFIFOL(fd,4)=sd->base_atk+sd->right_weapon.watk;
+		WFIFOL(fd,4)=sd->base_atk+sd->right_weapon.watk+sd->left_weapon.watk;
 		break;
 	case SP_DEF1:
 		WFIFOL(fd,4)=sd->def;
@@ -3082,7 +3082,7 @@ int clif_updatestatus(struct map_session_data *sd,int type)
 		WFIFOL(fd,4)=sd->mdef;
 		break;
 	case SP_ATK2:
-		WFIFOL(fd,4)=sd->right_weapon.watk2;
+		WFIFOL(fd,4)=sd->right_weapon.watk2 + sd->left_weapon.watk2;
 		break;
 	case SP_DEF2:
 		WFIFOL(fd,4)=sd->def2;
@@ -3341,8 +3341,8 @@ int clif_initialstatus(struct map_session_data *sd)
 	WBUFB(buf,14)=(sd->status.luk > 255)? 255:sd->status.luk;
 	WBUFB(buf,15)=pc_need_status_point(sd,SP_LUK);
 
-	WBUFW(buf,16) = sd->base_atk + sd->right_weapon.watk;
-	WBUFW(buf,18) = sd->right_weapon.watk2; //atk bonus
+	WBUFW(buf,16) = sd->base_atk + sd->right_weapon.watk + sd->left_weapon.watk;
+	WBUFW(buf,18) = sd->right_weapon.watk2 + sd->left_weapon.watk2; //atk bonus
 	WBUFW(buf,20) = sd->matk1;
 	WBUFW(buf,22) = sd->matk2;
 	WBUFW(buf,24) = sd->def; // def

+ 4 - 4
src/map/status.c

@@ -861,9 +861,9 @@ int status_calc_pc(struct map_session_data* sd,int first)
 	b_hit = sd->hit;
 	b_flee = sd->flee;
 	b_aspd = sd->aspd;
-	b_watk = sd->right_weapon.watk;
+	b_watk = sd->right_weapon.watk + sd->left_weapon.watk;
 	b_def = sd->def;
-	b_watk2 = sd->right_weapon.watk2;
+	b_watk2 = sd->right_weapon.watk2 + sd->left_weapon.watk2;
 	b_def2 = sd->def2;
 	b_flee2 = sd->flee2;
 	b_critical = sd->critical;
@@ -1886,11 +1886,11 @@ int status_calc_pc(struct map_session_data* sd,int first)
 		clif_updatestatus(sd,SP_FLEE1);
 	if(b_aspd != sd->aspd)
 		clif_updatestatus(sd,SP_ASPD);
-	if(b_watk != sd->right_weapon.watk || b_base_atk != sd->base_atk)
+	if(b_watk != sd->right_weapon.watk + sd->left_weapon.watk || b_base_atk != sd->base_atk)
 		clif_updatestatus(sd,SP_ATK1);
 	if(b_def != sd->def)
 		clif_updatestatus(sd,SP_DEF1);
-	if(b_watk2 != sd->right_weapon.watk2)
+	if(b_watk2 != sd->right_weapon.watk2 + sd->left_weapon.watk2)
 		clif_updatestatus(sd,SP_ATK2);
 	if(b_def2 != sd->def2)
 		clif_updatestatus(sd,SP_DEF2);