简易按键事件助手 (SKEH)

创作者: NotexWasTaken
已更新:2024-03-17 23:43:32
92KB

前置 MOD

使用 简易按键事件助手 (SKEH) 时将自动安装

关于此 MOD

为希望在其模组中添加自定义键位绑定的模组开发者提供一个辅助实体模板。
此模组专为希望在模组中添加自定义按键绑定的开发者设计。若某个模组需要此工具,您必须先安装该辅助模组。

注意:如果您是模组开发者,希望使用本模组,请勿将本模组内容复制到您的模组中。请在您的模组清单中使用"requirements"键进行引用。谢谢!

源代码及更美观的README文档 @ https://github.com/Notexe/h3-simple-key-event-helper
使用此模组的示例
已知问题
  • 切换 `m_bEnabled` 属性会导致在使用动态对象方法时按键绑定设置不正确。我猜测游戏出于某种原因会回退到 `m_sModifierKeyName` 和 `m_sKeyName` 属性。临时解决方法:改用启用/禁用引脚,或将 `NotifyDataChanged` 输入引脚发送给动态对象实体,以恢复按键绑定。
使用
该辅助模组可让您设置自定义按键绑定,从而在模组中触发标记。请在您的模组清单文件中的"依赖项"部分引用此模组,示例如下:
 "requirements": [
  Notex.SimpleKeyEventHelper
]


使用该模组有两种方法:

1. 第一种方法:通过此方法,可直接利用SimpleKeyEventHelper实体中的m_sModifierKeyName和m_sKeyName属性来配置按键绑定。
第二种方法:该方法使用SimpleKeyEventHelper`实体中名为m_pDataProvider的属性所引用的动态对象实体。若你希望在不使用重复的entity.json或entity.patch.json文件的情况下,为SMF模组提供自定义选项功能,便可采用此方法。

第一种方法
SimpleKeyEventHelper 实体:
{
"parent": 无
"name": "简易按键事件助手"
"factory": "[assembly:/Templates/UI/Controls/simplekeyeventhelper.template?/SimpleKeyEventHelper.entitytemplate].pc_entitytype"
"[assembly:/Templates/UI/Controls/simplekeyeventhelper.template?/SimpleKeyEventHelper.entitytemplate].pc_entityblueprint"
"properties": { "属性": {
  "m_sModifierKeyName": { "键位名称":
"type": "ZString"
"无"
  },
  "m_sKeyName": {
"type": "ZString"
"value": "F7"
  }
}
```json { "events": "事件" } ```
  “已按下”:{}
  “下楼”:{}
  "向上":{}
}
}

第二种方法
简单按键事件助手 实体:
{
"parent": null
"name": "简易按键事件助手"
"factory": "[assembly:/Templates/UI/Controls/simplekeyeventhelper.template?/SimpleKeyEventHelper.entitytemplate].pc_entitytype"
"[assembly:/Templates/UI/Controls/simplekeyeventhelper.template?/SimpleKeyEventHelper.entitytemplate].pc_entityblueprint"
"properties": {
  "m_pDataProvider": { "数据提供器": {
类型:“SEntityTemplateReference”
cafe4e160a2ca171
  }
}
"events": {}
  “已按下”:{}
  "下":{}
  "向上":{}
}
}

动态物体实体:
{
"parent": "cafe22132fb215d4"
"name": "动态物件"
"[modules:/zdynamicobjectentity.class].pc_entitytype"
"[modules:/zdynamicobjectentity.class].pc_entityblueprint"
“属性”:{
  "m_pJSONResource": {
"type": "Z运行时资源ID"
"[assembly:/your/path/here.json].pc_json"
  }
}
}

```json { "quest_start": "开始任务", "quest_complete": "任务完成", "quest_fail": "任务失败", "inventory_full": "背包已满", "save_game": "保存游戏", "load_game": "读取存档", "new_game": "开始新游戏", "options": "设置", "exit": "退出游戏", "yes": "是", "no": "否", "confirm": "确认", "cancel": "取消", "level_up": "升级!", "exp_gain": "获得经验值", "item_pickup": "拾取", "item_drop": "丢弃", "item_use": "使用", "equip": "装备", "unequip": "卸下", "attack": "攻击", "defense": "防御", "health": "生命值", "mana": "法力值", "stamina": "体力值", "damage": "伤害", "critical_hit": "暴击!", "miss": "未命中", "dodge": "闪避", "block": "格挡", "respawn": "复活", "game_over": "游戏结束", "pause": "暂停", "resume": "继续", "dialog_hello": "你好,旅行者。", "dialog_quest": "我需要你的帮助。", "dialog_thanks": "非常感谢!", "dialog_bye": "后会有期。", "skill_fireball": "火球术", "skill_heal": "治疗术", "skill_stealth": "潜行", "npc_merchant": "商人", "npc_guard": "守卫", "npc_blacksmith": "铁匠", "location_village": "新手村", "location_forest": "迷雾森林", "location_cave": "黑暗洞穴", "location_castle": "古城堡", "buff_strength": "力量增强", "buff_agility": "敏捷提升", "poisoned": "中毒", "burning": "灼烧", "frozen": "冻结", "stunned": "眩晕", "loading": "加载中...", "connecting": "连接中...", "disconnected": "连接已断开", "update_available": "有可用更新", "player_name": "输入角色名", "create_character": "创建角色", "class_warrior": "战士", "class_mage": "法师", "class_rogue": "盗贼", "difficulty_easy": "简单", "difficulty_normal": "普通", "difficulty_hard": "困难", "voice_enable": "开启语音", "voice_disable": "关闭语音", "music_volume": "音乐音量", "sfx_volume": "音效音量", "hud_toggle": "显示/隐藏界面", "map_open": "打开地图", "map_close": "关闭地图", "journal_update": "日志已更新", "achievement_get": "达成成就", "quest_new": "新任务", "quest_progress": "任务进度", "quest_reward": "任务奖励", "shop_buy": "购买", "shop_sell": "出售", "shop_repair": "修理", "craft_create": "制作", "craft_materials": "所需材料:", "team_invite": "邀请组队", "team_leave": "离开队伍", "team_join": "加入队伍", "pvp_enable": "开启PvP", "pvp_disable": "关闭PvP", "friend_add": "添加好友", "friend_remove": "删除好友", "friend_online": "在线", "friend_offline": "离线", "whisper": "密语", "trade_request": "请求交易", "trade_accept": "接受交易", "trade_decline": "拒绝交易", "mail_inbox": "收件箱", "mail_send": "发送邮件", "guild_create": "创建公会", "guild_join": "加入公会", "guild_quit": "退出公会", "guild_rank": "公会等级", "mount_call": "召唤坐骑", "mount_dismiss": "解散坐骑", "pet_summon": "召唤宠物", "pet_release": "放生宠物", "emote_wave": "挥手", "emote_dance": "跳舞", "emote_laugh": "大笑", "emote_cry": "哭泣", "emote_bow": "鞠躬", "emote_sit": "坐下", "emote_sleep": "睡觉", "emote_point": "指路", "emote_cheer": "欢呼", "emote_applaud": "鼓掌" } ```
{
"modifier": "无", // 可选值:无、Alt、Control
"key": "F2"
}

属性与插针

属性
  • m_bEnabled:布尔值(默认启用)
  • m_sModifierKeyName: ZString(默认值为"无")
  • m_sKeyName: 按键名称(默认值为空)
  • m_pDataProvider:实体模板引用(默认为空)
上方 JSON 示例中展示了可能的 m_sModifierKeyName 和 m_sKeyName 值。

输入引脚
  • 启用:空(启用按键绑定)
  • 禁用:无(禁用按键绑定)
输出引脚
  • 按下:空(按键按下时触发,按住超过一秒则重复触发)
  • 向下:虚空(按下按键时触发)
  • 松开:无效(松开按键时开火)

杀手:暗杀世界 的热门 MOD

探索适用于 杀手:暗杀世界 的最佳MOD,带来新功能、升级画面,以及令人兴奋的方式来改变您的游戏体验。

使用 Xmod 解锁 杀手:暗杀世界 的全部潜力 — 今天就探索这些顶级 MOD!