- Home /
Question by
lol_lol_lol · Jan 12, 2014 at 11:58 AM ·
guiaudiosaving
Audio preferance saving why isn't it working?
Hello everyone. I wrote code to make it so that if you press sound off it turns off but if you press sound on it turns on. this should save between game sessions. however when i press the button nothing happends.
this is the code i wrote for the pause menu.
using UnityEngine;
using System.Collections;
public class pausemenu : MonoBehaviour {
public GUISkin skinEmpty;
public GUISkin skinDefault;
public Texture aTexture;
public bool menuPause = false;
public bool menuOptions = false;
public bool muted;
public string Sound;
// Use this for initialization
void Awake()
{
SoundCheck ();
}
void Start () {
if(muted == false)
{
audio.volume = 1;
}
else if(muted == true)
{
audio.volume = 0;
}
audio.Play();
}
// Update is called once per frame
void Update () {
}
void OnGUI() {
GUI.skin = skinEmpty;
if (GUI.Button (new Rect (Screen.width * (-0.6f / 6.4f), Screen.height * (0.1f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), aTexture)) {
Time.timeScale = 0;
menuPause = true;
}
if (menuPause == true) {
GUI.skin = skinDefault;
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (3.1f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Resume")) {
GUI.skin = skinEmpty;
menuPause = false;
Time.timeScale = 1;
}
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (3.8f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Restart")) {
}
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (4.5f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Options")) {
menuOptions = true;
}
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (5.2f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Main Menu")) {
Application.LoadLevel ("lol");
}
}
if (menuOptions == true) {
menuPause = false;
GUI.skin = skinDefault;
if (muted == false) {
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (3.1f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Sound Off")) {
audio.volume = 0;
muted = true;
PlayerPrefs.SetString ("Sound", "muted");
}
} else if (muted == true) {
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (3.1f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Sound On")) {
audio.volume = 1;
muted = false;
PlayerPrefs.SetString ("Sound", "enabled");
}
}
}
}
public void SoundCheck()
{
Sound = PlayerPrefs.GetString("Sound");
if (Sound == "enabled")
{
muted = false;
}
else if (Sound == "muted")
{
muted = true;
}
}
}
I also wrote code for the main menu. this one works! so nothing is wrong with it. but mayby because it saves it to the same string it goes wrong.
code for the main menu:
using UnityEngine; using System.Collections;
public class GuiMainMenu : MonoBehaviour { bool b_settinng = false; bool b_mainMenu = true; public bool muted; public string Sound;
void Awake()
{
SoundCheck ();
}
void Start ()
{
if(muted == false)
{
audio.volume = 1;
}
else if(muted == true)
{
audio.volume = 0;
}
audio.Play();
}
void Update(){
if (Input.GetKeyDown(KeyCode.Escape))
Application.Quit();
}
void OnGUI()
{
if(b_mainMenu)
{
if(GUI.Button(new Rect(Screen.width * (2.4f/6.55f),Screen.height * (3.1f/6.3f),Screen.width * (1.8f/6.55f), Screen.height * (0.55f/6.3f)),"Play"))
{
Application.LoadLevel ("Game");
}
if(GUI.Button(new Rect(Screen.width * (2.4f/6.55f),Screen.height * (4.1f/6.3f),Screen.width * (1.8f/6.55f), Screen.height * (0.55f/6.3f)),"Settings"))
{
b_settinng = true;
b_mainMenu = false;
}
}
if (b_settinng) {
if (muted == false) {
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (3.1f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Sound Off")) {
audio.volume = 0;
muted = true;
PlayerPrefs.SetString("Sound", "muted");
}
}
else if (muted == true)
{
if (GUI.Button (new Rect (Screen.width * (2.4f / 6.55f), Screen.height * (3.1f / 6.3f), Screen.width * (1.8f / 6.55f), Screen.height * (0.55f / 6.3f)), "Sound On")) {
audio.volume = 1;
muted = false;
PlayerPrefs.SetString("Sound", "enabled");
}
}
if(GUI.Button(new Rect(Screen.width * (2.4f/6.55f),Screen.height * (3.8f/6.3f),Screen.width * (1.8f/6.55f), Screen.height * (0.55f/6.3f)),"MusicOnOff"))
{
}
if(GUI.Button(new Rect(Screen.width * (2.4f/6.55f),Screen.height * (4.5f/6.3f),Screen.width * (1.8f/6.55f), Screen.height * (0.55f/6.3f)),"Main Menu"))
{
b_settinng = false;
b_mainMenu = true;
}
}
}
public void SoundCheck()
{
Sound = PlayerPrefs.GetString("Sound");
if (Sound == "enabled")
{
muted = false;
}
else if (Sound == "muted")
{
muted = true;
}
}
}
Comment