Compare commits

..

43 Commits

Author SHA1 Message Date
6df7d22c1d Update SpinnerGDD.md 2026-01-06 09:12:05 +00:00
Pasha Bibko
e1e7e83ab3 [Fix] Updated Readme.md 2025-12-04 11:45:23 +00:00
Pasha Bibko
caa7964bc8 [Feature] Improved accesability 2025-12-04 11:32:34 +00:00
Pasha Bibko
df1a1c145e [Feature] Made text move 2025-12-02 15:35:31 +00:00
Pasha Bibko
28280d87cc [Feature] Improved text look 2025-12-02 13:09:10 +00:00
Pasha Bibko
933bf758d4 [Refactor] Reimplemented changing object sizes 2025-12-02 11:26:37 +00:00
Pasha Bibko
9265cbbf99 [Feature] Added text of powerups 2025-11-28 18:10:10 +00:00
Pasha Bibko
569056a9a5 [Refactor] Made other orbitals attached to a parent holder 2025-11-28 17:29:33 +00:00
Pasha Bibko
80be4cc853 [Refactor] Reworked how OrbitalBehaviour behaves under the hood 2025-11-28 17:26:10 +00:00
Pasha Bibko
2d974f5217 [Refactor] General cleanup 2025-11-27 21:54:11 +00:00
Pasha Bibko
201675720c [Refactor] GlobalOrbitalSettings 2025-11-27 21:32:47 +00:00
Pasha Bibko
540cc700e4 Removed jetbrains IDE folder 2025-11-27 21:13:27 +00:00
Pasha Bibko
7f3f2e3e56 Made player modifiers more effective 2025-11-27 15:03:40 +00:00
Pasha Bibko
eccb70da24 Removed bloom modification 2025-11-27 15:00:40 +00:00
Pasha Bibko
37c0ad0991 Small fixes 2025-11-27 13:50:47 +00:00
Pasha Bibko
886622cd6c Made player mods affect the player 2025-11-27 13:34:55 +00:00
Pasha Bibko
055e688df5 Added player mod (powerups) 2025-11-27 11:21:14 +00:00
Pasha Bibko
0dbbf02789 Saved player score with PlayerPrefs 2025-11-27 10:56:36 +00:00
Pasha Bibko
8291d627c1 Made GlobalInput work with mobile 2025-11-27 10:48:09 +00:00
Pasha Bibko
d61a44b1dc Fixed enemy position [Minor] 2025-11-27 10:25:30 +00:00
Pasha Bibko
6ee784bf4e Added high score
Also made player always render on top of enemies
2025-11-25 15:08:04 +00:00
Pasha Bibko
3ae3d3e0d0 Updated Visual Style 2025-11-25 14:55:33 +00:00
Pasha Bibko
c85076c588 Added build folders to .gitignore 2025-11-25 13:32:34 +00:00
Pasha Bibko
8b141dcd93 Added touch support for controls 2025-11-25 13:24:31 +00:00
Pasha Bibko
4fe8132656 Updated rendering
Made +1 score on ring destruction
2025-11-25 13:18:18 +00:00
Pasha Bibko
229b92e0d0 Added score counter 2025-11-25 11:50:23 +00:00
Pasha Bibko
4f3aab0a36 Inverted player death direction
Cause Unity Transform was bugging out
2025-11-25 11:31:51 +00:00
Pasha Bibko
561594d123 Fixed player death launch 2025-11-25 10:14:25 +00:00
Pasha Bibko
e55f6fc92b Made player launch to center on death 2025-11-25 09:46:43 +00:00
Pasha Bibko
80c625ffc8 Made player launch when hit
Needs fixing
2025-11-20 15:44:07 +00:00
Pasha Bibko
07de9b4fe9 Made local time scale 2025-11-20 15:08:40 +00:00
c0ab668a8d Updated link in README.md 2025-11-20 14:26:02 +00:00
Pasha Bibko
88fa7e4ff3 Made respawn when hit centre 2025-11-20 14:21:46 +00:00
Pasha Bibko
19b2c06fab Reduced nausea 2025-11-20 13:34:25 +00:00
Pasha Bibko
70a09156a1 Updated PP rendering 2025-11-20 13:11:02 +00:00
Pasha Bibko
0ded385c97 Added post processing 2025-11-20 13:01:59 +00:00
Pasha Bibko
9bcc2b917c Made circle rendering work 2025-11-20 12:51:12 +00:00
Pasha Bibko
112a88d07e Changed IDE to rider 2025-11-20 11:32:52 +00:00
Pasha Bibko
583f417e24 Added custom collision 2025-11-20 11:15:29 +00:00
Pasha Bibko
0dce94924c Added basic enemy
Does not attack the player currently
2025-11-18 15:52:13 +00:00
Pasha Bibko
321dc1f149 MAde lines look nicer 2025-11-18 15:34:28 +00:00
Pasha Bibko
5811cb20b1 Made lines set width 2025-11-18 14:59:54 +00:00
Pasha Bibko
9e66cf63d1 Made objects stick to rings 2025-11-18 14:37:09 +00:00
37 changed files with 1967 additions and 342 deletions

8
.gitignore vendored
View File

@@ -64,6 +64,14 @@ sysinfo.txt
*.unitypackage.meta *.unitypackage.meta
*.app *.app
# Build output folders
/WebGL-Build
/Win64-Build
/Build
# Rider IDE project files
.idea/
# Crashlytics generated file # Crashlytics generated file
crashlytics-build.properties crashlytics-build.properties

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -1,127 +0,0 @@
fileFormatVersion: 2
guid: fb4bc5a0cfdd0764c993dbdcc33b97c7
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 256
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 1537655665
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,104 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BlackMat
m_Shader: {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainBump:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _BumpScale: 1
- _ColorMask: 15
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _EnableExternalAlpha: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Shininess: 0.2
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _UVSec: 0
- _UseUIAlphaClip: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _Specular: {r: 0, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a7292488fc42280428b7d5183069b410
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,91 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: DarkGreenMat
m_Shader: {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _EnableExternalAlpha: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0, g: 0, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 22eb1f2017d2a15459d4c10b27104270
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -8,7 +8,7 @@ Material:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: GreenMat m_Name: GreenMat
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0} m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0 m_ModifiedSerializedProperties: 0
m_ValidKeywords: [] m_ValidKeywords: []
@@ -23,6 +23,10 @@ Material:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap: - _BumpMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
@@ -61,10 +65,13 @@ Material:
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
m_Ints: [] m_Ints: []
m_Floats: m_Floats:
- PixelSnap: 0
- _BumpScale: 1 - _BumpScale: 1
- _ColorMask: 15
- _Cutoff: 0.5 - _Cutoff: 0.5
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
- _EnableExternalAlpha: 0
- _GlossMapScale: 1 - _GlossMapScale: 1
- _Glossiness: 0.5 - _Glossiness: 0.5
- _GlossyReflections: 1 - _GlossyReflections: 1
@@ -75,9 +82,17 @@ Material:
- _SmoothnessTextureChannel: 0 - _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1 - _SpecularHighlights: 1
- _SrcBlend: 1 - _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _UVSec: 0 - _UVSec: 0
- _UseUIAlphaClip: 0
- _ZWrite: 1 - _ZWrite: 1
m_Colors: m_Colors:
- _Color: {r: 0, g: 1, b: 0, a: 1} - _Color: {r: 1, g: 0.63082826, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []

View File

@@ -8,7 +8,7 @@ Material:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: WhiteMat m_Name: WhiteMat
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0} m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0 m_ModifiedSerializedProperties: 0
m_ValidKeywords: [] m_ValidKeywords: []
@@ -23,6 +23,10 @@ Material:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap: - _BumpMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
@@ -61,10 +65,12 @@ Material:
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
m_Ints: [] m_Ints: []
m_Floats: m_Floats:
- PixelSnap: 0
- _BumpScale: 1 - _BumpScale: 1
- _Cutoff: 0.5 - _Cutoff: 0.5
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
- _EnableExternalAlpha: 0
- _GlossMapScale: 1 - _GlossMapScale: 1
- _Glossiness: 0.5 - _Glossiness: 0.5
- _GlossyReflections: 1 - _GlossyReflections: 1
@@ -80,4 +86,6 @@ Material:
m_Colors: m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1} - _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: a7292488fc42280428b7d5183069b410 guid: 8f49dabfaa53ce947958cc0ed2975b2c
NativeFormatImporter: NativeFormatImporter:
externalObjects: {} externalObjects: {}
mainObjectFileID: 2100000 mainObjectFileID: 2100000

138
Assets/Prefabs/Enemy.prefab Normal file
View File

@@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &345795220292517504
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8341506432217282029}
- component: {fileID: 3813189644929098082}
m_Layer: 0
m_Name: Enemy
m_TagString: Enemy
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8341506432217282029
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 345795220292517504}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.4, y: 0.4, z: 0.4}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 1739635715747709762}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &3813189644929098082
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 345795220292517504}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8a4502a12b7f15246aa7b9cc2d30a862, type: 3}
m_Name:
m_EditorClassIdentifier:
m_OrbitalPosition:
m_AttachedRing: 0
m_DistanceFromCentre: 0
m_DistanceAlongRadius: 0
m_ObjectRadius: 0
m_IsAttachedToRings: 0
m_Behaviour: {fileID: 0}
m_SpinSpeed: 0
--- !u!1 &4804673878835712602
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1739635715747709762}
- component: {fileID: 5026174633141696716}
- component: {fileID: 8577569336777110376}
m_Layer: 0
m_Name: Model
m_TagString: Enemy
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1739635715747709762
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4804673878835712602}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 2}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8341506432217282029}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!23 &5026174633141696716
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4804673878835712602}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a7292488fc42280428b7d5183069b410, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &8577569336777110376
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4804673878835712602}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: ec4a924a38b208240b281bd7983b07b7
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3345171783113818284
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5264147178014863578}
- component: {fileID: 8309954331828580361}
- component: {fileID: 7594426098938812954}
m_Layer: 0
m_Name: Model
m_TagString: PlayerMod
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5264147178014863578
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3345171783113818284}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 6262878747777363767}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &8309954331828580361
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3345171783113818284}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &7594426098938812954
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3345171783113818284}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 8f49dabfaa53ce947958cc0ed2975b2c, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &7367671708397998036
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6262878747777363767}
- component: {fileID: 3305490538895218547}
m_Layer: 0
m_Name: PlayerMod
m_TagString: PlayerMod
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6262878747777363767
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7367671708397998036}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 5264147178014863578}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &3305490538895218547
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7367671708397998036}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 29014004c04338246b2673078c5d8a52, type: 3}
m_Name:
m_EditorClassIdentifier:
m_OrbitalPosition:
m_AttachedRing: 0
m_DistanceFromCentre: 0
m_DistanceAlongRadius: 0
m_ObjectRadius: 0
m_IsAttachedToRings: 0
m_Behaviour: {fileID: 0}
m_SpinSpeed: 0

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 780bf151465173e4a82da2763da54b2b
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,6 +1,6 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1 &948790708724241901 --- !u!1 &7195916227006500999
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@@ -8,51 +8,52 @@ GameObject:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 3163593764429408667} - component: {fileID: 3996593117675006400}
- component: {fileID: 5367498319078075666} - component: {fileID: 291899916163864377}
m_Layer: 0 m_Layer: 0
m_Name: Sprite m_Name: Renderer
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 1
--- !u!4 &3163593764429408667 --- !u!4 &3996593117675006400
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 948790708724241901} m_GameObject: {fileID: 7195916227006500999}
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1.025, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 5052103053041639182} m_Father: {fileID: 5052103053041639182}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &5367498319078075666 --- !u!120 &291899916163864377
SpriteRenderer: LineRenderer:
serializedVersion: 2
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 948790708724241901} m_GameObject: {fileID: 7195916227006500999}
m_Enabled: 1 m_Enabled: 1
m_CastShadows: 0 m_CastShadows: 1
m_ReceiveShadows: 0 m_ReceiveShadows: 1
m_DynamicOccludee: 1 m_DynamicOccludee: 1
m_StaticShadowCaster: 0 m_StaticShadowCaster: 0
m_MotionVectors: 1 m_MotionVectors: 0
m_LightProbeUsage: 1 m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1 m_ReflectionProbeUsage: 0
m_RayTracingMode: 0 m_RayTracingMode: 0
m_RayTraceProcedural: 0 m_RayTraceProcedural: 0
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 0}
m_StaticBatchInfo: m_StaticBatchInfo:
firstSubMesh: 0 firstSubMesh: 0
subMeshCount: 0 subMeshCount: 0
@@ -65,7 +66,7 @@ SpriteRenderer:
m_IgnoreNormalsForChartDetection: 0 m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0 m_ImportantGI: 0
m_StitchLightmapSeams: 1 m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0 m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4 m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5 m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89 m_AutoUVMaxAngle: 89
@@ -73,17 +74,68 @@ SpriteRenderer:
m_SortingLayerID: 0 m_SortingLayerID: 0
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: fb4bc5a0cfdd0764c993dbdcc33b97c7, type: 3} m_Positions:
m_Color: {r: 1, g: 1, b: 1, a: 1} - {x: 0, y: 0, z: 0}
m_FlipX: 0 - {x: 0, y: 0, z: 1}
m_FlipY: 0 m_Parameters:
m_DrawMode: 0 serializedVersion: 3
m_Size: {x: 2, y: 2} widthMultiplier: 1
m_AdaptiveModeThreshold: 0.5 widthCurve:
m_SpriteTileMode: 0 serializedVersion: 2
m_WasSpriteAssigned: 1 m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
colorGradient:
serializedVersion: 2
key0: {r: 1, g: 0, b: 0, a: 1}
key1: {r: 1, g: 1, b: 1, a: 1}
key2: {r: 0, g: 0, b: 0, a: 0}
key3: {r: 0, g: 0, b: 0, a: 0}
key4: {r: 0, g: 0, b: 0, a: 0}
key5: {r: 0, g: 0, b: 0, a: 0}
key6: {r: 0, g: 0, b: 0, a: 0}
key7: {r: 0, g: 0, b: 0, a: 0}
ctime0: 0
ctime1: 65535
ctime2: 0
ctime3: 0
ctime4: 0
ctime5: 0
ctime6: 0
ctime7: 0
atime0: 0
atime1: 65535
atime2: 0
atime3: 0
atime4: 0
atime5: 0
atime6: 0
atime7: 0
m_Mode: 0
m_ColorSpace: 0
m_NumColorKeys: 2
m_NumAlphaKeys: 2
numCornerVertices: 0
numCapVertices: 0
alignment: 0
textureMode: 0
textureScale: {x: 1, y: 1}
shadowBias: 0.5
generateLightingData: 0
m_MaskInteraction: 0 m_MaskInteraction: 0
m_SpriteSortPoint: 0 m_UseWorldSpace: 1
m_Loop: 0
m_ApplyActiveColorSpace: 1
--- !u!1 &8276642441649562681 --- !u!1 &8276642441649562681
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -113,6 +165,6 @@ Transform:
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: 3163593764429408667} - {fileID: 3996593117675006400}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

View File

@@ -153,6 +153,19 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 2895addc317815345b19503bab859a6a, type: 3} m_Script: {fileID: 11500000, guid: 2895addc317815345b19503bab859a6a, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_AttachedRing: 0
m_DistanceAlongCircumference: 0
m_ObjectRadius: 0.1
m_SpinSpeed: 0.1
m_DistanceFromCentre: 0
<ObjectRadiusMultiplier>k__BackingField: 1
<IsAttachedToRings>k__BackingField: 1
m_Renderer: {fileID: 104400500}
m_ScoreText: {fileID: 1501855168}
m_ModifierText: {fileID: 1227804579}
m_DefaultMaterial: {fileID: 2100000, guid: 2b4111cfdf7255c48b4c3dbcf9e202a6, type: 2}
m_FreeHitMaterial: {fileID: 2100000, guid: 22eb1f2017d2a15459d4c10b27104270, type: 2}
m_PostProcessVolume: {fileID: 519420033}
--- !u!4 &104400498 --- !u!4 &104400498
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -218,6 +231,108 @@ MeshFilter:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 104400496} m_GameObject: {fileID: 104400496}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1 &233643650
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 233643654}
- component: {fileID: 233643653}
- component: {fileID: 233643652}
- component: {fileID: 233643651}
m_Layer: 5
m_Name: INGUI-World
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &233643651
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 233643650}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!114 &233643652
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 233643650}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!223 &233643653
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 233643650}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 1
m_Camera: {fileID: 519420031}
m_PlaneDistance: 5
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 0
m_AdditionalShaderChannelsFlag: 0
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!224 &233643654
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 233643650}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1227804578}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!1 &519420028 --- !u!1 &519420028
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -229,6 +344,8 @@ GameObject:
- component: {fileID: 519420032} - component: {fileID: 519420032}
- component: {fileID: 519420031} - component: {fileID: 519420031}
- component: {fileID: 519420029} - component: {fileID: 519420029}
- component: {fileID: 519420034}
- component: {fileID: 519420033}
m_Layer: 0 m_Layer: 0
m_Name: Main Camera m_Name: Main Camera
m_TagString: MainCamera m_TagString: MainCamera
@@ -254,7 +371,7 @@ Camera:
m_Enabled: 1 m_Enabled: 1
serializedVersion: 2 serializedVersion: 2
m_ClearFlags: 2 m_ClearFlags: 2
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0}
m_projectionMatrixMode: 1 m_projectionMatrixMode: 1
m_GateFitMode: 2 m_GateFitMode: 2
m_FOVAxisMode: 0 m_FOVAxisMode: 0
@@ -276,7 +393,7 @@ Camera:
width: 1 width: 1
height: 1 height: 1
near clip plane: 0.3 near clip plane: 0.3
far clip plane: 1000 far clip plane: 25
field of view: 60 field of view: 60
orthographic: 1 orthographic: 1
orthographic size: 5 orthographic size: 5
@@ -303,14 +420,91 @@ Transform:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 519420028} m_GameObject: {fileID: 519420028}
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalPosition: {x: 0, y: 0, z: -10}
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: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1486841466 --- !u!114 &519420033
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 519420028}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8b9a305e18de0c04dbd257a21cd47087, type: 3}
m_Name:
m_EditorClassIdentifier:
sharedProfile: {fileID: 11400000, guid: 176ee39659a078c4cb0e333f2fec4563, type: 2}
isGlobal: 1
blendDistance: 0
weight: 1
priority: 0
--- !u!114 &519420034
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 519420028}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3}
m_Name:
m_EditorClassIdentifier:
volumeTrigger: {fileID: 519420032}
volumeLayer:
serializedVersion: 2
m_Bits: 23
stopNaNPropagation: 1
finalBlitToCameraTarget: 0
antialiasingMode: 3
temporalAntialiasing:
jitterSpread: 0.75
sharpness: 0.25
stationaryBlending: 0.95
motionBlending: 0.85
subpixelMorphologicalAntialiasing:
quality: 2
fastApproximateAntialiasing:
fastMode: 0
keepAlpha: 0
fog:
enabled: 1
excludeSkybox: 1
debugLayer:
lightMeter:
width: 512
height: 256
showCurves: 1
histogram:
width: 512
height: 256
channel: 3
waveform:
exposure: 0.12
height: 256
vectorscope:
size: 256
exposure: 0.12
overlaySettings:
linearDepth: 0
motionColorIntensity: 4
motionGridSize: 64
colorBlindnessType: 0
colorBlindnessStrength: 1
m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2}
m_ShowToolkit: 0
m_ShowCustomSorter: 0
breakBeforeColorGrading: 0
m_BeforeTransparentBundles: []
m_BeforeStackBundles: []
m_AfterStackBundles: []
--- !u!1 &1158970869
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@@ -318,84 +512,334 @@ GameObject:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 1486841468} - component: {fileID: 1158970873}
- component: {fileID: 1486841467} - component: {fileID: 1158970872}
m_Layer: 0 - component: {fileID: 1158970871}
m_Name: Light - component: {fileID: 1158970870}
m_Layer: 5
m_Name: IGUI-Overlay
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 1
--- !u!108 &1486841467 --- !u!114 &1158970870
Light: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1486841466} m_GameObject: {fileID: 1158970869}
m_Enabled: 1 m_Enabled: 1
serializedVersion: 10 m_EditorHideFlags: 0
m_Type: 1 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Shape: 0 m_Name:
m_Color: {r: 1, g: 1, b: 1, a: 1} m_EditorClassIdentifier:
m_Intensity: 1 m_IgnoreReversedGraphics: 1
m_Range: 10 m_BlockingObjects: 0
m_SpotAngle: 30 m_BlockingMask:
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 1
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 4294967295
m_RenderingLayerMask: 1 --- !u!114 &1158970871
m_Lightmapping: 4 MonoBehaviour:
m_LightShadowCasterMode: 0 m_ObjectHideFlags: 0
m_AreaSize: {x: 1, y: 1} m_CorrespondingSourceObject: {fileID: 0}
m_BounceIntensity: 1 m_PrefabInstance: {fileID: 0}
m_ColorTemperature: 6570 m_PrefabAsset: {fileID: 0}
m_UseColorTemperature: 0 m_GameObject: {fileID: 1158970869}
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_Enabled: 1
m_UseBoundingSphereOverride: 0 m_EditorHideFlags: 0
m_UseViewFrustumForShadowCasterCull: 1 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_ShadowRadius: 0 m_Name:
m_ShadowAngle: 0 m_EditorClassIdentifier:
--- !u!4 &1486841468 m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!223 &1158970872
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1158970869}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 0
m_Camera: {fileID: 519420031}
m_PlaneDistance: 5
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 1
m_AdditionalShaderChannelsFlag: 0
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!224 &1158970873
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1158970869}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1501855167}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!1 &1227804577
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1227804578}
- component: {fileID: 1227804580}
- component: {fileID: 1227804579}
- component: {fileID: 1227804581}
m_Layer: 5
m_Name: ModifierText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1227804578
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1227804577}
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: 233643654}
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: 30, y: 30}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1227804579
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1227804577}
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: 0, g: 0, b: 0, 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: 65
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 3
m_MaxSize: 65
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1
m_Text:
--- !u!222 &1227804580
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1227804577}
m_CullTransparentMesh: 1
--- !u!114 &1227804581
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1227804577}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3}
m_Name:
m_EditorClassIdentifier:
m_EffectColor: {r: 1, g: 1, b: 1, a: 1}
m_EffectDistance: {x: 2, y: 2}
m_UseGraphicAlpha: 1
--- !u!1 &1501855166
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1501855167}
- component: {fileID: 1501855169}
- component: {fileID: 1501855168}
m_Layer: 5
m_Name: ScoreDisplay
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1501855167
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1501855166}
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: 1158970873}
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: 5, y: 5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1501855168
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1501855166}
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: 50
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 3
m_MaxSize: 50
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1
m_Text: 0
--- !u!222 &1501855169
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1501855166}
m_CullTransparentMesh: 1
--- !u!1 &1692737941
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1692737944}
- component: {fileID: 1692737943}
- component: {fileID: 1692737942}
m_Layer: 0
m_Name: EventSystem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1692737942
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1692737941}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SendPointerHoverToParent: 1
m_HorizontalAxis: Horizontal
m_VerticalAxis: Vertical
m_SubmitButton: Submit
m_CancelButton: Cancel
m_InputActionsPerSecond: 10
m_RepeatDelay: 0.5
m_ForceModuleActive: 0
--- !u!114 &1692737943
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1692737941}
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 &1692737944
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1486841466} m_GameObject: {fileID: 1692737941}
serializedVersion: 2 serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
@@ -433,10 +877,12 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 1b1a209741ad95946a6f0138e93431c4, type: 3} m_Script: {fileID: 11500000, guid: 1b1a209741ad95946a6f0138e93431c4, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_RadiusSpeed: 4.72 <RadiusSpeed>k__BackingField: 0.5
m_DistanceSpeed: 0.6 <DistanceSpeed>k__BackingField: 0.6
m_GapDistance: 1 <GapDistance>k__BackingField: 1
m_RingPrefab: {fileID: 8276642441649562681, guid: 2b69b065f2beade4d91167a23508e29e, type: 3} <RingPrefab>k__BackingField: {fileID: 8276642441649562681, guid: 2b69b065f2beade4d91167a23508e29e, type: 3}
<EnemyPrefab>k__BackingField: {fileID: 345795220292517504, guid: ec4a924a38b208240b281bd7983b07b7, type: 3}
<ModifierPrefab>k__BackingField: {fileID: 7367671708397998036, guid: 780bf151465173e4a82da2763da54b2b, type: 3}
--- !u!4 &1827131557 --- !u!4 &1827131557
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -457,6 +903,8 @@ SceneRoots:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_Roots: m_Roots:
- {fileID: 1827131557} - {fileID: 1827131557}
- {fileID: 519420032}
- {fileID: 104400498} - {fileID: 104400498}
- {fileID: 1486841468} - {fileID: 519420032}
- {fileID: 1158970873}
- {fileID: 1692737944}
- {fileID: 233643654}

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 3e98e9784b45f4a458500add6468a752 guid: 481e746898a124b4995e38d3ad27eb3d
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@@ -0,0 +1,63 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3}
m_Name: Main Camera Profile
m_EditorClassIdentifier:
settings:
- {fileID: 6234815572536140264}
--- !u!114 &6234815572536140264
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:
active: 1
enabled:
overrideState: 1
value: 1
intensity:
overrideState: 1
value: 10
threshold:
overrideState: 1
value: 0
softKnee:
overrideState: 1
value: 0.5
clamp:
overrideState: 1
value: 35
diffusion:
overrideState: 1
value: 3
anamorphicRatio:
overrideState: 1
value: 0
color:
overrideState: 0
value: {r: 1, g: 1, b: 1, a: 1}
fastMode:
overrideState: 0
value: 0
dirtTexture:
overrideState: 0
value: {fileID: 0}
defaultState: 1
dirtIntensity:
overrideState: 0
value: 0

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 176ee39659a078c4cb0e333f2fec4563
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,46 @@
using System.Collections.Generic;
using UnityEngine;
public class EnemyController : OrbitalBehaviour
{
private static readonly List<EnemyController> Instances = new();
public static void KillAllEnemies()
{
foreach (EnemyController controller in Instances)
{
Destroy(controller.gameObject);
PlayerController.s_PlayerScore++;
}
Instances.Clear();
}
private void Start()
{
Instances.Add(this);
RegisterObject(new OrbitalInitializer
{
DistanceAlongCircumference = Random.Range(0f, Mathf.PI * 2f),
ObjectRadius = 0.1f,
SpinSpeed = 0.7f
});
transform.position = new Vector3(0, 0, -200f);
}
protected override void OnReachCentre()
{
if (BehaviourManager.IsSimulationRunning)
PlayerController.s_PlayerScore++;
Destroy(gameObject);
}
private void OnDestroy()
{
BehaviourManager.UnregisterOrbitalInstance(this);
Instances.Remove(this);
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8a4502a12b7f15246aa7b9cc2d30a862
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,52 @@
using UnityEngine;
public static class GlobalInput
{
private class InputTracker : MonoBehaviour
{
private void Start() => DontDestroyOnLoad(gameObject);
private bool m_IsContact;
private bool m_TouchStartedThisFrame;
private float m_HeldTime;
private static bool IsPressedInternal()
{
return
Input.GetMouseButton(0) ||
Input.anyKey ||
Input.touchCount != 0;
}
private void Update()
{
float tmp = m_HeldTime;
m_HeldTime = 0f;
if (!IsPressedInternal())
{
m_IsContact = false;
return;
}
m_TouchStartedThisFrame = !m_IsContact;
m_IsContact = true;
m_HeldTime = tmp + Time.unscaledDeltaTime;
}
public bool _IsScreenClicked() => m_TouchStartedThisFrame;
public bool _IsScreenHeld() => m_IsContact && m_HeldTime > 0.5f;
}
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] private static void Initialize()
{
GameObject go = new ("InputTracker");
s_InputTracker = go.AddComponent<InputTracker>();
}
private static InputTracker s_InputTracker;
public static bool IsScreenClicked => s_InputTracker._IsScreenClicked();
public static bool IsScreenHeld => s_InputTracker._IsScreenHeld();
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 1f0047bf5b13c1a49ae952046f359333
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,250 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public partial class OrbitalBehaviour
{
public class BehaviourManager : MonoBehaviour
{
private static BehaviourManager Instance;
private Vector3[] m_PrecalculatedPositions;
private bool m_CurrentRingAllowsSpawning;
private bool m_IsSimulationRunning;
private bool m_AllowPlayerInput;
public static bool IsSimulationRunning => Instance.m_IsSimulationRunning;
public static bool AllowPlayerInput => Instance.m_AllowPlayerInput;
private float m_LocalDeltaTimeScale = 1f;
private float m_TimeOfLastRingSpawn;
private int m_LastGeneratedRing;
private readonly Dictionary<int, float> m_Distances = new();
private readonly List<OrbitalBehaviour> m_ObjectInstances = new();
private readonly List<Ring> m_Rings = new();
private OrbitalBehaviour m_PlayerInstance;
private GameObject m_ModiferParent;
private GameObject m_EnemyParent;
private GameObject m_RingParent;
private const int CirclePoints = 100;
public static IEnumerator StartPlayerSpeedupModifier()
{
Instance.m_LocalDeltaTimeScale *= 1.5f;
yield return new WaitForSeconds(10f);
Instance.m_LocalDeltaTimeScale /= 1.5f;
Instance.m_LocalDeltaTimeScale *= 2f;
yield return new WaitForSeconds(5f);
Instance.m_LocalDeltaTimeScale /= 2f;
}
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]
private static void OnApplicationStart()
{
GameObject manager = new("OrbitalManager");
DontDestroyOnLoad(manager);
Instance = manager.AddComponent<BehaviourManager>();
Instance.PrecalculatePositions();
Instance.StartCoroutine(RestartSimulation());
Instance.m_ModiferParent = new GameObject("ModifierParent");
Instance.m_EnemyParent = new GameObject("EnemyHolder");
Instance.m_RingParent = new GameObject("RingHolder");
}
private void PrecalculatePositions()
{
m_PrecalculatedPositions = new Vector3[CirclePoints];
for (int idx = 0; idx < m_PrecalculatedPositions.Length; idx++)
{
m_PrecalculatedPositions[idx] = new Vector3
(
x: Mathf.Cos(Mathf.Deg2Rad * (359f / CirclePoints * idx)),
y: Mathf.Sin(Mathf.Deg2Rad * (359f / CirclePoints * idx)),
z: 0
);
}
}
public static IEnumerator RestartSimulation()
{
Instance.m_IsSimulationRunning = false;
Instance.m_AllowPlayerInput = false;
Instance.m_LocalDeltaTimeScale = 7f;
for (int idx = 0; idx < 100; idx++) // 100 = 5 seconds of fixed updates
{
if (Instance.m_PlayerInstance != null)
{
Instance.m_PlayerInstance.m_AttachedRing = Instance.m_LastGeneratedRing;
}
yield return new WaitForFixedUpdate();
}
PlayerController.AttachPlayer();
foreach (OrbitalBehaviour behaviour in Instance.m_ObjectInstances)
{
behaviour.OnSimulationRestart();
}
yield return new WaitForSeconds(1.3f);
Instance.m_IsSimulationRunning = true;
Instance.m_AllowPlayerInput = true;
Instance.m_LocalDeltaTimeScale = 1f;
}
private void SpawnNewRing()
{
GameObject newRing = Instantiate(Settings.Instance.RingPrefab, m_RingParent.transform);
newRing.transform.localScale = new Vector3(12f, 12f, 1f);
Ring ring = newRing.AddComponent<Ring>();
ring.m_ID = m_LastGeneratedRing + 1;
m_Rings.Add(ring);
LineRenderer lineRenderer = newRing.GetComponentInChildren<LineRenderer>();
lineRenderer.loop = true;
lineRenderer.positionCount = CirclePoints;
lineRenderer.startWidth = 0.1f;
lineRenderer.endWidth = 0.1f;
lineRenderer.material = new Material(Shader.Find("Sprites/Default"));
m_LastGeneratedRing = ring.m_ID;
m_TimeOfLastRingSpawn = Time.time;
m_CurrentRingAllowsSpawning = Random.Range(0, 25) != 0;
if (!m_CurrentRingAllowsSpawning && m_AllowPlayerInput)
{
Instantiate(Settings.Instance.ModifierPrefab, m_ModiferParent.transform);
}
}
private void Update()
{
if (Time.time - m_TimeOfLastRingSpawn > Settings.Instance.GapDistance / m_LocalDeltaTimeScale)
{
SpawnNewRing();
}
List<Ring> toRemove = new();
m_Distances.Clear();
foreach (Ring ring in m_Rings)
{
float diff = (m_LocalDeltaTimeScale * Time.deltaTime) * Settings.Instance.DistanceSpeed;
ring.transform.localScale -= new Vector3(diff, diff, 0f);
LineRenderer lineRenderer = ring.GetComponentInChildren<LineRenderer>();
for (int vert = 0; vert < CirclePoints; vert++)
{
lineRenderer.SetPosition(vert, new Vector3
(
x: m_PrecalculatedPositions[vert].x * ring.transform.localScale.x,
y: m_PrecalculatedPositions[vert].y * ring.transform.localScale.y,
z: 10
));
}
float lerp = (ring.transform.localScale.x - 0.5f) / 4f;
Color c = Color.Lerp(Color.black, Color.white, Mathf.Clamp01(lerp));
if (ring.transform.localScale.x < 0.5f)
{
if (m_IsSimulationRunning)
PlayerController.s_PlayerScore++;
toRemove.Add(ring);
}
lineRenderer.startColor = c;
lineRenderer.endColor = c;
m_Distances[ring.m_ID] = ring.transform.localScale.x;
}
foreach (Ring ring in toRemove)
{
m_Rings.Remove(ring);
Destroy(ring.gameObject);
}
foreach (OrbitalBehaviour orbitalPosition in m_ObjectInstances)
{
if (!orbitalPosition.IsAttachedToRings)
continue;
if (!m_Distances.TryGetValue(orbitalPosition.m_AttachedRing, out float distance))
{
orbitalPosition.m_AttachedRing = m_LastGeneratedRing;
orbitalPosition.OnReachCentre();
continue;
}
orbitalPosition.m_DistanceFromCentre = distance;
float deltaTime = Time.deltaTime * m_LocalDeltaTimeScale;
float movement = deltaTime * Settings.Instance.RadiusSpeed * orbitalPosition.m_SpinSpeed;
orbitalPosition.m_DistanceAlongCircumference += movement;
orbitalPosition.m_DistanceAlongCircumference %= Mathf.PI * 2;
orbitalPosition.transform.position = orbitalPosition.TranslateToVector3();
}
}
private void FixedUpdate()
{
foreach (OrbitalBehaviour orbital in m_ObjectInstances)
{
if (orbital == m_PlayerInstance)
continue;
Vector2 a = orbital.TranslateToVector3();
Vector2 b = m_PlayerInstance.TranslateToVector3();
float d = (a - b).magnitude;
float r1 = m_PlayerInstance.m_ObjectRadius * m_PlayerInstance.ObjectRadiusMultiplier;
float r2 = orbital.m_ObjectRadius * orbital.ObjectRadiusMultiplier;
if (d > (r1 + r2))
continue;
m_PlayerInstance.OnOrbitalCollision(orbital);
orbital.OnOrbitalCollision(m_PlayerInstance);
}
if (Random.Range(0, 15) == 0 && m_AllowPlayerInput && m_CurrentRingAllowsSpawning)
{
Instantiate(Settings.Instance.EnemyPrefab, m_EnemyParent.transform);
}
}
public static void UnregisterOrbitalInstance(OrbitalBehaviour instance)
{
Instance.m_ObjectInstances.Remove(instance);
}
public static void RegisterOrbitalInstance(OrbitalBehaviour instance)
{
instance.m_AttachedRing = Instance.m_LastGeneratedRing; // Connects it to last generated ring
Instance.m_ObjectInstances.Add(instance);
}
public static void SetPlayer(OrbitalBehaviour player)
{
Instance.m_PlayerInstance = player;
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 49460c83aa57cc6478a9366b88bc63e7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,20 +1,16 @@
using UnityEngine; using UnityEngine;
public class GlobalOrbitalSettings : MonoBehaviour public class Settings : MonoBehaviour
{ {
private static GlobalOrbitalSettings Instance = null; public static Settings Instance;
[SerializeField, Range(0f, Mathf.PI * 2)] float m_RadiusSpeed = 2f; [field: SerializeField, Range(0f, Mathf.PI * 2)] public float RadiusSpeed { get; private set; } = 2f;
public static float RadiusSpeed => Instance.m_RadiusSpeed; [field: SerializeField, Range(0f, 2f)] public float DistanceSpeed { get; private set; } = 0.6f;
[field: SerializeField, Range(0f, 1f)] public float GapDistance { get; private set; } = 0.3f;
[SerializeField, Range(0f, 2f)] float m_DistanceSpeed = 0.6f; [field: SerializeField] public GameObject RingPrefab { get; private set; }
public static float DistanceSpeed => Instance.m_DistanceSpeed; [field: SerializeField] public GameObject EnemyPrefab { get; private set; }
[field: SerializeField] public GameObject ModifierPrefab { get; private set; }
[SerializeField, Range(0f, 1f)] float m_GapDistance = 0.3f; private void Start() => Instance = this;
public static float GapDistance => Instance.m_GapDistance;
[SerializeField] GameObject m_RingPrefab;
public static GameObject RingPrefab => Instance.m_RingPrefab;
void Start() => Instance = this;
} }

View File

@@ -1,100 +1,53 @@
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
public class OrbitalPosition public partial class OrbitalBehaviour : MonoBehaviour
{ {
public float DistanceFromCentre = 0; [Header("Orbital Information")]
public float RadiusDistance = 0; [SerializeField] private int m_AttachedRing;
[SerializeField] private float m_DistanceAlongCircumference;
[SerializeField] private float m_ObjectRadius = 0.1f;
[SerializeField] private float m_SpinSpeed = 0.1f;
public Transform owner = null; [SerializeField] private float m_DistanceFromCentre;
public OrbitalPosition(GameObject _owner) [field: SerializeField] protected float ObjectRadiusMultiplier { get; set; } = 1.0f;
[field: SerializeField] protected bool IsAttachedToRings { get; set; } = true;
protected void RegisterObject(OrbitalInitializer init)
{ {
owner = _owner.transform; BehaviourManager.RegisterOrbitalInstance(this);
m_DistanceAlongCircumference = init.DistanceAlongCircumference;
m_ObjectRadius = init.ObjectRadius;
m_SpinSpeed = init.SpinSpeed;
} }
public Vector3 TranslateToVec3() => new public Vector3 TranslateToVector3() => new
( (
x: DistanceFromCentre * Mathf.Cos(RadiusDistance), x: m_DistanceFromCentre * Mathf.Cos(m_DistanceAlongCircumference),
y: DistanceFromCentre * Mathf.Sin(RadiusDistance) y: m_DistanceFromCentre * Mathf.Sin(m_DistanceAlongCircumference),
z: 0
); );
protected virtual void OnOrbitalCollision(OrbitalBehaviour other) { }
protected virtual void OnSimulationRestart() { }
protected virtual void OnReachCentre() { }
protected void AdvanceRing()
{
m_AttachedRing++;
}
} }
public class GlobalOrbitalPositionManager : MonoBehaviour public class OrbitalInitializer
{ {
static GlobalOrbitalPositionManager s_Instance = null; public float DistanceAlongCircumference { get; set; }
private readonly List<OrbitalPosition> m_ObjectInstances = new(); public float ObjectRadius { get; set; }
private readonly List<Transform> m_Rings = new(); public float SpinSpeed { get; set; }
private float m_TimeOfLastRingSpawn = float.NegativeInfinity;
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] private static void OnApplicationStart()
{
GameObject manager = new("GLOBAL ORBITAL MANAGER");
DontDestroyOnLoad(manager);
s_Instance = manager.AddComponent<GlobalOrbitalPositionManager>();
}
public void Update()
{
if (Time.time - m_TimeOfLastRingSpawn > GlobalOrbitalSettings.GapDistance)
{
GameObject newRing = Instantiate(GlobalOrbitalSettings.RingPrefab);
m_Rings.Add(newRing.transform);
newRing.transform.localScale = new Vector3(10f, 10f, 1);
m_TimeOfLastRingSpawn = Time.time;
}
foreach (OrbitalPosition orbitalPosition in m_ObjectInstances)
{
orbitalPosition.DistanceFromCentre = Mathf.Clamp(orbitalPosition.DistanceFromCentre - (Time.deltaTime * GlobalOrbitalSettings.DistanceSpeed), 0f, float.PositiveInfinity);
orbitalPosition.RadiusDistance = (orbitalPosition.RadiusDistance + (Time.deltaTime * GlobalOrbitalSettings.RadiusSpeed)) % (Mathf.PI * 2);
orbitalPosition.owner.position = orbitalPosition.TranslateToVec3();
}
List<Transform> toRemove = new();
foreach (Transform ring in m_Rings)
{
float diff = Time.deltaTime * GlobalOrbitalSettings.DistanceSpeed;
ring.localScale -= new Vector3(diff, diff, 0f);
if (ring.localScale.x < 0)
{
toRemove.Add(ring);
}
}
foreach (Transform ring in toRemove)
{
m_Rings.Remove(ring);
Destroy(ring.gameObject);
}
}
public static void RegisterOrbitalPositionInstance(OrbitalPosition newInstance) =>
s_Instance.m_ObjectInstances.Add(newInstance);
public static void UnregisterOrbitalPositionInstance(OrbitalPosition removedInstance) =>
s_Instance.m_ObjectInstances.Remove(removedInstance);
} }
public abstract class OrbitalPositionBehaviour : MonoBehaviour public class Ring : MonoBehaviour
{ {
protected OrbitalPosition m_OrbitalPosition = null; public int m_ID;
private void Start()
{
m_OrbitalPosition = new OrbitalPosition(gameObject);
GlobalOrbitalPositionManager.RegisterOrbitalPositionInstance(m_OrbitalPosition);
OnStart();
}
private void OnDestroy() =>
GlobalOrbitalPositionManager.UnregisterOrbitalPositionInstance(m_OrbitalPosition);
public abstract void OnStart();
} }

View File

@@ -1,21 +1,228 @@
using System;
using System.Collections; using System.Collections;
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Rendering.PostProcessing;
public class PlayerController : OrbitalPositionBehaviour public class PlayerController : OrbitalBehaviour
{ {
float m_StartPosition; [Header("References")]
[SerializeField] private MeshRenderer m_Renderer;
[SerializeField] private Text m_ScoreText;
[SerializeField] private Text m_ModifierText;
[SerializeField] private Material m_DefaultMaterial;
[SerializeField] private Material m_FreeHitMaterial;
[SerializeField] private PostProcessVolume m_PostProcessVolume;
public override void OnStart() private static PlayerController Instance;
private static int s_HighScore = 20;
public static int s_PlayerScore;
private Vector3 m_SuicidePoint;
private float m_DeathLerp;
private bool m_HasFreeHitActive;
private bool m_HasInvincibility;
private bool m_KillingItself;
private void Start()
{ {
m_OrbitalPosition.DistanceFromCentre = m_StartPosition; s_HighScore = Mathf.Max(s_HighScore, PlayerPrefs.GetInt("HighScore", 0));
Instance = this;
BehaviourManager.SetPlayer(this);
RegisterObject(new OrbitalInitializer
{
ObjectRadius = 0.1f,
SpinSpeed = 0.2f
});
IsAttachedToRings = true;
}
private void UpdateUI()
{
m_ScoreText.text = s_PlayerScore.ToString();
m_ScoreText.color = s_PlayerScore > s_HighScore ? Color.yellow : Color.white;
m_Renderer.material = m_HasFreeHitActive ? m_FreeHitMaterial : m_DefaultMaterial;
}
private void UpdatePlayerInput()
{
if (GlobalInput.IsScreenClicked && BehaviourManager.AllowPlayerInput)
{
AdvanceRing();
}
}
private void UpdateDeathState()
{
if (!m_KillingItself)
return;
transform.position = Vector3.Lerp(m_SuicidePoint, m_SuicidePoint.normalized * 20f, m_DeathLerp);
m_DeathLerp += Time.deltaTime;
} }
public void Update() public void Update()
{ {
if (Input.GetKeyDown(KeyCode.Space)) UpdateUI();
UpdatePlayerInput();
UpdateDeathState();
}
private IEnumerator OnGrowPlayerModifier()
{
transform.localScale *= 1.5f;
ObjectRadiusMultiplier = 1.5f;
yield return new WaitForSecondsRealtime(15f);
transform.localScale /= 1.5f;
ObjectRadiusMultiplier = 1.0f;
}
private IEnumerator OnShrinkPlayerModifier()
{
transform.localScale *= 0.6f;
ObjectRadiusMultiplier = 0.6f;
yield return new WaitForSecondsRealtime(15f);
transform.localScale /= 0.6f;
ObjectRadiusMultiplier = 1.0f;
}
private IEnumerator TriggerInvincibility()
{
m_HasFreeHitActive = false;
m_HasInvincibility = true;
yield return new WaitForSecondsRealtime(1f);
m_HasInvincibility = false;
}
private IEnumerator OnModiferPickup()
{
Vector3 start = TranslateToVector3();
Vector3 direction = Vector3.zero - start;
direction.Normalize();
direction *= 3;
Vector3 end = start + direction;
m_ModifierText.transform.position = start;
Color startColor = m_ModifierText.color;
Color endColor = m_ModifierText.color;
endColor.a = 0;
for (float lerp = 0f; lerp < 1f; lerp += Time.deltaTime / 2f)
{ {
m_OrbitalPosition.DistanceFromCentre += GlobalOrbitalSettings.GapDistance; m_ModifierText.color = Color.Lerp(startColor, endColor, lerp);
m_ModifierText.transform.position = Vector3.Lerp(start, end, lerp);
yield return new WaitForEndOfFrame();
}
m_ModifierText.color = startColor;
m_ModifierText.text = "";
yield return null;
}
protected override void OnOrbitalCollision(OrbitalBehaviour other)
{
if (!IsAttachedToRings)
return;
if (other.CompareTag("Enemy"))
{
if (m_HasInvincibility)
{
return;
}
if (m_HasFreeHitActive)
{
StartCoroutine(TriggerInvincibility());
return;
}
StartCoroutine(BehaviourManager.RestartSimulation());
m_SuicidePoint = transform.position;
m_KillingItself = true;
m_DeathLerp = 0f;
}
else if (other.CompareTag("PlayerMod"))
{
PlayerModifier mod = (PlayerModifier)other;
m_ModifierText.text = PlayerModifier.ModifierToString(mod.Modifier);
StartCoroutine(OnModiferPickup());
switch (mod.Modifier)
{
case PlayerModifier.Modifiers.GainPoints:
s_PlayerScore += 100;
break;
case PlayerModifier.Modifiers.FreeHit:
m_HasFreeHitActive = true;
break;
case PlayerModifier.Modifiers.GrowPlayer:
StartCoroutine(OnGrowPlayerModifier());
break;
case PlayerModifier.Modifiers.ShrinkPlayer:
StartCoroutine(OnShrinkPlayerModifier());
break;
case PlayerModifier.Modifiers.SpeedUp:
StartCoroutine(BehaviourManager.StartPlayerSpeedupModifier());
break;
case PlayerModifier.Modifiers.ClearAllEnemies:
EnemyController.KillAllEnemies();
break;
default:
Debug.Log($"Collision with unknown modifier occured [{mod.Modifier}]");
break;
}
}
else
{
Debug.Log("Unknown collision occured");
} }
} }
protected override void OnSimulationRestart()
{
m_KillingItself = false;
m_Renderer.enabled = true;
m_HasFreeHitActive = false;
m_Renderer.material.color = Color.green;
s_HighScore = Math.Max(s_HighScore, s_PlayerScore);
PlayerPrefs.SetInt("HighScore", s_HighScore);
s_PlayerScore = 0;
}
protected override void OnReachCentre()
{
StartCoroutine(BehaviourManager.RestartSimulation());
}
public static void AttachPlayer()
{
Instance.IsAttachedToRings = true;
}
} }

View File

@@ -0,0 +1,59 @@
using System;
using UnityEngine;
using URandom = UnityEngine.Random;
public class PlayerModifier : OrbitalBehaviour
{
public enum Modifiers
{
GainPoints,
FreeHit,
GrowPlayer,
ShrinkPlayer,
ClearAllEnemies,
SpeedUp
}
public static string ModifierToString(Modifiers mod) =>
mod switch
{
Modifiers.GainPoints => "100 Points",
Modifiers.FreeHit => "Temporary Shield",
Modifiers.GrowPlayer => "Grow Player",
Modifiers.ShrinkPlayer => "Shrink Player",
Modifiers.ClearAllEnemies => "Clear all enemies",
Modifiers.SpeedUp => "Speed Boost",
_ => "NULL"
};
private static readonly System.Random s_RandomGenerator = new();
public Modifiers Modifier { get; private set; }
private static Modifiers GetRandomModifier()
{
Array possibilities = Enum.GetValues(typeof(Modifiers));
return (Modifiers)possibilities.GetValue(s_RandomGenerator.Next(possibilities.Length));
}
private void Start()
{
RegisterObject(new OrbitalInitializer
{
DistanceAlongCircumference = URandom.Range(0f, Mathf.PI * 2f),
ObjectRadius = 0.3f,
SpinSpeed = 1.6f
});
transform.position = new Vector3(0, 0, -100f);
Modifier = GetRandomModifier();
}
protected override void OnOrbitalCollision(OrbitalBehaviour other) => Destroy(gameObject);
protected override void OnReachCentre() => Destroy(gameObject);
private void OnDestroy()
{
BehaviourManager.UnregisterOrbitalInstance(this);
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 29014004c04338246b2673078c5d8a52
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -4,6 +4,7 @@
"com.unity.feature.2d": "2.0.1", "com.unity.feature.2d": "2.0.1",
"com.unity.ide.rider": "3.0.36", "com.unity.ide.rider": "3.0.36",
"com.unity.ide.visualstudio": "2.0.22", "com.unity.ide.visualstudio": "2.0.22",
"com.unity.postprocessing": "3.4.0",
"com.unity.test-framework": "1.1.33", "com.unity.test-framework": "1.1.33",
"com.unity.textmeshpro": "3.0.7", "com.unity.textmeshpro": "3.0.7",
"com.unity.timeline": "1.7.7", "com.unity.timeline": "1.7.7",

View File

@@ -170,6 +170,15 @@
"dependencies": {}, "dependencies": {},
"url": "https://packages.unity.com" "url": "https://packages.unity.com"
}, },
"com.unity.postprocessing": {
"version": "3.4.0",
"depth": 0,
"source": "registry",
"dependencies": {
"com.unity.modules.physics": "1.0.0"
},
"url": "https://packages.unity.com"
},
"com.unity.test-framework": { "com.unity.test-framework": {
"version": "1.1.33", "version": "1.1.33",
"depth": 0, "depth": 0,

View File

@@ -603,11 +603,26 @@ PlayerSettings:
webGLMemoryGeometricGrowthStep: 0.2 webGLMemoryGeometricGrowthStep: 0.2
webGLMemoryGeometricGrowthCap: 96 webGLMemoryGeometricGrowthCap: 96
webGLPowerPreference: 2 webGLPowerPreference: 2
scriptingDefineSymbols: {} scriptingDefineSymbols:
Android: UNITY_POST_PROCESSING_STACK_V2
EmbeddedLinux: UNITY_POST_PROCESSING_STACK_V2
GameCoreXboxOne: UNITY_POST_PROCESSING_STACK_V2
Nintendo Switch: UNITY_POST_PROCESSING_STACK_V2
PS4: UNITY_POST_PROCESSING_STACK_V2
PS5: UNITY_POST_PROCESSING_STACK_V2
QNX: UNITY_POST_PROCESSING_STACK_V2
Stadia: UNITY_POST_PROCESSING_STACK_V2
Standalone: UNITY_POST_PROCESSING_STACK_V2
VisionOS: UNITY_POST_PROCESSING_STACK_V2
WebGL: UNITY_POST_PROCESSING_STACK_V2
XboxOne: UNITY_POST_PROCESSING_STACK_V2
tvOS: UNITY_POST_PROCESSING_STACK_V2
additionalCompilerArguments: {} additionalCompilerArguments: {}
platformArchitecture: {} platformArchitecture: {}
scriptingBackend: {} scriptingBackend:
il2cppCompilerConfiguration: {} Standalone: 0
il2cppCompilerConfiguration:
Standalone: 2
il2cppCodeGeneration: {} il2cppCodeGeneration: {}
managedStrippingLevel: managedStrippingLevel:
EmbeddedLinux: 1 EmbeddedLinux: 1

View File

@@ -3,7 +3,9 @@
--- !u!78 &1 --- !u!78 &1
TagManager: TagManager:
serializedVersion: 2 serializedVersion: 2
tags: [] tags:
- Enemy
- PlayerMod
layers: layers:
- Default - Default
- TransparentFX - TransparentFX

View File

@@ -0,0 +1,16 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &1
MonoBehaviour:
m_ObjectHideFlags: 53
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a287be6c49135cd4f9b2b8666c39d999, type: 3}
m_Name:
m_EditorClassIdentifier:
assetDefaultFramerate: 60
m_DefaultFrameRate: 60

View File

@@ -1,7 +1,6 @@
# Spinner # Spinner
Spinner is a mobile friendly game made for Unit 10 of my game development course. The goal of the game is to get the highest score possible (as shown in the middle of the screen). Dodge the gaps in the rings and collect modifiers (white balls) to help you along your journey.
'Spinner' was made for Unit 10 of UAL Level 3 Extended Diploma
# Resources # Resources
- [Game Design Document](SpinnerGDD.md) - [Game Design Document](SpinnerGDD.md)
- [Play here](pashabibko.itch.io) - [Play here](https://pashabibko.itch.io/spinner)

View File

@@ -4,7 +4,7 @@ This is the game design document (commonly referred to as GDD) for 'Spinner'.
You can view the design board [here](https://miro.com/app/board/uXjVJrLKFaM=/) You can view the design board [here](https://miro.com/app/board/uXjVJrLKFaM=/)
and play the game [here](https://pashabibko.itch.io/). and play the game [here](https://pashabibko.itch.io/).
# **The Mobius Line** # **Spinner**
Your job is to survive as long as possible and score the most ammount of points as you are able. Your job is to survive as long as possible and score the most ammount of points as you are able.
Avoid getting sucked into the middle of the screen or float away from the bounds of the screen whilst Avoid getting sucked into the middle of the screen or float away from the bounds of the screen whilst