Move Player logic to other project

This commit is contained in:
2025-03-07 01:26:14 -08:00
parent 1cb79f5b30
commit b7bf4f3d10
30 changed files with 20 additions and 64 deletions

View File

@@ -1,6 +1,6 @@
using Godot; using Godot;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {

View File

@@ -1,4 +1,6 @@
namespace Zennysoft.Game.Ma; using System.Numerics;
namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {
@@ -10,5 +12,7 @@ public partial class PlayerLogic
} }
public readonly record struct ThrowItem; public readonly record struct ThrowItem;
public readonly record struct Move(float delta);
} }
} }

View File

@@ -1,4 +1,4 @@
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {

View File

@@ -1,7 +1,7 @@
using Chickensoft.Introspection; using Chickensoft.Introspection;
using Chickensoft.LogicBlocks; using Chickensoft.LogicBlocks;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {

View File

@@ -1,7 +1,7 @@
using Chickensoft.Introspection; using Chickensoft.Introspection;
using Chickensoft.LogicBlocks; using Chickensoft.LogicBlocks;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public interface IPlayerLogic : ILogicBlock<PlayerLogic.State>; public interface IPlayerLogic : ILogicBlock<PlayerLogic.State>;

View File

@@ -1,6 +1,6 @@
using Chickensoft.Introspection; using Chickensoft.Introspection;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {

View File

@@ -1,7 +1,7 @@
using Chickensoft.Introspection; using Chickensoft.Introspection;
using Godot; using Godot;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {

View File

@@ -1,7 +1,7 @@
using Chickensoft.Introspection; using Chickensoft.Introspection;
using Godot; using Godot;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {
@@ -13,8 +13,7 @@ public partial class PlayerLogic
public virtual Transition On(in Input.PhysicsTick input) public virtual Transition On(in Input.PhysicsTick input)
{ {
var delta = input.Delta; var delta = input.Delta;
var player = Get<IPlayer>(); Output(new Output.Move((float)delta));
player.Move((float)delta);
return ToSelf(); return ToSelf();
} }

View File

@@ -1,6 +1,6 @@
using Chickensoft.Introspection; using Chickensoft.Introspection;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {

View File

@@ -1,7 +1,7 @@
using Chickensoft.Introspection; using Chickensoft.Introspection;
using Zennysoft.Game.Abstractions; using Zennysoft.Game.Abstractions;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma.Implementation;
public partial class PlayerLogic public partial class PlayerLogic
{ {

View File

@@ -1,5 +1,4 @@
using Chickensoft.GodotNodeInterfaces; using Chickensoft.Introspection;
using Chickensoft.Introspection;
using Chickensoft.Serialization; using Chickensoft.Serialization;
using Godot; using Godot;
using System; using System;

View File

@@ -1,7 +0,0 @@
namespace Zennysoft.Game.Ma;
public partial class MapLogic
{
public static class Input
{
}
}

View File

@@ -1 +0,0 @@
uid://bn0l0ur7ih0ea

View File

@@ -1,16 +0,0 @@
using Chickensoft.Introspection;
using Chickensoft.LogicBlocks;
namespace Zennysoft.Game.Ma;
public partial class MapLogic
{
[Meta]
public partial record State : StateLogic<State>
{
public State()
{
}
}
}

View File

@@ -1 +0,0 @@
uid://bf2bas1ky7ae1

View File

@@ -1,13 +0,0 @@
using Chickensoft.Introspection;
using Chickensoft.LogicBlocks;
namespace Zennysoft.Game.Ma;
public interface IMapLogic : ILogicBlock<MapLogic.State>;
[Meta]
[LogicBlock(typeof(State))]
public partial class MapLogic : LogicBlock<MapLogic.State>, IMapLogic
{
public override Transition GetInitialState() => To<State>();
}

View File

@@ -1 +0,0 @@
uid://dhjrhbhvpduqn

View File

@@ -1,7 +1,6 @@
using Chickensoft.AutoInject; using Chickensoft.AutoInject;
using Chickensoft.GodotNodeInterfaces; using Chickensoft.GodotNodeInterfaces;
using Chickensoft.Introspection; using Chickensoft.Introspection;
using Zennysoft.Game.Ma;
using Godot; using Godot;
namespace Zennysoft.Game.Ma; namespace Zennysoft.Game.Ma;

View File

@@ -209,6 +209,10 @@ public partial class Player : CharacterBody3D, IPlayer
}) })
.Handle((in PlayerLogic.Output.ThrowItem output) => .Handle((in PlayerLogic.Output.ThrowItem output) =>
{ {
})
.Handle((in PlayerLogic.Output.Move output) =>
{
Move(output.delta);
}); });
GameChunk.AddChunk(PlayerChunk); GameChunk.AddChunk(PlayerChunk);

View File

@@ -1 +0,0 @@
uid://ch6oc0relbray

View File

@@ -1 +0,0 @@
uid://cylnjf8jadgo6

View File

@@ -1 +0,0 @@
uid://cmbt77ty7pmvc

View File

@@ -1 +0,0 @@
uid://c46w8aytsajoe

View File

@@ -1 +0,0 @@
uid://beqr05mbwbg3b

View File

@@ -1 +0,0 @@
uid://demor6ic4xcwn

View File

@@ -1 +0,0 @@
uid://bsxp82sus11pv