// 아이템 사용자
#define ITEM_KARIN ((unsigned short) (0x0001))
#define ITEM_AL ((unsigned short) (0x0002))
#define ITEM_ARIS ((unsigned short) (0x0004))
#define ITEM_SARAH ((unsigned short) (0x0008))
#define ITEM_RADITSU ((unsigned short) (0x0010))
#define ITEM_SOPHIA ((unsigned short) (0x0020))
#define ITEM_RURU ((unsigned short) (0x0040))
#define ITEM_JOHN ((unsigned short) (0x0080))
#define ITEM_SON ((unsigned short) (0x0100))
// 아이템 특수효과
enum ItemEffect
{
ItemEffectNone=0, // 없음
ItemEffectResurrection, // 부활
ItemEffectPoision, // 중독
ItemEffectSleep, // 수면
ItemEffectPetro, // 석화
ItemEffectFreeze, // 동결
ItemEffectSilence, // 침묵
ItemEffectTemptation, // 매료
ItemEffectParalyze, // 마비
ItemEffectUnknown1, // ????
ItemEffectMove, // 이동Up
ItemEffectFly, // 비행
ItemEffectUnknown2 // ????
};
// 아이템 타입
enum ItemType { ItemTypeWeapon=0, ItemTypeArmor, ItemTypeAccessory, ItemTypeUsable };
// 공격 타입 (아이템 타입이 무기인 경우만, 방어구 타입이면 언제나 0)
enum ItemActionType {
ItemActionTypeNormal=0, // 일반 형태의 단일 타겟 공격
ItemActionTypePierce, // 관통 공격
ItemActionTypeRange, // 자신을 중심으로 범위공격
ItemActionTypeUnknown // ??
};
// 아이콘 모양
enum ItemIconType {
ItemIconTypeArmor=0,
ItemIconTypeBBottle,
ItemIconTypeRing,
ItemIconTypeYFlower,
ItemIconTypeBFlower,
ItemIconTypeNuts,
ItemIconTypeBag,
ItemIconTypeRFlower,
ItemIconTypeGBottle,
ItemIconTypeOBottle,
ItemIconTypeMushroom,
ItemIconTypeRedBall,
ItemIconTypeJewel,
ItemIconTypeNecklace,
ItemIconTypeBook,
ItemIconTypeBracelet
};
#pragma pack(1)
typedef struct _FT2ITEM
{
char Name[20]; // 아이템 명칭
unsigned short Price; // 아이템 가격
unsigned short RestoreHp; // HP 회복량
unsigned short RestoreMp; // MP 회복량
short Atk; // 공격력
short Def; // 방어력
short Int; // 지력
short Mgd; // 항마력
short Agi; // 민첩성
// 속성(음수는 반대속성)
short Fire;
short Wind;
short Light;
short MinRange; // 최소 사용 범위 (이 범위 이상부터 사용 가능)
short MaxRange; // 최대 사용 범위 (이 범위 까지 사용 가능)
short Type; // (0:무기,1:방어구,2:악세서리,3:소모아이템)
short ActionNo; // 액션 번호
short ActionType; // 공격 형태 or 아이콘 모양
short Effect; // 특수효과
short ItemUser; // 아이템 사용자
} FT2ITEM, *PFT2ITEM;
#pragma pack()
※ 주의 : 케릭터에 따른 엑션번호가 존재하는지 언제나 체크해야함