⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rpgdefine.h

📁 五行MMORPG引擎系统V1.0
💻 H
字号:
//RPGDefine.h
/*/////////////////////////////////////////////////////////////////

   李亦
	liease@163.com 4040719
	2006-7-16
/*/////////////////////////////////////////////////////////////////
#ifndef _RPG__RPGDEFINE_H_
#define _RPG__RPGDEFINE_H_

#ifndef _RPG__RPGDEFINEBASE_H_
#include "RPGDefineBase.h"
#endif

namespace RPG
{

////////////////////////////////////////////////////
//前缀定义
#define		PRE_MOTION		"mo_"
#define		PRE_TEAM			"tm_"
#define		PRE_ACTION		"at_"

enum
{
	LEN_MOTION	= sizeof(PRE_MOTION) - 1,
	LEN_TEAM		= sizeof(PRE_TEAM) - 1,
	LEN_ACTION	= sizeof(PRE_ACTION) - 1,
};


/////////////////////////////////////////////
//任务类型
enum EGTaskTypes
{
	GTT_NORMAL,		//普通任务
	GTT_ENTRY,		//入手任务
	GTT_FRESHMAN,	//新人任务
	GTT_COMMIT,		//普通委托
	GTT_COMMIT2,	//高级委托
	GTT_LETTER,		//信件任务
	GTT_GUT,			//剧情任务
	GTT_CAREER,		//职业任务
	GTT_AMOUNT
};

enum EGTaskStates
{
	GTS_NULL = -1,
	GTS_IDLE,		//未知状态
	GTS_FREE,		//任务未接受,未达限制要求
	GTS_FREE2,		//任务未接受,满足限制要求
	//GTS_NEXTGOAL,	//任务步进目标
	//GTS_WAITING,	//任务等待中...
	GTS_RUNNING,	//任务已接受,未达目标要求
	GTS_RUNNING2,	//任务已接受,满足目标要求
	GTS_PREMIUM,	//任务已提交,待奖励状态
	//GTS_PREMIUM2,	//任务已提交,已接受奖励
	//GTS_REPEATEND,	//任务已完成,可重复性
	GTS_FINISHED,	//任务已完成
	GTS_OUTDATE,	//任务已过期,未达目标要求
	GTS_OUTDATE2,	//任务已过期,满足目标要求
	GTS_AMOUNT
};

	//任务操作
enum EGTaskActions
{
	GTA_NULL	= -1,
	GTA_NORMAL= 0,
	GTA_HOLD			= BIT(0),
	GTA_EXEC			= BIT(1),
	GTA_EXECTASK	= BIT(2),
	GTA_REPEAT		= BIT(3),
	//GTA_CHECK,		//检测任务
	//GTA_COMMIT,		//提交任务
	//GTA_RECEIVE,	//接受任务
	//GTA_PREMIUM,	//任务奖励
	//GTA_STEP,		//任务更新
	//GTA_END,			//任务终结
	//GTA_NEXTGOAL,	//任务准备
	GTA_AMOUNT = 5
};


//////////////////////////////////////////////
enum ERPGTextParseTypes
{
	TXTT_NULL=-1,
	TXTT_GAME,		//游戏信息
	TXTT_SCENE,		//场景信息
	TXTT_PLAYER,	//玩家信息
	TXTT_NPC,		//NPC信息
	TXTT_COLOR,		//颜色信息
	TXTT_TAG,		//标签信息
	TXTT_COLORMODE,//标签信息
	TXTT_ICON,		//图标
	TXTT_GVAR,		//全局变量
	TXTT_VAR,		//先局部后全局
	TXTT_ACTION,	//动作
	TXTT_MOTION,	//人物动作
	TXTT_TAG2,		//去除头:符标签
	TXTT_TAGEND,	//去除头:符标签
	TXTT_TASK,		//任务信息
	TXTT_DIALOG,	//对话信息
	TXTT_GOODS,		//物品信息
	TXTT_IMG,		//图片信息
	TXTT_AMOUNT
};


/////////////////////////////////////////////////////
//提示文本定义
enum EGameTipTexts
{
	TIP_NULL	= -1,
	TIP_WELCOME,
	TIP_EQUIP_ARMING,
	TIP_EQUIP_UNLOAD,
	TIP_EQUIP_SLOT_ERROR,
	TIP_MOTION_NONE,
	TIP_MOTION_PLAYING,
	TIP_NPC_NOTALK,
	TIP_NPC_TALKING,
	TIP_GOODSADDTOBAG,
	TIP_GOODS_APPLYEQUIP,
	TIP_ENTRY_TASK,
	TIP_ENTRY_TASK2,
	TIP_TASK_ACCEPT,
	TIP_TASK_FINISHED,
	TIP_TASK_OUTDATE,
	TIP_TPIECE_ACCEPT,
	TIP_TPIECE_FINISHED,
	TIP_TPIECE_OUTDATE,
	TIP_GOODSREMOVED,
	TIP_MONEYADD,
	TIP_MONEYREDUCE,
	TIP_AMOUNT
};

///////////////////////////////////////////
//对话片段类型
enum EGDlgAnswerTypes
{
	GDAT_NORMAL		= BIT(0),	//正常
	GDAT_END			= BIT(1),	//对话结束,正常执行对话
	GDAT_ABORT		= BIT(2),	//中止对话,取消对话执行状态
	GDAT_YES			= BIT(3),	//Yes型
	GDAT_NO			= BIT(4)		//No型
};

enum EGDlgPieceTypes
{
	GDPT_NORMAL		= 0,			//正常
	GDPT_ENTRY		= BIT(0),	//入口
	GDPT_TASKRUN	= BIT(1),	//任务执行
};



/////////////////////////////////////////////////////
//物品槽常量定义
enum  GoodsArrayConstants
{
	ACTION_BASE_INDEX		= 0,
	ACTION_BASE_AMOUNT	= 12,

	ACTION_TEAM_INDEX		= ACTION_BASE_AMOUNT,
	ACTION_TEAM_AMOUNT	= 6,

	ACTION_MOTION_INDEX	= ACTION_TEAM_INDEX + ACTION_TEAM_AMOUNT,
	ACTION_MOTION_AMOUNT	= 18,

	ACTION_AMOUNT			= ACTION_BASE_AMOUNT + ACTION_TEAM_AMOUNT + ACTION_MOTION_AMOUNT,
	

	FUNC_CELL_INDEX		= 0,
	FUNC_CELL_AMOUNT		= 8,
	NUMBER_CELL_INDEX		= FUNC_CELL_INDEX+FUNC_CELL_AMOUNT,
	NUMBER_CELL_AMOUNT	= 6,

	KEY_CELL_AMOUNT		= FUNC_CELL_AMOUNT+NUMBER_CELL_AMOUNT,


};




/////////////////////////////////////////////////
//物品槽类型
enum ERPGGoodsArrayTypes
{
	GGAR_NONE=-1,
	GGAR_EQUIPARMING=0,
	GGAR_EQUIPADORN,
	GGAR_GOODSBAG0,
	GGAR_GOODSBAG1,
	GGAR_GOODSBAG2,
	GGAR_TASKGOODSBAG,

	GGAR_ACTIONBASE,
	GGAR_ACTIONTEAM,
	GGAR_ACTIONMOTION,

	GGAR_FUNCKEYBAR,
	GGAR_NUMBERKEYBAR,

	GGAR_AMOUNT
};


///////////////////////////////////////////////////////////
//RPG对象类型
enum ERPGObjectTypes
{
	GOT_DEFAULT		=     0,
	GOT_RPGBASE		=     BIT(0),
	GOT_CHARACTER	=     BIT(1),
	GOT_PLAYER		=     BIT(2),
	GOT_NPC			=     BIT(3),
	GOT_MONSTER		=     BIT(4),
	GOT_GOODS		=     BIT(5),
	GOT_SCENE		=     BIT(6),
	GOT_DIALOG		=     BIT(7),
	GOT_PASSPORT	=     BIT(8),


#ifdef TGE_RPGCLIENT
	GOT_RUNNINGTASK=     BIT(28),
	GOT_TASKNPC		=     BIT(29),
	GOT_TASKLOCK	=     BIT(30),
	GOT_MAINROLE	=     BIT(31),
#endif
};


//////////////////////////////////////////////////////
//场景状态
enum EGSceneStates
{
	GSS_NORMAL		= 0,			//正常
	GSS_SILENT		= BIT(0),	//禁言
	GSS_LOCKED		= BIT(1),	//封锁
	GSS_COMPETING	= BIT(2),	//竞赛中
	GSS_EXAMING		= BIT(3),	//考试中
	GSS_AMOUNT	= 5
};

//////////////////////////////////////////////////////
//场景类型
enum EGSceneTypes
{
	GST_NORMAL,		//普通
	GST_FRESHMAN,	//新手村
	GST_MAIN,		//主城市
	GST_CITY,		//普通城市
	GST_SUBURB,		//郊区
	GST_ROOM,		//房间
	GST_LOBBY,		//大厅
	GST_PRIVATE,	//私房
	GST_LEAGUE,		//社团场所
	GST_SHOP,		//商店
	GST_MARKET,		//市场
	GST_GARDEN,		//花园
	GST_CAMPAIGN,	//赛区
	GST_DANGER,		//危险地区
	GST_ACTIVITY,	//活动专区
	GST_AMOUNT
};


//////////////////////////////////////////////////////
enum EGBodyTypes
{
	GBT_NORMAL,
	GBT_BIG,
	GBT_BIGEST,
	GBT_AMOUNT
};

//职业类型
enum EGCareer
{
	GCR_NULL,				//初行者
	GCR_FIGHTER,			//战士
	GCR_NECROMANCER,	//巫师
	GCR_KNIGHT,			//骑士
	GCR_THUG,				//刺客
	GCR_DOCTOR,			//医生
	GCR_AMOUNT
};

//种族类型
enum EGClan
{
	GC_HUMAN,	//人类
	GC_DWARF,	//矮人
	GC_ELF,		//精灵
	GC_DRAKKEN,	//怪物
	GC_GNOME,	//侏儒
	GC_GOBLIN,	//妖精
	GC_HALFLING,//半人兽
	GC_OGRE,		//怪兽
	GC_TITAN,	//泰坦
	GC_TROLL,	//旋转
	GC_AMOUNT
};

//性别
enum EGGender
{
	GG_NULL,
	GG_MALE,
	GG_FEMALE,
	GG_AMOUNT
};

//地带类型
enum EGZone
{
	GC_ASIA,		//亚洲
	GC_AMERICA,	//美洲
	GC_AUSTRIA,	//欧洲
	GC_ANTARCTICA,//南极洲
};

enum EAITypes
{
	GAI_NONE,		//没AI
	GAI_PASSIVE	= BIT(0),	//被动型
	GAI_ATTACK	= BIT(1),		//攻击型
	GAI_GREED	= BIT(2),		//贪婪型,抢物品
	GAI_TALK		= BIT(3),		//说话型
	GAI_WANDER	= BIT(4),		//闲逛型
	GAI_AMOUNT	= 6
};

//物品类型
enum EGGoodsTypes
{
	GGT_ELEMENT,	//元素
	GGT_MATERIAL,	//材料
	GGT_COLLECT,	//收集
	GGT_CONSUME,	//消耗物品
	GGT_PROPERTY,	//道具
	GGT_TASK,		//任务物品
	GGT_EQUIP,		//装备
	GGT_ACTION,		//动作
	GGT_SKILL,		//技能
	GGT_AMOUNT
};

enum EGActionTypes
{
	GAT_BASE,	//基本动作
	GAT_TEAM,	//组队动作
	GAT_MOTION,	//人物动作
};

enum EGDrugTypes
{
	DRUG_MP,
	DRUG_HP,
};

enum EGTaskGoodsTypes
{
	TGOODS_LETTER,
};

enum EGEquipSetTypes
{
	GEST_NONE,
	GEST_NORMAL,	//普通杂装
	GEST_SMURFS,	//蓝精灵套装
	GEST_AMOUNT
};

enum EGGoodsKind
{
	GGK_NORMAL,		//普通型
	GGK_GOOD,		//优良
	GGK_EXCELLENT,	//卓越
	GGK_RARITY,		//珍品
	GGK_NONSUCH,	//极品
	GGK_AMOUNT
	
};

//装备类型
enum EGEquipTypes
{
	/////////////////////////////////////////
	//左边槽装备类型
	EQUIP_SHOULDER,
	EQUIP_HELMET,
	EQUIP_MANTLE,

	EQUIP_ARMS,
	EQUIP_ARMOR,
	EQUIP_SHIELD,

	EQUIP_GLOVE,
	EQUIP_PANTS,
	EQUIP_BOOT,

	/////////////////////////////////////////
	//右边槽装备类型
	EQUIP_HEADGEAR,
	EQUIP_NECKLACE,

	EQUIP_LACE,		//饰带
	EQUIP_LACE2,	//配合装备槽,别用在装备类型

	EQUIP_RING,
	EQUIP_RING2,		//配合装备槽,别用在装备类型

	EQUIP_AMOUNT
};


//武器类型
enum EGArmsType
{
	ARMS_SWORD,			//剑
	ARMS_AXE,			//斧
	ARMS_HAMMER,		//锤
	ARMS_GLOVE,			//拳套
	ARMS_BROADSWORD,	//刀
	ARMS_SPEAR,			//枪

};



typedef struct tagGAbilities
{
	U32	aSTR;	//力量STRength
	U32	aINT;	//智力INTelligence
	U32	aCON;	//体力CONstitution
	U32	aDEX;	//敏捷DEXterity
	U32	aWIT;	//智慧WIT
}GABILITIES;




};//namespace RPG
#endif //_RPG__RPGDEFINE_H_

⌨️ 快捷键说明

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