Made game able to be reloaded

This commit is contained in:
2026-01-19 21:04:58 +00:00
parent 6c3e7ca111
commit 59596fead8
6 changed files with 321 additions and 47 deletions

View File

@@ -47,6 +47,7 @@ MonoBehaviour:
<SampleChild>k__BackingField: {fileID: 8853825751094127020, guid: 2cad467961f3cff4984a6f50fc091377,
type: 3}
<GameCanvas>k__BackingField: {fileID: 7700643890201660349}
<DeathInfo>k__BackingField: {fileID: 2058749420242249500}
<WindowTypes>k__BackingField:
- <Typename>k__BackingField: InterfaceOff.BasicWindow
<SpawnWeight>k__BackingField: 10
@@ -58,6 +59,7 @@ MonoBehaviour:
<SpawnWeight>k__BackingField: 2
- <Typename>k__BackingField: InterfaceOff.TriviaWindow
<SpawnWeight>k__BackingField: 4
<SpawnedWindowCount>k__BackingField: 0
<AutoSpawn>k__BackingField: 1
--- !u!1 &2020022267469913571
GameObject:
@@ -92,6 +94,140 @@ Transform:
- {fileID: 1862862063758533551}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2058749420242249500
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5018153252802778155}
m_Layer: 5
m_Name: DeathInfo
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &5018153252802778155
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2058749420242249500}
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:
- {fileID: 450953812910381365}
- {fileID: 7960376733688604242}
m_Father: {fileID: 834552907522022778}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &3563736642392842882
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7960376733688604242}
- component: {fileID: 3987117081994636230}
- component: {fileID: 3457638843023186478}
- component: {fileID: 7487102586556094918}
m_Layer: 5
m_Name: Continue
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7960376733688604242
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3563736642392842882}
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: 5018153252802778155}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: -75}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3987117081994636230
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3563736642392842882}
m_CullTransparentMesh: 1
--- !u!114 &3457638843023186478
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3563736642392842882}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 20
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 2
m_MaxSize: 40
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1
m_Text: 'Press SPACE to continue
'
--- !u!114 &7487102586556094918
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3563736642392842882}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3}
m_Name:
m_EditorClassIdentifier:
m_EffectColor: {r: 0, g: 0, b: 0, a: 1}
m_EffectDistance: {x: 2, y: -2}
m_UseGraphicAlpha: 1
--- !u!1 &4509675489510948023
GameObject:
m_ObjectHideFlags: 0
@@ -123,7 +259,8 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 0
m_Children: []
m_Children:
- {fileID: 5018153252802778155}
m_Father: {fileID: 3614641596273148411}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@@ -208,3 +345,98 @@ MonoBehaviour:
m_BlockingMask:
serializedVersion: 2
m_Bits: 0
--- !u!1 &5990535583955157797
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 450953812910381365}
- component: {fileID: 2263699857257715248}
- component: {fileID: 6436671234165154367}
- component: {fileID: 8550888136129672418}
m_Layer: 5
m_Name: DeathText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &450953812910381365
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5990535583955157797}
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: 5018153252802778155}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2263699857257715248
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5990535583955157797}
m_CullTransparentMesh: 1
--- !u!114 &6436671234165154367
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5990535583955157797}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 100
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 1
m_MaxSize: 100
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1
m_Text: Haha you lost noob
--- !u!114 &8550888136129672418
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5990535583955157797}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3}
m_Name:
m_EditorClassIdentifier:
m_EffectColor: {r: 0, g: 0, b: 0, a: 1}
m_EffectDistance: {x: 2, y: -2}
m_UseGraphicAlpha: 1

View File

@@ -71,9 +71,9 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 1807660236798938897}
- component: {fileID: 1013965729963872153}
- component: {fileID: 7220179918976106526}
- component: {fileID: 9011244016352067911}
- component: {fileID: 1013965729963872153}
m_Layer: 0
m_Name: PlayerReplayer
m_TagString: Untagged
@@ -99,6 +99,24 @@ Transform:
- {fileID: 8852994287323472227}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1013965729963872153
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5082956827802089079}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 42603e4f95b24efa85355a04450c20e2, type: 3}
m_Name:
m_EditorClassIdentifier:
ActiveWindowSpawner: {fileID: 0}
BulletTracerRenderer: {fileID: 1440177105284983216}
BulletTracerStart: {fileID: 5020301824866751461}
BulletTracerEnd: {fileID: 8852994287323472227}
<FrameIndex>k__BackingField: 0
DeathIndices: be000000f8000000eb0100005a0200008f020000
--- !u!20 &7220179918976106526
Camera:
m_ObjectHideFlags: 0
@@ -194,23 +212,6 @@ MonoBehaviour:
m_MipBias: 0
m_VarianceClampScale: 0.9
m_ContrastAdaptiveSharpening: 0
--- !u!114 &1013965729963872153
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5082956827802089079}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 42603e4f95b24efa85355a04450c20e2, type: 3}
m_Name:
m_EditorClassIdentifier:
BulletTracerRenderer: {fileID: 1440177105284983216}
BulletTracerStart: {fileID: 5020301824866751461}
BulletTracerEnd: {fileID: 8852994287323472227}
<FrameIndex>k__BackingField: 0
DeathIndices: be000000f8000000eb0100005a0200008f020000
--- !u!1 &6013909295272487250
GameObject:
m_ObjectHideFlags: 0

View File

@@ -314,6 +314,18 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &447617108 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 1850279079604088768, guid: e29ce1fe47a855c4e907d4312c9e9d6e,
type: 3}
m_PrefabInstance: {fileID: 1758685209}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 83fa400829eb6494796e00cfbb1c5d71, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &466407930
PrefabInstance:
m_ObjectHideFlags: 0
@@ -322,6 +334,11 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 1013965729963872153, guid: 2b0bfd2786fee6740a799a99023f5000,
type: 3}
propertyPath: ActiveWindowSpawner
value:
objectReference: {fileID: 447617108}
- target: {fileID: 1807660236798938897, guid: 2b0bfd2786fee6740a799a99023f5000,
type: 3}
propertyPath: m_LocalPosition.x

View File

@@ -9,12 +9,14 @@ namespace InterfaceOff.WorldScene
private static PlayerController Instance;
private PlayerFrameInfo[] Frames;
[SerializeField] private WindowSpawner ActiveWindowSpawner;
[SerializeField] private LineRenderer BulletTracerRenderer;
[SerializeField] private Transform BulletTracerStart;
[SerializeField] private Transform BulletTracerEnd;
[field: SerializeField] public int FrameIndex { get; private set; }
[SerializeField] private int[] DeathIndices;
private bool PlayerAlive = true;
private float LerpValue;
private void Awake()
@@ -25,17 +27,23 @@ namespace InterfaceOff.WorldScene
}
private void FixedUpdate()
{
if (PlayerAlive)
{
/* Iterates the frame index */
FrameIndex = (FrameIndex + 1) % (Frames.Length - 2);
if (DeathIndices.Contains(FrameIndex))
if (DeathIndices.Contains(FrameIndex) && ActiveWindowSpawner.SpawnedWindowCount > 20)
{
Debug.Log("Possible player death");
ActiveWindowSpawner.StartEndSequence();
PlayerAlive = false;
}
}
}
private void Update()
{
if (PlayerAlive)
{
/* Updates the position according to the lerp */
LerpValue = (LerpValue + Time.deltaTime * 20f) % 1f;
@@ -57,3 +65,4 @@ namespace InterfaceOff.WorldScene
}
}
}
}

View File

@@ -60,7 +60,7 @@ namespace InterfaceOff
/* Default close button closes the window */
public virtual void OnWindowCloseButtonClicked() => DestroyWindow();
protected void DestroyWindow()
public void DestroyWindow()
{
Creator.AlertOfDespawnedWindow();
Destroy(gameObject);

View File

@@ -1,6 +1,7 @@
using System;
using Ext.B83.Unity.Attributes;
using UnityEngine;
using UnityEngine.SceneManagement;
using Random = UnityEngine.Random;
namespace InterfaceOff
@@ -17,7 +18,7 @@ namespace InterfaceOff
{
[field: SerializeField] private GameObject SampleChild { get; set; }
[field: SerializeField] private Canvas GameCanvas { get; set; }
[field: SerializeField] private GameObject DeathInfo { get; set; }
[field: SerializeField] private SpawnableWindowType[] WindowTypes { get; set; }
private int TotalSpawnWeight { get; set; }
@@ -92,6 +93,7 @@ namespace InterfaceOff
private void FixedUpdate()
{
/* Spawns new windows whilst active */
if (AutoSpawn)
{
const int TICKS_PER_SECOND = 20;
@@ -106,17 +108,30 @@ namespace InterfaceOff
SpawnNewRandomWindow();
}
}
/* Else checks if it should reload the scene */
else if (Input.GetKey(KeyCode.Space))
{
int sceneIndex = SceneManager.GetActiveScene().buildIndex;
SceneManager.LoadScene(sceneIndex);
}
}
private void Update()
public void StartEndSequence()
{
if (!AutoSpawn)
/* Destroys all children and stops them from spawning */
AutoSpawn = false;
foreach (Transform child in GameCanvas.transform)
{
if (Input.GetKeyDown(KeyCode.Space))
WindowBase window = child.GetComponent<WindowBase>();
if (DebugUtils.IsNotNull(window))
{
SpawnNewRandomWindow();
}
}
window.DestroyWindow();
}
}
/* Makes the death text visible to the player */
DeathInfo.SetActive(true);
}
}
}