346 lines
7.6 KiB
C#
346 lines
7.6 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.SceneManagement;
|
|
using System;
|
|
|
|
public class Gamestate : MonoBehaviour {
|
|
|
|
// Declare properties
|
|
private static Gamestate instance;
|
|
|
|
private string activeGame = "Count"; // Active level
|
|
|
|
private string activeLevel = "1"; // Active level
|
|
//private string name; // Characters name
|
|
private int score; // Characters Experience Points
|
|
private float scoreProz;
|
|
//private Touch[] touchList;
|
|
private bool calibrate = true;
|
|
private int numberTrials = 4;//48
|
|
private int maxCount = 5;
|
|
private int maxCorrect = 3;
|
|
private bool intro = true;
|
|
private bool tutorial = true;
|
|
private bool music = true;
|
|
private bool animPlaying = false;
|
|
|
|
public struct PlayerData
|
|
{
|
|
public string ID;
|
|
public string level;
|
|
public int score;
|
|
public string game;
|
|
public string date;
|
|
public string time;
|
|
public int attempt_count;
|
|
public int attempt_set;
|
|
public int attempt_add;
|
|
|
|
/*public int x, y;
|
|
|
|
public Coords(int p1, int p2)
|
|
{
|
|
x = p1;
|
|
y = p2;
|
|
}*/
|
|
}
|
|
|
|
private PlayerData pdata;
|
|
|
|
// ---------------------------------------------------------------------------------------------------
|
|
// gamestate()
|
|
// ---------------------------------------------------------------------------------------------------
|
|
// Creates an instance of gamestate as a gameobject if an instance does not exist
|
|
// ---------------------------------------------------------------------------------------------------
|
|
public static Gamestate Instance
|
|
{
|
|
get
|
|
{
|
|
if (instance == null)
|
|
{
|
|
instance = new GameObject("Gamestate").AddComponent<Gamestate>();
|
|
}
|
|
|
|
return instance;
|
|
}
|
|
}
|
|
|
|
// Sets the instance to null when the application quits
|
|
public void OnApplicationQuit()
|
|
{
|
|
instance = null;
|
|
}
|
|
|
|
/*public void createPlayerData() {
|
|
pdata.ID = "Test";
|
|
pdata.game = "Count";
|
|
pdata.level = "1";
|
|
pdata.score = 0;
|
|
pdata.date ="01011999";
|
|
pdata.time="00:00:00";
|
|
pdata.attempt_count=0;
|
|
pdata.attempt_set=0;
|
|
pdata.attempt_add=0;
|
|
|
|
}*/
|
|
|
|
public void setPlayerData(PlayerData pd) {
|
|
pdata.ID = pd.ID;
|
|
pdata.attempt_add = pd.attempt_add;
|
|
pdata.attempt_count = pd.attempt_count;
|
|
pdata.attempt_set=pd.attempt_set;
|
|
pdata.date=pd.date;
|
|
pdata.game=pd.game;
|
|
pdata.level=pd.level;
|
|
pdata.score=pd.score;
|
|
pdata.time=pd.time;
|
|
}
|
|
|
|
// ---------------------------------------------------------------------------------------------------
|
|
|
|
|
|
// ---------------------------------------------------------------------------------------------------
|
|
// startState()
|
|
// ---------------------------------------------------------------------------------------------------
|
|
// Creates a new game state
|
|
// ---------------------------------------------------------------------------------------------------
|
|
public void startState()
|
|
{
|
|
print("startState");
|
|
// Set default properties:
|
|
name = "My Character";
|
|
score = 0;
|
|
|
|
if (!calibrate)
|
|
{
|
|
// Load level 1
|
|
calibrate = true;
|
|
SceneManager.LoadScene("Calibrate");
|
|
} else
|
|
{
|
|
startIntro();
|
|
//SceneManager.LoadScene(activeGame+"1");
|
|
}
|
|
|
|
}
|
|
|
|
public void startIntro()
|
|
{
|
|
print("startIntro");
|
|
// Set default properties:
|
|
name = "My Character";
|
|
score = 0;
|
|
|
|
if (intro)
|
|
{
|
|
// Load level 1
|
|
//intro = false;
|
|
SceneManager.LoadScene("Intro");
|
|
} else
|
|
{
|
|
//if (tutorial) startTutorial();
|
|
//else
|
|
startGame();
|
|
}
|
|
}
|
|
|
|
public void startGame()
|
|
{
|
|
Debug.Log("start activeGame: " + activeGame.ToString());
|
|
SceneManager.LoadScene(activeGame + "1");
|
|
}
|
|
|
|
/*public void startTutorial()
|
|
{
|
|
Debug.Log("start activeGame: " + activeGame.ToString());
|
|
SceneManager.LoadScene("Tutorial");
|
|
}*/
|
|
|
|
public void startScoreScene()
|
|
{
|
|
SceneManager.LoadScene("ScoreScene");
|
|
}
|
|
|
|
public void startOptions()
|
|
{
|
|
SceneManager.LoadScene("OptionScene");
|
|
}
|
|
|
|
public void startEndScene()
|
|
{
|
|
SceneManager.LoadScene("EndScene");
|
|
}
|
|
|
|
public void menuState()
|
|
{
|
|
print("menuState");
|
|
// Set default properties:
|
|
|
|
SceneManager.LoadScene("GameStart");
|
|
//data.savePlayerInfo();
|
|
}
|
|
|
|
public string getLevel()
|
|
{
|
|
return activeLevel;
|
|
}
|
|
|
|
public void setLevel(string newLevel)
|
|
{
|
|
// Set activeLevel to newLevel
|
|
activeLevel = newLevel;
|
|
pdata.level=newLevel;
|
|
//data.setLevel(newLevel);
|
|
}
|
|
|
|
public void setIntro(bool value)
|
|
{
|
|
intro = value;
|
|
}
|
|
public void setTutorial(bool value)
|
|
{
|
|
tutorial = value;
|
|
}
|
|
public void setMusic(bool value)
|
|
{
|
|
music = value;
|
|
}
|
|
|
|
public bool getTutorial()
|
|
{
|
|
return tutorial;
|
|
}
|
|
public bool getIntro()
|
|
{
|
|
return intro;
|
|
}
|
|
public bool getMusic()
|
|
{
|
|
return music;
|
|
}
|
|
public string getGame()
|
|
{
|
|
return activeGame;
|
|
}
|
|
|
|
public void setGame(string newGame)
|
|
{
|
|
// Set activeLevel to newLevel
|
|
activeGame = newGame;
|
|
pdata.game = newGame;
|
|
|
|
//data.setGame(newGame);
|
|
}
|
|
|
|
public void setID(string id)
|
|
{
|
|
pdata.ID=id;
|
|
}
|
|
|
|
public string getID()
|
|
{
|
|
return pdata.ID;
|
|
}
|
|
|
|
public void setGamePoints(int points)
|
|
{
|
|
score = points;
|
|
scoreProz = numberTrials / points;
|
|
//data.setPoints(points);
|
|
}
|
|
|
|
public int getGamePoints()
|
|
{
|
|
return score;
|
|
}
|
|
|
|
public float getGamePointsProz()
|
|
{
|
|
return scoreProz;
|
|
}
|
|
|
|
public int getNumberTrials()
|
|
{
|
|
return numberTrials;
|
|
}
|
|
|
|
public void setNumberTrials(int numTrials)
|
|
{
|
|
// Set activeLevel to newLevel
|
|
numberTrials = numTrials;
|
|
//data.setLevel(newLevel);
|
|
}
|
|
|
|
public int getMaxCount()
|
|
{
|
|
return maxCount;
|
|
}
|
|
|
|
public void setAnimPlaying(bool state)
|
|
{
|
|
this.animPlaying = state;
|
|
}
|
|
|
|
public bool getAnimPlaying()
|
|
{
|
|
return this.animPlaying;
|
|
}
|
|
|
|
public int getMaxCorrect()
|
|
{
|
|
return maxCorrect;
|
|
}
|
|
|
|
public PlayerData GetPlayerData()
|
|
{
|
|
return pdata;
|
|
}
|
|
|
|
public void setDate(string newDate)
|
|
{
|
|
pdata.date=pdata.date + " " + newDate;
|
|
}
|
|
|
|
public string getDate()
|
|
{
|
|
return pdata.level;
|
|
}
|
|
public void setPoints(int points)
|
|
{
|
|
pdata.score=points;
|
|
}
|
|
public int getPoints()
|
|
{
|
|
return pdata.score;
|
|
}
|
|
public void setAttemptCount(int count)
|
|
{
|
|
pdata.attempt_count=count;
|
|
}
|
|
public int getAttemptCount()
|
|
{
|
|
return pdata.attempt_count;
|
|
}
|
|
public void setAttemptSet(int count)
|
|
{
|
|
pdata.attempt_set=count;
|
|
}
|
|
public int getAttemptSet()
|
|
{
|
|
return pdata.attempt_set;
|
|
}
|
|
public void setAttemptAdd(int count)
|
|
{
|
|
pdata.attempt_add=count;
|
|
}
|
|
public int getAttemptAdd()
|
|
{
|
|
return pdata.attempt_add;
|
|
}
|
|
|
|
//public void addTrial(Trial t) {
|
|
// data.tdata.addTrial(t);
|
|
//}
|
|
}
|