|
[传奇技术]服务器和客户端结构2
- unit Grobal2; //全局(服务器和客户端通用)消息,数据结构,函数等
- interface
- uses
- Math,windows;
- Const
- BUFFERSIZE =1024; //缓冲定义
- //客户端发送的命令
- CM_SOFTCLOSE =0; //退出传奇(游戏程序,可能是游戏中大退,也可能时选人时退出)
-
- //登录有关的命令 //CM: client msg,这些定义的消息都是客户端向服务端主动发送的
- CM_IDPASSWORD =1; //客户端向服务器发送ID和密码
- CM_QUERYUSERSTATE=2; //查询用户状态(用户登录进去,实际上是客户端向服务器索取查询最近一次
- 退出服务器前的状态的过程,服务器自动把用户最近一次下线以让游戏继续的一些信息返回到客户端)
- CM_ADDNEWUSER =3; //新建用户,就是注册新账号,登录时选择了"新用户"并操作成功
- CM_UPDATEUSER =4; //更新注册资料??
- CM_SELECTSERVER =5; //选服务器,注意不是选区,盛大一区往往有(至多8个??group.dat中是这么写的)
- //不止一个的服务器
- CM_CHANGEPASSWORD =6; //修改密码
- CM_NEWCHR =7; //创建新角色,注意不是上面所说的新建用户
- CM_QUERYCHR =8; //登录成功,客户端显出左右角色的那一瞬
- CM_DELCHR =9; //删除角色
- CM_SELCHR =10; //选择角色开始游戏
- CM_QUERYUSERNAME=11; //进入游戏,服务器返回角色名到客户端
- CM_SAY =22; //角色发言
- //客户端界面操作相关
- CM_MAGICKEYCHANGE = 30; //魔法快捷键改变
- CM_CREATEGROUP =42; //新建组队
- CM_WANTMINIMAP =43; //用户点击了"小地图"按钮
- CM_OPENGUILDDLG =45; //用户点击了"行会"按钮
- CM_GROUPMODE=41; //关组还是开组
- CM_ADDGROUPMEMBER =51; //组内添人
- CM_DELGROUPMEMBER =52; //组内删人
- CM_SPEEDHACKUSER =59; //用户加速作弊检测
- CM_ADJUST_BONUS =60; //用户得到奖励??私服中比较明显,小号升级时会得出金钱声望等,不是很确定,
- //求经过测试的高手的验证
- CM_QUERYBAGITEMS=62; //查询包裹物品
- CM_LOGINNOTICEOK = 63; //健康游戏忠告点了确实,进入游戏
- //动作命令1
- CM_TURN =4001; //转身(方向改变)
- CM_WALK =4002; //走
- CM_SITDOWN =4003; //挖
- CM_RUN =4004; //跑
- CM_HIT =4005; //普通物理近身攻击
- CM_POWERHIT =4008; //攻杀
- CM_LONGHIT =4009; //刺杀
- CM_WIDEHIT =4010; //半月
- CM_HEAVYHIT =4011; //烈火攻击
- CM_BIGHIT =4012; //
- CM_THROW =4013; //抛符
- CM_FIREHIT =4014; //
- CM_SPELL =4015; //施魔法
- CM_CLICKNPC =3015; //用户点击了某个NPC进行交互
- //动作命令2
- CM_OPENDOOR =2001; //开门,人物走到地图的某个过门点时
- CM_DROPITEM =2010; //从包裹里扔出物品到地图,此时人物如果在安全区可能会提示安全区不允许扔东西
- CM_PICKUP =2011; //捡东西
- CM_TAKEONITEM =2021; //装配装备到身上的装备位置
- CM_TAKEOFFITEM = 2022; //从身上某个装备位置取下某个装备
- CM_EAT =2023; //吃药
- CM_BUTCH =2024; //武士的野蛮
- //与商店NPC交易相关
- CM_MERCHANTDLGSELECT =2030; //商品选择,大类
- CM_MERCHANTQUERYSELLPRICE =2031; //返回价格,标准价格,我们知道商店用户卖入的有些东西掉持久或有特殊
- //属性系统会自动加价
- CM_MERCHANTQUERYREPAIRCOST =2032; //客户端向NPC取得修理费用
- CM_USERSELLITEM =2040; //用户卖东西
- CM_USERREPAIRITEM =2041; //用户修理东西
- CM_USERSTORAGEITEM =2042; //用户寄存东西
- CM_USERGETDETAILITEM =2043; //取得商品清单,比如点击"蛇眼戒指"大类,会出现一列蛇眼戒指供你选择
- CM_USERBUYITEM =2044; //用户买入东西
- CM_USERTAKEBACKSTORAGEITEM =2045; //用户向保管员取回东西
- CM_USERMAKEDRUGITEM =2046; //用户制造毒药(其它物品)
- CM_DROPGOLD =2050; //用户放下金钱到地上
- CM_DEALTRY =2060; //开始交易,交易开始
- CM_DEALCANCEL =2061; //取消交易
- CM_DEALADDITEM =2062; //加东西到交易物品栏上
- CM_DEALDELITEM =2063; //从交易物品栏上撤回的东西.好像不允许哦
- CM_DEALCHGGOLD =2064; //本来交易栏上金钱为0,,如有金钱交易,交易双方都会有这个消息
- CM_DEALEND =2069; //交易成功,完成交易
- CM_GUILDHOME =2070; //点击"行会主页"
- CM_GUILDMEMBERLIST =2071; //点击"成员列表"
- CM_GUILDADDMEMBER =2072; //增加成员
- CM_GUILDDELMEMBER =2073; //踢人出行会
- CM_GUILDUPDATENOTICE =2074; //修改行会公告
- CM_GUILDUPDATERANKINFO =2075; //更新联盟信息(取消或建立联盟)
- //装备项目
- U_WEAPON =0; //武器
- U_RIGHTHAND =1; //右手
- U_DRESS =2; //衣服
- U_HELMET =3; //头盔
- U_NECKLACE =4; //项链
- U_ARMRINGR =5; //右手戒指
- U_ARMRINGL =6; //左手戒指
- U_RINGR =7; //右戒指
- U_RINGL =8; //左戒指
- //服务器端发送的命令 sm:server msg,服务端向客户端发送的消息
- //登录、新帐号、新角色、查询角色等
- SM_NEWID_SUCCESS =101; //创建新账号成功
- SM_NEWID_FAIL =102; //..失败
- SM_PASSWD_FAIL =103; //验证失败,"服务器验证失败,需要重新登录"??
- SM_NEEDUPDATE_ACCOUNT =104; //需要更新,注册后的ID会发生什么变化?
- //私服中的普通ID经过充值??或者由普通ID变为会员ID,GM?
- SM_UPDATEID_SUCCESS =105; //更新成功
- SM_UPDATEID_FAIL =106; //更新失败
- SM_PASSOK_SELECTSERVER = 107; //密码验证完成且密码正确,开始选服
- SM_SELECTSERVER_OK =109; //选服成功
- SM_QUERYCHR =111; //返回角色信息到客户端
- SM_QUERYCHR_FAIL =112; //返回角色信息到客户端失败
- SM_NEWCHR_SUCCESS =113; //新建角色成功
- SM_NEWCHR_FAIL =114; //..失败
- SM_CHGPASSWD_SUCCESS =115; //修改密码成功
- SM_CHGPASSWD_FAIL =116; //..失败
- SM_DELCHR_SUCCESS =117; //删除角色成功
- SM_DELCHR_FAIL =118; //..失败
- SM_STARTPLAY=119; //开始进入游戏世界(点了健康游戏忠告后进入游戏画面)
- SM_STARTFAIL =120; //开始失败,玩传奇深有体会,有时选择角色,点健康游戏忠告后黑屏
- SM_VERSION_FAIL =121; //客户端版本验证失败
- SM_OUTOFCONNECTION =122; //超过最大连接数,强迫用户下线
- SM_RECONNECT =125; //与服务器重连
- SM_SENDNOTICE =202; //发送健康游戏忠告
- SM_MYSTATUS =131; //我的状态,最近一次下线状态,如是否被毒,挂了就强制回城
- SM_TIMECHECK_MSG = 227; //时钟检测,以免客户端作弊
- SM_CHANGEMAP =201; //地图改变,进入新地图
- SM_AREASTATE = 228; //周围状态
- SM_NEWMAP =223; //新地图
- SM_MAPDESCRIPTION = 229; //地图描述,行会战地图?攻城区域?安全区域?
- SM_LOGON =224; //连接地图
- SM_CHANGELIGHT =240; //负重改变
- SM_LAMPCHANGEDURA=241; //蜡烛持久改变
- SM_LIGHTING =242; //免蜡开关
- SM_OPENDOOR_OK=249; //通过过门点成功
- SM_OPENDOOR_LOCK=250; //发现过门口是封锁的,以前盛大秘密通道去赤月的门要5分钟开一次
- SM_CLOSEDOOR =251; //用户过门,门自行关闭
- SM_DEATH=260; //正常死亡
- SM_NOWDEATH =261; //秒杀
- SM_SKELETON=262; //尸体
- SM_ALIVE =263; //复活
- SM_ABILITY =264; //打开属性对话框,F11
- SM_SUBABILITY=265; //打开输助属性对话框
- SM_DAYCHANGING=266; //传奇界面右下角的太阳星星月亮
- SM_WINEXP =267; //获得经验
- SM_LEVELUP =268; //升级,左上角出现墨绿的升级字样
- SM_HEALTHSPELLCHANGED =269; //治愈术使你的体力增加
- SM_ADJUST_BONUS =280;
- SM_STRUCK =310; //受攻击
- SM_CHANGEFACE=311; //发型改变?
- SM_OPENHEALTH=312; //
- SM_CLOSEHEALTH =313; //
- SM_INSTANCEHEALGUAGE=314; //治愈
- SM_BREAKWEAPON=315; //武器破碎
- //对话消息
- SM_CRY=316; //喊话
- SM_GROUPMESSAGE =347; //组内聊天!!
- SM_GUILDMESSAGE =348; //行会聊天!~
- SM_WHISPER=349; //私聊
- SM_HEAR=351; //有人回你的话
- SM_SYSMESSAGE=390; //系统消息,盛大一般红字,私服蓝字
- SM_USERNAME =352; //
- SM_CHANGENAMECOLOR=353; //名字颜色改变,白名,灰名,红名,黄名
复制代码
|
|