[+] 接入ET8服务端

[+] 接入ET8服务端
This commit is contained in:
ALEXTANG
2023-07-13 12:23:48 +08:00
parent e0be062006
commit 336d4b2eb9
1316 changed files with 130657 additions and 626 deletions

View File

@@ -0,0 +1,43 @@
namespace ET.Client
{
public class AI_Attack: AAIHandler
{
public override int Check(AIComponent aiComponent, AIConfig aiConfig)
{
long sec = aiComponent.Fiber().TimeInfo.ClientNow() / 1000 % 15;
if (sec >= 10)
{
return 0;
}
return 1;
}
public override async ETTask Execute(AIComponent aiComponent, AIConfig aiConfig, ETCancellationToken cancellationToken)
{
Fiber fiber = aiComponent.Fiber();
Unit myUnit = UnitHelper.GetMyUnitFromClientScene(fiber.Root);
if (myUnit == null)
{
return;
}
// 停在当前位置
fiber.Root.GetComponent<ClientSenderCompnent>().Send(new C2M_Stop());
Log.Debug("开始攻击");
for (int i = 0; i < 100000; ++i)
{
Log.Debug($"攻击: {i}次");
// 因为协程可能被中断任何协程都要传入cancellationToken判断如果是中断则要返回
await fiber.TimerComponent.WaitAsync(1000, cancellationToken);
if (cancellationToken.IsCancel())
{
return;
}
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: de532cb8e5e687a4bb61aa666459d086
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,42 @@
using Unity.Mathematics;
namespace ET.Client
{
public class AI_XunLuo: AAIHandler
{
public override int Check(AIComponent aiComponent, AIConfig aiConfig)
{
long sec = aiComponent.Fiber().TimeInfo.ClientNow() / 1000 % 15;
if (sec < 10)
{
return 0;
}
return 1;
}
public override async ETTask Execute(AIComponent aiComponent, AIConfig aiConfig, ETCancellationToken cancellationToken)
{
Scene root = aiComponent.Root();
Unit myUnit = UnitHelper.GetMyUnitFromClientScene(root);
if (myUnit == null)
{
return;
}
Log.Debug("开始巡逻");
while (true)
{
XunLuoPathComponent xunLuoPathComponent = myUnit.GetComponent<XunLuoPathComponent>();
float3 nextTarget = xunLuoPathComponent.GetCurrent();
await myUnit.MoveToAsync(nextTarget, cancellationToken);
if (cancellationToken.IsCancel())
{
return;
}
xunLuoPathComponent.MoveNext();
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4d77ea7dfe040894aa330386e3b7bb8f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,18 @@
using Unity.Mathematics;
namespace ET.Client
{
[FriendOf(typeof(XunLuoPathComponent))]
public static partial class XunLuoPathComponentSystem
{
public static float3 GetCurrent(this XunLuoPathComponent self)
{
return self.path[self.Index];
}
public static void MoveNext(this XunLuoPathComponent self)
{
self.Index = ++self.Index % self.path.Length;
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4293e004a928ffb43bf52f374808d139
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: