用于QFunctionNPC新增[OnSendHotKey](QFunctionNPC.md) 函数,十进制值
| 常数名称 | 十六进制值 | 十进制值 | 对应按键 | Delphi编程表示(字符串型)\_tzlin注 |
| --- | --- | --- | --- | --- |
| | 0 | 0 | 大键盘Delete键 | #0 |
| VK\_LBUTTON | 1 | 1 | 鼠标的左键 | #1 |
| VK\_RBUTTON | 2 | 2 | 鼠标的右键 | #2 |
| VK-CANCEL | 3 | 3 | CtrlBreak(通常不需要处理) | #3 |
| VK\_MBUTTON | 4 | 4 | 鼠标的中键(三按键鼠标) | #4 |
| VK\_BACK | 8 | 8 | Backspace键 | #8 |
| VK\_TAB | 9 | 9 | Tab键 | #9 |
| | 0A | 10 | 换行符 | #10 |
| VK\_CLEAR | 0C | 12 | Clear键(NumLock关闭时的数字键盘5) | #12 |
| VK\_RETURN | 0D | 13 | Enter键 | #13 |
| VK\_SHIFT | 10 | 16 | Shift键 | #16 |
| VK\_CONTROL | 11 | 17 | Ctrl键 | #17 |
| VK\_MENU | 12 | 18 | Alt键 | #18 |
| VK\_PAUSE | 13 | 19 | Pause键 | #19 |
| VK\_CAPITAL | 14 | 20 | CapsLock键 | #20 |
| VK\_ESCAPE | 1B | 27 | Esc键 | #27 |
| VK\_SPACE | 20 | 32 | Spacebar键 | #32 |
| VK\_PRIOR | 21 | 33 | PageUp键 | #33 |
| VK\_NEXT | 22 | 34 | PageDomw键 | #34 |
| VK\_END | 23 | 35 | End键 | #35 |
| VK\_HOME | 24 | 36 | Home键 | #36 |
| VK\_LEFT | 25 | 37 | LEFTARROW键(←) | #37 |
| VK\_UP | 26 | 38 | UPARROW键(↑) | #38 |
| VK\_RIGHT | 27 | 39 | RIGHTARROW键(→) | #39 |
| VK\_DOWN | 28 | 40 | DOWNARROW键(↓) | #40 |
| VK\_Select | 29 | 41 | Select键 | #41 |
| VK\_PRINT | 2A | 42 | | #42 |
| VK\_EXECUTE | 2B | 43 | EXECUTE键 | #43 |
| VK\_SNAPSHOT | 2C | 44 | PrintScreen键(抓屏) | #44 |
| VK\_Insert | 2D | 45 | Ins键(NumLock关闭时的数字键盘0) | #45 |
| VK\_Delete | 2E | 46 | Del键(NumLock关闭时的数字键盘.) | #46 |
| VK\_HELP | 2F | 47 | Help键 | #47 |
| VK\_0 | 30 | 48 | 0键 | #48 |
| VK\_1 | 31 | 49 | 1键 | #49 |
| VK\_2 | 32 | 50 | 2键 | #50 |
| VK\_3 | 33 | 51 | 3键 | #51 |
| VK\_4 | 34 | 52 | 4键 | #52 |
| VK\_5 | 35 | 53 | 5键 | #53 |
| VK\_6 | 36 | 54 | 6键 | #54 |
| VK\_7 | 37 | 55 | 7键 | #55 |
| VK\_8 | 38 | 56 | 8键 | #56 |
| VK\_9 | 39 | 57 | 9键 | #57 |
| VK\_A | 41 | 65 | A键 | #65 |
| VK\_B | 42 | 66 | B键 | #66 |
| VK\_C | 43 | 67 | C键 | #67 |
| VK\_D | 44 | 68 | D键 | #68 |
| VK\_E | 45 | 69 | E键 | #69 |
| VK\_F | 46 | 70 | F键 | #70 |
| VK\_G | 47 | 71 | G键 | #71 |
| VK\_H | 48 | 72 | H键 | #72 |
| VK\_I | 49 | 73 | I键 | #73 |
| VK\_J | 4A | 74 | J键 | #74 |
| VK\_K | 4B | 75 | K键 | #75 |
| VK\_L | 4C | 76 | L键 | #76 |
| VK\_M | 4D | 77 | M键 | #77 |
| VK\_N | 4E | 78 | N键 | #78 |
| VK\_O | 4F | 79 | O键 | #79 |
| VK\_P | 50 | 80 | P键 | #80 |
| VK\_Q | 51 | 81 | Q键 | #81 |
| VK\_R | 52 | 82 | R键 | #82 |
| VK\_S | 53 | 83 | S键 | #83 |
| VK\_T | 54 | 84 | T键 | #84 |
| VK\_U | 55 | 85 | U键 | #85 |
| VK\_V | 56 | 86 | V键 | #86 |
| VK\_W | 57 | 87 | W键 | #87 |
| VK\_X | 58 | 88 | X键 | #88 |
| VK\_Y | 59 | 89 | Y键 | #89 |
| VK\_Z | 5A | 90 | Z键 | #90 |
| VK\_LWIN | | 91 | 左win键 | #91 |
| VK\_RWIN | | 92 | 右win键 | #92 |
| VK\_APPS | | 93 | 右Ctrl左边键,点击相当于点击鼠标右键,会弹出快捷菜单 | #93 |
| VK\_NUMPAD0 | 60 | 96 | 数字键0键 | #96 |
| VK\_NUMPAD1 | 61 | 97 | 数字键1键 | #97 |
| VK\_NUMPAD2 | 62 | 98 | 数字键2键 | #98 |
| VK\_NUMPAD3 | 62 | 99 | 数字键3键 | #99 |
| VK\_NUMPAD4 | 64 | 100 | 数字键4键 | #100 |
| VK\_NUMPAD5 | 65 | 101 | 数字键5键 | #101 |
| VK\_NUMPAD6 | 66 | 102 | 数字键6键 | #102 |
| VK\_NUMPAD7 | 67 | 103 | 数字键7键 | #103 |
| VK\_NUMPAD8 | 68 | 104 | 数字键8键 | #104 |
| VK\_NUMPAD9 | 69 | 105 | 数字键9键 | #105 |
| VK\_MULTIPLY | 6A | 106 | 数字键盘上的\*键 | #106 |
| VK\_ADD | 6B | 107 | 数字键盘上的 | #107 |
| VK\_SEPARATOR | 6C | 108 | Separator键 | #108 |
| VK\_SUBTRACT | 6D | 109 | 数字键盘上的-键 | #109 |
| VK\_DECIMAL | 6E | 110 | 数字键盘上的.键 | #110 |
| VK\_DIVIDE | 6F | 111 | 数字键盘上的/键 | #111 |
| VK\_F1 | 70 | 112 | F1键 | #112 |
| VK\_F2 | 71 | 113 | F2键 | #113 |
| VK\_F3 | 72 | 114 | F3键 | #114 |
| VK\_F4 | 73 | 115 | F4键 | #115 |
| VK\_F5 | 74 | 116 | F5键 | #116 |
| VK\_F6 | 75 | 117 | F6键 | #117 |
| VK\_F7 | 76 | 118 | F7键 | #118 |
| VK\_F8 | 77 | 119 | F8键 | #119 |
| VK\_F9 | 78 | 120 | F9键 | #120 |
| VK\_F10 | 79 | 121 | F10键 | #121 |
| VK\_F11 | 7A | 122 | F11键 | #122 |
| VK\_F12 | 7B | 123 | F12键 | #123 |
| VK\_NUMLOCK | 90 | 144 | NumLock键 | #144 |
| VK\_SCROLL | 91 | 145 | ScrollLock键 | #145 |
| | | 186 | ;(分号) | #186 |
| | | 187 | #NAME? | #187 |
| | | 188 | ,键(逗号) | #188 |
| | | 189 | \-键(减号) | #189 |
| | | 190 | .键(句号) | #190 |
| | | 191 | /键 | #191 |
| | | 192 | \`键(Esc下面) | #192 |
| | | 219 | \[键 | #219 |
| | | 220 | \\键 | #220 |
| | | 221 | \]键 | #221 |
| | | 222 | '键(引号) | #222 |
- 更新日志
- 2021年更新日志
- 2020年更新日志
- 2019年更新日志
- 2017年更新日志
- 2016年更新日志
- 2015年更新日志
- 2014年更新日志
- 2013年更新日志
- 游戏对象
- GameLib
- TActor
- TActorList
- TAddedAbility
- TAddLevelItem
- TAddPointItem
- TArgs
- TAttatckMode
- TDBEngine
- TEnvirnoment
- TFunctionFlag
- TGuild
- TItemState
- TItemWhere
- TMissionItem
- TMissionLinkItem
- TMissions
- TNormNpc
- TPlayMonster
- TPlayMonsterNPC
- TPlayObject
- TStdItem
- TStoreItemList
- TToptenz
- TUserCastle
- TUserItem
- TUserMagic
- TVarValue
- Tbuff
- TBuffCategory
- TBuffAbilityType
- TBuffStatusType
- TBuffIntervalType
- 固定NPC
- AINpc
- ExternalNPC
- MagicNpc
- ManagerNPC
- MapEventNPC
- MissionsNpc
- QFunctionNPC
- RobotManagerNPC
- TimeManagerNPC
- 自定义功能
- 自定义客户端UI
- Buffer效果自定义设计
- UI管理界面预览
- 如何实现物品放入或取下时的函数触发
- 自定义窗口
- 自定义界面中编辑框参数发送方式
- 自定义客户端装备提示效果
- 自定义特效
- 自定义装备提示样式
- Buff系统说明
- 自定义技能编辑器
- 技能扩展自定义
- 自定义技能初识
- 被动技能属性定义
- 技能模式定义
- 客户端效果定义
- 主动技能动作定义
- 新自定义技能编辑器
- 初始编辑器
- 自定义编辑器使用说明
- 如何实现自定义怪物
- 脚本实例
- NPC对话编辑
- 宝宝叛变的启动和停止
- 创建脚本单元
- 创建一个藏匿于地图上的攻击事件
- 地图传送
- 获取服务器名称
- 获取玩家任务信息
- 检测是否为沙城成员
- 角色称号、头顶花翎、头顶特效设置
- 判断PK值
- 判断队伍信息
- 判断角色对面是一个什么对象
- 判断角色金币、元宝及礼金等数量
- 判断角色所在的地图信息
- 判断角色性别
- 判断角色职业
- 判断两个角色之间的距离
- 判断是否为队长
- 判断是否为行会掌门
- 判断是否为沙巴克城主
- 判断有某一物品的数量
- 判断转生等级及等级
- 让目标移动到指定的坐标
- 让玩家回城
- 如何播放一个声音文件
- 如何操作Check状态检查
- 如何操作数据库
- 如何查看玩家IP来源
- 如何查看装备是否可被穿戴或取下
- 如何查找一个行会
- 如何充值角色的属性点
- 如何初始化全局变量
- 如何穿戴或取下一件装备
- 如何创建一个副本地图
- 如何创建一个行会
- 如何打开一个宝箱
- 如何打开指定的URL
- 如何弹出对话框让玩家选择执行
- 如何读写个人变量、行会变量及全局变量
- 如何读写文本文件
- 如何发送各种文字信息
- 如何访问其他角色
- 如何复活
- 如何给客户端发送一个标题栏闪动
- 如何给玩家发放物品
- 如何更新自定义窗口上的内容
- 如何关闭进度条
- 如何关闭一个打开的自定义窗口
- 如何过滤字符串中的文字
- 如何获得地图上全部玩家的信息
- 如何获得地图上指定范围内的怪物数量
- 如何获取丢在地上物品对象
- 如何获取角色当前使用的称号
- 如何获取角色负重
- 如何获取角色在线时长
- 如何获取排行榜信息
- 如何获取人物当前获得的称号信息
- 如何获取坐标上指定范围内的全部怪物
- 如何加入或离开队伍
- 如何加入一个指定的行会
- 如何加载和保存自定义的配置文件(INI文件读写
- 如何监控攻击模式的更改
- 如何监控玩家扔物品
- 如何检查目标是否处于某种状态
- 如何将NPC设置为当前玩家的雕像
- 如何将地图上的角色全部随机传送到另外一个地图上
- 如何将指定玩家传送到身边
- 如何将装备显示在NPC对话框上
- 如何脚本封速
- 如何脚本刷怪
- 如何脚本增加和删除一个NPC
- 如何脚本增加和删除一个怪物NPC
- 如何禁止玩家聊天
- 如何开启及停止自动增加经验值
- 如何克隆玩家为人形怪
- 如何判断当前等级的经验值上限
- 如何判断队伍中是否为不同职业的角色
- 如何判断角色是否为新人
- 如何判断玩家曾经是否接过某任务
- 如何清除地图上的怪物
- 如何请求一个URL
- 如何取得地图上的怪物数量
- 如何取得行会全部称号及全部成员信息
- 如何取得全部在线用户信息
- 如何取得玩当前机器的机器码
- 如何取得物品的数据库单价和销售价格
- 如何取得邮件的数量信息
- 如何取得自定义界面里面玩家放入的物品信息
- 如何让打开客户端的背包、商城及市场
- 如何让他人执行指定的脚本
- 如何删除或修改行会称号
- 如何删除玩家的物品
- 如何删除一个称号
- 如何删除一个副本地图
- 如何删除一个扩展按钮
- 如何删除一个延时调用函数
- 如何设置当前称号
- 如何设置角色死亡不爆出
- 如何实现充值平台对接
- 如何实现骰子
- 如何实现无敌隐身
- 如何实现物品属性转移(物品复制)
- 如何实现一个带参数的输入框
- 如何实现一个机器人
- 如何实现自定义装备爆出提示
- 如何使用JSON对象
- 如何使用角色S、P及N变量
- 如何使用静态数组和动态数组
- 如何使用升级加属性点
- 如何收取城堡金币
- 如何随机刷新物品属性
- 如何踢出在线人物
- 如何添加一个称号
- 如何调整角色的HP、MP值
- 如何调整角色声望值
- 如何调整人物攻击模式
- 如何调整人物转生等级
- 如何调整限时杀怪经验倍率
- 如何调整装备属性上限
- 如何完全控制他人
- 如何显示一个进度条
- 如何修改怪物名称
- 如何修改行会帮主
- 如何修改人物技能属性
- 如何修改一个物品的属性
- 如何延时调用一个函数
- 如何以爆物的方式将一个怪物的爆率给玩家
- 如何用脚本存取物品
- 如何在地图上爆出一个指定的物品
- 如何在行会指定的称号里面添加成员
- 如何在脚本中引用外部DLL
- 如何在客户端显示一个特效
- 如何增加和移除一个个人时钟事件
- 如何增加或减少角色经验值
- 如何增加一个地图连接点
- 如何增加一个行会的称号
- 如何增加一个扩展按钮
- 如何召唤下属
- 如何指定删除角色身上的装备
- 如何重新计算排行榜
- 如何转职
- 如何自动增加或减少元宝
- 如何做一个感叹号提示
- 实现自定义的客户端命令集
- 推开指定的目标
- 修改怪物的爆率为一个指定的爆率文件
- 循环自身全部技能
- 如何设置装备掉落触发脚本处理
- 如何设置装备掉落提示
- 给玩家添加一个未接任务
- 给玩家添加一个已接任务
- 补丁规则
- NPC补丁设置
- Prguse.data文件编辑的注意事项
- 引擎补丁规则
- 地图补丁规则
- 盾牌补丁
- 怪物补丁设置
- 头发补丁设置
- 武器及衣服补丁设置方法
- 坐骑补丁设置
- 操作相关
- 数据库设置
- 版本数据库管理
- 锄头设置方法
- 攻速及幸运设置
- 技能特殊设置
- 扩展数据管理
- 魔法数据设置要点
- 人形怪穿戴及技能设置
- 人形怪攻击速度设置
- 人形怪数据库设置
- 如何配置宝箱及钥匙
- 如何设置解包物品
- 如何设置一个固定位置的传送道具
- 设计采集类怪物
- 设置自定义物品种类名称
- 数据库报错问题
- 特殊物品属性设置说明
- 添加宝石物品
- 添加可穿戴宝石、气血石及魔血石物品
- 物品数据库设置说明
- 游戏数据库的导入导出
- 服务端操作
- [M2]开启物品属性下限功能
- 摆摊相关
- 备份与恢复
- 防外挂设置
- 服务端部署
- 合区
- 角色成长属性调整
- 配置排行榜系统
- 如何查看M2Server所在机器的机器码
- 如何实现多机负载
- 网关防攻击配置
- 游戏网关性能设置
- 任务系统
- 脚本混编说明
- Call命令说明
- 参数Args的读取
- 存在的意义
- 让他人执行脚本
- 如何定义常量
- 如何读写变量
- 如何实现混编
- 特殊标志段说明
- 特殊的CHECK和SET
- 调整杀怪倍率
- 支持编译时错误提示
- 地图配置
- 地图NPC配置
- 地图安全区编辑
- 地图创建及属性说明
- 地图杀怪任务触发
- 地图事件编辑
- 地图刷怪配置
- 地图挖矿设置
- 附属地图配置
- 关联到盛大新格式地图
- 检查地图文件使用情况
- 卫士配置
- 登陆器操作
- 登陆器自我更新
- 登录器界面组件介绍
- 登录器设计界面初识
- 管理登陆器列表
- 将登陆器列表部署到服务器
- 客户端控制
- 客户端样式选择
- 列表设计界面初识
- 如何创建登陆器皮肤
- 如何生成登陆器文件
- 玩家登陆器选项
- 微端控制
- 版本管理器
- NPC对话内容编辑
- 版本文件二次注册使用方法
- 查看程序是否更新
- 创建新的版本文件
- 单个脚本加密方法
- 额外数据库信息配置
- 给版本设置一个唯一ID
- 怪物爆率配置
- 将版本运行所需的配置文件植入版本文件中
- 角色登陆提示信息
- 脚本分类说明
- 脚本机器人配置
- 配置宝箱
- 配置怪物说话
- 如何开启技能自动追踪目标的功能
- 如何实现登陆器图标及客户端Logo的替换
- 如何下载最新版本
- 商城(元宝、礼金)管理
- 商贩贩卖物品配置
- 设置版本工具环境变量
- 套装配置
- 添加一个盾牌物品
- 系统提示信息配置
- 一键导入其他引擎的版本
- 远程管理
- 资源数据管理
- 如何添加一个任务模板中的任务
- 其他辅助说明
- [重要]脚本编写注意项
- 256颜色值
- IP库
- Mir200_Envir下的列表文件详解
- 各种时间控制方法
- 怪物DB数据
- 怪物Race设置
- 键盘码对应数值表
- 脚本系统与系统安全说明
- Pascal基础说明
- Pascal变量类型
- Pascal数据类型
- 基础函数及单元
- 客户端标签变量
- 疑问/建议/反馈/留言
- 在线教程
- 引擎下载