npc.h

来自「天之炼狱1服务器端源文件游戏服务端不完整」· C头文件 代码 · 共 203 行

H
203
字号
//////////////////////////////////////////////////////////////////////////////// Filename    : NPC.h// Written By  : 辫己刮// Description : // 盔贰绰 惑痢 贸府 何盒捞 绝菌栏唱, 捞 努贰胶甫 惑加罐酒 惑痢 NPC甫 // 父甸扁档 粱 弊贰辑, 弊成 NPC 救俊促 惑痢 牢磐其捞胶甫 笼绢持菌促.//////////////////////////////////////////////////////////////////////////////#ifndef __NPC_H__#define __NPC_H__#include "Creature.h"#include "Zone.h"#include "Assert.h"#include "Timeval.h"#include "Inventory.h"#include "quest/TriggerManager.h"#include "couple/PartnerWaitingManager.h"class QuestInfoManager;class RewardClassInfoManager;class Script;//////////////////////////////////////////////////////////////////////////////// 惑痢狼 辆幅 (农府胶付胶 捞亥飘侩)//////////////////////////////////////////////////////////////////////////////enum ShopType{	SHOPTYPE_NORMAL = 0, // 老馆 惑痢	SHOPTYPE_EVENT,      // 捞亥飘 惑痢	SHOPTYPE_MAX};//////////////////////////////////////////////////////////////////////////////// NPC狼 辆练 惑荐// 捞 惑荐甫 捞侩秦 浇饭捞绢啊 轨颇捞绢 NPC俊霸 富阑 吧芭唱 // 惑痢阑 捞侩窍绰 巴甸阑 阜绰促. //////////////////////////////////////////////////////////////////////////////enum{	NPC_RACE_SLAYER = 0,	NPC_RACE_VAMPIRE,	NPC_RACE_OUSTERS,	NPC_RACE_MONSTER,	NPC_RACE_UNKNOWN,	NPC_RACE_MAX};//////////////////////////////////////////////////////////////////////////////// Class NPC//////////////////////////////////////////////////////////////////////////////class ShopRack;class NPC : public Creature {public: 	NPC() throw();	NPC(const string & name) throw();	virtual ~NPC() throw (Error);public: 	virtual CreatureClass getCreatureClass() const throw() { return CREATURE_CLASS_NPC; }	virtual string getCreatureClassString() const throw() { return "CREATURE_CLASS_NPC"; }	virtual void registerObject() throw(Error);	virtual bool load() throw(Error);	virtual void save() const throw(Error) { throw UnsupportedError(); }	virtual string toString() const throw();public:	void init() throw(Error);	void act(const Timeval& currentTime) throw(Error);public:	virtual Level_t getLevel() const { return 1; }	Race_t getRace(void) const { return m_Race;}	void setRace(int race) { m_Race = race;}		bool isSlayer() const throw() { return(m_Race == NPC_RACE_SLAYER) ? true : false;}	bool isVampire() const throw() { return(m_Race == NPC_RACE_VAMPIRE) ? true : false;}	bool isOusters() const throw() { return(m_Race == NPC_RACE_OUSTERS) ? true : false;}	SpriteType_t getSpriteType() const throw() { return m_SpriteType; } 	void setSpriteType(SpriteType_t spriteType) throw() { m_SpriteType = spriteType; }	const string& getName() const throw() { return m_Name; }	void setName(const string & name) throw() { m_Name = name; }	NPCID_t getNPCID() const throw() { return m_NPCID;}	void setNPCID(NPCID_t NPCID) throw() { m_NPCID = NPCID;}	Color_t getMainColor() const throw() { return m_MainColor; }	void setMainColor(Color_t color) throw() { m_MainColor = color; }	Color_t getSubColor() const throw() { return m_SubColor; }	void setSubColor(Color_t color) throw() { m_SubColor = color; }	Inventory* getInventory() throw() { return m_pInventory; }	void setInventory(Inventory* pInventory) throw() { m_pInventory = pInventory; }	TriggerManager & getTriggerManager() throw() { return m_TriggerManager; }	const TriggerManager & getTriggerManager() const throw() { return m_TriggerManager; }	bool isShowInMinimap(void) const { return m_bShowInMinimap; }	void setShowInMinimap(bool bShow) { m_bShowInMinimap = bShow; }	bool isDead() const throw() { return false; }	bool isAlive() const throw() { return true; }////////////////////////////////////////////////////////////// 惑痢 包访 牢磐其捞胶// 惑痢 牢磐其捞胶俊 包访等 窃荐绰 NPC啊 角力肺// 惑痢 NPC啊 酒囱 版快俊绰 芭狼 葛滴啊 exception阑// 带瘤骨肺, 捞 NPC啊 犬角洒 惑痢 NPC牢瘤 眉农窍绊,// 窃荐甫 龋免秦具 茄促.////////////////////////////////////////////////////////////public:	int getShopType(void) const { return m_ShopType; }	void setShopType(int type) { m_ShopType = type; }	ShopVersion_t getShopVersion(ShopRackType_t type) const;	void setShopVersion(ShopRackType_t type, ShopVersion_t ver);	void increaseShopVersion(ShopRackType_t type);	bool  isExistShopItem(ShopRackType_t type, BYTE index) const;	void  insertShopItem(ShopRackType_t type, BYTE index, Item* pItem);	void  removeShopItem(ShopRackType_t type, BYTE index);	Item* getShopItem(ShopRackType_t type, BYTE index) const;	void  clearShopItem(void);	BYTE getFirstEmptySlot(ShopRackType_t type) const;	BYTE getLastEmptySlot(ShopRackType_t type) const;	bool isEmpty(ShopRackType_t type) const;	bool isFull(ShopRackType_t type) const;	MarketCond_t getMarketCondBuy(void) const { return m_MarketCondBuy;}	void setMarketCondBuy(MarketCond_t cond) { m_MarketCondBuy = cond;}		MarketCond_t getMarketCondSell(void) const { return m_MarketCondSell;}	void setMarketCondSell(MarketCond_t cond) { m_MarketCondSell = cond;}	virtual ClanType_t getClanType(void) const { return m_ClanType; }	virtual void setClanType(ClanType_t clan) { m_ClanType = clan; }		// SimpleQuest by sigi. 2002.12.3//	bool regenSimpleQuest() throw (Error);//	bool giveSimpleQuest(Creature* pPC, QuestID_t qid) throw (Error);//	void setSimpleQuestListScript(Script* pScript) throw (Error);	//void sendSimpleQuestListPacket(Creature* pCreature) throw (Error);		void setCoupleRegisterManager( PartnerWaitingManager* pPWM ) 	{ m_pCoupleRegisterManager = pPWM; }	void setCoupleUnregisterManager( PartnerWaitingManager* pPWM ) 	{ m_pCoupleUnregisterManager = pPWM; }	PartnerWaitingManager* getCoupleRegisterManager() const { return m_pCoupleRegisterManager; }	PartnerWaitingManager* getCoupleUnregisterManager() const { return m_pCoupleUnregisterManager; }	void setQuestInfoManager( QuestInfoManager* pQIM ) { m_pQuestInfoManager = pQIM; }	void setRewardClassInfoManager( RewardClassInfoManager* pRIM ) { m_pRewardClassInfoManager = pRIM; }	QuestInfoManager* getQuestInfoManager() const { return m_pQuestInfoManager; }	RewardClassInfoManager* getRewardClassInfoManager() const { return m_pRewardClassInfoManager; }protected:	string          m_Name;	NPCID_t         m_NPCID;	int             m_Race;	SpriteType_t    m_SpriteType;	Color_t         m_MainColor;	Color_t         m_SubColor;		Timeval         m_NextTurn;       // 促澜 咀记 角青 矫埃	Inventory*      m_pInventory;     // NPC狼 牢亥配府	TriggerManager  m_TriggerManager; // 飘府芭 概聪历	bool            m_bShowInMinimap;	ClanType_t      m_ClanType;	// 惑痢 牢磐其捞胶	int          m_ShopType;	ShopRack*    m_pRack;	MarketCond_t m_MarketCondBuy;	MarketCond_t m_MarketCondSell;//	QuestBoard*  m_pQuestBoard;	// 目敲 殿废 概聪历	PartnerWaitingManager* m_pCoupleRegisterManager;	PartnerWaitingManager* m_pCoupleUnregisterManager;	// 涅胶飘 包访 沥焊甸	QuestInfoManager* m_pQuestInfoManager;	RewardClassInfoManager* m_pRewardClassInfoManager;};#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?