Skip to content

🎮 暗黑控制台2 — 演示图实战

演示图:暗黑控制台2.w3x

触发器数:22

📁 本地路径:F:\AI\AI-machine\W3演示图\暗黑控制台2.w3x

📑 触发器目录

  • 简介
  • XXK 信息框
  • KZT 控制台

  • YJTB 药剂同步

  • MZHZ 每帧绘制

  • SFJN 释放技能

  • 护盾增加HD 002

  • 伤害事件SH 003


  • YAOJI
  • Q
  • W
  • E
  • R
  • D
  • F

📜 触发器代码

简介

text
触发器: 简介 (初始化) [✓]
───────────────────────────────────────────────────────
事件
  └─ 地图初始化
条件
  └─ 无
动作
  ├─ DzEnableWideScreen: optionEnable_Enable
  ├─ CameraSetSmoothingFactorBJ: 100.00
  ├─ 战争迷雾开关: EnabledDisabledDisabled
  ├─ 迷雾遮罩开关: EnabledDisabledDisabled
  ├─ DzFrameHideInterface
  ├─ DzUnlockBlpSizeLimit: true
  ├─ DzFrameEditBlackBorders: 0.00, 0.00
  ├─ ── === ──
  ├─ DzLoadToc: custom.toc
  ├─ ── === ──
  ├─ 设置 YX[1] = gg_unit_Hpal_0000
  ├─ 设置 YX[2] = gg_unit_Hpal_0002
  ├─ 设置 YX[3] = gg_unit_Hpal_0001
  ├─ 设置 YX[4] = gg_unit_Hpal_0003
  └─ ── === ──

XXK 信息框

text
触发器: XXK 信息框 (初始化) [✓]
───────────────────────────────────────────────────────
事件
  └─ 注册计时器单次事件(0.00)
条件
  └─ 无
动作
  ├─ 设置局部变量:"UI"=DzFrameGetChatMessage()
  ├─ DzFrameClearAllPoints: 读取局部变量("UI")
  ├─ DzFrameSetSize: 读取局部变量("UI"), OperatorRealDivide(700.00, 2400.00), OperatorRealDivide(150.00, 1800.00)
  ├─ DzFrameSetPoint: 读取局部变量("UI"), FramePoints_BottomLeft, DzGetGameUI(), FramePoints_TopLeft, OperatorRealDivide(120.00, 2400.00), OperatorRealDivide(-700.00, 1800.00)
  ├─ DzFrameShow: 读取局部变量("UI"), true
  ├─ ── =========== ──
  ├─ 设置局部变量:"UI"=DzFrameGetUnitMessage()
  ├─ DzFrameClearAllPoints: 读取局部变量("UI")
  ├─ DzFrameSetSize: 读取局部变量("UI"), OperatorRealDivide(700.00, 2400.00), OperatorRealDivide(200.00, 1800.00)
  ├─ DzFrameSetPoint: 读取局部变量("UI"), FramePoints_BottomLeft, DzGetGameUI(), FramePoints_TopLeft, OperatorRealDivide(120.00, 2400.00), OperatorRealDivide(-470.00, 1800.00)
  ├─ DzFrameShow: 读取局部变量("UI"), true
  ├─ ── =========== ──
  ├─ 设置局部变量:"UI"=DzFrameGetWorldFrameMessage()
  ├─ DzFrameClearAllPoints: 读取局部变量("UI")
  ├─ DzFrameSetSize: 读取局部变量("UI"), OperatorRealDivide(700.00, 2400.00), OperatorRealDivide(90.00, 1800.00)
  ├─ DzFrameSetPoint: 读取局部变量("UI"), FramePoints_Center, DzGetGameUI(), FramePoints_Bottom, OperatorRealDivide(150.00, 2400.00), OperatorRealDivide(360.00, 1800.00)
  ├─ DzFrameShow: 读取局部变量("UI"), true
  └─ ── =========== ──

KZT 控制台

text
触发器: KZT 控制台 (初始化) [✓]
───────────────────────────────────────────────────────
事件
  └─ 注册计时器单次事件(0.00)
条件
  └─ 无
动作
  ├─ ── 四周阴影 ──
  ├─ 设置局部变量:"UI"=DzCreateFrameByTagName("BACKDROP", "name", DzFrameGetParent(DzFrameGetPortrait()), "template", 0)
  ├─ DzFrameClearAllPoints: 读取局部变量("UI")
  ├─ DzFrameSetSize: 读取局部变量("UI"), OperatorRealDivide(960.00, 2400.00), OperatorRealDivide(540.00, 1800.00)
  ├─ DzFrameSetTexture: 读取局部变量("UI"), kzt\123_01.tga, 0
  ├─ DzFrameSetPoint: 读取局部变量("UI"), FramePoints_BottomRight, DzGetGameUI(), FramePoints_Center, 0.00, 0.00
  ├─ 设置局部变量:"UI"=DzCreateFrameByTagName("BACKDROP", "name", DzFrameGetParent(DzFrameGetPortrait()), "template", 0)
  ├─ DzFrameClearAllPoints: 读取局部变量("UI")
  ├─ DzFrameSetSize: 读取局部变量("UI"), OperatorRealDivide(960.00, 2400.00), OperatorRealDivide(540.00, 1800.00)
  ├─ DzFrameSetTexture: 读取局部变量("UI"), kzt\123_02.tga, 0
  ├─ DzFrameSetPoint: 读取局部变量("UI"), FramePoints_BottomLeft, DzGetGameUI(), FramePoints_Center, 0.00, 0.00
  ├─ 设置局部变量:"UI"=DzCreateFrameByTagName("BACKDROP", "name", DzFrameGetParent(DzFrameGetPortrait()), "template", 0)
  ├─ DzFrameClearAllPoints: 读取局部变量("UI")
  ├─ DzFrameSetSize: 读取局部变量("UI"), OperatorRealDivide(960.00, 2400.00), OperatorRealDivide(540.00, 1800.00)
  ├─ DzFrameSetTexture: 读取局部变量("UI"), kzt\123_03.tga, 0
  ├─ DzFrameSetPoint: 读取局部变量("UI"), FramePoints_TopRight, DzGetGameUI(), FramePoints_Center, 0.00, 0.00
  ├─ 设置局部变量:"UI"=DzCreateFrameByTagName("BACKDROP", "name", DzFrameGetParent(DzFrameGetPortrait()), "template", 0)
  ├─ DzFrameClearAllPoints: 读取局部变量("UI")
  ├─ DzFrameSetSize: 读取局部变量("UI"), OperatorRealDivide(960.00, 2400.00), OperatorRealDivide(540.00, 1800.00)
  ├─ DzFrameSetTexture: 读取局部变量("UI"), kzt\123_04.tga, 0
  ├─ DzFrameSetPoint: 读取局部变量("UI"), FramePoints_TopLeft, DzGetGameUI(), FramePoints_Center, 0.00, 0.00
  ├─ ── === ──
  ├─ ── 控制台 ──
  ├─ 设置 KZT[0] = DzCreateFrameByTagName("FRAME", "name", DzFrameGetParent(DzFrameGetMinimap()), "template", 0)
  ├─ DzFrameSetSize: KZT[0], OperatorRealDivide(1920.00, 2400.00), OperatorRealDivide(152.00, 1800.00)
  ├─ DzFrameSetPoint: KZT[0], FramePoints_Bottom, DzGetGameUI(), FramePoints_Bottom, 0.00, 0.00
  ├─ ── === ──
  ├─ ── 生命图片 ──
  ├─ 设置 KZT[51] = DzCreateFrameByTagName("BACKDROP", "name", KZT[0], "template", 0)
  ├─ DzFrameSetSize: KZT[51], OperatorRealDivide(134.00, 2400.00), OperatorRealDivide(134.00, 1800.00)
  ├─ DzFrameSetTexture: KZT[51], kzt\hp (1).tga, 0
  ├─ DzFrameSetPoint: KZT[51], FramePoints_Center, DzGetGameUI(), FramePoints_BottomLeft, OperatorRealDivide(90.00, 2400.00), OperatorRealDivide(80.00, 1800.00)
  ├─ 设置 KZT[52] = DzCreateFrameByTagName("FRAME", "name", KZT[51], "template", 0)
  ├─ DzFrameSetSize: KZT[52], OperatorRealDivide(134.00, 2400.00), OperatorRealDivide(134.00, 1800.00)
  ├─ DzFrameSetPoint: KZT[52], FramePoints_Bottom, KZT[51], FramePoints_Bottom, 0.00, 0.00
  ├─ DzFrameSetClip: KZT[52], OnOffOn
  ├─ 设置 KZT[53] = DzCreateFrameByTagName("BACKDROP", "name", KZT[52], "template", 0)
  ├─ DzFrameSetSize: KZT[53], OperatorRealDivide(134.00, 2400.00), OperatorRealDivide(134.00, 1800.00)
  ├─ DzFrameSetTexture: KZT[53], kzt\hp (2).tga, 0
  ├─ DzFrameSetPoint: KZT[53], FramePoints_Center, KZT[51], FramePoints_Center, 0.00, 0.00
  ├─ ── 魔法图片 ──
  ├─ 设置 KZT[54] = DzCreateFrameByTagName("BACKDROP", "name", KZT[0], "template", 0)
  ├─ DzFrameSetSize: KZT[54], OperatorRealDivide(134.00, 2400.00), OperatorRealDivide(134.00, 1800.00)
  ├─ DzFrameSetTexture: KZT[54], kzt\hp (1).tga, 0
  ├─ DzFrameSetPoint: KZT[54], FramePoints_Center, DzGetGameUI(), FramePoints_BottomRight, OperatorRealDivide(-90.00, 2400.00), OperatorRealDivide(80.00, 1800.00)
  ├─ 设置 KZT[55] = DzCreateFrameByTagName("FRAME", "name", KZT[54], "template", 0)
  ├─ DzFrameSetSize: KZT[55], OperatorRealDivide(134.00, 2400.00), OperatorRealDivide(134.00, 1800.00)
  ├─ DzFrameSetPoint: KZT[55], FramePoints_Bottom, KZT[54], FramePoints_Bottom, 0.00, 0.00
  ├─ DzFrameSetClip: KZT[55], OnOffOn
  ├─ 设置 KZT[56] = DzCreateFrameByTagName("BACKDROP", "name", KZT[55], "template", 0)
  ├─ DzFrameSetSize: KZT[56], OperatorRealDivide(134.00, 2400.00), OperatorRealDivide(134.00, 1800.00)
  ├─ DzFrameSetTexture: KZT[56], kzt\hp (3).tga, 0
  ├─ DzFrameSetPoint: KZT[56], FramePoints_Center, KZT[54], FramePoints_Center, 0.00, 0.00
  ├─ ── === ──
  ├─ ── === ──
  ├─ ── 控制台背景 ──
  ├─ 设置 KZT[1] = DzCreateFrameByTagName("BACKDROP", "name", KZT[0], "template", 0)
  ├─ DzFrameSetSize: KZT[1], OperatorRealDivide(1920.00, 2400.00), OperatorRealDivide(152.00, 1800.00)
  ├─ DzFrameSetTexture: KZT[1], kzt\kzt.tga, 0
  ├─ DzFrameSetPoint: KZT[1], FramePoints_Bottom, DzGetGameUI(), FramePoints_Bottom, 0.00, 0.00
  ├─ ── === ──
  ├─ 执行区域代码块: "物品技能按钮"
  ├─ ── 血瓶 ──
  ├─ DzTriggerRegisterKeyEventMultiple: GetLocalPlayer(), GameKeyAction_Press, GameKey_1
  ├─ DzTriggerRegisterKeyEventMultiple: GetLocalPlayer(), GameKeyAction_Press, GameKey_2
  ├─ DzTriggerRegisterKeyEventMultiple: GetLocalPlayer(), GameKeyAction_Press, GameKey_3
  ├─ 执行区域代码块: "护盾经验"
  ├─ ── 功能按钮 ──
  └─ YDWEForLoopLocVarMultiple: "A", 61, 65

-----------

text
触发器: ----------- (初始化) [注释] [✓]
───────────────────────────────────────────────────────
事件
  └─ (无)
条件
  └─ 无
动作
  └─ (无)

YJTB 药剂同步

text
触发器: YJTB 药剂同步 (初始化) [✓]
───────────────────────────────────────────────────────
事件
  └─ DzTriggerRegisterSyncData("药剂", false)
条件
  └─ 无
动作
  ├─ 设置局部变量:"WJ"=DzGetTriggerSyncPlayer()
  ├─ 设置局部变量:"ZS"=字符串转整数(DzGetTriggerSyncData())
  ├─ 设置局部变量:"AA"=YX[玩家号(读取局部变量("WJ"))]
  ├─ 如果
  │    ├─ 条件: 读取局部变量("ZS") == 1
  │    ├─ 则
  │    │    如果
  │    │      ├─ 条件: KKWEGetObjectTableData(玩家, GetLocalPlayer(), 字符串, "血瓶") OperatorGreaterEq 1
  │    │      ├─ 则
  │    │      │    如果
  │    │      │      ├─ 条件: 单位生命百分比(读取局部变量("AA")) OperatorLess 100.00
  │    │      │      ├─ 则
  │    │      │      │    设置生命百分比: 读取局部变量("AA"), OperatorRealAdd(单位生命百分比(读取局部变量("AA")), 30.00)
  │    │      │      │    KKWESetObjectTableData: 玩家, 读取局部变量("WJ"), 字符串, "血瓶", 整数, OperatorIntegerAdd(KKWEGetObjectTableData(玩家, 读取局部变量("WJ"), 字符串, "血瓶"), -1)
  │    │      │      └─ 否则
  │    │      │           显示文本→读取局部变量("WJ"): 0
  │    │      └─ 否则
  │    │           显示文本→读取局部变量("WJ"): 0
  │    └─ 否则: (无)
  ├─ 如果
  │    ├─ 条件: 读取局部变量("ZS") == 2
  │    ├─ 则
  │    │    如果
  │    │      ├─ 条件: KKWEGetObjectTableData(玩家, GetLocalPlayer(), 字符串, "蓝瓶") OperatorGreaterEq 1
  │    │      ├─ 则
  │    │      │    如果
  │    │      │      ├─ 条件: GetUnitManaPercent(读取局部变量("AA")) OperatorLess 100.00
  │    │      │      ├─ 则
  │    │      │      │    设置魔法百分比: 读取局部变量("AA"), OperatorRealAdd(GetUnitManaPercent(读取局部变量("AA")), 30.00)
  │    │      │      │    KKWESetObjectTableData: 玩家, 读取局部变量("WJ"), 字符串, "蓝瓶", 整数, OperatorIntegerAdd(KKWEGetObjectTableData(玩家, 读取局部变量("WJ"), 字符串, "蓝瓶"), -1)
  │    │      │      └─ 否则
  │    │      │           显示文本→读取局部变量("WJ"): 0
  │    │      └─ 否则
  │    │           显示文本→读取局部变量("WJ"): 0
  │    └─ 否则: (无)
  └─ 如果
       ├─ 条件: 读取局部变量("ZS") == 3
       ├─ 则
       │    如果
       │      ├─ 条件: KKWEGetObjectTableData(玩家, GetLocalPlayer(), 字符串, "重生") OperatorGreaterEq 1
       │      ├─ 则
       │      │    如果
       │      │      ├─ 条件: 单位类型判断(读取局部变量("AA"), UnitTypeDead) == TRUE
       │      │      ├─ 则
       │      │      │    KKWESetObjectTableData: 玩家, 读取局部变量("WJ"), 字符串, "重生", 整数, OperatorIntegerAdd(KKWEGetObjectTableData(玩家, 读取局部变量("WJ"), 字符串, "重生"), -1)
       │      │      │    复活英雄: 读取局部变量("AA"), 0, 0, ShowHideShow
       │      │      │    设置局部变量:"D"=(读取局部变量("AA")的位置)
       │      │      │    平移镜头: 读取局部变量("WJ"), 读取局部变量("D"), 0
       │      │      │    清除点 读取局部变量("D")
       │      │      └─ 否则
       │      │           显示文本→读取局部变量("WJ"): 0
       │      └─ 否则
       │           显示文本→读取局部变量("WJ"): 0
       └─ 否则: (无)

-----------

text
触发器: ----------- (初始化) [注释] [✓]
───────────────────────────────────────────────────────
事件
  └─ (无)
条件
  └─ 无
动作
  └─ (无)

MZHZ 每帧绘制

text
触发器: MZHZ 每帧绘制 (初始化) [✓]
───────────────────────────────────────────────────────
事件
  └─ 注册计时器单次事件(0.01)
条件
  └─ 无
动作
  └─ DzFrameSetUpdateCallbackMultiple: GetLocalPlayer()

-----------

text
触发器: ----------- (初始化) [注释] [✓]
───────────────────────────────────────────────────────
事件
  └─ (无)
条件
  └─ 无
动作
  └─ (无)

SFJN 释放技能

text
触发器: SFJN 释放技能 (初始化) [✓]
───────────────────────────────────────────────────────
事件
  └─ 单位 gg_unit_Hpal_0000 - UnitEventSpellEffect
条件
  └─ 无
动作
  └─ YDWEForLoopLocVarMultiple: "A", 1, 6

-----------

text
触发器: ----------- (玩家/英雄) [注释] [✓]
───────────────────────────────────────────────────────
事件
  └─ (无)
条件
  └─ 无
动作
  └─ (无)

护盾增加HD 002

text
触发器: 护盾增加HD 002 (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ TriggerRegisterPlayerEventEndCinematic(Player00)
条件
  └─ 无
动作
  ├─ 保存数据到哈希表: [单位类型.YX[1]."最大护盾"] = 100.00
  ├─ 保存数据到哈希表: [单位类型.YX[1]."当前护盾"] = 100.00
  ├─ 设置生命百分比: YX[1], 随机实数(10.00, 100.00)
  └─ 设置魔法百分比: YX[1], 随机实数(10.00, 100.00)

-----------

text
触发器: ----------- (玩家/英雄) [注释] [✓]
───────────────────────────────────────────────────────
事件
  └─ (无)
条件
  └─ 无
动作
  └─ (无)

伤害事件SH 003

text
触发器: 伤害事件SH 003 (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ YDWE任意单位受伤注册()
条件
  └─ 无
动作
  ├─ ── 伤害事件和原生的吸血有冲突 ──
  ├─ 设置局部变量:"S"=伤害值()
  └─ 如果
       ├─ 条件: 从哈希表读取数据(单位类型, 触发单位(), "当前护盾") OperatorLessEq 读取局部变量("S")
       ├─ 则
       │    设置局部变量:"AA"=OperatorRealSubtract(读取局部变量("S"), 从哈希表读取数据(单位类型, 触发单位(), "当前护盾"))
       │    YDWESetEventDamage: 读取局部变量("AA")
       │    保存数据到哈希表: [单位类型.触发单位()."当前护盾"] = 0.00
       │    保存数据到哈希表: [单位类型.触发单位()."最大护盾"] = 0.00
       └─ 否则
            保存数据到哈希表: [单位类型.触发单位()."当前护盾"] = OperatorRealSubtract(从哈希表读取数据(单位类型, 触发单位(), "当前护盾"), 读取局部变量("S"))
            YDWESetEventDamage: 0.00

-----------

text
触发器: ----------- (玩家/英雄) [注释] [✓]
───────────────────────────────────────────────────────
事件
  └─ (无)
条件
  └─ 无
动作
  └─ (无)

-----------

text
触发器: ----------- (玩家/英雄) [注释] [✓]
───────────────────────────────────────────────────────
事件
  └─ (无)
条件
  └─ 无
动作
  └─ (无)

YAOJI

text
触发器: YAOJI (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ 玩家 Player00 输入 "1"
条件
  └─ 无
动作
  ├─ KKWESetObjectTableData: 玩家, Player00, 字符串, "血瓶", 整数, OperatorIntegerAdd(KKWEGetObjectTableData(玩家, Player00, 字符串, "血瓶"), 1)
  ├─ KKWESetObjectTableData: 玩家, Player00, 字符串, "蓝瓶", 整数, OperatorIntegerAdd(KKWEGetObjectTableData(玩家, Player00, 字符串, "蓝瓶"), 1)
  └─ KKWESetObjectTableData: 玩家, Player00, 字符串, "重生", 整数, OperatorIntegerAdd(KKWEGetObjectTableData(玩家, Player00, 字符串, "重生"), 1)

Q

text
触发器: Q (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ 玩家 Player00 输入 "Q"
条件
  └─ 无
动作
  ├─ 添加技能: YX[1], A000
  ├─ UnitMakeAbilityPermanent: YX[1], OnOffOn, A000
  ├─ KKWESetObjectTableData: 玩家, Player00, 整数, 1, typename09_abilcode, A000
  └─ 如果
       ├─ 条件: Player00 == GetLocalPlayer()
       ├─ 则
       │    DzFrameSetTexture: KZT[5], kzt\jn (7).tga, 0
       └─ 否则: (无)

W

text
触发器: W (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ 玩家 Player00 输入 "W"
条件
  └─ 无
动作
  ├─ 添加技能: YX[1], A003
  ├─ UnitMakeAbilityPermanent: YX[1], OnOffOn, A003
  ├─ KKWESetObjectTableData: 玩家, Player00, 整数, 2, typename09_abilcode, A003
  └─ 如果
       ├─ 条件: Player00 == GetLocalPlayer()
       ├─ 则
       │    DzFrameSetTexture: KZT[6], kzt\jn (8).tga, 0
       └─ 否则: (无)

E

text
触发器: E (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ 玩家 Player00 输入 "E"
条件
  └─ 无
动作
  ├─ 添加技能: YX[1], A002
  ├─ UnitMakeAbilityPermanent: YX[1], OnOffOn, A002
  ├─ KKWESetObjectTableData: 玩家, Player00, 整数, 3, typename09_abilcode, A002
  └─ 如果
       ├─ 条件: Player00 == GetLocalPlayer()
       ├─ 则
       │    DzFrameSetTexture: KZT[7], kzt\jn (9).tga, 0
       └─ 否则: (无)

R

text
触发器: R (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ 玩家 Player00 输入 "R"
条件
  └─ 无
动作
  ├─ 添加技能: YX[1], A001
  ├─ UnitMakeAbilityPermanent: YX[1], OnOffOn, A001
  ├─ KKWESetObjectTableData: 玩家, Player00, 整数, 4, typename09_abilcode, A001
  └─ 如果
       ├─ 条件: Player00 == GetLocalPlayer()
       ├─ 则
       │    DzFrameSetTexture: KZT[8], kzt\jn (10).tga, 0
       └─ 否则: (无)

D

text
触发器: D (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ 玩家 Player00 输入 "D"
条件
  └─ 无
动作
  ├─ 添加技能: YX[1], A004
  ├─ UnitMakeAbilityPermanent: YX[1], OnOffOn, A004
  ├─ KKWESetObjectTableData: 玩家, Player00, 整数, 5, typename09_abilcode, A004
  └─ 如果
       ├─ 条件: Player00 == GetLocalPlayer()
       ├─ 则
       │    DzFrameSetTexture: KZT[9], kzt\jn (11).tga, 0
       └─ 否则: (无)

F

text
触发器: F (玩家/英雄) [✓]
───────────────────────────────────────────────────────
事件
  └─ 玩家 Player00 输入 "F"
条件
  └─ 无
动作
  ├─ 添加技能: YX[1], A005
  ├─ UnitMakeAbilityPermanent: YX[1], OnOffOn, A005
  ├─ KKWESetObjectTableData: 玩家, Player00, 整数, 6, typename09_abilcode, A005
  └─ 如果
       ├─ 条件: Player00 == GetLocalPlayer()
       ├─ 则
       │    DzFrameSetTexture: KZT[10], kzt\jn (12).tga, 0
       └─ 否则: (无)

内容由多智能体 AI 系统自动生成,仅供学习参考