@
CI / build-test (push) Failing after 1m8s

Add MrGameEng.AI utility-AI module; format codebase with CSharpier

New MrGameEng.AI module (ResponseCurve, Consideration, UtilityAction,
UtilityAi selector, Blackboard) plus CSharpier formatting applied across
the whole engine. Documents the CSharpier convention in CLAUDE.md.
@
This commit is contained in:
Leonid Pershin
2026-06-12 07:19:10 +03:00
parent 4ae730cafa
commit fd6343bd09
96 changed files with 2066 additions and 589 deletions
@@ -1,5 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<OutputType>Exe</OutputType>
@@ -15,5 +14,4 @@
<ItemGroup>
<ProjectReference Include="..\..\src\MrGameEng.Tilemaps\MrGameEng.Tilemaps.csproj" />
</ItemGroup>
</Project>
+47 -11
View File
@@ -105,8 +105,17 @@ public class TilemapMathTests
{
var cull = new RectF(35f, 18f, 40f, 30f); // правый край 75, нижний 48
var visible = TilemapMath.VisibleCells(in cull, Vector2.Zero, 16f, 10, 10,
out var x0, out var y0, out var x1, out var y1);
var visible = TilemapMath.VisibleCells(
in cull,
Vector2.Zero,
16f,
10,
10,
out var x0,
out var y0,
out var x1,
out var y1
);
Assert.True(visible);
Assert.Equal((2, 1, 4, 3), (x0, y0, x1, y1));
@@ -117,8 +126,17 @@ public class TilemapMathTests
{
var cull = new RectF(0f, 0f, 64f, 64f);
var visible = TilemapMath.VisibleCells(in cull, new Vector2(-32f, -32f), 16f, 100, 100,
out var x0, out var y0, out var x1, out var y1);
var visible = TilemapMath.VisibleCells(
in cull,
new Vector2(-32f, -32f),
16f,
100,
100,
out var x0,
out var y0,
out var x1,
out var y1
);
Assert.True(visible);
Assert.Equal((2, 2, 6, 6), (x0, y0, x1, y1));
@@ -129,23 +147,41 @@ public class TilemapMathTests
{
var cull = new RectF(-1000f, -1000f, 5000f, 5000f);
var visible = TilemapMath.VisibleCells(in cull, Vector2.Zero, 16f, 8, 6,
out var x0, out var y0, out var x1, out var y1);
var visible = TilemapMath.VisibleCells(
in cull,
Vector2.Zero,
16f,
8,
6,
out var x0,
out var y0,
out var x1,
out var y1
);
Assert.True(visible);
Assert.Equal((0, 0, 7, 5), (x0, y0, x1, y1));
}
[Theory]
[InlineData(200f, 0f)] // справа от карты
[InlineData(-200f, 0f)] // слева
[InlineData(0f, 200f)] // ниже
[InlineData(200f, 0f)] // справа от карты
[InlineData(-200f, 0f)] // слева
[InlineData(0f, 200f)] // ниже
public void CameraOutsideMap_ReturnsFalse(float offsetX, float offsetY)
{
var cull = new RectF(offsetX, offsetY, 100f, 100f);
var visible = TilemapMath.VisibleCells(in cull, new Vector2(-150f, -150f), 16f, 8, 8,
out _, out _, out _, out _);
var visible = TilemapMath.VisibleCells(
in cull,
new Vector2(-150f, -150f),
16f,
8,
8,
out _,
out _,
out _,
out _
);
Assert.False(visible);
}