Gravity generator rewrite (#4828)

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Pieter-Jan Briers
2021-11-02 01:12:55 +01:00
committed by GitHub
parent 0e33b246db
commit 059fa9ae48
17 changed files with 739 additions and 361 deletions

View File

@@ -22,6 +22,16 @@ namespace Content.IntegrationTests.Tests.Gravity
id: HumanDummy
components:
- type: Alerts
- type: entity
name: GravityGeneratorDummy
id: GravityGeneratorDummy
components:
- type: GravityGenerator
chargeRate: 1000000000 # Set this really high so it discharges in a single tick.
activePower: 500
- type: ApcPowerReceiver
needsPower: false
- type: UserInterface
";
[Test]
public async Task WeightlessStatusTest()
@@ -56,14 +66,12 @@ namespace Content.IntegrationTests.Tests.Gravity
// Let WeightlessSystem and GravitySystem tick
await server.WaitRunTicks(1);
GravityGeneratorComponent gravityGenerator = null;
await server.WaitAssertion(() =>
{
// No gravity without a gravity generator
Assert.True(alerts.IsShowingAlert(AlertType.Weightless));
gravityGenerator = human.EnsureComponent<GravityGeneratorComponent>();
entityManager.SpawnEntity("GravityGeneratorDummy", human.Transform.Coordinates);
});
// Let WeightlessSystem and GravitySystem tick
@@ -73,17 +81,20 @@ namespace Content.IntegrationTests.Tests.Gravity
{
Assert.False(alerts.IsShowingAlert(AlertType.Weightless));
// TODO: Re-add gravity generator breaking when Vera is done with construction stuff.
/*
// Disable the gravity generator
var args = new BreakageEventArgs {Owner = human};
gravityGenerator.OnBreak(args);
// gravityGenerator.OnBreak(args);
*/
});
await server.WaitRunTicks(1);
/*await server.WaitRunTicks(1);
await server.WaitAssertion(() =>
{
Assert.True(alerts.IsShowingAlert(AlertType.Weightless));
});
});*/
}
}
}