更新部分死宫

This commit is contained in:
南沢响也
2025-08-12 02:46:27 +08:00
parent 08c6945aba
commit e7c80da1ea

View File

@@ -22,21 +22,67 @@ namespace the_Palace_of_the_Dead;
[ScriptType(guid: "4210c323-eba4-4d67-a7e7-b90799494729", name: "死者宫殿", author: "Tetora",
territorys: [561,562,563,564,565,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607],
version: "0.0.0.31",note: noteStr)]
version: "0.0.0.4",note: noteStr)]
public class the_Palace_of_the_Dead
{
const string noteStr =
"""
v0.0.0.31:
v0.0.0.4:
殿
线
1~80ARR联系我
ARR反馈
使Splatoon
""";
//眩晕、催眠、无法发动技能1113等状态都需要销毁绘图
// 眩晕、催眠、无法发动技能(形态变化)等状态都需要销毁绘图
// 已二次验证1~100 141~170
// 70 BOSS 会同时满足 170 BOSS 或天气的条件 导致触发重复 需要额外判断sid , 170 BOSS 的伤害提高 也与强化自身 冲突 需额外判断sid
// 1~99层 与 101~199层 大量怪物技能ID重复需要额外判断sid
#region
/* StatusID
* 变身 565 [StackCount:42 曼提克 ] [StackCount:43 梦魔 ]
* 诅咒 1087 (拟态怪 - 怨念)
* 失明 1088
* 最大体力减少 1089
* 伤害降低 1090
* 加速 1091
* 能力封印 1092
* 最大体力魔力提升 1093
* 禁止使用道具 1094
* 禁止冲刺 1095
* 击退无效 1096
* 禁止体力自然恢复 1097
* 无法发动技能 1113 (形态变化)
*/
#endregion
#region
[UserSetting("TTS开关TTS请二选一开启")]
public bool isTTS { get; set; } = false;
[UserSetting("EdgeTTS开关TTS请二选一开启")]
public bool isEdgeTTS { get; set; } = true;
[UserSetting("弹窗文本提示开关")]
public bool isText { get; set; } = true;
[UserSetting("测试性功能(慎用)")]
public bool isTest { get; set; } = false;
[UserSetting("启用底裤(需要对应插件与权限)")]
public bool isHack { get; set; } = false;
[UserSetting("开发者模式")]
public bool isDeveloper { get; set; } = false;
#endregion
#region
[ScriptMethod(name: "伤头&插言 打断销毁", eventType: EventTypeEnum.ActionEffect, eventCondition: ["ActionId:regex:^75(38|51)$"], userControl: false)]
public void (Event @event, ScriptAccessory accessory)
@@ -45,6 +91,12 @@ public class the_Palace_of_the_Dead
accessory.Method.RemoveDraw($"深宫浮灵_强麻痹{@event.SourceId()}");
}
[ScriptMethod(name: "防击退销毁", eventType: EventTypeEnum.ActionEffect, eventCondition: ["ActionId:regex:^(7548|7559)$"],userControl: false)]
public void 退(Event @event, ScriptAccessory accessory)
{
if ( @event.TargetId() != accessory.Data.Me) return;
accessory.Method.RemoveDraw(".*(击退|吸蚀).*");
}
public bool KnockPenalty = false;
@@ -70,38 +122,51 @@ public class the_Palace_of_the_Dead
private bool isExplosionInterrupted = false; // 190层 特大爆炸打断状态
#endregion
// 通用内容
[ScriptMethod(name: "拟态怪_怨念提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6397"])]
public void _怨念(Event @event, ScriptAccessory accessory)
{
accessory.Method.TextInfo("打断拟态怪", duration: 2700, true);
accessory.Method.TTS("打断拟态怪");
if (isText) accessory.Method.TextInfo("打断拟态怪", duration: 2300, true);
if (isTTS) accessory.Method.TTS("打断拟态怪");
if (isEdgeTTS)accessory.Method.EdgeTTS("打断拟态怪");
}
#region 1~10
// 1~10层
#region 1~10 西
[ScriptMethod(name: "—————— 1 ~ 10 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 1(Event @event, ScriptAccessory accessory) { }
#endregion
#region 11~20
// 11~20层
#region 11~20 西
[ScriptMethod(name: "—————— 11 ~ 20 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 11(Event @event, ScriptAccessory accessory) { }
#endregion
#region 21~30
// 21~30层
[ScriptMethod(name: "—————— 21 ~ 30 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 21(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "地宫弥诺陶洛斯 百一十吨回转(钢铁)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6364", "SourceDataId:5802"])]
public void _百一十吨回转(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"地宫弥诺陶洛斯_百一十吨回转{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(10.8f); // 表格8m + 目标圈 2.8m
dp.DestoryAt = 4200;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
[ScriptMethod(name: "地宫斯卡尼特 唧唧咋咋(睡眠钢铁)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6365"])]
public void _唧唧咋咋(Event @event, ScriptAccessory accessory)
{
//121~129 深宫斯卡尼特 同技能ID
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "斯卡尼特_唧唧咋咋";
dp.Color = new Vector4(1f, 0f, 1f, 0.4f);
dp.Name = $"斯卡尼特_唧唧咋咋{@event.SourceId()}";
dp.Color = new Vector4(1f, 0f, 1f, 0.2f);
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(21.6f);
dp.DestoryAt = 2200;
@@ -112,11 +177,15 @@ public class the_Palace_of_the_Dead
[ScriptMethod(name: "30 宁吉兹济达 恐惧迷雾(月环)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6429"])]
public void _恐惧迷雾(Event @event, ScriptAccessory accessory)
{
if (isText)accessory.Method.TextInfo("靠近场中BOSS", duration: 5000, true);
if (isTTS)accessory.Method.TTS("靠近场中BOSS");
if (isEdgeTTS)accessory.Method.EdgeTTS("靠近场中BOSS");
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "宁吉兹济达_恐惧迷雾";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(54f);
dp.Scale = new Vector2(58.8f);
dp.InnerScale = new Vector2(4.8f);
dp.Radian = float.Pi * 2;
dp.DestoryAt = 5700;
@@ -125,44 +194,131 @@ public class the_Palace_of_the_Dead
#endregion
#region 31~40
// 31~40层
[ScriptMethod(name: "—————— 31 ~ 40 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 31(Event @event, ScriptAccessory accessory) { }
// 注:此处的噩梦曼提克 撕裂利爪 的技能ID 同 141~149 深宫曼提克 撕裂利爪 均为 5m + 目标圈 ,暂未核实目标圈是否相同
[ScriptMethod(name: "噩梦鬼鱼 吸蚀(吸引)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6372", "SourceDataId:5811"])]
public void _吸蚀(Event @event, ScriptAccessory accessory)
{
if(!KnockPenalty) {
if(isTTS) accessory.Method.TTS("吸引");
if(isEdgeTTS) accessory.Method.EdgeTTS("吸引");
}
else { }
/*
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"噩梦鬼鱼_吸蚀{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(8f); // 噩梦鬼鱼暂不知道会不会释放钢铁,忽略钢铁绘制
dp.DestoryAt = 2200;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
*/
}
#endregion
#region 41~50
// 41~50层
[ScriptMethod(name: "—————— 41 ~ 50 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 41(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "噩梦曼提克 撕裂利爪(顺劈)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6394", "SourceDataId:5827"])]
public void _撕裂利爪(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"噩梦曼提克_撕裂利爪{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(7.2f); // 表格 5m + 目标圈 2.2m
dp.Radian = 120f.DegToRad();
dp.DestoryAt = 1900;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Fan, dp);
}
#endregion
#region 51~60
// 51~60层
[ScriptMethod(name: "—————— 51 ~ 60 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 51(Event @event, ScriptAccessory accessory) { }
// 不确定这边的 地宫小魔精 (SourceDataId:6180) 是否会使用 冰棘屏障 (ActionId:6943)
[ScriptMethod(name: "60 深黑骑士 残杀(击退)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7089"])]
public void _残杀(Event @event, ScriptAccessory accessory)
{
if (isText)accessory.Method.TextInfo("击退到安全区", duration: 3300, true);
if (isTTS)accessory.Method.TTS("击退到安全区");
if (isEdgeTTS)accessory.Method.EdgeTTS("击退到安全区");
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深黑骑士_残杀击退";
dp.Scale = new(1.6f, 25f);
dp.Color = new Vector4(0f, 1f, 1f, 3f);
dp.Owner = accessory.Data.Me;
dp.TargetObject = @event.SourceId();
dp.Rotation = float.Pi;
dp.DestoryAt = 3400;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "60 妖异之影 怨念 钢铁提前显示", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:6374"])]
public void _怨念(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "妖异之影_怨念";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(7f); // 需要加1m的目标圈
dp.DestoryAt = 5500;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
#endregion
#region 61~70
// 61~70层
[ScriptMethod(name: "—————— 61 ~ 70 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 61(Event @event, ScriptAccessory accessory) { }
// 不确定这边的 地宫笠头螈 (SourceDataId:6190) 是否会使用 粘膜 (ActionId:7014)
/*
[ScriptMethod(name: "70 水虎龙亚夸虏 浸泡 提示", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:226"])]
public void 水虎龙亚夸虏_浸泡(Event @event, ScriptAccessory accessory)
{
// 与 170层 虹蛇 (SourceDataId:6174) 相同,都会附加 加速 buff 【甚至天气都会!】
if (isText)accessory.Method.TextInfo("将BOSS拉出水圈至buff消失", duration: 3000, true);
if (isTTS)accessory.Method.TTS("将BOSS拉出水圈至buff消失");
if (isEdgeTTS)accessory.Method.EdgeTTS("将BOSS拉出水圈至buff消失");
}
*/
#endregion
#region 71~80
// 71~80层
[ScriptMethod(name: "—————— 71 ~ 80 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 71(Event @event, ScriptAccessory accessory) { }
// 地宫独眼巨人 百吨回转(钢铁)同 171~179层的 深宫独眼雪巨人 百吨回转(钢铁),猜测目标圈为 4m 暂未实证。
[ScriptMethod(name: "地宫独眼巨人 百吨回转(钢铁)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6971", "SourceDataId:6203"])]
public void _百吨回转(Event @event, ScriptAccessory accessory)
{
// 技能ID同 171~179层的 深宫独眼雪巨人 百吨回转(钢铁)
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"地宫独眼巨人_百吨回转{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(10.8f); // 表格8m + 目标圈2.8m
dp.DestoryAt = 4700;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
[ScriptMethod(name: "地宫独眼巨人 眼魔之眼(月环)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6972"])]
[ScriptMethod(name: "地宫独眼巨人 眼魔之眼(月环)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6972", "SourceDataId:6203"])]
public void _眼魔之眼(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "地宫独眼巨人_眼魔之眼";
dp.Name = $"地宫独眼巨人_眼魔之眼{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(15f);
@@ -172,45 +328,33 @@ public class the_Palace_of_the_Dead
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Donut, dp);
}
/* 没有龙卷风的 DataID
// 80 BOSS 古丹纳
[ScriptMethod(name: "80 古丹纳 吸引(钢铁)", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:"])]
public void 古丹纳_吸引(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"古丹纳_吸引{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(10f);
dp.DestoryAt = 44000;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
*/
[ScriptMethod(name: "80 古丹纳 吸引(此选项无意义【与180层共用】", eventType: EventTypeEnum.StartCasting, eventCondition: ["DataId:01"])]
public void _吸引(Event @event, ScriptAccessory accessory) { }
#endregion
#region 81~90
// 81~90层 小怪
[ScriptMethod(name: "—————— 81 ~ 90 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 81(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "地宫奇美拉 寒冰咆哮(钢铁)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7078","SourceName:地宫奇美拉"])]
[ScriptMethod(name: "地宫奇美拉 寒冰咆哮(钢铁)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7078","SourceDataId:6220"])]
public void _寒冰咆哮(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "地宫奇美拉_寒冰咆哮";
dp.Name = $"地宫奇美拉_寒冰咆哮{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(9.7f);
dp.Scale = new Vector2(9.7f); // 表格 6m + 目标圈 3.7m
dp.DestoryAt = 2700;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
[ScriptMethod(name: "地宫奇美拉 雷电咆哮(月环)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7079","SourceName:地宫奇美拉"])]
[ScriptMethod(name: "地宫奇美拉 雷电咆哮(月环)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7079","SourceDataId:6220"])]
public void _雷电咆哮(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "地宫奇美拉_雷电咆哮";
dp.Name = $"地宫奇美拉_雷电咆哮{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(30f);
@@ -225,7 +369,7 @@ public class the_Palace_of_the_Dead
public void _自爆(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "熔岩爆弹怪_自爆";
dp.Name = $"熔岩爆弹怪_自爆{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(6.6f);
@@ -236,15 +380,17 @@ public class the_Palace_of_the_Dead
[ScriptMethod(name: "90 灰色爆弹怪 击杀提示", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:6376"])]
public void _击杀提示(Event @event, ScriptAccessory accessory)
{
accessory.Method.TextInfo("击杀灰色爆弹怪", duration: 5, true);
accessory.Method.TTS("击杀灰色爆弹怪");
if(isText) accessory.Method.TextInfo("击杀灰色爆弹怪", duration: 3000, true);
if(isTTS) accessory.Method.TTS("击杀灰色爆弹怪");
if(isEdgeTTS) accessory.Method.EdgeTTS("击杀灰色爆弹怪");
}
[ScriptMethod(name: "90 眩晕爆弹怪 寒霜弹提示", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:6378"])]
public void _震撼弹(Event @event, ScriptAccessory accessory)
{
accessory.Method.TextInfo("将眩晕爆弹怪推至BOSS脚下", duration: 5, true);
accessory.Method.TTS("将眩晕爆弹怪推至BOSS脚下");
if(isText) accessory.Method.TextInfo("将眩晕爆弹怪推至BOSS脚下", duration: 3000, true);
if(isTTS) accessory.Method.TTS("将眩晕爆弹怪推至BOSS脚下");
if(isEdgeTTS) accessory.Method.EdgeTTS("将眩晕爆弹怪推至BOSS脚下");
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "眩晕爆弹怪_寒霜弹";
@@ -262,33 +408,30 @@ public class the_Palace_of_the_Dead
}
#endregion
#region 91~100
// 91~100层
#region 91~100 西
[ScriptMethod(name: "—————— 91 ~ 100 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 91(Event @event, ScriptAccessory accessory) { }
#endregion
#region 101~110
// 101~110层
[ScriptMethod(name: "—————— 101 ~ 110 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 101(Event @event, ScriptAccessory accessory) { }
#endregion
#region 111~120
// 111~120层
[ScriptMethod(name: "—————— 111 ~ 120 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 111(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "深宫蝾螈 粘膜 打断提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7014"])]
public void _粘膜(Event @event, ScriptAccessory accessory)
{
accessory.Method.TextInfo("打断 <深宫蝾螈>", duration: 2700, true);
accessory.Method.TTS("打断深宫蝾螈");
if(isText) accessory.Method.TextInfo("打断 <深宫蝾螈>", duration: 2700, true);
if(isTTS) accessory.Method.TTS("打断深宫蝾螈");
}
#endregion
#region 121~130
// 121~130层
[ScriptMethod(name: "—————— 121 ~ 130 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 121(Event @event, ScriptAccessory accessory) { }
@@ -296,7 +439,7 @@ public class the_Palace_of_the_Dead
public void _百一十吨回转(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫弥诺陶洛斯_百一十吨回转";
dp.Name = $"深宫弥诺陶洛斯_百一十吨回转{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(10.8f);
@@ -312,7 +455,7 @@ public class the_Palace_of_the_Dead
dp.Name = "埃尔法德_恐惧迷雾";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(54f);
dp.Scale = new Vector2(58.8f);
dp.InnerScale = new Vector2(4.8f);
dp.Radian = float.Pi * 2;
dp.DestoryAt = 1700;
@@ -322,7 +465,6 @@ public class the_Palace_of_the_Dead
#endregion
#region 131~140
// 131~140层
[ScriptMethod(name: "—————— 131 ~ 140 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 131(Event @event, ScriptAccessory accessory) { }
@@ -330,16 +472,16 @@ public class the_Palace_of_the_Dead
public void _吸蚀(Event @event, ScriptAccessory accessory)
{
if(!KnockPenalty) {
accessory.Method.TTS("吸引后钢铁");
}
else {
if(isTTS) accessory.Method.TTS("吸引后钢铁");
if(isEdgeTTS) accessory.Method.EdgeTTS("吸引后钢铁");
}
else { }
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫鬼鱼_吸蚀";
dp.Name = $"深宫鬼鱼_吸蚀{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(8f);
dp.Scale = new Vector2(8f); // 8m 为吸引后的钢铁范围,直接提前绘制
dp.DestoryAt = 2200;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
@@ -348,7 +490,7 @@ public class the_Palace_of_the_Dead
public void _洪水(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫鬼鱼_洪水";
dp.Name = $"深宫鬼鱼_洪水{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(8f);
@@ -361,7 +503,7 @@ public class the_Palace_of_the_Dead
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫冥鬼之眼_5级石化";
dp.Name = $"深宫冥鬼之眼_5级石化{@event.SourceId()}";
dp.Color = new Vector4(1f, 0f, 0f, 0.8f);
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(7.1f);
@@ -372,15 +514,15 @@ public class the_Palace_of_the_Dead
#endregion
#region 141~150
// 141~150层 小怪
[ScriptMethod(name: "—————— 141 ~ 150 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 141(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "深宫浮灵 强麻痹 打断提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6386"])]
[ScriptMethod(name: "深宫浮灵 强麻痹 打断提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6386", "SourceDataId:6284"])]
public void _强麻痹(Event @event, ScriptAccessory accessory)
{
accessory.Method.TextInfo("打断 <深宫浮灵>", duration: 4700, true);
accessory.Method.TTS("打断深宫浮灵");
if (isText)accessory.Method.TextInfo("打断 <深宫浮灵>", duration: 4300, true);
if (isTTS)accessory.Method.TTS("打断 <深宫浮灵>");
if (isEdgeTTS)accessory.Method.EdgeTTS("打断 <深宫浮灵>");
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"深宫浮灵_强麻痹{@event.SourceId()}";
@@ -391,11 +533,12 @@ public class the_Palace_of_the_Dead
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
[ScriptMethod(name: "深宫假面 强麻痹 打断提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6388"])]
[ScriptMethod(name: "深宫假面 强麻痹 打断提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6388", "SourceDataId:6286"])]
public void _强麻痹(Event @event, ScriptAccessory accessory)
{
accessory.Method.TextInfo("打断 <深宫假面>", duration: 4700, true);
accessory.Method.TTS("打断深宫假面");
if (isText)accessory.Method.TextInfo("打断 <深宫假面>", duration: 4300, true);
if (isTTS)accessory.Method.TTS("打断 <深宫假面>");
if (isEdgeTTS)accessory.Method.EdgeTTS("打断 <深宫假面>");
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"深宫假面_强麻痹{@event.SourceId()}";
@@ -406,43 +549,93 @@ public class the_Palace_of_the_Dead
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
[ScriptMethod(name: "深宫曼提克 撕裂利爪(顺劈)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6394"])]
[ScriptMethod(name: "深宫曼提克 撕裂利爪(顺劈)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6394", "SourceDataId:6289"])]
public void _撕裂利爪(Event @event, ScriptAccessory accessory)
{
// 此绘制的技能ID同 31~49层的 噩梦曼提克 撕裂利爪,均为 5m + 目标圈
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫曼提克_撕裂利爪";
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = $"深宫曼提克_撕裂利爪{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(7.2f);
dp.Scale = new Vector2(7.2f); // 表格 5m + 目标圈 2.2m
dp.Radian = 120f.DegToRad();
dp.DestoryAt = 1900;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Fan, dp);
}
#endregion
#region 151~160
// 151~160层 小怪
[ScriptMethod(name: "—————— 151 ~ 160 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 151(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "深宫小恶魔 冰棘屏障 打断提醒", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6943"])]
public void (Event @event, ScriptAccessory accessory)
[ScriptMethod(name: "深宫小恶魔 冰棘屏障 打断提醒", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:6943", "SourceDataId:6295"])]
public void _冰棘屏障(Event @event, ScriptAccessory accessory)
{
accessory.Method.TextInfo("打断 <深宫小恶魔>", duration: 1200, true);
accessory.Method.TTS("打断深宫小恶魔");
if (isText)accessory.Method.TextInfo("打断 <深宫小恶魔>", duration: 800, true);
if (isTTS)accessory.Method.TTS("打断 <深宫小恶魔>");
if (isEdgeTTS)accessory.Method.EdgeTTS("打断 <深宫小恶魔>");
}
[ScriptMethod(name: "160 非生骑士 残杀(击退)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7156"])]
public void _残杀(Event @event, ScriptAccessory accessory)
{
if (isText)accessory.Method.TextInfo("击退到安全区", duration: 3300, true);
if (isTTS)accessory.Method.TTS("击退到安全区");
if (isEdgeTTS)accessory.Method.EdgeTTS("击退到安全区");
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "非生骑士_残杀击退";
dp.Scale = new(1.6f, 25f);
dp.Color = new Vector4(0f, 1f, 1f, 3f);
dp.Owner = accessory.Data.Me;
dp.TargetObject = @event.SourceId();
dp.Rotation = float.Pi;
dp.DestoryAt = 3400;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "160 大妖异之影 怨念 钢铁提前显示", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:6383"])]
public void _怨念(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "大妖异之影_怨念";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(7f); // 需要加1m的目标圈
dp.DestoryAt = 4700;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
#endregion
#region 161~170
// 161~170层
[ScriptMethod(name: "—————— 161 ~ 170 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 161(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "深宫笠头螈 粘膜 打断提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:7014", "SourceDataId:6305"])]
public void _粘膜(Event @event, ScriptAccessory accessory)
{
// 61~70层 的 地宫笠头螈 (SourceDataId:6190) 暂未知是否会同款技能
if (isText)accessory.Method.TextInfo("打断 <深宫笠头螈>", duration: 2300, true);
if (isTTS)accessory.Method.TTS("打断 <深宫笠头螈>");
if (isEdgeTTS)accessory.Method.EdgeTTS("打断 <深宫笠头螈>");
}
/*
[ScriptMethod(name: "170 虹蛇 浸泡 提示", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:290"])]
public void 虹蛇_浸泡(Event @event, ScriptAccessory accessory)
{
// 70层的 水虎龙亚夸虏 (SourceDataId:6165) 没有 StatusID:290 的 伤害提高 buff
if (isText)accessory.Method.TextInfo("将BOSS拉出水圈至buff消失", duration: 3000, true);
if (isTTS)accessory.Method.TTS("将BOSS拉出水圈至buff消失");
if (isEdgeTTS)accessory.Method.EdgeTTS("将BOSS拉出水圈至buff消失");
}
*/
#endregion
#region 171~180
// 171~180层 小怪
[ScriptMethod(name: "—————— 171 ~ 180 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 171(Event @event, ScriptAccessory accessory) { }
@@ -450,7 +643,7 @@ public class the_Palace_of_the_Dead
public void _怒视(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫独眼雪巨人_怒视";
dp.Name = $"深宫独眼雪巨人_怒视{@event.SourceId()}";
dp.Scale = new (7, 21f);
dp.Owner = @event.SourceId();
dp.Color = accessory.Data.DefaultDangerColor;
@@ -462,7 +655,7 @@ public class the_Palace_of_the_Dead
public void _百吨回转(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫独眼雪巨人_百吨回转";
dp.Name = $"深宫独眼雪巨人_百吨回转{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(12f);
@@ -491,8 +684,7 @@ public class the_Palace_of_the_Dead
#endregion
#region 180 BOSS
//180 BOSS 丹代恩索涅
[ScriptMethod(name: "180 丹代恩索涅 吸引(钢铁)", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:6384"])]
[ScriptMethod(name: "180 古丹纳 & 丹代恩索涅 吸引(钢铁)", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:6384"])]
public void _吸引(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
@@ -504,7 +696,7 @@ public class the_Palace_of_the_Dead
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
[ScriptMethod(name: "丹代恩索涅 吸引销毁", eventType: EventTypeEnum.RemoveCombatant, eventCondition: ["DataId:6384"], userControl: false)]
[ScriptMethod(name: "古丹纳 & 丹代恩索涅 吸引销毁", eventType: EventTypeEnum.RemoveCombatant, eventCondition: ["DataId:6384"], userControl: false)]
public void _吸引销毁(Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw($"丹代恩索涅_吸引{@event.SourceId()}");
@@ -519,7 +711,6 @@ public class the_Palace_of_the_Dead
#endregion
#region 181~190
// 181~190层 小怪
[ScriptMethod(name: "—————— 181 ~ 190 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 181(Event @event, ScriptAccessory accessory) { }
@@ -528,7 +719,7 @@ public class the_Palace_of_the_Dead
{
// 此处的 深宫加姆 与 81~90层的 地宫奇美拉 所释放的 钢铁月环 技能ID相同 ,但其对应的目标圈不同 ,所以需要区分画图
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫加姆_寒冰咆哮";
dp.Name = $"深宫加姆_寒冰咆哮{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(10.4f);
@@ -540,7 +731,7 @@ public class the_Palace_of_the_Dead
public void _雷电咆哮(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫加姆_雷电咆哮";
dp.Name = $"深宫加姆_雷电咆哮{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(30f);
@@ -549,6 +740,7 @@ public class the_Palace_of_the_Dead
dp.DestoryAt = 4200;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Donut, dp);
}
#endregion
#region 190 BOSS
@@ -642,8 +834,8 @@ public class the_Palace_of_the_Dead
}
//accessory.Method.TextInfo("已预测 <熔岩爆弹怪> 刷新位置", duration: 5, false);
//accessory.Method.TTS("已预测熔岩爆弹怪刷新位置");
// accessory.Method.TextInfo("已预测 <熔岩爆弹怪> 刷新位置", duration: 5, false);
// accessory.Method.TTS("已预测熔岩爆弹怪刷新位置");
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
@@ -703,7 +895,6 @@ public class the_Palace_of_the_Dead
#endregion
#region 191~200
// 191~200层 小怪
[ScriptMethod(name: "—————— 191 ~ 200 层 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 191(Event @event, ScriptAccessory accessory) { }
@@ -711,7 +902,7 @@ public class the_Palace_of_the_Dead
public void _邪视(Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "奥尼克斯龙_邪视";
dp.Name = $"奥尼克斯龙_邪视{@event.SourceId()}";
dp.Color = new Vector4(1f, 0f, 1f, 0.6f);
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(13f);
@@ -724,7 +915,7 @@ public class the_Palace_of_the_Dead
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "深宫幽鬼之眼_5级即死";
dp.Name = $"深宫幽鬼之眼_5级即死{@event.SourceId()}";
dp.Color = new Vector4(1f, 0f, 0f, 1f);
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(7.1f);
@@ -732,7 +923,60 @@ public class the_Palace_of_the_Dead
dp.DestoryAt = 3200;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Fan, dp);
}
#endregion
#region
[ScriptMethod(name: "—————— 底裤部分(需要对应插件与权限) ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void (Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "[DR] 1.5", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:565", "StackCount:42"])]
public void AddManticore(Event @event, ScriptAccessory accessory)
{
if(!isHack) return;
if (@event.TargetId() != accessory.Data.Me) return;
accessory.Method.SendChat($"/pdrspeed 1.5");
accessory.Method.SendChat($"/e 可达鸭移速已更改1.5x");
if (isTTS)accessory.Method.TTS("移速已更改至1.5倍");
if (isEdgeTTS)accessory.Method.EdgeTTS("移速已更改至1.5倍");
}
[ScriptMethod(name: "[DR] 1", eventType: EventTypeEnum.StatusRemove, eventCondition: ["StatusID:565", "StackCount:42"])]
public void RemoveManticore(Event @event, ScriptAccessory accessory)
{
if(!isHack) return;
if (@event.TargetId() != accessory.Data.Me) return;
accessory.Method.SendChat($"/pdrspeed 1");
accessory.Method.SendChat($"/e 可达鸭移速已更改1");
if (isTTS)accessory.Method.TTS("移速已复原至1倍");
if (isEdgeTTS)accessory.Method.EdgeTTS("移速已复原至1倍");
}
[ScriptMethod(name: "[DR] 1.2", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:565", "StackCount:43"])]
public void AddSuccubus(Event @event, ScriptAccessory accessory)
{
if(!isHack) return;
if (@event.TargetId() != accessory.Data.Me) return;
accessory.Method.SendChat($"/pdrspeed 1.2");
accessory.Method.SendChat($"/e 可达鸭移速已更改1.2x");
if (isTTS)accessory.Method.TTS("移速已更改至1.2倍");
if (isEdgeTTS)accessory.Method.EdgeTTS("移速已更改至1.2倍");
}
[ScriptMethod(name: "[DR] 1", eventType: EventTypeEnum.StatusRemove, eventCondition: ["StatusID:565", "StackCount:43"])]
public void RemoveSuccubus(Event @event, ScriptAccessory accessory)
{
if(!isHack) return;
if (@event.TargetId() != accessory.Data.Me) return;
accessory.Method.SendChat($"/pdrspeed 1");
accessory.Method.SendChat($"/e 可达鸭移速已更改1");
if (isTTS)accessory.Method.TTS("移速已复原至1倍");
if (isEdgeTTS)accessory.Method.EdgeTTS("移速已复原至1倍");
}
#endregion
}
@@ -848,20 +1092,4 @@ public static class EventExtensions
{
return JsonConvert.DeserializeObject<uint>(@event["Param"]);
}
}
public static class Extensions
{
public static void TTS(this ScriptAccessory accessory, string text, bool isTTS, bool isDRTTS)
{
if (isDRTTS)
{
accessory.Method.SendChat($"/pdr tts {text}");
}
else if (isTTS)
{
accessory.Method.TTS(text);
}
}
}
}