Les bons bails

This commit is contained in:
Your Name 2018-03-16 02:00:03 +01:00
parent 87862153d5
commit dd5a812965
8 changed files with 84 additions and 38 deletions

View File

@ -2548,6 +2548,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
setUp: 0 setUp: 0
finish: 0
--- !u!114 &1036252281 --- !u!114 &1036252281
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2589,6 +2590,9 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 30400d87b462847298c93b5dc0412288, type: 3} m_Script: {fileID: 11500000, guid: 30400d87b462847298c93b5dc0412288, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
highScores:
- {fileID: 1714708925}
- {fileID: 0}
chronos: chronos:
- {fileID: 1833852794} - {fileID: 1833852794}
- {fileID: 0} - {fileID: 0}
@ -4797,6 +4801,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
setUp: 0 setUp: 0
finish: 0
--- !u!212 &1718131636 --- !u!212 &1718131636
SpriteRenderer: SpriteRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -7,16 +7,12 @@ public class BikeManager : MonoBehaviour {
[SerializeField] [SerializeField]
public int playerID; // {get; set; } public int playerID; // {get; set; }
// metric system ftw
private float normalSpeed;
// external conf // external conf
private float distanceToRun; private float distanceToRun;
public float Speed {get; set; } public float Speed {get; set; }
private Queue<float> impulses = new Queue<float>();
private float lastTimeImp; private float lastTimeImp;
private float lastTimeDlt; private float lastTimeDlt;
public float maxTimeDlt = 1.0f; public float maxTimeDlt = 1.0f;
@ -27,6 +23,8 @@ public class BikeManager : MonoBehaviour {
private GameManager gm; private GameManager gm;
public bool finished = false;
void Awake() { void Awake() {
vm = gameObject.GetComponent<VideoManager>(); vm = gameObject.GetComponent<VideoManager>();
vm.SetSkin(playerID); vm.SetSkin(playerID);
@ -42,19 +40,14 @@ public class BikeManager : MonoBehaviour {
//taco = gameObject.AddComponent<RAWTachometer>(); //taco = gameObject.AddComponent<RAWTachometer>();
taco = gameObject.AddComponent<PreciseTachometer>(); taco = gameObject.AddComponent<PreciseTachometer>();
taco.SetPlayer(playerID); taco.SetPlayer(playerID);
normalSpeed = distanceToRun / gm.GetRaceNormalTime();
} }
// Update is called once per frame // Update is called once per frame
void Update () { void Update () {
if (taco.GetDistanceRun() < distanceToRun) { }
Speed = taco.GetSpeed();
//vm.speed = Speed / normalSpeed; public float GetSpeed() {
} else { return taco.GetSpeed ();
// Player finished
vm.speed = 1f;
}
} }
public bool LoadingComplete() { public bool LoadingComplete() {

View File

@ -183,16 +183,23 @@ public class GameManager : MonoBehaviour
// TODO: Remove once menus are ok // TODO: Remove once menus are ok
void Update() void Update()
{ {
if (_status == States.LoadingVideo) if (_status == States.LoadingVideo) {
{ Debug.Log (bm1.LoadingComplete () + " " + bm2.LoadingComplete ());
Debug.Log(bm1.LoadingComplete() + " " + bm2.LoadingComplete()); if (bm1.LoadingComplete () && bm2.LoadingComplete ()) {
if (bm1.LoadingComplete() && bm2.LoadingComplete()) Debug.Log ("Videos are set up and ready to go!");
{ _status = States.RaceSetup;
Debug.Log("Videos are set up and ready to go!"); StartCoroutine (SetupRace ());
_status = States.RaceSetup; }
StartCoroutine(SetupRace()); } else if (_status == States.Race) {
} if (bm1.GetProgress () >= 1 && ! bm1.finished) {
} bm1.finished = true;
StartCoroutine(PlayerFinished(0));
}
if (bm2.GetProgress () >= 1 && ! bm2.finished) {
bm2.finished = true;
StartCoroutine(PlayerFinished(1));
}
}
} }
public void LaunchRace() public void LaunchRace()
@ -247,6 +254,25 @@ public class GameManager : MonoBehaviour
hm.SetMessageActive(false); hm.SetMessageActive(false);
} }
IEnumerator PlayerFinished(int playerID)
{
int winner = GetFirst ();
hm.SetMessageActive(true, playerID);
if (winner == playerID) {
hm.SetMessage ("Victoire !", playerID);
} else {
hm.SetMessage ("Arrivé !", playerID);
}
// Timer
yield return new WaitForSeconds(3f);
hm.SetMessageActive(false, playerID);
yield return new WaitForSeconds(2f);
hm.SetHighScore (playerID);
}
IEnumerator LoadGameScene() IEnumerator LoadGameScene()
{ {

View File

@ -6,6 +6,7 @@ using System;
public class HUDManager : MonoBehaviour { public class HUDManager : MonoBehaviour {
public GameObject[] highScores;
public Text[] chronos; public Text[] chronos;
public Text[] firsts; public Text[] firsts;
public Text[] tachometers; public Text[] tachometers;
@ -59,7 +60,7 @@ public class HUDManager : MonoBehaviour {
} }
void UpdateSpeeds(int bikeID) { void UpdateSpeeds(int bikeID) {
float s = gm.GetBikeManager(bikeID).Speed; float s = gm.GetBikeManager(bikeID).GetSpeed();
if (s > maxSpeedsValues[bikeID]) if (s > maxSpeedsValues[bikeID])
maxSpeedsValues[bikeID] = s; maxSpeedsValues[bikeID] = s;
@ -68,13 +69,25 @@ public class HUDManager : MonoBehaviour {
maxSpeeds[bikeID].text = "Max : " + (maxSpeedsValues[bikeID] * 3.6f).ToString("#0.0"); maxSpeeds[bikeID].text = "Max : " + (maxSpeedsValues[bikeID] * 3.6f).ToString("#0.0");
} }
public void SetMessageActive(bool status) { public void SetMessageActive(bool status, int playerID=2) {
Messages[0].SetActive(status); if (playerID > 1) {
// Messages[1].SetActive(status); Messages [0].SetActive (status);
// Messages[1].SetActive(status);
} else {
Messages [playerID].SetActive (status);
}
} }
public void SetMessage(string message) { public void SetMessage(string message, int playerID=2) {
Messages[0].GetComponent<Text>().text = message; if (playerID > 1) {
// Messages[1].GetComponent<Text>().text = message; Messages [0].GetComponent<Text> ().text = message;
// Messages[1].GetComponent<Text>().text = message;
} else {
Messages [playerID].GetComponent<Text> ().text = message;
}
} }
public void SetHighScore(int playerID) {
highScores [playerID].SetActive (true);
}
} }

View File

@ -45,6 +45,9 @@ public abstract class Tachometer : MonoBehaviour {
} }
public float GetPlayerSpeed() { public float GetPlayerSpeed() {
if (GetDistanceRun() >= GameManager.Instance.GetRaceDistance())
return 1f;
return GetSpeed () / normalSpeed; return GetSpeed () / normalSpeed;
} }
@ -58,6 +61,7 @@ public abstract class Tachometer : MonoBehaviour {
void Update() { void Update() {
if (GameManager.Instance.Status != States.Race) if (GameManager.Instance.Status != States.Race)
return; return;
if (Input.GetButtonDown(inputID)) if (Input.GetButtonDown(inputID))
RegisterTic(); RegisterTic();
} }

View File

@ -8,6 +8,7 @@ public class VideoManager : MonoBehaviour {
private VideoPlayer videoPlayer; private VideoPlayer videoPlayer;
public float speed {get; set; } public float speed {get; set; }
public bool setUp = false; public bool setUp = false;
public bool finish = false;
private Tachometer taco; private Tachometer taco;
@ -53,6 +54,10 @@ public class VideoManager : MonoBehaviour {
} }
void Update () { void Update () {
videoPlayer.playbackSpeed = taco.GetPlayerSpeed(); if (!finish) {
videoPlayer.playbackSpeed = taco.GetPlayerSpeed ();
} else {
videoPlayer.playbackSpeed = 1f;
}
} }
} }

View File

@ -23,12 +23,12 @@
}, },
"Vidéos": { "Vidéos": {
0: {"Fin": 67}, 0: {"Fin": 67},
1: {"Fin": 71}, 1: {"Fin": 125},
2: {"Fin": 92}, 2: {"Fin": 90},
3: {"Fin": 93}, 3: {"Fin": 93},
4: {"Fin": 73}, 4: {"Fin": 113},
5: {"Fin": 30}, 5: {"Fin": 72},
6: {"Fin": 113}, 6: {"Fin": 110},
7: {"Fin": 116} 7: {"Fin": 70}
} }
} }

View File

@ -1 +1 @@
{"Items":[{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Tata","transport":0,"timeStr":"0:30:30"},{"pseudo":"Titi","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"}]} {"Items":[{"pseudo":"LK4NOM","transport":0,"timeStr":"0:28:20"},{"pseudo":"LK4NOM","transport":0,"timeStr":"0:28:20"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Tata","transport":0,"timeStr":"0:30:30"},{"pseudo":"Titi","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"},{"pseudo":"Toto","transport":0,"timeStr":"0:30:30"}]}