Asset Dump
This commit is contained in:
@@ -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();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user