Asset Dump

This commit is contained in:
2026-06-03 13:46:13 -07:00
parent e362aaeb43
commit 9091388bc2
20821 changed files with 26544125 additions and 58 deletions
@@ -44,6 +44,11 @@ namespace ProjectM.Client
/// command buffer (a single-frame pulse can be lost across the frame→tick boundary). 0 = idle.</summary>
public static int FireFrames;
/// <summary>Input scheme stamped onto injected input (<see cref="InputSchemeId"/>). Defaults to Gamepad
/// so injected aim still receives the server auto-target assist (the pre-scheme behaviour), keeping the
/// editor fire / auto-target validation path intact.</summary>
public static byte Scheme = InputSchemeId.Gamepad;
/// <summary>Convenience: hold Fire for the next <paramref name="frames"/> frames (also enables
/// override). The ability cooldown still gates how many shots actually result.</summary>
public static void Fire(int frames = 10) { Active = true; FireFrames = math.max(FireFrames, frames); }
@@ -72,10 +77,15 @@ namespace ProjectM.Client
float2 move = Move;
float2 aim = Aim;
// Keep the presentation bridge in sync with the injected scheme so the reticle/cursor match the
// input the sim is actually using (the gather published a value earlier this frame; we override it).
AimPresentation.Scheme = Scheme;
foreach (var input in SystemAPI.Query<RefRW<PlayerInput>>().WithAll<GhostOwnerIsLocal>())
{
input.ValueRW.Move = move;
input.ValueRW.Aim = aim;
input.ValueRW.Scheme = Scheme;
if (fire)
input.ValueRW.Fire.Set();
}