add gamemaster canvas

This commit is contained in:
2022-11-20 11:15:11 +01:00
parent 1f823813e0
commit def03954a0
10 changed files with 2188 additions and 77 deletions

4
.gitignore vendored
View File

@@ -205,3 +205,7 @@ Network Trash Folder
Temporary Items Temporary Items
.apdisk .apdisk
### CUSTOM
/Assets/TextMesh Pro.meta
/Assets/TextMesh Pro

View File

@@ -9,6 +9,8 @@ Material:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: Skybox m_Name: Skybox
m_Shader: {fileID: 108, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: 108, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: [] m_ValidKeywords: []
m_InvalidKeywords: m_InvalidKeywords:
- _MAPPING_LATITUDE_LONGITUDE_LAYOUT - _MAPPING_LATITUDE_LONGITUDE_LAYOUT
@@ -19,6 +21,7 @@ Material:
m_CustomRenderQueue: -1 m_CustomRenderQueue: -1
stringTagMap: {} stringTagMap: {}
disabledShaderPasses: [] disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
@@ -120,7 +123,7 @@ Material:
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
- _EnvironmentReflections: 1 - _EnvironmentReflections: 1
- _Exposure: 0.97 - _Exposure: 0.8
- _GlossMapScale: 0 - _GlossMapScale: 0
- _Glossiness: 0 - _Glossiness: 0
- _GlossyReflections: 0 - _GlossyReflections: 0

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 0e23fe57328d4ca89779b491fb194e72
timeCreated: 1668937570

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 220c55da163c4bc381099af8030cc0d5
timeCreated: 1668937570

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 6ab6b46f22ab480fbd1c85d5e8601025
timeCreated: 1668937536

View File

@@ -0,0 +1,129 @@
using System;
using UnityEngine;
using UnityEngine.UI;
namespace Escape_Room_Engine.Engine.Scripts
{
public enum GameState
{
Stopped, Paused, Running
}
public class GameControl : MonoBehaviour
{
private const int InitialTime = 5 * 60;
[SerializeField] private Button startButton, stopButton, pauseButton, resumeButton, addMinuteButton, removeMinuteButton;
[SerializeField] private Text timeText;
[HideInInspector] public GameState gameState = GameState.Stopped;
public float TimeRemaining => _totalTime - _timeElapsed;
private float _timeElapsed, _totalTime;
private void Start()
{
SetGamemasterTimeText(_totalTime);
}
private void Update()
{
// Update time
if (gameState == GameState.Running)
{
if (Time.deltaTime <= TimeRemaining)
{
_timeElapsed += Time.deltaTime;
}
else
{
_timeElapsed = _totalTime;
StopGame();
}
SetGamemasterTimeText(TimeRemaining);
}
// Enable or disable buttons
startButton.interactable = gameState == GameState.Stopped;
stopButton.interactable = gameState != GameState.Stopped;
pauseButton.interactable = gameState == GameState.Running;
resumeButton.interactable = gameState == GameState.Paused;
addMinuteButton.interactable = gameState != GameState.Stopped;
removeMinuteButton.interactable = gameState != GameState.Stopped && TimeRemaining >= 60;
}
#region Time Controls
public void StartGame()
{
gameState = GameState.Running;
_totalTime = InitialTime;
_timeElapsed = 0;
}
public void StopGame()
{
gameState = GameState.Stopped;
}
public void PauseGame()
{
gameState = GameState.Paused;
}
public void ResumeGame()
{
gameState = GameState.Running;
}
/// <summary>
/// Change the allowed time by a specified amount of seconds.
/// </summary>
/// <param name="seconds">The amount of seconds that will be added to the time. Can be negative to remove time.</param>
public void ChangeTime(int seconds)
{
if (_totalTime + seconds >= 0)
{
_totalTime += seconds;
}
}
private void SetGamemasterTimeText(float time)
{
if (timeText != null)
{
timeText.text = TimeToText(time);
}
}
private static string TimeToText(float time)
{
var minutes = (int) (time / 60);
var seconds = (int) Math.Ceiling(time - minutes * 60);
if (seconds == 60)
{
minutes += 1;
seconds = 0;
}
return $"{minutes:D2}:{seconds:D2}";
}
#endregion
public void ExitGame()
{
StopGame();
#if UNITY_STANDALONE
Application.Quit();
#endif
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPlaying = false;
#endif
}
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 676ef7e7d34646dbb24b1978563ab63b
timeCreated: 1668937602

View File

@@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1 m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0} m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0} m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.20880961, g: 0.28436834, b: 0.44897065, a: 1} m_IndirectSpecularColor: {r: 0.13511999, g: 0.18402225, b: 0.29053703, a: 1}
m_UseRadianceAmbientProbe: 0 m_UseRadianceAmbientProbe: 0
--- !u!157 &3 --- !u!157 &3
LightmapSettings: LightmapSettings:
@@ -342,7 +342,7 @@ GameObject:
- component: {fileID: 250613601} - component: {fileID: 250613601}
- component: {fileID: 250613600} - component: {fileID: 250613600}
m_Layer: 0 m_Layer: 0
m_Name: Main Camera m_Name: VR Camera
m_TagString: MainCamera m_TagString: MainCamera
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@@ -1259,6 +1259,133 @@ MonoBehaviour:
m_PlayHapticsOnHoverCanceled: 0 m_PlayHapticsOnHoverCanceled: 0
m_HapticHoverCancelIntensity: 0 m_HapticHoverCancelIntensity: 0
m_HapticHoverCancelDuration: 0 m_HapticHoverCancelDuration: 0
--- !u!1001 &776566806
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 2
m_TransformParent: {fileID: 1568048335}
m_Modifications:
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_Pivot.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_Pivot.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_RootOrder
value: -1
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_AnchorMax.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_AnchorMin.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_SizeDelta.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4522052738963994969, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
propertyPath: m_Name
value: Gamemaster Canvas
objectReference: {fileID: 0}
m_RemovedComponents: []
m_AddedGameObjects: []
m_SourcePrefab: {fileID: 100100000, guid: 6ab6b46f22ab480fbd1c85d5e8601025, type: 3}
--- !u!224 &776566807 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 4522052738963994966, guid: 6ab6b46f22ab480fbd1c85d5e8601025,
type: 3}
m_PrefabInstance: {fileID: 776566806}
m_PrefabAsset: {fileID: 0}
--- !u!1 &832575517 --- !u!1 &832575517
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1309,6 +1436,73 @@ Transform:
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 1 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1247991219
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1247991222}
- component: {fileID: 1247991221}
- component: {fileID: 1247991220}
m_Layer: 0
m_Name: EventSystem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1247991220
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1247991219}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3}
m_Name:
m_EditorClassIdentifier:
m_HorizontalAxis: Horizontal
m_VerticalAxis: Vertical
m_SubmitButton: Submit
m_CancelButton: Cancel
m_InputActionsPerSecond: 10
m_RepeatDelay: 0.5
m_ForceModuleActive: 0
--- !u!114 &1247991221
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1247991219}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3}
m_Name:
m_EditorClassIdentifier:
m_FirstSelected: {fileID: 0}
m_sendNavigationEvents: 1
m_DragThreshold: 10
--- !u!4 &1247991222
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1247991219}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1274381185 --- !u!1 &1274381185
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1416,7 +1610,8 @@ Transform:
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children:
- {fileID: 776566807}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 5 m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -1478,75 +1673,6 @@ Transform:
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 2 m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &1806916438
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_RootOrder
value: 6
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalRotation.w
value: -0.00000044703478
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalRotation.y
value: -1
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: -180
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827904, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5383329221585827911, guid: 02a72e7f56d97334c93a1449eedc9d91,
type: 3}
propertyPath: m_Name
value: Terminal
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 02a72e7f56d97334c93a1449eedc9d91, type: 3}
--- !u!1 &1943716334 --- !u!1 &1943716334
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -1561,7 +1687,7 @@ GameObject:
- component: {fileID: 1943716335} - component: {fileID: 1943716335}
- component: {fileID: 1943716339} - component: {fileID: 1943716339}
m_Layer: 0 m_Layer: 0
m_Name: Test Camera m_Name: Gamemaster Camera
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@@ -1596,7 +1722,7 @@ MonoBehaviour:
m_StopNaN: 0 m_StopNaN: 0
m_Dithering: 0 m_Dithering: 0
m_ClearDepth: 1 m_ClearDepth: 1
m_AllowXRRendering: 1 m_AllowXRRendering: 0
m_RequiresDepthTexture: 0 m_RequiresDepthTexture: 0
m_RequiresColorTexture: 0 m_RequiresColorTexture: 0
m_Version: 2 m_Version: 2
@@ -1633,7 +1759,7 @@ Camera:
height: 1 height: 1
near clip plane: 0.3 near clip plane: 0.3
far clip plane: 1000 far clip plane: 1000
field of view: 100 field of view: 60
orthographic: 0 orthographic: 0
orthographic size: 5 orthographic size: 5
m_Depth: 0 m_Depth: 0
@@ -1659,7 +1785,7 @@ Transform:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1943716334} m_GameObject: {fileID: 1943716334}
m_LocalRotation: {x: 0.24393977, y: -0.0000014284142, z: -8.2816587e-10, w: 0.96979046} m_LocalRotation: {x: 0.24393977, y: -0.0000014284142, z: -8.2816587e-10, w: 0.96979046}
m_LocalPosition: {x: 0, y: 1.8000001, z: 0} m_LocalPosition: {x: 0, y: 3, z: -4}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []