重命名天青斗场脚本并增加部分选项

This commit is contained in:
南沢响也
2025-05-27 20:32:59 +08:00
parent ee20bd2f6c
commit b4448ff820

View File

@@ -18,26 +18,47 @@ using ECommons.GameFunctions;
using ECommons.MathHelpers;
using System.Threading.Tasks;
namespace Midsummer_Night_s_Explosion;
namespace Celestium;
[ScriptType(guid: "7703f1a9-5698-4896-8908-bb8e415c1321", name: "天青斗场18 - 爆破死斗", territorys: [796],
version: "0.0.0.3", author: "Tetora", note: noteStr)]
[ScriptType(guid: "7703f1a9-5698-4896-8908-bb8e415c1321", name: "天青斗场", territorys: [796],
version: "0.0.0.4", author: "Tetora", note: noteStr)]
public class Midsummer_Night_s_Explosion {
public class Celestium {
const string noteStr =
"""
v0.0.0.3:
18
v0.0.0.4:
18 []
""";
#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;
#endregion
#region 18
[ScriptMethod(name: "—————— 18爆破死斗 ——————", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:"])]
public void 18(Event @event, ScriptAccessory accessory) { }
[ScriptMethod(name: "狂野冲锋(直线击退)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:15055"])]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.EdgeTTS("冲锋击退");
if(isTTS) accessory.Method.TTS("冲锋击退");
if(isEdgeTTS) accessory.Method.EdgeTTS("冲锋击退");
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "狂野冲锋";
dp.Name = $"狂野冲锋{@event.SourceId()}";
dp.Scale = new (8f);
dp.ScaleMode |= ScaleMode.YByDistance;
dp.Owner = @event.SourceId();
@@ -47,11 +68,17 @@ public class Midsummer_Night_s_Explosion {
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Rect, dp);
}
[ScriptMethod(name: "狂野冲锋销毁", eventType: EventTypeEnum.CancelAction, eventCondition: ["ActionId:15055"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw($"狂野冲锋{@event.SourceId()}");
}
[ScriptMethod(name: "撕裂利爪(顺劈)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:15050"])]
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);
@@ -60,11 +87,37 @@ public class Midsummer_Night_s_Explosion {
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Fan, dp);
}
[ScriptMethod(name: "撕裂利爪销毁", eventType: EventTypeEnum.CancelAction, eventCondition: ["ActionId:15050"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw($"撕裂利爪{@event.SourceId()}");
}
[ScriptMethod(name: "尾部碎击(扫尾)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:15052"])]
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(15f);
dp.Radian = 90f.DegToRad();
dp.Rotation = 180f.DegToRad();
dp.DestoryAt = 3700;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Fan, dp);
}
[ScriptMethod(name: "尾部碎击销毁", eventType: EventTypeEnum.CancelAction, eventCondition: ["ActionId:15052"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw($"尾部碎击{@event.SourceId()}");
}
[ScriptMethod(name: "火球(面前圆形)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:15051"])]
public void (Event @event, ScriptAccessory accessory)
{
var dp = accessory.Data.GetDefaultDrawProperties();
dp.Name = "火球";
dp.Name = $"火球{@event.SourceId()}";
dp.Color = accessory.Data.DefaultDangerColor;
dp.Position = @event.EffectPosition();
dp.Scale = new Vector2(6f);
@@ -72,6 +125,14 @@ public class Midsummer_Night_s_Explosion {
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
[ScriptMethod(name: "火球销毁", eventType: EventTypeEnum.CancelAction, eventCondition: ["ActionId:15051"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw($"火球{@event.SourceId()}");
}
#endregion
}
public static class EventExtensions
{
@@ -187,18 +248,3 @@ public static class EventExtensions
}
}
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);
}
}
}