Use button prompt for inventory rescue menu
This commit is contained in:
@@ -52,11 +52,24 @@ public partial class Overworld : SpecialFloor, IDungeonFloor
|
|||||||
torches[i].Show();
|
torches[i].Show();
|
||||||
|
|
||||||
ItemRescueInteractZone.AreaEntered += ItemRescueInteractZone_AreaEntered;
|
ItemRescueInteractZone.AreaEntered += ItemRescueInteractZone_AreaEntered;
|
||||||
|
ItemRescueInteractZone.AreaExited += ItemRescueInteractZone_AreaExited;
|
||||||
var dimmableAudio = DimmableAudio.GetChildren().OfType<IDimmableAudioStreamPlayer>();
|
var dimmableAudio = DimmableAudio.GetChildren().OfType<IDimmableAudioStreamPlayer>();
|
||||||
foreach (var dimmable in dimmableAudio)
|
foreach (var dimmable in dimmableAudio)
|
||||||
dimmable.FadeIn();
|
dimmable.FadeIn();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override void _Input(InputEvent @event)
|
||||||
|
{
|
||||||
|
if (_insideItemRescueZone && Input.IsActionJustPressed(GameInputs.Interact))
|
||||||
|
{
|
||||||
|
GameRepo.Pause();
|
||||||
|
Game.ItemRescueMenu.Show();
|
||||||
|
Game.ItemRescueMenu.SetProcessInput(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ItemRescueInteractZone_AreaExited(Area3D area) => _insideItemRescueZone = false;
|
||||||
|
|
||||||
public void OnResolved()
|
public void OnResolved()
|
||||||
{
|
{
|
||||||
Game.ItemRescueMenu.MenuClosing += ItemRescueMenu_MenuClosing;
|
Game.ItemRescueMenu.MenuClosing += ItemRescueMenu_MenuClosing;
|
||||||
@@ -68,12 +81,7 @@ public partial class Overworld : SpecialFloor, IDungeonFloor
|
|||||||
Game.ItemRescueMenu.SetProcessInput(false);
|
Game.ItemRescueMenu.SetProcessInput(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ItemRescueInteractZone_AreaEntered(Area3D area)
|
private void ItemRescueInteractZone_AreaEntered(Area3D area) => _insideItemRescueZone = true;
|
||||||
{
|
|
||||||
GameRepo.Pause();
|
|
||||||
Game.ItemRescueMenu.Show();
|
|
||||||
Game.ItemRescueMenu.SetProcessInput(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void RestoreTimer_Timeout()
|
private void RestoreTimer_Timeout()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user