Reworked options menu as a prefab and changed pause menu a bit. Need to work on option loading (Currently still old mechanic) and jumping cam when striving and looking.
This commit is contained in:
97
Assets/Scripts/Handler/OptionHandler.cs
Normal file
97
Assets/Scripts/Handler/OptionHandler.cs
Normal file
@@ -0,0 +1,97 @@
|
||||
using Assets.Scripts;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class OptionHandler : MonoBehaviour
|
||||
{
|
||||
public bool isMenu = true;
|
||||
|
||||
public void saveOptions()
|
||||
{
|
||||
string saveText = "";
|
||||
saveText = saveText + saveVideoSettings() + "\r\n";
|
||||
saveText = saveText + saveLanguage() + "\r\n";
|
||||
saveText = saveText + saveAudioSettings() + "\r\n";
|
||||
saveText = saveText + "SensitivityMouse:" + GameObject.Find("slideSensitivityMouseHorizontal").GetComponent<Slider>().value + "/" + GameObject.Find("slideSensitivityMouseVertical").GetComponent<Slider>().value;
|
||||
|
||||
if (!isMenu)
|
||||
{
|
||||
GameObject.Find("Controls").GetComponent<Controls>().sensitivityMouse = new Vector2(
|
||||
GameObject.Find("slideSensitivityMouseHorizontal").GetComponent<Slider>().value,
|
||||
GameObject.Find("slideSensitivityMouseVertical").GetComponent<Slider>().value
|
||||
);
|
||||
}
|
||||
FileHandler.saveOptions(saveText);
|
||||
}
|
||||
|
||||
public string saveVideoSettings()
|
||||
{
|
||||
GameObject resolution = GameObject.Find("dropResolution");
|
||||
GameObject mode = GameObject.Find("dropMode");
|
||||
string result = "";
|
||||
switch (resolution.GetComponent<Dropdown>().value)
|
||||
{
|
||||
case 0:
|
||||
Screen.SetResolution(800, 600, Screen.fullScreenMode);
|
||||
break;
|
||||
case 1:
|
||||
Screen.SetResolution(1280, 800, Screen.fullScreenMode);
|
||||
break;
|
||||
case 2:
|
||||
Screen.SetResolution(1920, 1080, Screen.fullScreenMode);
|
||||
break;
|
||||
}
|
||||
|
||||
switch (mode.GetComponent<Dropdown>().value)
|
||||
{
|
||||
case 0:
|
||||
if (Screen.fullScreenMode != FullScreenMode.Windowed)
|
||||
{
|
||||
Screen.fullScreenMode = FullScreenMode.Windowed;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (Screen.fullScreenMode != FullScreenMode.ExclusiveFullScreen)
|
||||
{
|
||||
Screen.fullScreenMode = FullScreenMode.ExclusiveFullScreen;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (Screen.fullScreenMode != FullScreenMode.FullScreenWindow)
|
||||
{
|
||||
Screen.fullScreenMode = FullScreenMode.FullScreenWindow;
|
||||
}
|
||||
break;
|
||||
}
|
||||
result = result + "Resolution:" + resolution.GetComponent<Dropdown>().value + "\r\n";
|
||||
result = result + "Mode:" + mode.GetComponent<Dropdown>().value;
|
||||
return result;
|
||||
}
|
||||
|
||||
public string saveLanguage()
|
||||
{
|
||||
GameObject language = GameObject.Find("dropLanguage");
|
||||
string result = "";
|
||||
switch (language.GetComponent<Dropdown>().value)
|
||||
{
|
||||
case 0:
|
||||
result = "de";
|
||||
break;
|
||||
case 1:
|
||||
result = "en";
|
||||
break;
|
||||
}
|
||||
result = "Language:" + result;
|
||||
return result;
|
||||
}
|
||||
|
||||
public string saveAudioSettings()
|
||||
{
|
||||
string result = "";
|
||||
float music = GameObject.Find("slideMusic").GetComponent<Slider>().value;
|
||||
float effects = GameObject.Find("slideEffects").GetComponent<Slider>().value;
|
||||
result = result + "Music:" + music + "\r\n";
|
||||
result = result + "Effects:" + effects;
|
||||
return result;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user