Dave Boyle

Needs some design updates here and there but this is pretty much done at this point

......@@ -5,34 +5,37 @@ using UnityEngine.Networking;
public class AppSettings : Singleton<AppSettings>
{
public bool server;
public CanvasGroup splash;
[Header("Settings")]
public CanvasGroup settings;
public InputField serverIp;
public Toggle isServer;
//public Toggle isServer;
void Awake ()
{
splash.alpha = 1;
}
public bool isServer { get; private set; }
void Start()
{
settings.blocksRaycasts = false;
isServer = !Application.isMobilePlatform;
//isServer = !Application.isEditor;
//if (Application.isMobilePlatform)
//{
// if (!PlayerPrefs.HasKey("serverIp"))
// ShowSettings();
// else
// {
// string ip = PlayerPrefs.GetString("serverIp");
// Finalize(false, ip);
// }
//}
//else
// Finalize(true, string.Empty);
if (!isServer)
{
if (!PlayerPrefs.HasKey("serverIp"))
ShowSettings();
else
{
string ip = PlayerPrefs.GetString("serverIp");
Finalize(false, ip);
}
}
else
Finalize(true, string.Empty);
//if (server)
// Finalize(true, string.Empty);
......@@ -48,27 +51,27 @@ public class AppSettings : Singleton<AppSettings>
//}
if (!PlayerPrefs.HasKey("isServer"))
{
ShowSettings();
}
else
{
bool server = PlayerPrefs.GetString("isServer").ToLower() == "true" ? true : false;
string ip = string.Empty;
//if (!PlayerPrefs.HasKey("isServer"))
//{
// ShowSettings();
//}
//else
//{
// bool server = PlayerPrefs.GetString("isServer").ToLower() == "true" ? true : false;
// string ip = string.Empty;
if (!server && !PlayerPrefs.HasKey("serverIp"))
{
ShowSettings();
}
else if (!server)
{
ip = PlayerPrefs.GetString("serverIp");
Finalize(server, ip);
}
else
Finalize(server, ip);
}
// if (!server && !PlayerPrefs.HasKey("serverIp"))
// {
// ShowSettings();
// }
// else if (!server)
// {
// ip = PlayerPrefs.GetString("serverIp");
// Finalize(server, ip);
// }
// else
// Finalize(server, ip);
//}
Invoke("HideSplash", 3);
}
......@@ -81,10 +84,10 @@ public class AppSettings : Singleton<AppSettings>
public void SaveSettings()
{
bool server = isServer.isOn;
//bool server = isServer.isOn;
string ip = serverIp.text;
Finalize(server, ip);
Finalize(isServer, ip);
}
private void Finalize(bool server, string ip)
......@@ -101,7 +104,7 @@ public class AppSettings : Singleton<AppSettings>
}
PlayerPrefs.SetString("serverIp", ip);
PlayerPrefs.SetString("isServer", server.ToString());
//PlayerPrefs.SetString("isServer", server.ToString());
settings.blocksRaycasts = false;
AppManager.Instance.TweenCanvasGroup(settings, 0, 1);
......@@ -115,16 +118,16 @@ public class AppSettings : Singleton<AppSettings>
{
if (_inSettings) return;
bool server = false;
//bool server = false;
string ip = string.Empty;
if (PlayerPrefs.HasKey("isServer"))
server = PlayerPrefs.GetString("isServer").ToLower() == "true" ? true : false;
//if (PlayerPrefs.HasKey("isServer"))
//server = PlayerPrefs.GetString("isServer").ToLower() == "true" ? true : false;
if (PlayerPrefs.HasKey("serverIp"))
ip = PlayerPrefs.GetString("serverIp");
serverIp.text = ip;
isServer.isOn = server;
//isServer.isOn = server;
_inSettings = true;
settings.blocksRaycasts = true;
......
......@@ -48,6 +48,7 @@ public class MoviePlayNode : MonoBehaviour
public void Drag(UnityEngine.EventSystems.BaseEventData test)
{
print ("dragging");
_isDragging = true;
_canReset = false;
......@@ -74,6 +75,8 @@ public class MoviePlayNode : MonoBehaviour
{
_arrow.CrossFadeColor(_arrowStart, 0.4f, true, false);
_highlight.CrossFadeAlpha(0, 0.4f, true);
_canPlay = true;
}
private bool _canReset = false;
......
using UnityEngine;
using System.Collections;
using UnityEngine.Networking;
public class NetworkManager : UnityEngine.Networking.NetworkManager
{
public override void OnClientDisconnect(NetworkConnection conn)
{
base.OnClientDisconnect(conn);
StopCoroutine("Reconnect");
StartCoroutine(Reconnect());
}
private IEnumerator Reconnect()
{
while (client == null)
{
Debug.Log("Lost connection to server. Trying to reconnect...");
StartClient();
yield return new WaitForSeconds(3);
}
}
}
fileFormatVersion: 2
guid: 813f3b235c0e8f54d81e60d419523fbe
timeCreated: 1467903377
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
......@@ -7,9 +7,17 @@ using UnityEngine.Networking;
public class NetworkUser : NetworkBehaviour
{
public Transform buttonParent;
public GameObject canvas;
public GameObject clientCanvas;
public CanvasGroup timeoutCanvas;
public List<MoviePlayNode> movieButtonNodes;
void Awake()
{
timeoutCanvas.alpha = 0;
timeoutCanvas.interactable = false;
timeoutCanvas.blocksRaycasts = false;
}
void Start()
{
if (!isServer)
......@@ -18,7 +26,7 @@ public class NetworkUser : NetworkBehaviour
}
else
{
Destroy(canvas);
Destroy(clientCanvas);
string path = Application.streamingAssetsPath + "/videoSettings.json";
if (!File.Exists(path))
{
......@@ -55,11 +63,7 @@ public class NetworkUser : NetworkBehaviour
continue;
}
//MoviePlayNode mpn = Instantiate<MoviePlayNode>(thisNode);
thisNode.Initialize(dict["filename"], this);
//mpn.transform.SetParent(buttonParent);
//mpn.transform.localPosition = Vector3.zero;
//mpn.transform.localScale = Vector3.one;
}
}
......@@ -79,11 +83,37 @@ public class NetworkUser : NetworkBehaviour
_files.Add(thisDict);
}
}
private bool _isTimedOut = true;
[ClientRpc]
public void RpcTimeout()
{
_isTimedOut = true;
AppManager.Instance.TweenCanvasGroup(timeoutCanvas, 1, 0.5f);
timeoutCanvas.interactable = true;
timeoutCanvas.blocksRaycasts = true;
}
private void HideTimeout()
{
if (!_isTimedOut) return;
AppManager.Instance.TweenCanvasGroup(timeoutCanvas, 0, 0.5f);
timeoutCanvas.interactable = false;
timeoutCanvas.blocksRaycasts = false;
_isTimedOut = false;
}
void Update ()
{
if (Input.touchCount > 0)
{
CmdResetTimer();
HideTimeout();
}
if (Input.GetKeyDown(KeyCode.Alpha1))
{
......
using UnityEngine;
using System.Collections;
public class Reconnection : MonoBehaviour
{
void Start () {
}
void Update () {
}
}
fileFormatVersion: 2
guid: 9bd24722c46f081429864245b5dcc901
timeCreated: 1467903468
licenseType: Pro
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
......@@ -43,6 +43,9 @@ public class ServerCanvasManager : Singleton<ServerCanvasManager>
AppManager.Instance.TweenCanvasGroup(inUseCanvas, 0, tweenTime);
AppManager.Instance.TweenCanvasGroup(timeoutCanvas, 1, tweenTime);
foreach (NetworkUser user in FindObjectsOfType<NetworkUser>())
user.RpcTimeout();
movieScript.UnloadMovie();
timeoutMovie.UnloadMovie();
timeoutMovie.LoadMovie(true);
......