Ver código fonte

- Missing files X_X (followup to r10122)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@10113 54d463be-8e91-2dee-dedb-b68131a5f0ec
ultramage 18 anos atrás
pai
commit
5d86a9b352
2 arquivos alterados com 50 adições e 10 exclusões
  1. 49 9
      src/map/itemdb.h
  2. 1 1
      src/map/pc.c

+ 49 - 9
src/map/itemdb.h

@@ -4,10 +4,14 @@
 #ifndef _ITEMDB_H_
 #define _ITEMDB_H_
 
-#include "map.h"
+#include "mmo.h" // ITEM_NAME_LENGTH
+
 #define MAX_RANDITEM	10000
 
-enum {
+#define MAX_SEARCH	5  //Designed for search functions, species max number of matches to display.
+
+
+enum item_types {
 	IT_HEALING = 0,
 	IT_UNKNOWN, //1
 	IT_USABLE,  //2
@@ -21,7 +25,48 @@ enum {
 	IT_AMMO,    //10
 	IT_DELAYCONSUME,//11
 	IT_MAX 
-} item_types;
+};
+
+enum item_group_list {
+	IG_BLUEBOX=1,	//1
+	IG_VIOLETBOX,	//2
+	IG_CARDALBUM,	//3
+	IG_GIFTBOX,	//4
+	IG_SCROLLBOX,	//5
+	IG_FINDINGORE,	//6
+	IG_COOKIEBAG,	//7
+	IG_FIRSTAID,	//8
+	IG_HERB,	//9
+	IG_FRUIT,	//10
+	IG_MEAT,	//11
+	IG_CANDY,	//12
+	IG_JUICE,	//13
+	IG_FISH,	//14
+	IG_BOX,	//15
+	IG_GEMSTONE,	//16
+	IG_RESIST,	//17
+	IG_ORE,	//18
+	IG_FOOD,	//19
+	IG_RECOVERY,	//20
+	IG_MINERAL,	//21
+	IG_TAMING,	//22
+	IG_SCROLL,	//23
+	IG_QUIVER,	//24
+	IG_MASK,	//25
+	IG_ACCESORY,	//26
+	IG_JEWEL,	//27
+	IG_GIFTBOX_1,	//28
+	IG_GIFTBOX_2,	//29
+	IG_GIFTBOX_3,	//30
+	IG_GIFTBOX_4,	//31
+	IG_EGGBOY,	//32
+	IG_EGGGIRL,	//33
+	IG_GIFTBOXCHINA,	//34
+	IG_LOTTOBOX,	//35
+	IG_FOODBAG,	//36
+	IG_POTION,	//37
+	MAX_ITEMGROUP,
+};
 
 #define CARD0_FORGE 0x00FF
 #define CARD0_CREATE 0x00FE
@@ -102,7 +147,7 @@ struct item_data* itemdb_exists(int nameid);
 #define itemdb_available(n) (itemdb_exists(n) && itemdb_search(n)->flag.available)
 #define itemdb_viewid(n) (itemdb_search(n)->view_id)
 #define itemdb_autoequip(n) (itemdb_search(n)->flag.autoequip)
-int itemdb_group_bonus(struct map_session_data *sd, int itemid);
+int itemdb_group_bonus(const int itemgrouphealrate[MAX_ITEMGROUP], int itemid);
 
 int itemdb_searchrandomid(int flags);
 
@@ -134,11 +179,6 @@ int itemdb_isidentified(int);
 int itemdb_isstackable(int);
 int itemdb_isstackable2(struct item_data *);
 
-// itemdb_equipマクロとitemdb_equippointとの違いは
-// 前者が鯖側dbで定義された値そのものを返すのに対し
-// 後者はsessiondataを考慮した鞍側での装備可能場所
-// すべての組み合わせを返す
-
 void itemdb_reload(void);
 
 void do_final_itemdb(void);

+ 1 - 1
src/map/pc.c

@@ -5495,7 +5495,7 @@ int pc_itemheal(struct map_session_data *sd,int itemid, int hp,int sp)
 		if (potion_flag > 1)
 			bonus += bonus*(potion_flag-1)*50/100;
 		//Item Group bonuses
-		bonus += bonus*itemdb_group_bonus(sd, itemid)/100;
+		bonus += bonus*itemdb_group_bonus(sd->itemgrouphealrate, itemid)/100;
 		//Individual item bonuses.
 		for(i = 0; i < MAX_PC_BONUS && sd->itemhealrate[i].nameid; i++)
 		{