mirror of
https://github.com/boudji-ludwig-pett/cnam-geometry-dash.git
synced 2025-04-17 18:56:18 +02:00
Compare commits
10 Commits
ed5d3cd222
...
0dbc959c19
Author | SHA1 | Date | |
---|---|---|---|
0dbc959c19 | |||
a070c90e3a | |||
50945f807d | |||
707dee5063 | |||
a5cdd3ada1 | |||
e3e6c9c036 | |||
2c74515778 | |||
78ab70e020 | |||
5766003c75 | |||
e35359f89a |
@ -1,38 +0,0 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using System.IO;
|
||||
using System.Text.Json;
|
||||
|
||||
public class LevelLoader : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
public Text levelNameText;
|
||||
|
||||
void Start()
|
||||
{
|
||||
levelNameText.text = "Coucou";
|
||||
string filePath = "level.json";
|
||||
|
||||
if (File.Exists(filePath))
|
||||
{
|
||||
string json = File.ReadAllText(filePath);
|
||||
Level level = JsonSerializer.Deserialize<Level>(json, new JsonSerializerOptions { PropertyNameCaseInsensitive = true });
|
||||
|
||||
Console.WriteLine($"Name: {level.Name}");
|
||||
Console.WriteLine($"MusicPath: {level.MusicPath}");
|
||||
Console.WriteLine($"TotalJumps: {level.TotalJumps}");
|
||||
Console.WriteLine($"TotalAttempts: {level.TotalAttempts}");
|
||||
Console.WriteLine($"KilledCount: {level.KilledCount}");
|
||||
}
|
||||
else
|
||||
{
|
||||
Console.WriteLine("JSON file not found.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void Update()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
8
Assets/Resources.meta
Normal file
8
Assets/Resources.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6b0d0b1b64df4dd87945cd95cc7484c7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1,6 +1,9 @@
|
||||
{
|
||||
"name": "Back on Track",
|
||||
"music": "",
|
||||
"musicName": "BackOnTrack",
|
||||
"totalJumps": 0,
|
||||
"totalAttempts": 0,
|
||||
"order": 2,
|
||||
"elements": [
|
||||
{
|
||||
"type": "Spike",
|
16
Assets/Resources/Levels/StereoMadness.json
Normal file
16
Assets/Resources/Levels/StereoMadness.json
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"name": "Stereo Madness",
|
||||
"musicName": "StereoMadness",
|
||||
"totalJumps": 0,
|
||||
"totalAttempts": 0,
|
||||
"order": 1,
|
||||
"elements": [
|
||||
{
|
||||
"type": "Spike",
|
||||
"position": {
|
||||
"x": 0,
|
||||
"y": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
7
Assets/Resources/Levels/StereoMadness.json.meta
Normal file
7
Assets/Resources/Levels/StereoMadness.json.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b865ad45000d21465bdcfbbca0225616
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -642,6 +642,50 @@ Transform:
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1832520161
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1832520163}
|
||||
- component: {fileID: 1832520162}
|
||||
m_Layer: 0
|
||||
m_Name: LevelsLoader
|
||||
m_TagString: LevelsLoader
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1832520162
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1832520161}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4c3543e79f987af40bbd4a51c0a334c3, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1832520163
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1832520161}
|
||||
serializedVersion: 2
|
||||
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_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1888054985
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -886,3 +930,4 @@ SceneRoots:
|
||||
- {fileID: 1888054988}
|
||||
- {fileID: 481473977}
|
||||
- {fileID: 948896768}
|
||||
- {fileID: 1832520163}
|
||||
|
@ -5581,6 +5581,7 @@ MonoBehaviour:
|
||||
rigidBody: {fileID: 1267397456}
|
||||
playerObject: {fileID: 1267397455}
|
||||
particle: {fileID: 725779776}
|
||||
levelsLoader: {fileID: 0}
|
||||
isColliding: 1
|
||||
audioSource: {fileID: 1267397461}
|
||||
--- !u!61 &1267397460
|
||||
@ -5642,7 +5643,7 @@ AudioSource:
|
||||
m_audioClip: {fileID: 8300000, guid: 681525f18aa52594aa45865f4c54b61a, type: 3}
|
||||
m_Resource: {fileID: 8300000, guid: 681525f18aa52594aa45865f4c54b61a, type: 3}
|
||||
m_PlayOnAwake: 1
|
||||
m_Volume: 1
|
||||
m_Volume: 0.5
|
||||
m_Pitch: 1
|
||||
Loop: 0
|
||||
Mute: 0
|
||||
|
@ -131,6 +131,7 @@ GameObject:
|
||||
- component: {fileID: 1255459}
|
||||
- component: {fileID: 1255458}
|
||||
- component: {fileID: 1255457}
|
||||
- component: {fileID: 1255460}
|
||||
m_Layer: 5
|
||||
m_Name: Level
|
||||
m_TagString: Untagged
|
||||
@ -202,8 +203,8 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 1170341696}
|
||||
m_TargetAssemblyTypeName: SelectLevelMenu, Assembly-CSharp
|
||||
- m_Target: {fileID: 1255460}
|
||||
m_TargetAssemblyTypeName: LevelNameButton, Assembly-CSharp
|
||||
m_MethodName: PlayLevel
|
||||
m_Mode: 1
|
||||
m_Arguments:
|
||||
@ -252,6 +253,18 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1255455}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &1255460
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1255455}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 3617637b5b720115a8f1a856cb43f8a5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &91128433
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -422,8 +435,8 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: -7.8890953, y: 0}
|
||||
m_SizeDelta: {x: -15.778, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &253164522
|
||||
MonoBehaviour:
|
||||
@ -445,7 +458,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_text: Last
|
||||
m_text: Previous
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
|
||||
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
|
||||
@ -510,7 +523,7 @@ MonoBehaviour:
|
||||
m_VertexBufferAutoSizeReduction: 0
|
||||
m_useMaxVisibleDescender: 1
|
||||
m_pageToDisplay: 1
|
||||
m_margin: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_margin: {x: 0, y: 0, z: -13.6918335, w: 0}
|
||||
m_isUsingLegacyAnimationComponent: 0
|
||||
m_isVolumetricText: 0
|
||||
m_hasFontAssetChanged: 0
|
||||
@ -613,8 +626,8 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 954359121}
|
||||
- component: {fileID: 954359123}
|
||||
- component: {fileID: 954359125}
|
||||
- component: {fileID: 954359124}
|
||||
- component: {fileID: 954359125}
|
||||
m_Layer: 5
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
@ -692,9 +705,10 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 954359120}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4c3543e79f987af40bbd4a51c0a334c3, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: b9d2aa88c034d40f187d6ff84705da65, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
levelsLoader: {fileID: 0}
|
||||
levelNameText: {fileID: 954359124}
|
||||
--- !u!1 &976210033
|
||||
GameObject:
|
||||
@ -708,8 +722,9 @@ GameObject:
|
||||
- component: {fileID: 976210037}
|
||||
- component: {fileID: 976210036}
|
||||
- component: {fileID: 976210035}
|
||||
- component: {fileID: 976210038}
|
||||
m_Layer: 5
|
||||
m_Name: LastLevel
|
||||
m_Name: PreviousButton
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -732,8 +747,8 @@ RectTransform:
|
||||
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: -389, y: 0}
|
||||
m_SizeDelta: {x: 76.7583, y: 51.8448}
|
||||
m_AnchoredPosition: {x: -369.9035, y: 0}
|
||||
m_SizeDelta: {x: 114.9513, y: 51.8448}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &976210035
|
||||
MonoBehaviour:
|
||||
@ -779,9 +794,9 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 1170341696}
|
||||
m_TargetAssemblyTypeName: SelectLevelMenu, Assembly-CSharp
|
||||
m_MethodName: LastLevel
|
||||
- m_Target: {fileID: 976210038}
|
||||
m_TargetAssemblyTypeName: LevelPreviousButton, Assembly-CSharp
|
||||
m_MethodName: PreviousLevel
|
||||
m_Mode: 1
|
||||
m_Arguments:
|
||||
m_ObjectArgument: {fileID: 0}
|
||||
@ -829,6 +844,18 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 976210033}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &976210038
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 976210033}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 2c53cba3260b30d02b79e69a3198546c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &1094616661
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -911,7 +938,7 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 1170341696}
|
||||
- m_Target: {fileID: 0}
|
||||
m_TargetAssemblyTypeName: SelectLevelMenu, Assembly-CSharp
|
||||
m_MethodName: LevelStatsBtn
|
||||
m_Mode: 1
|
||||
@ -973,8 +1000,9 @@ GameObject:
|
||||
- component: {fileID: 1099679060}
|
||||
- component: {fileID: 1099679059}
|
||||
- component: {fileID: 1099679058}
|
||||
- component: {fileID: 1099679061}
|
||||
m_Layer: 5
|
||||
m_Name: Back
|
||||
m_Name: HomeButton
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -1043,9 +1071,9 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 1170341696}
|
||||
m_TargetAssemblyTypeName: SelectLevelMenu, Assembly-CSharp
|
||||
m_MethodName: BackBtn
|
||||
- m_Target: {fileID: 1099679061}
|
||||
m_TargetAssemblyTypeName: LevelHomeButton, Assembly-CSharp
|
||||
m_MethodName: GoToHome
|
||||
m_Mode: 1
|
||||
m_Arguments:
|
||||
m_ObjectArgument: {fileID: 0}
|
||||
@ -1093,6 +1121,18 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1099679056}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &1099679061
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1099679056}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: ef2acea012085a3bb9a981fc334afaec, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &1153106988
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1105,7 +1145,6 @@ GameObject:
|
||||
- component: {fileID: 1153106992}
|
||||
- component: {fileID: 1153106991}
|
||||
- component: {fileID: 1153106990}
|
||||
- component: {fileID: 1153106993}
|
||||
m_Layer: 5
|
||||
m_Name: Canvas
|
||||
m_TagString: Untagged
|
||||
@ -1202,19 +1241,6 @@ Canvas:
|
||||
m_SortingLayerID: 0
|
||||
m_SortingOrder: 0
|
||||
m_TargetDisplay: 0
|
||||
--- !u!114 &1153106993
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1153106988}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 78914afaa50342f4fbc6b2f0d1a6c036, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
levelNameText: {fileID: 0}
|
||||
--- !u!1 &1170341692
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1226,10 +1252,9 @@ GameObject:
|
||||
- component: {fileID: 1170341695}
|
||||
- component: {fileID: 1170341694}
|
||||
- component: {fileID: 1170341693}
|
||||
- component: {fileID: 1170341696}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_TagString: LevelLoader
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
@ -1309,19 +1334,6 @@ Transform:
|
||||
- {fileID: 1153106989}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &1170341696
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1170341692}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 78914afaa50342f4fbc6b2f0d1a6c036, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
levelNameText: {fileID: 0}
|
||||
--- !u!1 &1174740937
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1606,8 +1618,9 @@ GameObject:
|
||||
- component: {fileID: 1364527285}
|
||||
- component: {fileID: 1364527284}
|
||||
- component: {fileID: 1364527283}
|
||||
- component: {fileID: 1364527286}
|
||||
m_Layer: 5
|
||||
m_Name: NextLevel
|
||||
m_Name: NextButton
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -1677,8 +1690,8 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls:
|
||||
- m_Target: {fileID: 1170341696}
|
||||
m_TargetAssemblyTypeName: SelectLevelMenu, Assembly-CSharp
|
||||
- m_Target: {fileID: 1364527286}
|
||||
m_TargetAssemblyTypeName: LevelNextButton, Assembly-CSharp
|
||||
m_MethodName: NextLevel
|
||||
m_Mode: 1
|
||||
m_Arguments:
|
||||
@ -1727,6 +1740,18 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1364527281}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &1364527286
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1364527281}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c34ef065650ba0802be580828cc0d474, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1660057539 &9223372036854775807
|
||||
SceneRoots:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -1,16 +1,16 @@
|
||||
using System.Runtime.Serialization;
|
||||
using UnityEngine;
|
||||
|
||||
[DataContract]
|
||||
[System.Serializable]
|
||||
public class Level
|
||||
{
|
||||
[DataMember]
|
||||
public string Name { get; set; }
|
||||
public string name;
|
||||
public string musicName;
|
||||
public int totalJumps;
|
||||
public int totalAttempts;
|
||||
public int order;
|
||||
|
||||
[DataMember]
|
||||
public string MusicPath { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public int TotalJumps { get; set; }
|
||||
public int TotalAttempts { get; set; }
|
||||
public int KilledCount { get; set; }
|
||||
public static Level CreateFromJSON(string jsonString)
|
||||
{
|
||||
return JsonUtility.FromJson<Level>(jsonString);
|
||||
}
|
||||
}
|
||||
|
57
Assets/Scripts/LevelsLoader.cs
Normal file
57
Assets/Scripts/LevelsLoader.cs
Normal file
@ -0,0 +1,57 @@
|
||||
using UnityEngine;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
|
||||
public class LevelsLoader : MonoBehaviour
|
||||
{
|
||||
public List<Level> levels = new();
|
||||
public Level levelCurrent;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
DontDestroyOnLoad(gameObject);
|
||||
LoadAllLevels();
|
||||
levelCurrent = levels[0];
|
||||
}
|
||||
|
||||
private void LoadAllLevels()
|
||||
{
|
||||
TextAsset[] levelFiles = Resources.LoadAll<TextAsset>("Levels");
|
||||
foreach (TextAsset jsonTextFile in levelFiles)
|
||||
{
|
||||
Level loadedLevel = JsonUtility.FromJson<Level>(jsonTextFile.text);
|
||||
levels.Add(loadedLevel);
|
||||
}
|
||||
levels.Sort((x, y) => x.order.CompareTo(y.order));
|
||||
}
|
||||
|
||||
private void SaveLevelCurrent()
|
||||
{
|
||||
string json = JsonUtility.ToJson(levelCurrent, true);
|
||||
File.WriteAllText(Path.Combine(Application.dataPath, "Resources", "Levels", levelCurrent.name + ".json"), json);
|
||||
}
|
||||
|
||||
public void NextLevel()
|
||||
{
|
||||
int currentIndex = levels.IndexOf(levelCurrent);
|
||||
levelCurrent = levels[(currentIndex + 1) % levels.Count];
|
||||
}
|
||||
|
||||
public void PreviousLevel()
|
||||
{
|
||||
int currentIndex = levels.IndexOf(levelCurrent);
|
||||
levelCurrent = levels[(currentIndex - 1 + levels.Count) % levels.Count];
|
||||
}
|
||||
|
||||
public void IncreaseTotalJumps()
|
||||
{
|
||||
levelCurrent.totalJumps += 1;
|
||||
SaveLevelCurrent();
|
||||
}
|
||||
|
||||
public void IncreaseTotalAttempts()
|
||||
{
|
||||
levelCurrent.totalAttempts += 1;
|
||||
SaveLevelCurrent();
|
||||
}
|
||||
}
|
8
Assets/Scripts/LevelsSelect.meta
Normal file
8
Assets/Scripts/LevelsSelect.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 946cccb716439eccfa13f90e2fe2abe1
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
10
Assets/Scripts/LevelsSelect/LevelHomeButton.cs
Normal file
10
Assets/Scripts/LevelsSelect/LevelHomeButton.cs
Normal file
@ -0,0 +1,10 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
public class LevelHomeButton : MonoBehaviour
|
||||
{
|
||||
public void GoToHome()
|
||||
{
|
||||
SceneManager.LoadScene("HomeScene");
|
||||
}
|
||||
}
|
2
Assets/Scripts/LevelsSelect/LevelHomeButton.cs.meta
Normal file
2
Assets/Scripts/LevelsSelect/LevelHomeButton.cs.meta
Normal file
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ef2acea012085a3bb9a981fc334afaec
|
10
Assets/Scripts/LevelsSelect/LevelNameButton.cs
Normal file
10
Assets/Scripts/LevelsSelect/LevelNameButton.cs
Normal file
@ -0,0 +1,10 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
public class LevelNameButton : MonoBehaviour
|
||||
{
|
||||
public void PlayLevel()
|
||||
{
|
||||
SceneManager.LoadScene("LevelScene");
|
||||
}
|
||||
}
|
2
Assets/Scripts/LevelsSelect/LevelNameButton.cs.meta
Normal file
2
Assets/Scripts/LevelsSelect/LevelNameButton.cs.meta
Normal file
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3617637b5b720115a8f1a856cb43f8a5
|
19
Assets/Scripts/LevelsSelect/LevelNameText.cs
Normal file
19
Assets/Scripts/LevelsSelect/LevelNameText.cs
Normal file
@ -0,0 +1,19 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class LevelNameText : MonoBehaviour
|
||||
{
|
||||
public Text levelNameText;
|
||||
public LevelsLoader levelsLoader;
|
||||
|
||||
public void Start()
|
||||
{
|
||||
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
|
||||
levelNameText.text = levelsLoader.levelCurrent.name;
|
||||
}
|
||||
|
||||
public void Update()
|
||||
{
|
||||
levelNameText.text = levelsLoader.levelCurrent.name;
|
||||
}
|
||||
}
|
2
Assets/Scripts/LevelsSelect/LevelNameText.cs.meta
Normal file
2
Assets/Scripts/LevelsSelect/LevelNameText.cs.meta
Normal file
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b9d2aa88c034d40f187d6ff84705da65
|
16
Assets/Scripts/LevelsSelect/LevelNextButton.cs
Normal file
16
Assets/Scripts/LevelsSelect/LevelNextButton.cs
Normal file
@ -0,0 +1,16 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class LevelNextButton : MonoBehaviour
|
||||
{
|
||||
public LevelsLoader levelsLoader;
|
||||
|
||||
public void Start()
|
||||
{
|
||||
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
|
||||
}
|
||||
|
||||
public void NextLevel()
|
||||
{
|
||||
levelsLoader.NextLevel();
|
||||
}
|
||||
}
|
2
Assets/Scripts/LevelsSelect/LevelNextButton.cs.meta
Normal file
2
Assets/Scripts/LevelsSelect/LevelNextButton.cs.meta
Normal file
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c34ef065650ba0802be580828cc0d474
|
16
Assets/Scripts/LevelsSelect/LevelPreviousButton.cs
Normal file
16
Assets/Scripts/LevelsSelect/LevelPreviousButton.cs
Normal file
@ -0,0 +1,16 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class LevelPreviousButton : MonoBehaviour
|
||||
{
|
||||
public LevelsLoader levelsLoader;
|
||||
|
||||
public void Start()
|
||||
{
|
||||
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
|
||||
}
|
||||
|
||||
public void PreviousLevel()
|
||||
{
|
||||
levelsLoader.PreviousLevel();
|
||||
}
|
||||
}
|
2
Assets/Scripts/LevelsSelect/LevelPreviousButton.cs.meta
Normal file
2
Assets/Scripts/LevelsSelect/LevelPreviousButton.cs.meta
Normal file
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2c53cba3260b30d02b79e69a3198546c
|
@ -1,11 +1,13 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
using System.IO;
|
||||
|
||||
public class PlayerScript : MonoBehaviour
|
||||
public class Player : MonoBehaviour
|
||||
{
|
||||
public Rigidbody2D rigidBody;
|
||||
public GameObject playerObject;
|
||||
public ParticleSystem particle;
|
||||
public LevelsLoader levelsLoader;
|
||||
|
||||
public bool isColliding = true;
|
||||
public AudioSource audioSource;
|
||||
@ -15,6 +17,12 @@ public class PlayerScript : MonoBehaviour
|
||||
|
||||
public void Start()
|
||||
{
|
||||
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
|
||||
levelsLoader.IncreaseTotalAttempts();
|
||||
|
||||
audioSource.clip = Resources.Load<AudioClip>(Path.Combine("Musics", levelsLoader.levelCurrent.musicName));
|
||||
audioSource.Play();
|
||||
|
||||
var mainModule = particle.main;
|
||||
mainModule.simulationSpace = ParticleSystemSimulationSpace.World;
|
||||
particle.transform.parent = null;
|
||||
@ -55,6 +63,7 @@ public class PlayerScript : MonoBehaviour
|
||||
{
|
||||
rigidBody.linearVelocity = new Vector2(rigidBody.linearVelocity.x, 0);
|
||||
rigidBody.AddForce(Vector2.up * 26.6581f, ForceMode2D.Impulse);
|
||||
levelsLoader.IncreaseTotalJumps();
|
||||
}
|
||||
|
||||
private bool IsJumping()
|
@ -1,6 +1,6 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class CameraScript : MonoBehaviour
|
||||
public class PlayerCamera : MonoBehaviour
|
||||
{
|
||||
public GameObject playerObject;
|
||||
|
@ -1,33 +0,0 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
public class SelectLevelMenu : MonoBehaviour
|
||||
{
|
||||
public Text levelNameText;
|
||||
|
||||
public void PlayLevel()
|
||||
{
|
||||
SceneManager.LoadScene("LevelScene");
|
||||
}
|
||||
|
||||
public void BackBtn()
|
||||
{
|
||||
SceneManager.LoadScene("HomeScene");
|
||||
}
|
||||
|
||||
public void LastLevel()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
public void NextLevel()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
public void LevelStatsBtn()
|
||||
{
|
||||
// SceneManager.LoadSceneAsync(?);
|
||||
}
|
||||
}
|
@ -1,2 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 78914afaa50342f4fbc6b2f0d1a6c036
|
@ -17,7 +17,7 @@ class GameManager {
|
||||
|
||||
class Level {
|
||||
- name: String
|
||||
- musicPath: String
|
||||
- musicName: String
|
||||
+ StartLevel()
|
||||
+ EndLevel()
|
||||
+ CheckCompletion(): Boolean
|
||||
|
@ -6,6 +6,7 @@ TagManager:
|
||||
tags:
|
||||
- Kill
|
||||
- Win
|
||||
- LevelsLoader
|
||||
layers:
|
||||
- Default
|
||||
- TransparentFX
|
||||
|
Loading…
x
Reference in New Issue
Block a user