Skip to content

Commit

Permalink
Clean SetDarkened to Darkened and UnDarkened functions
Browse files Browse the repository at this point in the history
  • Loading branch information
vaketola committed Feb 22, 2024
1 parent 2a474d7 commit 030c3c8
Showing 1 changed file with 32 additions and 53 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -79,43 +79,15 @@ private void DarkSwap(EntityUid uid, ShadowkinDarkSwapPowerComponent component,

var hasComp = _entity.HasComponent<ShadowkinDarkSwappedComponent>(args.Performer);

SetDarkened(
performer,
!hasComp,
!hasComp,
!hasComp,
true,
args.StaminaCostOn,
args.PowerCostOn,
args.SoundOn,
args.VolumeOn,
args.StaminaCostOff,
args.PowerCostOff,
args.SoundOff,
args.VolumeOff,
args
);
if (hasComp)
Darkened(performer, args.StaminaCostOff, args.PowerCostOff, args.SoundOff, args.VolumeOff, args);
else
UnDarkened(performer, args.StaminaCostOn, args.PowerCostOn, args.SoundOn, args.VolumeOn, args);

_magic.Speak(args, false);
}


public void SetDarkened(
NetEntity performer,
bool addComp,
bool invisible,
bool pacify,
bool darken,
float staminaCostOn,
float powerCostOn,
SoundSpecifier soundOn,
float volumeOn,
float staminaCostOff,
float powerCostOff,
SoundSpecifier soundOff,
float volumeOff,
ShadowkinDarkSwapEvent? args
)
public void Darkened(NetEntity performer, float staminaCostOff, float powerCostOff, SoundSpecifier soundOff, float volumeOff, ShadowkinDarkSwapEvent? args)
{
var performerUid = _entity.GetEntity(performer);

Expand All @@ -124,36 +96,43 @@ public void SetDarkened(
if (ev.Cancelled)
return;

if (addComp)
{
var comp = _entity.EnsureComponent<ShadowkinDarkSwappedComponent>(performerUid);
comp.Invisible = invisible;
comp.Pacify = pacify;
comp.Darken = darken;
_entity.RemoveComponent<ShadowkinDarkSwappedComponent>(performerUid);
RaiseNetworkEvent(new ShadowkinDarkSwappedEvent(performer, false));

RaiseNetworkEvent(new ShadowkinDarkSwappedEvent(performer, true));
_audio.PlayPvs(soundOff, performerUid, AudioParams.Default.WithVolume(volumeOff));

_audio.PlayPvs(soundOn, performerUid, AudioParams.Default.WithVolume(volumeOn));
_power.TryAddPowerLevel(performerUid, -powerCostOff);
_stamina.TakeStaminaDamage(performerUid, staminaCostOff);

_power.TryAddPowerLevel(performerUid, -powerCostOn);
_stamina.TakeStaminaDamage(performerUid, staminaCostOn);
}
else
{
_entity.RemoveComponent<ShadowkinDarkSwappedComponent>(performerUid);
RaiseNetworkEvent(new ShadowkinDarkSwappedEvent(performer, false));
if (args != null)
args.Handled = true;
}

_audio.PlayPvs(soundOff, performerUid, AudioParams.Default.WithVolume(volumeOff));
public void UnDarkened(NetEntity performer, float staminaCostOn, float powerCostOn, SoundSpecifier soundOn, float volumeOn, ShadowkinDarkSwapEvent? args)
{
var performerUid = _entity.GetEntity(performer);

_power.TryAddPowerLevel(performerUid, -powerCostOff);
_stamina.TakeStaminaDamage(performerUid, staminaCostOff);
}
var ev = new ShadowkinDarkSwapAttemptEvent(performerUid);
RaiseLocalEvent(ev);
if (ev.Cancelled)
return;

var comp = _entity.EnsureComponent<ShadowkinDarkSwappedComponent>(performerUid);
comp.Invisible = true;
comp.Pacify = true;
comp.Darken = true;

RaiseNetworkEvent(new ShadowkinDarkSwappedEvent(performer, true));

_audio.PlayPvs(soundOn, performerUid, AudioParams.Default.WithVolume(volumeOn));

_power.TryAddPowerLevel(performerUid, -powerCostOn);
_stamina.TakeStaminaDamage(performerUid, staminaCostOn);

if (args != null)
args.Handled = true;
}


private void OnInvisStartup(EntityUid uid, ShadowkinDarkSwappedComponent component, ComponentStartup args)
{
if (component.Pacify)
Expand Down

0 comments on commit 030c3c8

Please sign in to comment.