您的位置:首页 > 运维架构 > 网站架构

MMORPG大型游戏设计与开发(客户端架构 part7 of vegine)

2014-08-11 16:06 519 查看

我在讲述某个东西的时候总喜欢从简单的入手,然后从互相关联的地方联合讲解,因为时间关系所以没能讲的十分详细,这点引以为憾,希望得到大家的谅解。这一节讲述的是微引擎(vengine)比较简单的一个模块,那便是鼠标指针的模块,方法也提供的不多,相信大多数熟悉VC的朋友们已经掌握了这方面的知识,我也就不在此班门弄虎了。


CODE

文件system.h

/**
* PAP Engine ( -- )
* $Id system.h
* @link -- for the canonical source repository
* @copyright Copyright (c) 2013-2014 viticm( viticm@126.com )
* @license
* @user viticm<viticm@126.com/viticm.ti@gmail.com>
* @date 2014-3-19 16:52:24
* @uses vengine cursor system module
*/
#ifndef VENGINE_CURSOR_SYSTEM_H_
#define VENGINE_CURSOR_SYSTEM_H_

#include "vengine/config.h"
#include "vengine/kernel/node.h"

namespace vengine_cursor {

typedef enum {
kTypeWinBase = 0,
kTypeNormal, //普通
kTypeAutoRun, //自动行走中
kTypeAttack, //攻击中
kTypePickup, //拾取物品
kTypeUnreachable, //区域无法访问
kTypeMine, //采矿
kTypeHerbs, //采药
kTypeTalk, //对话
kTypeInteract, //齿轮
kTypeRepiar, //修理
kTypeHover, //鼠标激活(挂接物品)
kTypeIdentify, //鉴定
kTypeRing, //技能环
kTypeDirection, //方向
kTypeNumber
} type_enum; //指针类型定义

class VENGINE_API System : public vengine_kernel::Node {

VENGINE_KERNEL_DECLARE_DYNAMIC(vengine_cursor_System);

public:
virtual void set(type_enum type) = 0;
virtual HCURSOR get() = 0;

/* enter ui control model */
virtual void enterui(HCURSOR hcursor) = 0;
virtual void leaveui() = 0;

/* 应WM_SETCURSOR */
virtual void onset() = 0;
/* 显示或隐藏 */
virtual void show(bool flag) = 0;

};

}; //namespace vengine_cursor

#endif //VENGINE_CURSOR_SYSTEM_H_


总结

这一节我也不做详细的介绍,代码中几个简单的方法,想必已经相对清晰了,以后会再更新这些方面的详细解说。下一节讲解的也是一个非常简单的模块,脚本(LUA)模块。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: