mirror of
https://github.com/Hibiya615/TetoraKAScript.git
synced 2025-12-17 07:18:15 +08:00
更新高台绘制
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Runtime;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Numerics;
|
||||
@@ -10,18 +11,19 @@ using KodakkuAssist.Module.GameEvent;
|
||||
using KodakkuAssist.Module.Draw;
|
||||
using KodakkuAssist.Data;
|
||||
using KodakkuAssist.Extensions;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace The_Borderland_Ruins;
|
||||
|
||||
[ScriptType(guid: "ec9c9f7d-be48-4974-82cf-396b0fc29261", name: "周边遗迹群(阵地战)", territorys: [1273],
|
||||
version: "0.0.0.2", author: "Tetora", note: noteStr)]
|
||||
version: "0.0.0.3", author: "Tetora", note: noteStr)]
|
||||
|
||||
public class The_Borderland_Ruins
|
||||
{
|
||||
const string noteStr =
|
||||
"""
|
||||
v0.0.0.1:
|
||||
v0.0.0.3:
|
||||
周边遗迹群(阵地战)部分绘制
|
||||
""";
|
||||
|
||||
@@ -41,7 +43,7 @@ public class The_Borderland_Ruins
|
||||
|
||||
#endregion
|
||||
|
||||
[ScriptMethod(name: "对地炮击(地面黄圈)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:42935"])]
|
||||
[ScriptMethod(name: "对地炮击(地面黄圈)填充动画", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:42935"])]
|
||||
public void 对地炮击(Event @event, ScriptAccessory accessory)
|
||||
{
|
||||
// 请求对地炮击 42933
|
||||
@@ -60,7 +62,9 @@ public class The_Borderland_Ruins
|
||||
{
|
||||
// 请求集中炮击 43158
|
||||
// TargetIcon: 003E
|
||||
if (isText)accessory.Method.TextInfo("分摊", duration: 4300, false);
|
||||
if (@event.TargetId() != accessory.Data.Me)
|
||||
{
|
||||
if (isText) accessory.Method.TextInfo("分摊", duration: 4300, false);
|
||||
var dp = accessory.Data.GetDefaultDrawProperties();
|
||||
dp.Name = "集中炮击";
|
||||
dp.Color = accessory.Data.DefaultDangerColor;
|
||||
@@ -69,6 +73,20 @@ public class The_Borderland_Ruins
|
||||
dp.DestoryAt = 4700;
|
||||
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (isText)accessory.Method.TextInfo("分摊点名", duration: 4300, true);
|
||||
if (isTTS)accessory.Method.TTS("分摊点名");
|
||||
if (isEdgeTTS)accessory.Method.EdgeTTS("分摊点名");
|
||||
var dp1 = accessory.Data.GetDefaultDrawProperties();
|
||||
dp1.Name = "集中炮击点名";
|
||||
dp1.Color = accessory.Data.DefaultSafeColor;
|
||||
dp1.Owner = @event.TargetId();
|
||||
dp1.Scale = new Vector2(6f);
|
||||
dp1.DestoryAt = 4700;
|
||||
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp1);
|
||||
}
|
||||
}
|
||||
|
||||
[ScriptMethod(name: "精密炮击(追踪黄圈)Imgui高亮", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^4293[78]$"])]
|
||||
public void 精密炮击(Event @event, ScriptAccessory accessory)
|
||||
@@ -84,6 +102,54 @@ public class The_Borderland_Ruins
|
||||
accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Circle, dp);
|
||||
}
|
||||
|
||||
|
||||
private Guid _currentOperationId = Guid.Empty;
|
||||
|
||||
[ScriptMethod(name: "物体130(高台狂暴)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:2616"])]
|
||||
public async void 物体130(Event @event, ScriptAccessory accessory)
|
||||
{
|
||||
var operationId = Guid.NewGuid();
|
||||
_currentOperationId = operationId;
|
||||
|
||||
await Task.Delay(19700);
|
||||
|
||||
if (_currentOperationId != operationId) return;
|
||||
|
||||
|
||||
var dp = accessory.Data.GetDefaultDrawProperties();
|
||||
dp.Name = "物体130";
|
||||
dp.Color = accessory.Data.DefaultDangerColor.WithW(0.4f);
|
||||
dp.Owner = @event.SourceId();
|
||||
dp.Scale = new Vector2(38.4f);
|
||||
dp.DestoryAt = 10000;
|
||||
dp.ScaleMode = ScaleMode.ByTime;
|
||||
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
|
||||
|
||||
var dp1 = accessory.Data.GetDefaultDrawProperties();
|
||||
dp1.Name = "物体130描边";
|
||||
dp1.Color = accessory.Data.DefaultDangerColor.WithW(8f);
|
||||
dp1.Owner = @event.SourceId();
|
||||
dp1.Scale = new Vector2(38.4f);
|
||||
dp1.InnerScale = new Vector2(38.3f);
|
||||
dp1.Radian = float.Pi * 2;
|
||||
dp1.DestoryAt = 10000;
|
||||
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Donut, dp1);
|
||||
}
|
||||
|
||||
[ScriptMethod(name: "物体130中断销毁", eventType: EventTypeEnum.CancelAction, eventCondition: ["ActionId:2616"], userControl: false)]
|
||||
public void 物体130中断销毁(Event @event, ScriptAccessory accessory)
|
||||
{
|
||||
_currentOperationId = Guid.NewGuid();
|
||||
accessory.Method.RemoveDraw($"物体130.*");
|
||||
}
|
||||
|
||||
[ScriptMethod(name: "截击系统死亡销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:3096"], userControl: false)]
|
||||
public void 截击系统死亡销毁(Event @event, ScriptAccessory accessory)
|
||||
{
|
||||
_currentOperationId = Guid.NewGuid();
|
||||
accessory.Method.RemoveDraw($"物体130.*");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static class EventExtensions
|
||||
|
||||
Reference in New Issue
Block a user