Jetpack fixes (#9107)

This commit is contained in:
metalgearsloth
2022-06-24 19:45:53 +10:00
committed by GitHub
parent 297372fdae
commit 79c1cef566
4 changed files with 8 additions and 6 deletions

View File

@@ -14,7 +14,7 @@ public sealed class JetpackSystem : SharedJetpackSystem
protected override bool CanEnable(JetpackComponent component)
{
return TryComp<GasTankComponent>(component.Owner, out var gasTank) && !(gasTank.Air.Pressure < component.VolumeUsage);
return TryComp<GasTankComponent>(component.Owner, out var gasTank) && !(gasTank.Air.TotalMoles < component.MoleUsage);
}
public override void Update(float frameTime)
@@ -29,14 +29,14 @@ public sealed class JetpackSystem : SharedJetpackSystem
if (active.Accumulator < UpdateCooldown) continue;
active.Accumulator -= UpdateCooldown;
var air = gasTank.RemoveAir(comp.MoleUsage);
if (gasTank.Air.Pressure < comp.VolumeUsage)
if (air == null || !MathHelper.CloseTo(air.TotalMoles, comp.MoleUsage, 0.1f))
{
toDisable.Add(comp);
continue;
}
gasTank.RemoveAirVolume(comp.VolumeUsage);
gasTank.UpdateUserInterface();
}

View File

@@ -7,8 +7,8 @@ namespace Content.Shared.Movement.Components;
[RegisterComponent, NetworkedComponent]
public sealed class JetpackComponent : Component
{
[ViewVariables(VVAccess.ReadWrite), DataField("volumeUsage")]
public float VolumeUsage = Atmospherics.BreathVolume;
[ViewVariables(VVAccess.ReadWrite), DataField("moleUsage")]
public float MoleUsage = 0.048f;
[ViewVariables, DataField("toggleAction", required: true)]
public InstantAction ToggleAction = new();

View File

@@ -0,0 +1,2 @@
action-name-jetpack-toggle = Toggle jetpack
action-description-jetpack-toggle = Toggles the jetpack, giving you movement outside the station.

View File

@@ -53,7 +53,7 @@
sprite: Objects/Tanks/Jetpacks/blue.rsi
state: icon-on
name: action-name-jetpack-toggle
description: action-decription-jetpack-toggle
description: action-description-jetpack-toggle
itemIconStyle: NoItem
event: !type:ToggleJetpackEvent
- type: Appearance