Add weightlessness status effect. (#2384)
* Add weightlessness status effect. * remove system, add new action * Update Content.Shared/GameObjects/Components/Mobs/SharedWeightlessStatusComponent.cs Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com> * Update Content.Shared/GameObjects/Components/Mobs/SharedWeightlessStatusComponent.cs Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com> * Update Content.Shared/GameObjects/Components/Movement/MovementIgnoreGravityComponent.cs Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com> * Update Content.Shared/GameObjects/Components/Movement/MovementIgnoreGravityComponent.cs Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com> * fix paul's typo. does not run. * add client side component * move logic to eventbus * remove client/server components and clean up code * remove useless component, revert human.yml changes. Co-authored-by: scuffedjays <yetanotherscuffed@gmail.com> Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
using Content.Shared.GameObjects.Components.Mobs;
|
||||
using Content.Shared.GameObjects.EntitySystemMessages;
|
||||
using Robust.Shared.GameObjects.Systems;
|
||||
|
||||
namespace Content.Shared.GameObjects.EntitySystems
|
||||
{
|
||||
|
||||
public sealed class WeightlessStatusSystem : EntitySystem
|
||||
{
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
SubscribeLocalEvent<WeightlessChangeMessage>(HandleWeightlessChanged);
|
||||
}
|
||||
|
||||
private void HandleWeightlessChanged(WeightlessChangeMessage msg)
|
||||
{
|
||||
var ent = msg.Entity;
|
||||
if (!ent.TryGetComponent(out SharedStatusEffectsComponent status))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if(msg.Weightless)
|
||||
{
|
||||
status.ChangeStatusEffect(StatusEffect.Weightless,"/Textures/Interface/StatusEffects/Weightless/weightless.png",null);
|
||||
}
|
||||
else
|
||||
{
|
||||
status.RemoveStatusEffect(StatusEffect.Weightless);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user