340 lines
14 KiB
C++
340 lines
14 KiB
C++
#pragma once
|
|
|
|
#include "def.h"
|
|
#include "Script.h"
|
|
|
|
class CMonster : public CScript
|
|
{
|
|
public:
|
|
CMonster(void);
|
|
~CMonster(void);
|
|
|
|
private:
|
|
WORD m_MonsterCode; //몬스터 고유넘버
|
|
CString m_MonN3_1me; //몬스터의 고유이름
|
|
WORD m_Level; //수치 계산 및 능력 확정을 위한 레벨
|
|
WORD m_Lv_display; //실질적으로 유저에게 표시되는 레벨
|
|
WORD m_MaxHP; //가질수 있는 HP의 최대치
|
|
DWORD m_MaxMP; //가질수 있는 MP의 최대치
|
|
WORD m_NCode; //유저에게 표시될 이름으로 연결해주는 넘버
|
|
WORD m_Icode; //몬스터이미지 코드
|
|
BYTE m_Grade; //등급분류(일반 / 보스)
|
|
WORD m_Size; //크기
|
|
BYTE m_AttProperty; //일반공격의 속성
|
|
WORD m_MinAttackPower; //최소데미지(물리 / 마법)
|
|
WORD m_MaxAttackPower; //최대데미지(물리 / 마법)
|
|
WORD m_PhyDef; //물리 공격에 대한 방어력
|
|
WORD m_MagicDef; //마법공격에 대한 방어력
|
|
BYTE m_Class; //몬스터계열
|
|
WORD m_WaterResist; //물 속성 스킬에 대한 저항력
|
|
WORD m_FireResist; //불 속성 스킬에 대한 저항력
|
|
WORD m_WindResist; //바람속성 스킬에 대한 저항력
|
|
WORD m_EarthResist; //대지속성 스킬에 대한 저항력
|
|
WORD m_PhyAttRate; //물리공격 성공 확률
|
|
WORD m_PhyAttEvade; //물리공격 회피 확률
|
|
BYTE m_AttType; //공격타입
|
|
BYTE m_ArmorType;
|
|
FLOAT m_AttRange;
|
|
FLOAT m_ViewRange;
|
|
FLOAT m_MoveRange;
|
|
FLOAT m_WorkSpeed;
|
|
FLOAT m_RunSpeed;
|
|
WORD m_AttSpeed;
|
|
WORD m_AttSpeed2;
|
|
BYTE m_Missile1; //공격1 발사체
|
|
BYTE m_Missile2; //공격2 발사체
|
|
BYTE m_Jump;
|
|
CString m_s_spawn_ani;
|
|
WORD m_w_spawn_time;
|
|
BYTE m_Attitude;
|
|
BYTE m_Move_Attitude;
|
|
BYTE m_Monster_Condition1;
|
|
WORD m_Monster_Condition_Rate_1;
|
|
BYTE m_Action_Type1;
|
|
WORD m_Action_Parameter1;
|
|
WORD m_Action_Rate1;
|
|
BYTE m_Monster_Condition2;
|
|
WORD m_Monster_Condition_Rate_2;
|
|
BYTE m_Action_Type2;
|
|
WORD m_Action_Parameter2;
|
|
WORD m_Action_Rate2;
|
|
BYTE m_Monster_Condition3;
|
|
WORD m_Monster_Condition_Rate_3;
|
|
BYTE m_Action_Type3;
|
|
WORD m_Action_Parameter3;
|
|
WORD m_Action_Rate3;
|
|
WORD m_wAggro; // 어그로 확률 2005년 12월 6일 추가
|
|
WORD m_SkillUpdateTimer;
|
|
BYTE m_Revive_Condition;
|
|
BYTE m_Revive_Condition_Param;
|
|
BYTE m_Revive_Rate;
|
|
WORD m_Revive_Type;
|
|
WORD m_Revive_Delay;
|
|
BYTE m_Heal_Condition;
|
|
BYTE m_Heal_Condition_Param;
|
|
BYTE m_Heal_Rate;
|
|
WORD m_Heal_Type;
|
|
WORD m_Heal_Delay;
|
|
BYTE m_Summon_Condition;
|
|
BYTE m_Summon_Condition_Param;
|
|
BYTE m_Summon_Rate;
|
|
WORD m_Summon_Type;
|
|
WORD m_Summon_Delay;
|
|
BYTE m_Skill_Use_Possible;
|
|
WORD m_SkillCode1;
|
|
BYTE m_Skill1Rate;
|
|
WORD m_Skill1Delay;
|
|
WORD m_SkillCode2;
|
|
BYTE m_Skill2Rate;
|
|
WORD m_Skill2Delay;
|
|
WORD m_SkillCode3;
|
|
BYTE m_Skill3Rate;
|
|
WORD m_Skill3Delay;
|
|
WORD m_Hate_Skill;
|
|
WORD m_Revenge_Skill;
|
|
BYTE m_Revenge_Rate;
|
|
DWORD m_AddItemDrop;
|
|
WORD m_ItemCode1;
|
|
DWORD m_DropItem1Rate;
|
|
WORD m_ItemCode2;
|
|
DWORD m_DropItem2Rate;
|
|
WORD m_ItemCode3;
|
|
DWORD m_DropItem3Rate;
|
|
WORD m_OptionID1;
|
|
WORD m_OptionParam1;
|
|
WORD m_OptionID2;
|
|
WORD m_OptionParam2;
|
|
DWORD m_DEST;
|
|
BYTE m_ACT1;
|
|
DWORD m_P1;
|
|
BYTE m_ACT2;
|
|
DWORD m_P2;
|
|
BYTE m_ACT3;
|
|
DWORD m_P3;
|
|
BYTE m_ACT4;
|
|
DWORD m_P4;
|
|
BYTE m_ACT5;
|
|
DWORD m_P5;
|
|
|
|
//Get Method
|
|
public:
|
|
WORD GetMonsterCode(){return m_MonsterCode;}
|
|
CString GetMonN3_1me(){return m_MonN3_1me;}
|
|
WORD GetLevel(){return m_Level;}
|
|
WORD GetLv_display(){return m_Lv_display;}
|
|
WORD GetMaxHP(){return m_MaxHP;}
|
|
DWORD GetMaxMP(){return m_MaxMP;}
|
|
WORD GetNCode(){return m_NCode;}
|
|
WORD GetIcode(){return m_Icode;}
|
|
BYTE GetGrade(){return m_Grade;}
|
|
WORD GetSize(){return m_Size;}
|
|
BYTE GetAttProperty(){return m_AttProperty;}
|
|
WORD GetMinAttackPower(){return m_MinAttackPower;}
|
|
WORD GetMaxAttackPower(){return m_MaxAttackPower;}
|
|
WORD GetPhyDef(){return m_PhyDef;}
|
|
WORD GetMagicDef(){return m_Class;}
|
|
BYTE GetClass(){return m_Class;}
|
|
WORD GetWaterResist(){return m_WaterResist;}
|
|
WORD GetFireResist(){return m_FireResist;}
|
|
WORD GetWindResist(){return m_WindResist;}
|
|
WORD GetEarthResist(){return m_EarthResist;}
|
|
WORD GetPhyAttRate(){return m_PhyAttRate;}
|
|
WORD GetPhyAttEvade(){return m_PhyAttEvade;}
|
|
BYTE GetAttType(){return m_AttType;}
|
|
BYTE GetArmorType(){return m_ArmorType;}
|
|
FLOAT GetAttRange(){return m_AttRange;}
|
|
FLOAT GetViewRange(){return m_ViewRange;}
|
|
FLOAT GetMoveRange(){return m_MoveRange;}
|
|
FLOAT GetWorkSpeed(){return m_WorkSpeed;}
|
|
FLOAT GetRunSpeed(){return m_RunSpeed;}
|
|
WORD GetAttSpeed(){return m_AttSpeed;}
|
|
WORD GetAttSpeed2(){return m_AttSpeed2;}
|
|
BYTE GetMissile1(){return m_Missile1;}
|
|
BYTE GetMissile2(){return m_Missile2;}
|
|
BYTE GetJump(){return m_Jump;}
|
|
CString Gets_spawn_ani(){return m_s_spawn_ani;}
|
|
WORD Getw_spawn_time(){return m_w_spawn_time;}
|
|
BYTE GetAttitude(){return m_Attitude;}
|
|
BYTE GetMove_Attitude(){return m_Move_Attitude;}
|
|
BYTE GetMonster_Condition1(){return m_Monster_Condition1;}
|
|
WORD GetMonster_Condition_Rate_1(){return m_Monster_Condition_Rate_1;}
|
|
BYTE GetAction_Type1(){return m_Action_Type1;}
|
|
WORD GetAction_Parameter1(){return m_Action_Parameter1;}
|
|
WORD GetAction_Rate1(){return m_Action_Rate1;}
|
|
BYTE GetMonster_Condition2(){return m_Monster_Condition2;}
|
|
WORD GetMonster_Condition_Rate_2(){return m_Monster_Condition_Rate_2;}
|
|
BYTE GetAction_Type2(){return m_Action_Type2;}
|
|
WORD GetAction_Parameter2(){return m_Action_Parameter2;}
|
|
WORD GetAction_Rate2(){return m_Action_Rate2;}
|
|
BYTE GetMonster_Condition3(){return m_Monster_Condition3;}
|
|
WORD GetMonster_Condition_Rate_3(){return m_Monster_Condition_Rate_3;}
|
|
BYTE GetAction_Type3(){return m_Action_Type3;}
|
|
WORD GetAction_Parameter3(){return m_Action_Parameter3;}
|
|
WORD GetAction_Rate3(){return m_Action_Rate3;}
|
|
WORD GetAggro(){return m_wAggro;}
|
|
WORD GetSkillUpdateTimer(){return m_SkillUpdateTimer;}
|
|
BYTE GetRevive_Condition(){return m_Revive_Condition;}
|
|
BYTE GetRevive_Condition_Param(){return m_Revive_Condition_Param;}
|
|
BYTE GetRevive_Rate(){return m_Revive_Rate;}
|
|
WORD GetRevive_Type(){return m_Revive_Type;}
|
|
WORD GetRevive_Delay(){return m_Revive_Delay;}
|
|
BYTE GetHeal_Condition(){return m_Heal_Condition;}
|
|
BYTE GetHeal_Condition_Param(){return m_Heal_Condition_Param;}
|
|
BYTE GetHeal_Rate(){return m_Heal_Rate;}
|
|
WORD GetHeal_Type(){return m_Heal_Type;}
|
|
WORD GetHeal_Delay(){return m_Heal_Delay;}
|
|
BYTE GetSummon_Condition(){return m_Summon_Condition;}
|
|
BYTE GetSummon_Condition_Param(){return m_Summon_Condition_Param;}
|
|
BYTE GetSummon_Rate(){return m_Summon_Rate;}
|
|
WORD GetSummon_Type(){return m_Summon_Type;}
|
|
WORD GetSummon_Delay(){return m_Summon_Delay;}
|
|
BYTE GetSkill_Use_Possible(){return m_Skill_Use_Possible;}
|
|
WORD GetSkillCode1(){return m_SkillCode1;}
|
|
BYTE GetSkill1Rate(){return m_Skill1Rate;}
|
|
WORD GetSkill1Delay(){return m_Skill1Delay;}
|
|
WORD GetSkillCode2(){return m_SkillCode2;}
|
|
BYTE GetSkill2Rate(){return m_Skill2Rate;}
|
|
WORD GetSkill2Delay(){return m_Skill2Delay;}
|
|
WORD GetSkillCode3(){return m_SkillCode3;}
|
|
BYTE GetSkill3Rate(){return m_Skill3Rate;}
|
|
WORD GetSkill3Delay(){return m_Skill3Delay;}
|
|
WORD GetHate_Skill(){return m_Hate_Skill;}
|
|
WORD GetRevenge_Skill(){return m_Revenge_Skill;}
|
|
BYTE GetRevenge_Rate(){return m_Revenge_Rate;}
|
|
DWORD GetAddItemDrop(){return m_AddItemDrop;}
|
|
WORD GetItemCode1(){return m_ItemCode1;}
|
|
DWORD GetDropItem1Rate(){return m_DropItem1Rate;}
|
|
WORD GetItemCode2(){return m_ItemCode2;}
|
|
DWORD GetDropItem2Rate(){return m_DropItem2Rate;}
|
|
WORD GetItemCode3(){return m_ItemCode3;}
|
|
DWORD GetDropItem3Rate(){return m_DropItem3Rate;}
|
|
WORD GetOptionID1(){return m_OptionID1;}
|
|
WORD GetOptionParam1(){return m_OptionParam1;}
|
|
WORD GetOptionID2(){return m_OptionID2;}
|
|
WORD GetOptionParam2(){return m_OptionParam2;}
|
|
DWORD GetDEST(){return m_DEST;}
|
|
BYTE GetACT1(){return m_ACT1;}
|
|
DWORD GetP1(){return m_P1;}
|
|
BYTE GetACT2(){return m_ACT2;}
|
|
DWORD GetP2(){return m_P2;}
|
|
BYTE GetACT3(){return m_ACT3;}
|
|
DWORD GetP3(){return m_P3;}
|
|
BYTE GetACT4(){return m_ACT4;}
|
|
DWORD GetP4(){return m_P4;}
|
|
BYTE GetACT5(){return m_ACT5;}
|
|
DWORD GetP5(){return m_P5;}
|
|
|
|
//Set Method
|
|
private:
|
|
BOOL SetMonsterCode(VARIANT value, int& nErrorCode);
|
|
BOOL SetMonN3_1me(VARIANT value, int& nErrorCode);
|
|
BOOL SetLevel(VARIANT value, int& nErrorCode);
|
|
BOOL SetLv_display(VARIANT value, int& nErrorCode);
|
|
BOOL SetMaxHP(VARIANT value, int& nErrorCode);
|
|
BOOL SetMaxMP(VARIANT value, int& nErrorCode);
|
|
BOOL SetNCode(VARIANT value, int& nErrorCode);
|
|
BOOL SetIcode(VARIANT value, int& nErrorCode);
|
|
BOOL SetGrade(VARIANT value, int& nErrorCode);
|
|
BOOL SetSize(VARIANT value, int& nErrorCode);
|
|
BOOL SetAttProperty(VARIANT value, int& nErrorCode);
|
|
BOOL SetMinAttackPower(VARIANT value, int& nErrorCode);
|
|
BOOL SetMaxAttackPower(VARIANT value, int& nErrorCode);
|
|
BOOL SetPhyDef(VARIANT value, int& nErrorCode);
|
|
BOOL SetMagicDef(VARIANT value, int& nErrorCode);
|
|
BOOL SetClass(VARIANT value, int& nErrorCode);
|
|
BOOL SetWaterResist(VARIANT value, int& nErrorCode);
|
|
BOOL SetFireResist(VARIANT value, int& nErrorCode);
|
|
BOOL SetWindResist(VARIANT value, int& nErrorCode);
|
|
BOOL SetEarthResist(VARIANT value, int& nErrorCode);
|
|
BOOL SetPhyAttRate(VARIANT value, int& nErrorCode);
|
|
BOOL SetPhyAttEvade(VARIANT value, int& nErrorCode);
|
|
BOOL SetAttType(VARIANT value, int& nErrorCode);
|
|
BOOL SetArmorType(VARIANT value, int& nErrorCode);
|
|
BOOL SetAttRange(VARIANT value, int& nErrorCode);
|
|
BOOL SetViewRange(VARIANT value, int& nErrorCode);
|
|
BOOL SetMoveRange(VARIANT value, int& nErrorCode);
|
|
BOOL SetWorkSpeed(VARIANT value, int& nErrorCode);
|
|
BOOL SetRunSpeed(VARIANT value, int& nErrorCode);
|
|
BOOL SetAttSpeed(VARIANT value, int& nErrorCode);
|
|
BOOL SetAttSpeed2(VARIANT value, int& nErrorCode);
|
|
BOOL SetMissile1(VARIANT value, int& nErrorCode);
|
|
BOOL SetMissile2(VARIANT value, int& nErrorCode);
|
|
BOOL SetJump(VARIANT value, int& nErrorCode);
|
|
BOOL Sets_spawn_ani(VARIANT value, int& nErrorCode);
|
|
BOOL Setw_spawn_time(VARIANT value, int& nErrorCode);
|
|
BOOL SetAttitude(VARIANT value, int& nErrorCode);
|
|
BOOL SetMove_Attitude(VARIANT value, int& nErrorCode);
|
|
BOOL SetMonster_Condition1(VARIANT value, int& nErrorCode);
|
|
BOOL SetMonster_Condition_Rate_1(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Type1(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Parameter1(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Rate1(VARIANT value, int& nErrorCode);
|
|
BOOL SetMonster_Condition2(VARIANT value, int& nErrorCode);
|
|
BOOL SetMonster_Condition_Rate_2(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Type2(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Parameter2(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Rate2(VARIANT value, int& nErrorCode);
|
|
BOOL SetMonster_Condition3(VARIANT value, int& nErrorCode);
|
|
BOOL SetMonster_Condition_Rate_3(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Type3(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Parameter3(VARIANT value, int& nErrorCode);
|
|
BOOL SetAction_Rate3(VARIANT value, int& nErrorCode);
|
|
BOOL SetAggro(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkillUpdateTimer(VARIANT value, int& nErrorCode);
|
|
BOOL SetRevive_Condition(VARIANT value, int& nErrorCode);
|
|
BOOL SetRevive_Condition_Param(VARIANT value, int& nErrorCode);
|
|
BOOL SetRevive_Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetRevive_Type(VARIANT value, int& nErrorCode);
|
|
BOOL SetRevive_Delay(VARIANT value, int& nErrorCode);
|
|
BOOL SetHeal_Condition(VARIANT value, int& nErrorCode);
|
|
BOOL SetHeal_Condition_Param(VARIANT value, int& nErrorCode);
|
|
BOOL SetHeal_Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetHeal_Type(VARIANT value, int& nErrorCode);
|
|
BOOL SetHeal_Delay(VARIANT value, int& nErrorCode);
|
|
BOOL SetSummon_Condition(VARIANT value, int& nErrorCode);
|
|
BOOL SetSummon_Condition_Param(VARIANT value, int& nErrorCode);
|
|
BOOL SetSummon_Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetSummon_Type(VARIANT value, int& nErrorCode);
|
|
BOOL SetSummon_Delay(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkill_Use_Possible(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkillCode1(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkill1Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkill1Delay(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkillCode2(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkill2Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkill2Delay(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkillCode3(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkill3Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetSkill3Delay(VARIANT value, int& nErrorCode);
|
|
BOOL SetHate_Skill(VARIANT value, int& nErrorCode);
|
|
BOOL SetRevenge_Skill(VARIANT value, int& nErrorCode);
|
|
BOOL SetRevenge_Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetAddItemDrop(VARIANT value, int& nErrorCode);
|
|
BOOL SetItemCode1(VARIANT value, int& nErrorCode);
|
|
BOOL SetDropItem1Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetItemCode2(VARIANT value, int& nErrorCode);
|
|
BOOL SetDropItem2Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetItemCode3(VARIANT value, int& nErrorCode);
|
|
BOOL SetDropItem3Rate(VARIANT value, int& nErrorCode);
|
|
BOOL SetOptionID1(VARIANT value, int& nErrorCode);
|
|
BOOL SetOptionParam1(VARIANT value, int& nErrorCode);
|
|
BOOL SetOptionID2(VARIANT value, int& nErrorCode);
|
|
BOOL SetOptionParam2(VARIANT value, int& nErrorCode);
|
|
BOOL SetDEST(VARIANT value, int& nErrorCode);
|
|
BOOL SetACT1(VARIANT value, int& nErrorCode);
|
|
BOOL SetP1(VARIANT value, int& nErrorCode);
|
|
BOOL SetACT2(VARIANT value, int& nErrorCode);
|
|
BOOL SetP2(VARIANT value, int& nErrorCode);
|
|
BOOL SetACT3(VARIANT value, int& nErrorCode);
|
|
BOOL SetP3(VARIANT value, int& nErrorCode);
|
|
BOOL SetACT4(VARIANT value, int& nErrorCode);
|
|
BOOL SetP4(VARIANT value, int& nErrorCode);
|
|
BOOL SetACT5(VARIANT value, int& nErrorCode);
|
|
BOOL SetP5(VARIANT value, int& nErrorCode);
|
|
|
|
public:
|
|
BOOL SaveData(int nCol,COleVariant value, int& nErrorCode);
|
|
CString GetContentsAll(void);
|
|
CString GetItem(int nCol);
|
|
};
|