马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
安装方法
魔神代码文件夹结构1. client文件夹为魔神客户端代码。 2. common文件夹为客户端,服务端,图形引擎共用的开发库。 3. contrib文件夹为客户端,服务端使用到的开发库,包括3D图形引擎HR3D,UI引擎HRUI,DXSDK,tinyxml,zlib等。 4. doc文件夹为开发文档。 5. server文件夹为魔神服务端代码。 6. tool文件夹为工具代码,包括HR3D模型编辑器mdx studio,HR3D地形编辑器map editor,HRUI编辑器ui editor,道具属性打包工具item factory,资源加密工具resource_checker,GM工具gmtool等。
魔神客户端编译1. 打开WOHDevelopercontribcontrib.sln,然后编译所有工程。 2. 打开WOHDeveloperclientclient.sln,然后编译client工程,编译后的client.exe会生成在WOHDeveloperclientin目录下。
1. Action人物动作管理,比如施放技能。 2. ArabicNights通信协议使用到的数据结构,背包类。 3. CameraStuntManager摄像机效果管理器。 4. Effect图形特效。 5. GameLogic游戏逻辑类。 6. Include客户端代码头文件,包括主循环,其他的代码头文件。 7. Map游戏地图,包括MiniMap。 8. Player 游戏人物类,包括通讯,移动,显示等功能。PlayerAnimCtrl类是Avatar,Player类是玩家游戏逻辑包括怪物,PlayerRole类是处理玩家自己逻辑,FightStatus类是战斗状态。9. Script脚本类,Lua。 10. Src客户端代码源文件。 11. Tools一些数据库,slk读取。 12. UI游戏界面逻辑,包括UIFriend好友列表,UILogin(登录界面,游戏人物选择),UIGuild工会界面,role游戏人物UI(背包,属性,任务,技能等),UI rade商城等。 13. 通信 里面包括客户端和服务器通讯的协议。
魔神换装1. 换装流程: a) 玩家右键点击装备触发CUI_ID_FRAME_PACK::UseItem函数并发送MsgEquip协议给服务端,拖拽换装触发CUI_ID_FRAME_PACK::Equip函数并发送MsgEquipToWhere协议给服务端。 b) 服务端收到客户端换装请求后做相应的处理后发送MsgAckEquip,MsgUpdateVisualEquip和MsgEquipChanged2(其他玩家)协议给客户端。 c) 客户端收到服务端处理的换装协议会触发CPlayerMgr::OnMsgEquip(3D模型变化)和CPlayerMgr::OnMsgUpdateVisualEquip(UI变化),其他玩家客户端会触发CPlayerMgr::OnMsgEquipChanged2函数 d) 3D模型换装的函数是CPlayerAnim::EquipAll,UI换装的函数是s_CUI_ID_FRAME_PACK.RefeashEquip 2. 普通装备和时装: 两者使用了同一套换装流程,同样的数据结构,只通过SCharVisual:: btCurrentShowSuitIndex来区分那套装备,如果以后有需要扩展装备套数可以使用 SCharVisual:: btCurrentShowSuitIndex来实现(请参考SCharVisual数据结构)。 3. 装备的强化:时装不可强化。通过SEquipData::nIntensifyTime变量来计算强化次数。不同的强化等级有不同的装备效果。CPlayerAnim::ChangeEquip负责更换模型和实现效果(脚本data/scripts/equip.lua是效果实现的逻辑代码)
|