gallery and options rendered images set to linear filterling
This commit is contained in:
@@ -55,229 +55,229 @@ public partial class OptionsMenu : Control
|
||||
|
||||
public void OnReady()
|
||||
{
|
||||
ResolutionOptions.AddItem("Windowed");
|
||||
ResolutionOptions.AddItem("Maximized");
|
||||
ResolutionOptions.AddItem("Fullscreen");
|
||||
ResolutionOptions.AddItem("Exclusive Fullscreen");
|
||||
ResolutionOptions.Select(0);
|
||||
ResolutionOptions.AddItem("Windowed");
|
||||
ResolutionOptions.AddItem("Maximized");
|
||||
ResolutionOptions.AddItem("Fullscreen");
|
||||
ResolutionOptions.AddItem("Exclusive Fullscreen");
|
||||
ResolutionOptions.Select(0);
|
||||
|
||||
var devices = AudioServer.GetOutputDeviceList();
|
||||
foreach (var device in devices)
|
||||
SoundDeviceOptions.AddItem(device);
|
||||
var devices = AudioServer.GetOutputDeviceList();
|
||||
foreach (var device in devices)
|
||||
SoundDeviceOptions.AddItem(device);
|
||||
|
||||
SoundDeviceOptions.Select(0);
|
||||
SoundDeviceOptions.Select(0);
|
||||
|
||||
SoundDeviceOptions.AllowReselect = true;
|
||||
SoundDeviceOptions.Pressed += SoundDeviceOptions_Pressed;
|
||||
SoundDeviceOptions.ItemSelected += ChangeAudioDevice;
|
||||
SoundDeviceOptions.AllowReselect = true;
|
||||
SoundDeviceOptions.Pressed += SoundDeviceOptions_Pressed;
|
||||
SoundDeviceOptions.ItemSelected += ChangeAudioDevice;
|
||||
|
||||
OptionsData = new OptionsData()
|
||||
{
|
||||
MasterVolumeLevel = MasterVolumeSlider.Value,
|
||||
MusicVolumeLevel = MusicVolumeSlider.Value,
|
||||
SFXVolumeLevel = SFXVolumeSlider.Value,
|
||||
AudioDeviceName = "Default",
|
||||
ScreenResolution = ResolutionOptions.GetSelectedId(),
|
||||
SkipCutscene = SkipOpeningCSCheck.ButtonPressed
|
||||
};
|
||||
OptionsData = new OptionsData()
|
||||
{
|
||||
MasterVolumeLevel = MasterVolumeSlider.Value,
|
||||
MusicVolumeLevel = MusicVolumeSlider.Value,
|
||||
SFXVolumeLevel = SFXVolumeSlider.Value,
|
||||
AudioDeviceName = "Default",
|
||||
ScreenResolution = ResolutionOptions.GetSelectedId(),
|
||||
SkipCutscene = SkipOpeningCSCheck.ButtonPressed
|
||||
};
|
||||
|
||||
SkipOpeningCSCheck.Pressed += SkipOpeningCS_Pressed;
|
||||
SkipOpeningCSCheck.Pressed += SkipOpeningCS_Pressed;
|
||||
|
||||
DeleteSaveButton.Pressed += DeleteSaveButton_Pressed;
|
||||
YesDeleteButton.Pressed += YesDeleteButton_Pressed;
|
||||
NoDeleteButton.Pressed += NoDeleteButton_Pressed;
|
||||
DeleteSaveButton.Pressed += DeleteSaveButton_Pressed;
|
||||
YesDeleteButton.Pressed += YesDeleteButton_Pressed;
|
||||
NoDeleteButton.Pressed += NoDeleteButton_Pressed;
|
||||
|
||||
MasterVolumeSlider.ValueChanged += MasterVolumeSlider_Changed;
|
||||
MusicVolumeSlider.ValueChanged += MusicVolumeSlider_Changed;
|
||||
SFXVolumeSlider.ValueChanged += SFXVolumeSlider_Changed;
|
||||
MasterVolumeSlider.ValueChanged += MasterVolumeSlider_Changed;
|
||||
MusicVolumeSlider.ValueChanged += MusicVolumeSlider_Changed;
|
||||
SFXVolumeSlider.ValueChanged += SFXVolumeSlider_Changed;
|
||||
|
||||
ResolutionOptions.ItemSelected += ResolutionOptions_ItemSelected;
|
||||
ResolutionOptions.ItemSelected += ResolutionOptions_ItemSelected;
|
||||
|
||||
_masterBusIndex = AudioServer.GetBusIndex("Master");
|
||||
_musicBusIndex = AudioServer.GetBusIndex("MUSIC");
|
||||
_sfxBusIndex = AudioServer.GetBusIndex("SFX");
|
||||
_masterBusIndex = AudioServer.GetBusIndex("Master");
|
||||
_musicBusIndex = AudioServer.GetBusIndex("MUSIC");
|
||||
_sfxBusIndex = AudioServer.GetBusIndex("SFX");
|
||||
|
||||
GameTab.FocusEntered += Game_FocusEntered;
|
||||
AudioTab.FocusEntered += Audio_FocusEntered;
|
||||
ControllerTab.FocusEntered += Controller_FocusEntered;
|
||||
GameTab.FocusEntered += Game_FocusEntered;
|
||||
AudioTab.FocusEntered += Audio_FocusEntered;
|
||||
ControllerTab.FocusEntered += Controller_FocusEntered;
|
||||
|
||||
SELabel.Pressed += SELabel_Pressed;
|
||||
MusicLabel.Pressed += MusicLabel_Pressed;
|
||||
MasterLabel.Pressed += MasterLabel_Pressed;
|
||||
SELabel.Pressed += SELabel_Pressed;
|
||||
MusicLabel.Pressed += MusicLabel_Pressed;
|
||||
MasterLabel.Pressed += MasterLabel_Pressed;
|
||||
|
||||
GetViewport().GuiFocusChanged += OptionsMenu_GuiFocusChanged;
|
||||
GetViewport().GuiFocusChanged += OptionsMenu_GuiFocusChanged;
|
||||
}
|
||||
|
||||
public override void _Input(InputEvent @event)
|
||||
{
|
||||
if (!Visible)
|
||||
return;
|
||||
if (!Visible)
|
||||
return;
|
||||
|
||||
if (Input.IsActionJustPressed(GameInputs.Interact) || Input.IsActionJustPressed(GameInputs.Attack))
|
||||
{
|
||||
if (SFXVolumeSlider.HasFocus())
|
||||
{
|
||||
SELabel.GrabFocus();
|
||||
AcceptEvent();
|
||||
return;
|
||||
}
|
||||
if (MusicVolumeSlider.HasFocus())
|
||||
{
|
||||
MusicLabel.GrabFocus();
|
||||
AcceptEvent();
|
||||
return;
|
||||
}
|
||||
if (MasterVolumeSlider.HasFocus())
|
||||
{
|
||||
MasterLabel.GrabFocus();
|
||||
AcceptEvent();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (Input.IsActionJustPressed(GameInputs.Interact) || Input.IsActionJustPressed(GameInputs.Attack))
|
||||
{
|
||||
if (SFXVolumeSlider.HasFocus())
|
||||
{
|
||||
SELabel.GrabFocus();
|
||||
AcceptEvent();
|
||||
return;
|
||||
}
|
||||
if (MusicVolumeSlider.HasFocus())
|
||||
{
|
||||
MusicLabel.GrabFocus();
|
||||
AcceptEvent();
|
||||
return;
|
||||
}
|
||||
if (MasterVolumeSlider.HasFocus())
|
||||
{
|
||||
MasterLabel.GrabFocus();
|
||||
AcceptEvent();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (Input.IsActionJustPressed(GameInputs.Interact) || Input.IsActionJustPressed(GameInputs.Pause))
|
||||
{
|
||||
if (GameTab.HasFocus() || AudioTab.HasFocus() || ControllerTab.HasFocus())
|
||||
{
|
||||
AcceptEvent();
|
||||
SaveAndExitMenu();
|
||||
}
|
||||
else
|
||||
{
|
||||
var path = GetPathTo(_currentFocus).ToString();
|
||||
if (path.Contains("Game"))
|
||||
GameTab.GrabFocus();
|
||||
else if (path.Contains("Audio"))
|
||||
AudioTab.GrabFocus();
|
||||
else if (path.Contains("Controller"))
|
||||
ControllerTab.GrabFocus();
|
||||
}
|
||||
}
|
||||
if (Input.IsActionJustPressed(GameInputs.Interact) || Input.IsActionJustPressed(GameInputs.Pause))
|
||||
{
|
||||
if (GameTab.HasFocus() || AudioTab.HasFocus() || ControllerTab.HasFocus())
|
||||
{
|
||||
AcceptEvent();
|
||||
SaveAndExitMenu();
|
||||
}
|
||||
else
|
||||
{
|
||||
var path = GetPathTo(_currentFocus).ToString();
|
||||
if (path.Contains("Game"))
|
||||
GameTab.GrabFocus();
|
||||
else if (path.Contains("Audio"))
|
||||
AudioTab.GrabFocus();
|
||||
else if (path.Contains("Controller"))
|
||||
ControllerTab.GrabFocus();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void ResolutionOptions_ItemSelected(long index)
|
||||
{
|
||||
var resolutionIndex = ResolutionOptions.GetSelectedId();
|
||||
OptionsData.ScreenResolution = resolutionIndex;
|
||||
DisplayServer.WindowSetMode(_windowModes[resolutionIndex]);
|
||||
var resolutionIndex = ResolutionOptions.GetSelectedId();
|
||||
OptionsData.ScreenResolution = resolutionIndex;
|
||||
DisplayServer.WindowSetMode(_windowModes[resolutionIndex]);
|
||||
}
|
||||
|
||||
private void ChangeAudioDevice(long index)
|
||||
{
|
||||
var i = SoundDeviceOptions.GetSelectedId();
|
||||
var deviceName = SoundDeviceOptions.GetItemText(i);
|
||||
AudioServer.SetOutputDevice(deviceName);
|
||||
OptionsData.AudioDeviceName = deviceName;
|
||||
var i = SoundDeviceOptions.GetSelectedId();
|
||||
var deviceName = SoundDeviceOptions.GetItemText(i);
|
||||
AudioServer.SetOutputDevice(deviceName);
|
||||
OptionsData.AudioDeviceName = deviceName;
|
||||
}
|
||||
|
||||
public void Load(OptionsData optionsData)
|
||||
{
|
||||
MasterVolumeSlider.Value = optionsData.MasterVolumeLevel;
|
||||
MusicVolumeSlider.Value = optionsData.MusicVolumeLevel;
|
||||
SFXVolumeSlider.Value = optionsData.SFXVolumeLevel;
|
||||
ResolutionOptions.Select(optionsData.ScreenResolution);
|
||||
var audioDevices = AudioServer.GetOutputDeviceList();
|
||||
if (!audioDevices.Contains(optionsData.AudioDeviceName))
|
||||
SoundDeviceOptions.Select(0);
|
||||
else
|
||||
{
|
||||
var selectedDeviceIndex = AudioServer.GetOutputDeviceList().ToList().IndexOf(optionsData.AudioDeviceName);
|
||||
SoundDeviceOptions.Select(selectedDeviceIndex);
|
||||
}
|
||||
SkipOpeningCSCheck.ButtonPressed = optionsData.SkipCutscene;
|
||||
DisplayServer.WindowSetMode(_windowModes[optionsData.ScreenResolution]);
|
||||
MasterVolumeSlider.Value = optionsData.MasterVolumeLevel;
|
||||
MusicVolumeSlider.Value = optionsData.MusicVolumeLevel;
|
||||
SFXVolumeSlider.Value = optionsData.SFXVolumeLevel;
|
||||
ResolutionOptions.Select(optionsData.ScreenResolution);
|
||||
var audioDevices = AudioServer.GetOutputDeviceList();
|
||||
if (!audioDevices.Contains(optionsData.AudioDeviceName))
|
||||
SoundDeviceOptions.Select(0);
|
||||
else
|
||||
{
|
||||
var selectedDeviceIndex = AudioServer.GetOutputDeviceList().ToList().IndexOf(optionsData.AudioDeviceName);
|
||||
SoundDeviceOptions.Select(selectedDeviceIndex);
|
||||
}
|
||||
SkipOpeningCSCheck.ButtonPressed = optionsData.SkipCutscene;
|
||||
DisplayServer.WindowSetMode(_windowModes[optionsData.ScreenResolution]);
|
||||
}
|
||||
|
||||
private void OptionsMenu_GuiFocusChanged(Control node) => _currentFocus = node;
|
||||
|
||||
private void MasterLabel_Pressed()
|
||||
{
|
||||
MasterVolumeSlider.GrabFocus();
|
||||
MasterVolumeSlider.GrabFocus();
|
||||
}
|
||||
|
||||
private void MusicLabel_Pressed()
|
||||
{
|
||||
MusicVolumeSlider.GrabFocus();
|
||||
MusicVolumeSlider.GrabFocus();
|
||||
}
|
||||
|
||||
private void SELabel_Pressed()
|
||||
{
|
||||
SFXVolumeSlider.GrabFocus();
|
||||
SFXVolumeSlider.GrabFocus();
|
||||
}
|
||||
|
||||
private void SoundDeviceOptions_Pressed()
|
||||
{
|
||||
var selectedItem = SoundDeviceOptions.Selected;
|
||||
SoundDeviceOptions.Clear();
|
||||
var selectedItem = SoundDeviceOptions.Selected;
|
||||
SoundDeviceOptions.Clear();
|
||||
|
||||
var devices = AudioServer.GetOutputDeviceList();
|
||||
foreach (var device in devices)
|
||||
SoundDeviceOptions.AddItem(device);
|
||||
SoundDeviceOptions.Select(selectedItem);
|
||||
var devices = AudioServer.GetOutputDeviceList();
|
||||
foreach (var device in devices)
|
||||
SoundDeviceOptions.AddItem(device);
|
||||
SoundDeviceOptions.Select(selectedItem);
|
||||
}
|
||||
|
||||
private void SkipOpeningCS_Pressed() => OptionsData.SkipCutscene = SkipOpeningCSCheck.ButtonPressed;
|
||||
|
||||
private void NoDeleteButton_Pressed()
|
||||
{
|
||||
ReleaseFocus();
|
||||
ConfirmDeletePopup.Hide();
|
||||
DeleteSaveButton.GrabFocus();
|
||||
ReleaseFocus();
|
||||
ConfirmDeletePopup.Hide();
|
||||
DeleteSaveButton.GrabFocus();
|
||||
}
|
||||
|
||||
private void YesDeleteButton_Pressed()
|
||||
{
|
||||
EmitSignal(SignalName.DeleteSaveData);
|
||||
ReleaseFocus();
|
||||
ConfirmDeletePopup.Hide();
|
||||
DeleteSaveButton.GrabFocus();
|
||||
EmitSignal(SignalName.DeleteSaveData);
|
||||
ReleaseFocus();
|
||||
ConfirmDeletePopup.Hide();
|
||||
DeleteSaveButton.GrabFocus();
|
||||
}
|
||||
|
||||
private void DeleteSaveButton_Pressed()
|
||||
{
|
||||
NoDeleteButton.GrabFocus();
|
||||
ConfirmDeletePopup.Show();
|
||||
NoDeleteButton.GrabFocus();
|
||||
ConfirmDeletePopup.Show();
|
||||
}
|
||||
|
||||
private void SaveAndExitMenu() => EmitSignal(SignalName.OptionsMenuExited);
|
||||
|
||||
private void MasterVolumeSlider_Changed(double valueChanged)
|
||||
{
|
||||
OptionsData.MasterVolumeLevel = valueChanged;
|
||||
AudioServer.SetBusVolumeDb(_masterBusIndex, Mathf.LinearToDb((float)valueChanged));
|
||||
OptionsData.MasterVolumeLevel = valueChanged;
|
||||
AudioServer.SetBusVolumeDb(_masterBusIndex, Mathf.LinearToDb((float)valueChanged));
|
||||
}
|
||||
|
||||
private void MusicVolumeSlider_Changed(double valueChanged)
|
||||
{
|
||||
OptionsData.MusicVolumeLevel = valueChanged;
|
||||
AudioServer.SetBusVolumeDb(_musicBusIndex, Mathf.LinearToDb((float)valueChanged));
|
||||
OptionsData.MusicVolumeLevel = valueChanged;
|
||||
AudioServer.SetBusVolumeDb(_musicBusIndex, Mathf.LinearToDb((float)valueChanged));
|
||||
}
|
||||
|
||||
private void SFXVolumeSlider_Changed(double valueChanged)
|
||||
{
|
||||
OptionsData.SFXVolumeLevel = valueChanged;
|
||||
AudioServer.SetBusVolumeDb(_sfxBusIndex, Mathf.LinearToDb((float)valueChanged));
|
||||
OptionsData.SFXVolumeLevel = valueChanged;
|
||||
AudioServer.SetBusVolumeDb(_sfxBusIndex, Mathf.LinearToDb((float)valueChanged));
|
||||
}
|
||||
|
||||
private void Controller_FocusEntered()
|
||||
{
|
||||
Audio.Hide();
|
||||
Controller.Show();
|
||||
Game.Hide();
|
||||
Audio.Hide();
|
||||
Controller.Show();
|
||||
Game.Hide();
|
||||
}
|
||||
|
||||
private void Game_FocusEntered()
|
||||
{
|
||||
Audio.Hide();
|
||||
Controller.Hide();
|
||||
Game.Show();
|
||||
Audio.Hide();
|
||||
Controller.Hide();
|
||||
Game.Show();
|
||||
}
|
||||
|
||||
private void Audio_FocusEntered()
|
||||
{
|
||||
Audio.Show();
|
||||
Controller.Hide();
|
||||
Game.Hide();
|
||||
Audio.Show();
|
||||
Controller.Hide();
|
||||
Game.Hide();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -286,4 +286,4 @@ public enum TabOption
|
||||
Game,
|
||||
Audio,
|
||||
Controls
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
[ext_resource type="FontFile" uid="uid://beh6d5lo5ihq0" path="res://src/ui/fonts/georgiai.ttf" id="2_n0yw3"]
|
||||
[ext_resource type="LabelSettings" uid="uid://cuuo43x72xcsc" path="res://src/ui/label_settings/MainTextBold.tres" id="2_o7aaw"]
|
||||
[ext_resource type="FontFile" uid="uid://cke424xtk2s0o" path="res://src/ui/fonts/ebrima.ttf" id="2_ohii5"]
|
||||
[ext_resource type="LabelSettings" uid="uid://b6f8ggy3ulonb" path="res://src/ui/label_settings/GeorgiaItalic.tres" id="5_1mx8s"]
|
||||
[ext_resource type="LabelSettings" path="res://src/ui/label_settings/GeorgiaItalic.tres" id="5_1mx8s"]
|
||||
[ext_resource type="Texture2D" uid="uid://u255bg4nytuf" path="res://src/ui/gallery/checkbox.png" id="5_wn77p"]
|
||||
[ext_resource type="Texture2D" uid="uid://2fwkphkxib7p" path="res://src/ui/gallery/Unchecked.png" id="6_ko1q6"]
|
||||
[ext_resource type="StyleBox" uid="uid://bxuy4tnftibfq" path="res://src/options/SelectedOptionsBox.tres" id="9_lx8gn"]
|
||||
[ext_resource type="StyleBox" uid="uid://bl15q835s4ene" path="res://src/options/UnselectedOptionsBox.tres" id="10_qvpxc"]
|
||||
[ext_resource type="StyleBox" path="res://src/options/SelectedOptionsBox.tres" id="9_lx8gn"]
|
||||
[ext_resource type="StyleBox" path="res://src/options/UnselectedOptionsBox.tres" id="10_qvpxc"]
|
||||
[ext_resource type="Script" uid="uid://c6lw5yp8p0wb5" path="res://src/options/InputMapper.cs" id="12_776se"]
|
||||
[ext_resource type="Script" uid="uid://b70br20xue678" path="res://src/options/KeyboardRemapButton.cs" id="13_rjjwr"]
|
||||
[ext_resource type="Script" uid="uid://bo7vk56h1lr07" path="res://src/options/JoypadRemapButton.cs" id="14_wsiwg"]
|
||||
@@ -46,6 +46,7 @@ size_flags_vertical = 3
|
||||
script = ExtResource("1_jli36")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="."]
|
||||
texture_filter = 2
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
|
||||
Reference in New Issue
Block a user