diff --git a/Assets/Audio/Music/aloe for your snake bite.ogg b/Assets/Audio/Music/aloe for your snake bite.ogg index 0d7890e..3b60d61 100644 --- a/Assets/Audio/Music/aloe for your snake bite.ogg +++ b/Assets/Audio/Music/aloe for your snake bite.ogg @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b26ba297cd0e35fb38556367a5dd75dfe0292caa42cf18bcebd3e5b59c1a756 -size 52297121 +oid sha256:2775dc86ed9c3f5f328753dba59e0d0e0767362a544fad794d5df9a14bf8eef6 +size 26047402 diff --git a/Assets/Audio/Music/no intro aloe for your snake bite.ogg b/Assets/Audio/Music/no intro aloe for your snake bite.ogg index a795d95..c490f4e 100644 --- a/Assets/Audio/Music/no intro aloe for your snake bite.ogg +++ b/Assets/Audio/Music/no intro aloe for your snake bite.ogg @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:661e25c82350a8a4a4d535feeafe8a0521eb0282b3c3ba0ff20378372dba7eb0 -size 46563222 +oid sha256:5f3c5600ee2fbecbc02539c57f0c522bd4c8f5190c9177f10d500525d74e33ba +size 22683288 diff --git a/Assets/Design.asset b/Assets/Design.asset index f503a5a..b7c3ef4 100644 --- a/Assets/Design.asset +++ b/Assets/Design.asset @@ -12,10 +12,11 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b37f4483e8f4f3047b5e67b5118cb74d, type: 3} m_Name: Design m_EditorClassIdentifier: - headOffset: {x: 0, y: 2, z: -22} + headOffset: {x: 0, y: 0, z: -22} + pivotPos: {x: 0, y: 2.8, z: 0} scale: 60 - bounds: {x: 4, y: 3, z: 4} + bounds: {x: 3, y: 2, z: 3} foodValue: 6 - aiIQ: 0.05 + aiIQ: 0.01 aiMaxChances: 12 boxSpring: 13 diff --git a/Assets/GraphX Data.asset b/Assets/GraphX Data.asset index 0109a52..198b943 100644 --- a/Assets/GraphX Data.asset +++ b/Assets/GraphX Data.asset @@ -14,12 +14,16 @@ MonoBehaviour: m_EditorClassIdentifier: foodMesh: {fileID: 4300006, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} arrowMesh: {fileID: 4300000, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} + tongueMesh: {fileID: 4300088, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} bodyMesh: {fileID: 4300004, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} coreMesh: {fileID: 4300070, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} snakeMat: {fileID: 2100000, guid: c1765b22e6a92834ca4c29d79bcfe253, type: 2} unlitMat: {fileID: 2100000, guid: bb5f41eecb5ccc546814746a66914984, type: 2} wetMat: {fileID: 2100000, guid: d584c93390323c84cbdb0665a4a3721a, type: 2} - faceMesh: {fileID: 4300030, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} + controllerMesh: {fileID: 4300000, guid: cb69a79fa4024c943846e5fefb4d90b4, type: 3} + joystickMesh: {fileID: 4300000, guid: c1e013bed503e8f409f9c0ccc42890d4, type: 3} + conArrowMesh: {fileID: 4300000, guid: 825a62388b1ce1040bc1eddefbc5ad23, type: 3} + faceMesh: {fileID: 4300036, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} faceDefault: {fileID: 4300030, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} faceEat: {fileID: 4300010, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} faceEaten: {fileID: 4300036, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} diff --git a/Assets/Materials/Skybox.mat b/Assets/Materials/Skybox.mat new file mode 100644 index 0000000..72dd755 --- /dev/null +++ b/Assets/Materials/Skybox.mat @@ -0,0 +1,84 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Skybox + m_Shader: {fileID: 106, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _SUNDISK_HIGH_QUALITY + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _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_Floats: + - _AtmosphereThickness: 0.91 + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _Exposure: 0.44 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SunDisk: 2 + - _SunSize: 0 + - _SunSizeConvergence: 5.13 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _GroundColor: {r: 1, g: 1, b: 1, a: 1} + - _SkyTint: {r: 0.5623178, g: 0.77599996, b: 0.23357598, a: 1} diff --git a/Assets/Materials/Skybox.mat.meta b/Assets/Materials/Skybox.mat.meta new file mode 100644 index 0000000..da6acd1 --- /dev/null +++ b/Assets/Materials/Skybox.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 00348783977d35d4e83d6bbcbbb2421c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Snake.shader b/Assets/Materials/Snake.shader index 478cda0..0f86e86 100644 --- a/Assets/Materials/Snake.shader +++ b/Assets/Materials/Snake.shader @@ -1,4 +1,6 @@ -Shader "Custom/Snake" +// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' + +Shader "Custom/Snake" { Properties { @@ -60,10 +62,15 @@ if (_Flash > 0) { - i.color = fixed4(1, 1, 1, 1); - return i; + i.color = v.color = fixed4(1, 1, 1, 1); + // return i; } + fixed3 worldPos = mul(unity_ObjectToWorld, v.position).xyz; + fixed3 viewDir = normalize(UnityWorldSpaceViewDir(worldPos)); + fixed4 rimColor = fixed4(1, 1, 1, 1); + fixed rimStr = 1; + // if mesh = snake green (for snake head) if (i.color.g > 0.5 && i.color.r < 0.5) { @@ -81,7 +88,8 @@ } // Decay - i.color *= 1 - ((half)id / 729); + float decay = 1 - ((half)id / 729); + i.color *= decay; if (id == _JustAte) { @@ -90,8 +98,28 @@ // Alpha Fix i.color.a = 1; + + // view lighting for depth clarity + fixed camDist = distance(worldPos / 7, -normalize(_WorldSpaceCameraPos)); + // camDist = 30 - camDist; + // clamp(0 + camDist / 20, 0, 1); + rimStr = clamp(camDist, 0, 1); + i.color = lerp(fixed4(0.26, 0.2, 0.23, 1), i.color, rimStr); + + rimColor = fixed4(1, 0.95, 0.75, 1); + rimStr *= decay; } + // Rim lighting + fixed rim = 1.0 - saturate(dot (normalize(viewDir), i.normal)); + i.color = lerp(i.color, rimColor, rim * rim * rim * rimStr); + + if (v.color.r == 1 && v.color.g == 1 && v.color.b == 1) + { + fixed s = (1 + sin(_Time.x * 800)) / 2; + fixed3 strobe = normalize(fixed3(1 - s, s, 1 - s)); + i.color = fixed4(strobe, 1); + } return i; } diff --git a/Assets/Materials/Wet.shader b/Assets/Materials/Wet.shader index 0203fa0..db20962 100644 --- a/Assets/Materials/Wet.shader +++ b/Assets/Materials/Wet.shader @@ -48,7 +48,13 @@ o.normal = UnityObjectToWorldNormal(v.normal); fixed4 base = fixed4(1, 1, 1, 1); - o.color = base * 0.1 * clamp(dot(o.normal, UnityWorldSpaceViewDir(o.vertex)), 0, 1); + fixed3 worldPos = mul(unity_ObjectToWorld, v.vertex).xyz; + fixed3 viewDir = normalize(UnityWorldSpaceViewDir(worldPos)); + // o.color = base * clamp(dot(o.normal, -viewDir), 0, 0.2); + + // Rim lighting + fixed rim = 1.0 - saturate(dot (normalize(viewDir), o.normal)); + o.color = base * rim * rim * 0.2; return o; } diff --git a/Assets/Scenes/Main.unity b/Assets/Scenes/Main.unity index 97a0cc3..9a29eea 100644 --- a/Assets/Scenes/Main.unity +++ b/Assets/Scenes/Main.unity @@ -26,7 +26,7 @@ RenderSettings: m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} - m_SkyboxMaterial: {fileID: 0} + m_SkyboxMaterial: {fileID: 2100000, guid: 00348783977d35d4e83d6bbcbbb2421c, type: 2} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 @@ -251,7 +251,7 @@ MonoBehaviour: lineCount: 3 pageCount: 1 materialCount: 1 - m_havePropertiesChanged: 0 + m_havePropertiesChanged: 1 m_isUsingLegacyAnimationComponent: 0 m_isVolumetricText: 0 m_spriteAnimator: {fileID: 0} @@ -527,6 +527,211 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 42838980} m_Mesh: {fileID: 0} +--- !u!1 &61898113 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 61898118} + - component: {fileID: 61898117} + - component: {fileID: 61898116} + - component: {fileID: 61898115} + - component: {fileID: 61898114} + m_Layer: 0 + m_Name: Text Track (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!114 &61898114 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 61898113} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -806885394, guid: 89f0137620f6af44b9ba852b4190e64e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Snake in a Box + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3821b3a54195a0844aaeb18b65cd5e63, type: 2} + m_sharedMaterial: {fileID: 21898195224422272, guid: 3821b3a54195a0844aaeb18b65cd5e63, + type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 37.3 + m_fontSizeBase: 37.3 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 4100 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 5 + m_wordSpacing: 5 + m_lineSpacing: 5.15 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: 0 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 0 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_textInfo: + textComponent: {fileID: 61898114} + characterCount: 14 + spriteCount: 0 + spaceCount: 3 + wordCount: 4 + linkCount: 0 + lineCount: 3 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 1 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 1 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_renderer: {fileID: 61898117} + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_maskType: 0 +--- !u!222 &61898115 +CanvasRenderer: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 61898113} + m_CullTransparentMesh: 0 +--- !u!33 &61898116 +MeshFilter: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 61898113} + m_Mesh: {fileID: 0} +--- !u!23 &61898117 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 61898113} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 21898195224422272, guid: 3821b3a54195a0844aaeb18b65cd5e63, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 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 +--- !u!224 &61898118 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 61898113} + m_LocalRotation: {x: 0.16284245, y: -0.30763045, z: 0.05352413, w: 0.93593854} + m_LocalPosition: {x: 0, y: 0, z: -5.59} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1554483892} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 19.74, y: -36.39, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 12.91, y: 3.55} + m_SizeDelta: {x: 10.1, y: 1} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &79236691 GameObject: m_ObjectHideFlags: 0 @@ -544,7 +749,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &79236692 Transform: m_ObjectHideFlags: 0 @@ -553,7 +758,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 79236691} m_LocalRotation: {x: 0.007157867, y: 0.7070706, z: 0.007157867, w: 0.7070706} - m_LocalPosition: {x: 4.626, y: -0.25, z: 4.31} + m_LocalPosition: {x: 3.626, y: -1.3, z: 3.88} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8339389} @@ -847,7 +1052,7 @@ RectTransform: 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: 10, y: 5} + m_SizeDelta: {x: 7, y: 5} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &202625282 MonoBehaviour: @@ -867,7 +1072,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: '000 / 000 + m_text: '100% ^-^' m_isRightToLeft: 0 @@ -897,8 +1102,8 @@ MonoBehaviour: m_outlineColor: serializedVersion: 2 rgba: 4278190080 - m_fontSize: 20 - m_fontSizeBase: 20 + m_fontSize: 12 + m_fontSizeBase: 12 m_fontWeight: 400 m_enableAutoSizing: 0 m_fontSizeMin: 18 @@ -908,14 +1113,14 @@ MonoBehaviour: m_isAlignmentEnumConverted: 1 m_characterSpacing: 2 m_wordSpacing: 0 - m_lineSpacing: 80 + m_lineSpacing: 147.58 m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 m_enableWordWrapping: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 - m_firstOverflowCharacterIndex: 10 + m_firstOverflowCharacterIndex: 5 m_linkedTextComponent: {fileID: 0} m_isLinkedTextComponent: 0 m_isTextTruncated: 0 @@ -938,10 +1143,10 @@ MonoBehaviour: m_margin: {x: 0, y: 0, z: 0, w: 0} m_textInfo: textComponent: {fileID: 202625282} - characterCount: 13 + characterCount: 8 spriteCount: 0 - spaceCount: 3 - wordCount: 3 + spaceCount: 1 + wordCount: 2 linkCount: 0 lineCount: 2 pageCount: 1 @@ -1248,7 +1453,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 315596727} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 3.25, y: 0, z: -0.010000229} + m_LocalPosition: {x: 2.6, y: 0, z: -0.010000229} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 611823982} @@ -1457,7 +1662,9 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 851285687} - {fileID: 1201621561} + - {fileID: 873056598} m_Father: {fileID: 1796811813} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -1471,7 +1678,7 @@ MeshRenderer: m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 1 - m_DynamicOccludee: 1 + m_DynamicOccludee: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 @@ -1715,6 +1922,7 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 1554483892} - {fileID: 963194228} m_Father: {fileID: 0} m_RootOrder: 0 @@ -1735,11 +1943,219 @@ MonoBehaviour: main: {fileID: 1796811812} disconnected: {fileID: 1638248270} head: {fileID: 963194228} + hangingRod: {fileID: 1554483892} remote: 0 controllerRot: {x: 0, y: 0, z: 0, w: 1} + inputRot: {x: 0, y: 0, z: 0, w: 1} + controllerPos: {x: 0, y: 0, z: 0} boxShake: {x: 0, y: 0, z: 0} boxOffset: {x: 0, y: 0, z: 0} ready: 0 +--- !u!1 &434051732 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 434051737} + - component: {fileID: 434051736} + - component: {fileID: 434051735} + - component: {fileID: 434051734} + - component: {fileID: 434051733} + m_Layer: 0 + m_Name: Text Track (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!114 &434051733 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 434051732} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -806885394, guid: 89f0137620f6af44b9ba852b4190e64e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Snake in a Box + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3821b3a54195a0844aaeb18b65cd5e63, type: 2} + m_sharedMaterial: {fileID: 21898195224422272, guid: 3821b3a54195a0844aaeb18b65cd5e63, + type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294902015 + m_fontColor: {r: 1, g: 0, b: 1, a: 1} + m_enableVertexGradient: 0 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 37.3 + m_fontSizeBase: 37.3 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 4100 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 5 + m_wordSpacing: 5 + m_lineSpacing: 5.15 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: 0 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 0 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_textInfo: + textComponent: {fileID: 434051733} + characterCount: 14 + spriteCount: 0 + spaceCount: 3 + wordCount: 4 + linkCount: 0 + lineCount: 3 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 1 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 1 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_renderer: {fileID: 434051736} + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_maskType: 0 +--- !u!222 &434051734 +CanvasRenderer: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 434051732} + m_CullTransparentMesh: 0 +--- !u!33 &434051735 +MeshFilter: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 434051732} + m_Mesh: {fileID: 0} +--- !u!23 &434051736 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 434051732} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 21898195224422272, guid: 3821b3a54195a0844aaeb18b65cd5e63, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 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 +--- !u!224 &434051737 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 434051732} + m_LocalRotation: {x: 0.16284245, y: -0.30763045, z: 0.05352413, w: 0.93593854} + m_LocalPosition: {x: 0, y: 0, z: -5.5000005} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1554483892} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 19.74, y: -36.39, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 12.929999, y: 3.55} + m_SizeDelta: {x: 10.1, y: 1} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &434999704 GameObject: m_ObjectHideFlags: 0 @@ -1843,7 +2259,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 462344508} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 1.75, y: 0, z: -0.010000229} + m_LocalPosition: {x: 1.3, y: 0, z: -0.010000229} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 232198205} @@ -2032,7 +2448,7 @@ MonoBehaviour: lineCount: 2 pageCount: 1 materialCount: 1 - m_havePropertiesChanged: 0 + m_havePropertiesChanged: 1 m_isUsingLegacyAnimationComponent: 0 m_isVolumetricText: 0 m_spriteAnimator: {fileID: 0} @@ -2890,7 +3306,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 706504448} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -1.75, y: 0, z: -0.010000229} + m_LocalPosition: {x: -1.3, y: 0, z: -0.010000229} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1306510285} @@ -2969,7 +3385,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 766831859} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -3.25, y: 0, z: -0.010000229} + m_LocalPosition: {x: -2.6, y: 0, z: -0.010000229} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1677932697} @@ -3115,7 +3531,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &850212508 Transform: m_ObjectHideFlags: 0 @@ -3123,13 +3539,14 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 850212507} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalRotation: {x: 0.16284245, y: -0.30763045, z: 0.05352413, w: 0.93593854} + m_LocalPosition: {x: 0.538, y: 0.28, z: -0.362} m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] + m_Children: + - {fileID: 1825209467} m_Father: {fileID: 963194228} m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_LocalEulerAnglesHint: {x: 19.74, y: -36.39, z: 0} --- !u!20 &850212509 Camera: m_ObjectHideFlags: 0 @@ -3140,7 +3557,7 @@ Camera: m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 - m_BackGroundColor: {r: 0.17156704, g: 0.13550195, b: 0.2735849, a: 1} + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} @@ -3154,9 +3571,9 @@ Camera: height: 1 near clip plane: 0.1 far clip plane: 3000 - field of view: 60 - orthographic: 0 - orthographic size: 5 + field of view: 17.3 + orthographic: 1 + orthographic size: 11.41 m_Depth: 1 m_CullingMask: serializedVersion: 2 @@ -3172,6 +3589,160 @@ Camera: m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 +--- !u!1 &851285686 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 851285687} + - component: {fileID: 851285689} + - component: {fileID: 851285688} + m_Layer: 0 + m_Name: pivot + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &851285687 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 851285686} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.1, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 351576464} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &851285688 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 851285686} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 1 + m_DynamicOccludee: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: bb5f41eecb5ccc546814746a66914984, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 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 +--- !u!33 &851285689 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 851285686} + m_Mesh: {fileID: 4300080, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} +--- !u!1 &873056597 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 873056598} + - component: {fileID: 873056600} + - component: {fileID: 873056599} + m_Layer: 0 + m_Name: Wet + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &873056598 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 873056597} + 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_Children: [] + m_Father: {fileID: 351576464} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &873056599 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 873056597} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 1 + m_DynamicOccludee: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d584c93390323c84cbdb0665a4a3721a, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 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 +--- !u!33 &873056600 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 873056597} + m_Mesh: {fileID: 4300090, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} --- !u!1 &888073833 GameObject: m_ObjectHideFlags: 0 @@ -3308,7 +3879,7 @@ MonoBehaviour: lineCount: 2 pageCount: 1 materialCount: 1 - m_havePropertiesChanged: 0 + m_havePropertiesChanged: 1 m_isUsingLegacyAnimationComponent: 0 m_isVolumetricText: 0 m_spriteAnimator: {fileID: 0} @@ -3482,7 +4053,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 915284777} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 4.51} + m_LocalPosition: {x: 0, y: 0, z: 3.51} m_LocalScale: {x: 1.02, y: 1.02, z: 1.02} m_Children: [] m_Father: {fileID: 1510915030} @@ -3902,7 +4473,7 @@ Camera: m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 - m_BackGroundColor: {r: 0.17156704, g: 0.13550195, b: 0.2735849, a: 1} + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} @@ -3942,12 +4513,12 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 963194225} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -16} - m_LocalScale: {x: 1, y: 1, z: 1} + m_LocalPosition: {x: 0, y: 3.54, z: -22} + m_LocalScale: {x: 60, y: 60, z: 60} m_Children: - {fileID: 850212508} m_Father: {fileID: 416451006} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &963194229 MonoBehaviour: @@ -4023,7 +4594,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &965477373 Transform: m_ObjectHideFlags: 0 @@ -4032,8 +4603,8 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 965477372} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -1.94, y: -1.99, z: 9.22} - m_LocalScale: {x: 1, y: 1, z: 1} + m_LocalPosition: {x: -1.56, y: -1.35, z: 7.22} + m_LocalScale: {x: 0.666, y: 0.666, z: 0.666} m_Children: - {fileID: 2065174152} - {fileID: 485926733} @@ -4115,7 +4686,7 @@ RectTransform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 997515806} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 8.929999} + m_LocalPosition: {x: 0, y: 0, z: 6.93} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1510915030} @@ -4123,8 +4694,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: 0, y: 0.78} - m_SizeDelta: {x: 9, y: 1} + m_AnchoredPosition: {x: 0, y: 1.64} + m_SizeDelta: {x: 7, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &997515808 MonoBehaviour: @@ -4144,7 +4715,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: Aloe for your snake bite + m_text: m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 3821b3a54195a0844aaeb18b65cd5e63, type: 2} m_sharedMaterial: {fileID: 21898195224422272, guid: 3821b3a54195a0844aaeb18b65cd5e63, @@ -4172,8 +4743,8 @@ MonoBehaviour: m_outlineColor: serializedVersion: 2 rgba: 4278190080 - m_fontSize: 6.73 - m_fontSizeBase: 6.73 + m_fontSize: 6 + m_fontSizeBase: 6 m_fontWeight: 400 m_enableAutoSizing: 0 m_fontSizeMin: 18 @@ -4213,13 +4784,13 @@ MonoBehaviour: m_margin: {x: 0, y: 0, z: 0, w: 0} m_textInfo: textComponent: {fileID: 997515808} - characterCount: 24 + characterCount: 0 spriteCount: 0 - spaceCount: 4 - wordCount: 5 + spaceCount: 0 + wordCount: 0 linkCount: 0 - lineCount: 1 - pageCount: 1 + lineCount: 0 + pageCount: 0 materialCount: 1 m_havePropertiesChanged: 0 m_isUsingLegacyAnimationComponent: 0 @@ -4329,7 +4900,7 @@ RectTransform: 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: 9, y: 1} + m_SizeDelta: {x: 7, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1000942071 MonoBehaviour: @@ -4377,8 +4948,8 @@ MonoBehaviour: m_outlineColor: serializedVersion: 2 rgba: 4278190080 - m_fontSize: 6.73 - m_fontSizeBase: 6.73 + m_fontSize: 6 + m_fontSizeBase: 6 m_fontWeight: 400 m_enableAutoSizing: 0 m_fontSizeMin: 18 @@ -5091,7 +5662,7 @@ Transform: m_LocalScale: {x: 1.02, y: 1.025, z: 1.02} m_Children: [] m_Father: {fileID: 351576464} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &1201621562 MeshRenderer: @@ -5103,7 +5674,7 @@ MeshRenderer: m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 1 - m_DynamicOccludee: 1 + m_DynamicOccludee: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 @@ -5702,6 +6273,211 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1366624816} m_Mesh: {fileID: 4300012, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} +--- !u!1 &1393230210 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1393230215} + - component: {fileID: 1393230214} + - component: {fileID: 1393230213} + - component: {fileID: 1393230212} + - component: {fileID: 1393230211} + m_Layer: 0 + m_Name: Text Track (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!114 &1393230211 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1393230210} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -806885394, guid: 89f0137620f6af44b9ba852b4190e64e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Snake in a Box + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3821b3a54195a0844aaeb18b65cd5e63, type: 2} + m_sharedMaterial: {fileID: 21898195224422272, guid: 3821b3a54195a0844aaeb18b65cd5e63, + type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4278255360 + m_fontColor: {r: 0, g: 1, b: 0, a: 1} + m_enableVertexGradient: 0 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 37.3 + m_fontSizeBase: 37.3 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 4100 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 5 + m_wordSpacing: 5 + m_lineSpacing: 5.15 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: 0 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 0 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_textInfo: + textComponent: {fileID: 1393230211} + characterCount: 14 + spriteCount: 0 + spaceCount: 3 + wordCount: 4 + linkCount: 0 + lineCount: 3 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 1 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 1 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_renderer: {fileID: 1393230214} + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_maskType: 0 +--- !u!222 &1393230212 +CanvasRenderer: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1393230210} + m_CullTransparentMesh: 0 +--- !u!33 &1393230213 +MeshFilter: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1393230210} + m_Mesh: {fileID: 0} +--- !u!23 &1393230214 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1393230210} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 21898195224422272, guid: 3821b3a54195a0844aaeb18b65cd5e63, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 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 +--- !u!224 &1393230215 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1393230210} + m_LocalRotation: {x: 0.16284245, y: -0.30763045, z: 0.05352413, w: 0.93593854} + m_LocalPosition: {x: 0, y: 0, z: -5.59} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1554483892} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 19.74, y: -36.39, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 12.82, y: 3.55} + m_SizeDelta: {x: 10.1, y: 1} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1409833483 GameObject: m_ObjectHideFlags: 0 @@ -6287,7 +7063,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1510915027} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -4.51} + m_LocalPosition: {x: 0, y: 0, z: -3.51} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1317232482} @@ -6474,6 +7250,86 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1518462474} m_Mesh: {fileID: 4300022, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} +--- !u!1 &1554483891 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1554483892} + - component: {fileID: 1554483894} + - component: {fileID: 1554483893} + m_Layer: 0 + m_Name: Hanging Rod + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1554483892 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1554483891} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 2.82, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1393230215} + - {fileID: 434051737} + - {fileID: 61898118} + m_Father: {fileID: 416451006} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1554483893 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1554483891} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: bb5f41eecb5ccc546814746a66914984, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 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 +--- !u!33 &1554483894 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1554483891} + m_Mesh: {fileID: 4300084, guid: 1cc1b125262248c4ba967763bf40c861, type: 3} --- !u!1 &1603319126 GameObject: m_ObjectHideFlags: 0 @@ -7279,7 +8135,9 @@ MonoBehaviour: growQueue: 0 fastQueue: 0 justAte: 0 + inputRot: {x: 0, y: 0, z: 0, w: 1} dirDelay: 0 + lerp: 0 poofPos: {x: 0, y: 0, z: 0} restart: 0 playing: 0 @@ -7298,6 +8156,83 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1825209466 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1825209467} + - component: {fileID: 1825209469} + - component: {fileID: 1825209468} + m_Layer: 0 + m_Name: Crosshair + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &1825209467 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1825209466} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.83} + m_LocalScale: {x: 0.005, y: 0.005, z: 0.005} + m_Children: [] + m_Father: {fileID: 850212508} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!23 &1825209468 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1825209466} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: bb5f41eecb5ccc546814746a66914984, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + 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 +--- !u!33 &1825209469 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1825209466} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1946433801 GameObject: m_ObjectHideFlags: 0 @@ -7432,7 +8367,7 @@ MonoBehaviour: lineCount: 1 pageCount: 1 materialCount: 1 - m_havePropertiesChanged: 0 + m_havePropertiesChanged: 1 m_isUsingLegacyAnimationComponent: 0 m_isVolumetricText: 0 m_spriteAnimator: {fileID: 0} @@ -7522,7 +8457,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!114 &1991466027 MonoBehaviour: m_ObjectHideFlags: 0 @@ -7659,7 +8594,7 @@ MeshRenderer: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1991466026} - m_Enabled: 1 + m_Enabled: 0 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 @@ -7842,7 +8777,7 @@ MonoBehaviour: lineCount: 0 pageCount: 0 materialCount: 1 - m_havePropertiesChanged: 0 + m_havePropertiesChanged: 1 m_isUsingLegacyAnimationComponent: 0 m_isVolumetricText: 0 m_spriteAnimator: {fileID: 0} diff --git a/Assets/Scripts/AI.cs b/Assets/Scripts/AI.cs index 5336258..fc90483 100644 --- a/Assets/Scripts/AI.cs +++ b/Assets/Scripts/AI.cs @@ -4,7 +4,7 @@ public class AI { public int aiChances; - Quaternion rotation; + public Quaternion rot = Quaternion.identity; public Vector3Int InputDirection(Main main) { @@ -14,9 +14,9 @@ public class AI float turnRate = (1 + Mathf.Sin(Time.time)) + (1 + Mathf.Sin(Time.time / 3)) * (1 - (dist / ((float)main.design.bounds.x * 2))); if (main.food != headPos && aiChances == main.design.aiMaxChances) { - rotation = Quaternion.Lerp(rotation, Quaternion.LookRotation(main.food - headPos), turnRate * main.design.aiIQ * main.bpm * Time.deltaTime); + rot = Quaternion.Lerp(rot, Quaternion.LookRotation(main.food - headPos), turnRate * main.design.aiIQ * main.bpm * Time.deltaTime); - Vector3Int newDir = Main.SnapDir(rotation * Vector3.forward); + Vector3Int newDir = Main.SnapDir(rot * Vector3.forward); // rethink this system now that it is seperated from the player inputs // chances get refueled each *ai* step @@ -31,7 +31,7 @@ public class AI { if (aiChances < main.design.aiMaxChances) { - rotation = Quaternion.LookRotation((Vector3)newDir); + rot = Quaternion.LookRotation((Vector3)newDir); } return newDir; diff --git a/Assets/Scripts/BoxUI.cs b/Assets/Scripts/BoxUI.cs index 8bde669..e5f3110 100644 --- a/Assets/Scripts/BoxUI.cs +++ b/Assets/Scripts/BoxUI.cs @@ -196,23 +196,33 @@ public class BoxUI : MonoBehaviour trackColor.a = 0.5f; } - void Crash() + void Crash(Vector3 dir) { if (!main.aiMode) { string endText; int oldHighscore = PlayerPrefs.GetInt("highscore", 0); - if (main.snake.Count > oldHighscore) - { - endText = (main.snake.Count).ToString("000") + " / " + oldHighscore.ToString("000") + "\n^-^"; + int score = main.snake.Count + main.core.Count; + float total = ( + (1f + main.design.bounds.x * 2f) * + (1f + main.design.bounds.y * 2f) * + (1f + main.design.bounds.z * 2f) + ) / 100f; - PlayerPrefs.SetInt("highscore", main.snake.Count); + Debug.Log(total); + + if (score >= oldHighscore) + { + endText = (score / total).ToString("00.0") + "%\n^-^"; + + PlayerPrefs.SetInt("highscore", score); UpdateLabel(); } else { - endText = (main.snake.Count).ToString("000") + " / " + oldHighscore.ToString("000") + "\n-_-"; + endText = (score / total).ToString("00.0") + "%\n-_-"; + // / " + oldHighscore.ToString("000") + "\n-_-"; } // Use for unlocks and tracking diff --git a/Assets/Scripts/Design.cs b/Assets/Scripts/Design.cs index 95e79e7..dc5a6ca 100644 --- a/Assets/Scripts/Design.cs +++ b/Assets/Scripts/Design.cs @@ -8,6 +8,7 @@ public class Design : ScriptableObject { [Header("View")] public Vector3 headOffset = new Vector3(0, 0, -60); + public Vector3 pivotPos; public float scale = 60; [Header("Game")] diff --git a/Assets/Scripts/Drip.cs b/Assets/Scripts/Drip.cs index 164ce81..36d7a29 100644 --- a/Assets/Scripts/Drip.cs +++ b/Assets/Scripts/Drip.cs @@ -6,133 +6,224 @@ using System.Collections.Generic; using Random = UnityEngine.Random; using NaughtyAttributes; - public class Drip { public Drip(GraphXData data) { this.data = data; - } - GraphXData data; - // public AnimationCurve animCurve; - public class Drop - { - public float x, z; - public float firstY, lastY, rot; - - public Drop() + for (int i = 0; i < drops.Length; i++) { - this.x = 0; - this.z = 0; - this.firstY = -1000; - this.lastY = -1000; - this.rot = 0; + drops[i] = new Drop(); + } + + for (int i = 0; i < drails.Length; i++) + { + drails[i] = new Drail(); } } + GraphXData data; + + Drop[] drops = new Drop[10]; + Drail[] drails = new Drail[40]; + Matrix4x4[] matrices = new Matrix4x4[50]; + + // pool + // fall and fade + // just need to fall at and spawn at a height and rate + // to hit the box in time + + // just DRIP DRIP DRIPS + // falling shit is distracting and spatially confusing + + // pooling and drip downs + // code first then review and refine visually + + // consider the moving parts + + // pools (x and y and size) + // check for edge then drip all out (cohesion)so adjust position as dripping + + // and x and y are not world space just 0-1 (square so now skewing ^-^) + // map to world space with the rendering + // pools and drips all share the same matrix and instanced renderer + + // now with your door open lets get the pooling working before any more lewds - Drop[] drops = new Drop[9]; - Matrix4x4[] matrices = new Matrix4x4[9]; + // fix rain & analog visual representation of beat (two birds one stone) + + // public AnimationCurve animCurve; ?? + + public class Range + { + public float min = 0; + public float max = 0; + + public Range(float min = 0, float max = 0) + { + this.min = min; + this.max = max; + } + + public static Range zero { get { return new Range(0, 0); } } + public static Range one { get { return new Range(0, 1); } } + + public float length { get { return max - min; } } + public float middle { get { return min + length / 2; } } + } + + public class Drop + { + public bool down; // ready to go + public Quaternion quat; + public float scale; + + public Drop() + { + this.down = true; + this.scale = Random.Range(1f, 2f); + this.quat = Quaternion.identity; + } + } + + public class Drail + { + public Quaternion quat; + public float scale; + + public Drail() + { + this.quat = Quaternion.identity; + this.scale = 0; + } + } + public void Step(Main main) { for (int i = 0; i < drops.Length; i++) { - if (drops[i] == null) + Drop drop = drops[i]; + + if (drop.down && !bumped) { - drops[i] = new Drop(); + drop.quat = UnityEngine.Random.rotation; + // nay not a position but rather a quaternion! + // that is clamped and scaled to fit the box (builtin corner handling) + + // main.poof.Splash( + // ClampOut(drop.quat), + // drop.quat * new Vector3(0.1f, 0.1f, 0.3f), + // 0.15f + // ); + + drop.down = false; } - else if (drops[i].lastY == 3.5f) + else { - main.poof.Splash( - new Vector3(drops[i].x, 3.5f, drops[i].z), - new Vector3(0.3f, 1, 0.3f), - 0.1f - ); - } - - drops[i].x = Random.Range(-10f, 10f); - drops[i].z = Random.Range(-10f, 10f); - - float height = 60f; - float offset = Random.Range(-30f, 30f); - - drops[i].firstY = offset + (height / 2); - drops[i].lastY = offset - (height / 2); - - drops[i].rot = 360 * Random.value; - - if ((drops[i].x < main.design.bounds.x + 0.5f && drops[i].x > -main.design.bounds.x - 0.5f) - && (drops[i].z < main.design.bounds.z + 0.5f && drops[i].z > -main.design.bounds.z - 0.5f)) - { - // if its inside we need precise timing otherwise it doesn't matter - drops[i].lastY = 3.5f; - drops[i].firstY = drops[i].lastY + height; + // recycle + // and drip off is as easy as an angle comparison with con direction + float angle = Quaternion.Angle(drop.quat, main.inputRot); + if (angle < 45 && Random.value < 0.5f) + { + drop.down = true; + } + else + { + for (int j = 0; j < drails.Length; j++) + { + Drail drail = drails[j]; + if (drail.scale == 0 && Random.value < 0.3f) + { + drail.quat = drop.quat; + drail.scale = Random.value; + } + } + } } } - testTime = 0; + bumped = false; } - float testTime; public void Rain(Main main) { - testTime += Time.deltaTime * 1.1f; - float stepTime = 60f / (float)main.bpm; - float lerp = Mathf.Clamp01(testTime / stepTime); - for (int i = 0; i < drops.Length; i++) { - Vector3 pos = Vector3.zero; - Vector3 scale = Vector3.zero; - float rot = 0; + Drop drop = drops[i]; - if (drops[i] != null) + float angle = Quaternion.Angle(drop.quat, main.inputRot) / 180f; + if (angle < 0.8f) { - pos = new Vector3( - drops[i].x, - Mathf.Lerp(drops[i].firstY, drops[i].lastY, lerp), - drops[i].z - ); - - - float s = lerp * 2; - if (s > 1) - { - s = 1 - (s - 1); - } - - if (drops[i].lastY == 3.5f) - { - s += 0.5f; - } - - // s *= 10f; - scale = new Vector3( - s, - s * 2 * Vector2.Distance(new Vector2(pos.x, pos.z), new Vector2(main.rig.head.position.x, main.rig.head.position.z)), - s - ); - - rot = drops[i].rot; + drop.quat = Quaternion.Slerp(drop.quat, main.inputRot, Time.deltaTime / 10 * angle); } - matrices[i].SetTRS(pos, Quaternion.Euler(0, rot, 0), scale); + Vector3 pos = ClampOut(drop.quat); + + float scale = 1; + if (drop.down) + { + scale = (1 - main.lerp); + pos += drop.quat * Vector3.forward * 6f * main.lerp * main.lerp; + } + else if (main.lerp < 0.1f) + { + scale *= Mathf.Lerp(1.2f, 1, (main.lerp * main.lerp) / 0.1f); + } + + Quaternion rot = drop.quat; + rot = Quaternion.LookRotation(Main.SnapDir(rot * Vector3.forward)); + + matrices[i].SetTRS( + pos, + rot, + new Vector3(0.1f, 0.1f, 0.08f) * scale * drop.scale + ); } + + for (int i = 0; i < drails.Length; i++) + { + Drail drail = drails[i]; + + drail.scale = Mathf.Max(drail.scale - Time.deltaTime / 6, 0); + + matrices[drops.Length + i].SetTRS( + ClampOut(drail.quat), + Quaternion.LookRotation(Main.SnapDir(drail.quat * Vector3.forward)), + Vector3.one * drail.scale * 0.06f + ); + } + Graphics.DrawMeshInstanced(data.dripMesh, 0, data.wetMat, matrices); } - void OnDrawGizmos() + bool bumped = false; + public void Bump(Vector3 dir) { - // for (int i = 0; i < tracks.Length; i++) - // { - // for (int j = 0; j < tracks[i].positionCount; j++) - // { - // Gizmos.color = Color.black; - // Gizmos.DrawSphere(tracks[i].GetPosition(j), 0.1f); - // } - // } + for (int i = 0; i < drops.Length; i++) + { + Drop drop = drops[i]; + + drop.quat = Quaternion.Lerp(drop.quat, Quaternion.LookRotation(dir), 0.1f); + + float angle = Quaternion.Angle(drop.quat, Quaternion.LookRotation(dir)); + if (angle < 90) + { + drop.down = true; + } + } + bumped = true; + } + + public Vector3 ClampOut(Quaternion quat) + { + Vector3 pos = quat * Vector3.forward * 7.5f; + pos.x = Mathf.Clamp(pos.x, -3.5f, 3.5f); + pos.y = Mathf.Clamp(pos.y, -2.5f, 2.5f); + pos.z = Mathf.Clamp(pos.z, -3.5f, 3.5f); + + return pos; } } \ No newline at end of file diff --git a/Assets/Scripts/Game.cs b/Assets/Scripts/Game.cs index b1c4cd1..1e93596 100644 --- a/Assets/Scripts/Game.cs +++ b/Assets/Scripts/Game.cs @@ -6,7 +6,7 @@ public class Game { Vector3Int[] poss = new Vector3Int[9 * 7 * 9]; // not bounds compliant... - public delegate void Step(); + public delegate void Step(int full); public static event Step OnStep; public delegate void Eat(Vector3 pos); @@ -18,14 +18,14 @@ public class Game public delegate void Bump(Vector3 dir); public static event Bump OnBump; - public delegate void Crash(); + public delegate void Crash(Vector3 dir); public static event Crash OnCrash; bool danger; public void SnakeStep(Main main, Design design) // snake data? { - OnStep(); + OnStep(main.growQueue); Vector3Int future = main.snake[0] + main.dir; if (main.snake.Contains(future) || Main.OutOfBounds(future, design.bounds)) @@ -41,7 +41,7 @@ public class Game { main.snake.Insert(0, future); - OnCrash(); + OnCrash(main.dir); } return; @@ -79,17 +79,15 @@ public class Game main.growQueue += design.foodValue; main.justAte = 0; - OnEat(future); + main.food = main.space[Random.Range(0, main.space.Count)]; + main.graphX.foodScale = 0; - if (main.space.Count == 0) - { - PlayerPrefs.SetInt("BoxFills", 1 + PlayerPrefs.GetInt("BoxFills", 0)); - } - else - { - main.food = main.space[Random.Range(0, main.space.Count)]; - main.graphX.foodScale = 0; - } + OnEat(future); + } + + if (main.space.Count <= 1) + { + PlayerPrefs.SetInt("BoxFills", 1 + PlayerPrefs.GetInt("BoxFills", 0)); } // Eat main.Core Piece diff --git a/Assets/Scripts/GraphX.cs b/Assets/Scripts/GraphX.cs index 3f48abe..ca39892 100644 --- a/Assets/Scripts/GraphX.cs +++ b/Assets/Scripts/GraphX.cs @@ -10,31 +10,75 @@ public class GraphX } GraphXData data; + Vector3 spinOffset; + Quaternion spin = Quaternion.identity; Matrix4x4[] bodyMatrices = new Matrix4x4[9 * 7 * 9]; Matrix4x4[] coreMatrices = new Matrix4x4[3 * 3 * 3]; Matrix4x4 foodMatrix = new Matrix4x4(); + Matrix4x4 tongueMatrix = new Matrix4x4(); Matrix4x4 arrowMatrix = new Matrix4x4(); Matrix4x4 faceMatrix = new Matrix4x4(); + Matrix4x4 controllerMatrix = new Matrix4x4(); + Matrix4x4 joystickMatrix = new Matrix4x4(); + Matrix4x4 conArrowMatrix = new Matrix4x4(); public float foodScale = 0; + public float Exp(float value, int power) + { + for (int i = 0; i < power; i++) + { + value *= value; + } + return value; + } + + public Quaternion GetNormalized(Quaternion q) + { + float f = 1f / Mathf.Sqrt(q.x * q.x + q.y * q.y + q.z * q.z + q.w * q.w); + return new Quaternion(q.x * f, q.y * f, q.z * f, q.w * f); + } + public void Render(Main main) { + Vector3 angleDelta = new Vector3(Exp(Mathf.Sin(Time.time * spinOffset.x), 3), Exp(Mathf.Sin(Time.time * spinOffset.y), 3), Exp(Mathf.Sin(Time.time * spinOffset.z), 3)) * Time.deltaTime * 180; + if (angleDelta.sqrMagnitude < 0.1) + { + spinOffset = new Vector3( + 0.5f + Random.value, + 0.5f + Random.value, + 0.5f + Random.value + ); + } + else + { + spin = Quaternion.Euler(angleDelta) * spin; + } + foodScale = Mathf.Lerp(foodScale, 1, 6 * Time.deltaTime); foodMatrix.SetTRS( main.food, - Quaternion.Euler(new Vector3(Mathf.Sin(Time.time), Mathf.Sin(Time.time / 2), Mathf.Sin(Time.time / 3)) * 30), + GetNormalized(spin), foodScale * Vector3.one - ); Graphics.DrawMesh(data.foodMesh, foodMatrix, data.unlitMat, 0); + ); Graphics.DrawMesh(data.foodMesh, foodMatrix, data.snakeMat, 0); + + if (main.playing && (data.faceMesh == data.faceDefault || data.faceMesh == data.faceEaten)) + { + tongueMatrix.SetTRS( + main.snake[0], + main.inputRot, + Vector3.one + ); Graphics.DrawMesh(data.tongueMesh, tongueMatrix, data.snakeMat, 0); + } if (!main.aiMode && main.playing) { arrowMatrix.SetTRS( - main.snake[0], - main.rig.controllerRot, + main.design.pivotPos + main.rig.head.rotation * Vector3.up * 2f, + main.inputRot, Vector3.one - ); Graphics.DrawMesh(data.arrowMesh, arrowMatrix, data.unlitMat, 0); + ); Graphics.DrawMesh(data.arrowMesh, arrowMatrix, data.snakeMat, 0); } // Face @@ -78,7 +122,7 @@ public class GraphX coreMatrices[i].SetTRS(Vector3.zero, Quaternion.identity, Vector3.zero); } } - Graphics.DrawMeshInstanced(data.coreMesh, 0, data.unlitMat, coreMatrices); + Graphics.DrawMeshInstanced(data.coreMesh, 0, data.snakeMat, coreMatrices); // Body Roll @@ -95,6 +139,27 @@ public class GraphX rollTime = Mathf.Clamp01((60 / (float)main.bpm) / 27); } + + controllerMatrix.SetTRS( + main.rig.controllerPos, + main.rig.controllerRot * Quaternion.Euler(Vector3.up * 90), + Vector3.one * main.design.scale + ); Graphics.DrawMesh(data.controllerMesh, controllerMatrix, data.unlitMat, 0); + + conArrowMatrix.SetTRS( + main.rig.controllerPos, + main.rig.inputRot, + Vector3.one * main.design.scale + ); Graphics.DrawMesh(data.conArrowMesh, conArrowMatrix, data.unlitMat, 0); + + Vector3 pointTo = main.rig.inputRot * Vector3.Lerp(Vector3.up, Vector3.forward, main.rig.joystick.magnitude / 3); + + // * Quaternion.Euler(Vector3.right * -90) + joystickMatrix.SetTRS( + main.rig.controllerPos, + Quaternion.LookRotation(pointTo), + Vector3.one * main.design.scale + ); Graphics.DrawMesh(data.joystickMesh, joystickMatrix, data.unlitMat, 0); } float rollTime; diff --git a/Assets/Scripts/GraphXData.cs b/Assets/Scripts/GraphXData.cs index 2ceccf6..6371410 100644 --- a/Assets/Scripts/GraphXData.cs +++ b/Assets/Scripts/GraphXData.cs @@ -6,13 +6,17 @@ using System.Collections.Generic; [CreateAssetMenu] public class GraphXData : ScriptableObject { - public Mesh foodMesh, arrowMesh, bodyMesh, coreMesh; + public Mesh foodMesh, arrowMesh, tongueMesh, bodyMesh, coreMesh; [Header("Materials")] public Material snakeMat; public Material unlitMat; public Material wetMat; + [Header("Controls")] + public Mesh controllerMesh; + public Mesh joystickMesh, conArrowMesh; + [Header("Faces")] public Mesh faceMesh; public Mesh faceDefault, faceEat, faceEaten, faceBump, faceBoxGameover, faceSelfGameover; diff --git a/Assets/Scripts/Main.cs b/Assets/Scripts/Main.cs index d31b6b7..44b3761 100644 --- a/Assets/Scripts/Main.cs +++ b/Assets/Scripts/Main.cs @@ -9,11 +9,12 @@ using TMPro; public class Main : MonoBehaviour { - - public delegate void GameStart(Main main); public static event GameStart OnGameStart; + public delegate void Reset(); + public static event Reset OnReset; + public bool sideQuest; [Header("References")] @@ -37,7 +38,6 @@ public class Main : MonoBehaviour public SFX sfx; public AudioSource sfxSource; - [Header("Positions")] public List snake, initialSnake; public List core, initialCore; @@ -50,6 +50,7 @@ public class Main : MonoBehaviour public bool aiMode = true; public int growQueue, fastQueue; public int justAte; + public Quaternion inputRot = Quaternion.identity; public float dirDelay; @@ -81,20 +82,37 @@ public class Main : MonoBehaviour snakeFace = new SnakeFace(graphXData); poof = new Poof(graphXData); drip = new Drip(graphXData); + Game.OnBump += drip.Bump; restart = 0; } - void Crash() + void Crash(Vector3 dir) { fastQueue = 0; playing = false; restart = 0; } + public float lerp = 0; + Quaternion aiRot = Quaternion.identity; void Update() { + float beatScale = (float)bpm / 60f; + lerp += beatScale * Time.deltaTime; + lerp = Mathf.Clamp01(lerp); + + if (aiMode) + { + aiRot = Quaternion.Lerp(aiRot, ai.rot, Time.deltaTime * 6); + inputRot = aiRot; + } + else + { + inputRot = rig.inputRot; + } + dirDelay -= Time.deltaTime; if (playing && dirDelay < 0 && snake.Count >= initialSnake.Count) { @@ -128,6 +146,7 @@ public class Main : MonoBehaviour public int restart = 0; // set to zero during playtime to restart manually public void Beat() { + lerp = 0; switch (restart) { case (0): @@ -146,6 +165,7 @@ public class Main : MonoBehaviour Shader.SetGlobalInt("_Flash", 1); food = initialFood; restart++; + OnReset(); break; case (2): diff --git a/Assets/Scripts/Poof.cs b/Assets/Scripts/Poof.cs index fe973ba..e1dfa33 100644 --- a/Assets/Scripts/Poof.cs +++ b/Assets/Scripts/Poof.cs @@ -83,7 +83,7 @@ public class Poof { if (oldFoodPos != main.food) { - Burst(main.food, 0.1f, 0.2f); + Burst(main.food, 0.1f, 0.5f); oldFoodPos = main.food; } diff --git a/Assets/Scripts/Rig.cs b/Assets/Scripts/Rig.cs index b2ebf6e..8a5fc00 100644 --- a/Assets/Scripts/Rig.cs +++ b/Assets/Scripts/Rig.cs @@ -10,11 +10,13 @@ public class Rig : MonoBehaviour public Design design; public Main main; public GameObject disconnected; - public Transform head; + public Transform head, hangingRod; [Header("Variables")] public OVRInput.Controller remote; public Quaternion controllerRot = Quaternion.identity; + public Quaternion inputRot = Quaternion.identity; + public Vector3 controllerPos, joystick; bool leftOn, rightOn, touchOn; Vector3 headOffset; @@ -25,8 +27,10 @@ public class Rig : MonoBehaviour void Start() { Game.OnBump += Bump; + Game.OnCrash += Bump; - headOffset.y = 32f; + // headOffset.y = 32f; + headOffset.y = design.headOffset.y; headOffset.z = design.headOffset.z; ready = false; } @@ -72,7 +76,10 @@ public class Rig : MonoBehaviour if (headsetRot != null) { head.rotation = headsetRot; - head.position = headsetRot * headOffset; + // Quaternion.LookRotation(head.forward, head.up); + hangingRod.position = design.pivotPos; + hangingRod.rotation = headsetRot; + head.position = design.pivotPos + (headsetRot * headOffset); head.localScale = Vector3.one * design.scale; } @@ -82,12 +89,25 @@ public class Rig : MonoBehaviour head.position += boxOffset; - controllerRot = OVRInput.GetLocalControllerRotation(remote) * Quaternion.Euler(-30, 0, 0); + // controllerRot = OVRInput.GetLocalControllerRotation(remote) * Quaternion.Euler(-30, 0, 0); + Vector3 headsetPos = InputTracking.GetLocalPosition(XRNode.Head); + + controllerPos = OVRInput.GetLocalControllerPosition(remote) * design.scale; + controllerPos = controllerPos - headsetPos * design.scale; + controllerPos += head.position; + inputRot = controllerRot = OVRInput.GetLocalControllerRotation(remote); + + joystick = OVRInput.Get(OVRInput.Axis2D.PrimaryThumbstick, remote); + joystick = new Vector3(joystick.x, 0, joystick.y); + if (joystick.sqrMagnitude > 0) + { + inputRot *= Quaternion.LookRotation(joystick); + } } public Vector3Int InputDirection(Main main) { - Vector3Int newDir = Main.SnapDir((controllerRot * Vector3.forward)); + Vector3Int newDir = Main.SnapDir((inputRot * Vector3.forward)); // no neck snaps if (main.snake[0] + newDir != main.snake[1]) diff --git a/Assets/Scripts/SFX.cs b/Assets/Scripts/SFX.cs index 33ce203..80bfad4 100644 --- a/Assets/Scripts/SFX.cs +++ b/Assets/Scripts/SFX.cs @@ -17,7 +17,7 @@ public class SFX // the only sfxs that are not step based is the UI // same class different audioSources - void SnakeStep() + void SnakeStep(int full) { data.PickClip(data.sfxSteps); } @@ -32,7 +32,7 @@ public class SFX data.PickClip(data.sfxBumps); } - void Crash() + void Crash(Vector3 dir) { data.queuedClip = data.sfxCrash; } diff --git a/Assets/Scripts/SnakeFace.cs b/Assets/Scripts/SnakeFace.cs index f4b964e..3c594f5 100644 --- a/Assets/Scripts/SnakeFace.cs +++ b/Assets/Scripts/SnakeFace.cs @@ -5,6 +5,7 @@ public class SnakeFace public SnakeFace(GraphXData data) { Main.OnGameStart += this.GameStart; + Main.OnReset += this.Reset; Game.OnStep += this.Step; Game.OnSmell += this.Smell; Game.OnEat += this.Eat; @@ -21,11 +22,23 @@ public class SnakeFace data.faceMesh = data.faceDefault; } - void Step() + void Reset() { data.faceMesh = data.faceDefault; } + void Step(int full) + { + if (full > 0) + { + data.faceMesh = data.faceEaten; + } + else + { + data.faceMesh = data.faceDefault; + } + } + void Smell() { data.faceMesh = data.faceEat; @@ -41,7 +54,7 @@ public class SnakeFace data.faceMesh = data.faceBump; } - void Crash() + void Crash(Vector3 dir) { data.faceMesh = data.faceSelfGameover; diff --git a/Assets/arow.fbx b/Assets/arow.fbx new file mode 100644 index 0000000..f2c136a Binary files /dev/null and b/Assets/arow.fbx differ diff --git a/Assets/arow.fbx.meta b/Assets/arow.fbx.meta new file mode 100644 index 0000000..6754928 --- /dev/null +++ b/Assets/arow.fbx.meta @@ -0,0 +1,106 @@ +fileFormatVersion: 2 +guid: 825a62388b1ce1040bc1eddefbc5ad23 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Material + 2300000: //RootNode + 3300000: //RootNode + 4300000: Arrow + 7400000: Arrow|ArrowAction + 7400002: Arrow|CubeAction + 7400004: Arrow|CubeAction.001 + 7400006: Arrow|Empty.001Action + 7400008: Arrow|EmptyAction + 7400010: Arrow|EmptyAction.001 + 7400012: Arrow|JoystickAction + 9500000: //RootNode + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 3 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.099999994 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 2 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/controller.fbx b/Assets/controller.fbx new file mode 100644 index 0000000..a5a5331 Binary files /dev/null and b/Assets/controller.fbx differ diff --git a/Assets/controller.fbx.meta b/Assets/controller.fbx.meta new file mode 100644 index 0000000..2112e38 --- /dev/null +++ b/Assets/controller.fbx.meta @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: cb69a79fa4024c943846e5fefb4d90b4 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Material + 2300000: //RootNode + 3300000: //RootNode + 4300000: Controller + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 3 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/entezoa.blend b/Assets/entezoa.blend index d0bf260..8ccd2e3 100644 Binary files a/Assets/entezoa.blend and b/Assets/entezoa.blend differ diff --git a/Assets/entezoa.blend.meta b/Assets/entezoa.blend.meta index 647c304..4093075 100644 --- a/Assets/entezoa.blend.meta +++ b/Assets/entezoa.blend.meta @@ -44,6 +44,12 @@ ModelImporter: 100076: Core.001 100078: Drip 100080: Poof + 100082: Hanging + 100084: Arrow_Backup + 100086: HangingRod + 100088: FoodOld + 100090: Tongue + 100092: WetBox 400000: Arrow 400002: //RootNode 400004: Face0Default @@ -85,6 +91,12 @@ ModelImporter: 400076: Core.001 400078: Drip 400080: Poof + 400082: Hanging + 400084: Arrow_Backup + 400086: HangingRod + 400088: FoodOld + 400090: Tongue + 400092: WetBox 2100000: No Name 2300000: Arrow 2300002: Face0Default @@ -126,6 +138,12 @@ ModelImporter: 2300074: Core.001 2300076: Drip 2300078: Poof + 2300080: Hanging + 2300082: Arrow_Backup + 2300084: HangingRod + 2300086: FoodOld + 2300088: Tongue + 2300090: WetBox 3300000: Arrow 3300002: Face0Default 3300004: Face1Eat @@ -166,6 +184,12 @@ ModelImporter: 3300074: Core.001 3300076: Drip 3300078: Poof + 3300080: Hanging + 3300082: Arrow_Backup + 3300084: HangingRod + 3300086: FoodOld + 3300088: Tongue + 3300090: WetBox 4300000: Arrow 4300002: InsideOut 4300004: Segment @@ -206,6 +230,12 @@ ModelImporter: 4300074: Core.001 4300076: Drip 4300078: Poof + 4300080: Hanging + 4300082: Arrow_Backup + 4300084: HangingRod + 4300086: FoodOld + 4300088: Tongue + 4300090: WetBox 9500000: //RootNode 2186277476908879412: ImportLogs externalObjects: {} diff --git a/Assets/entezoa.blend1 b/Assets/entezoa.blend1 index 04d665e..16b4769 100644 Binary files a/Assets/entezoa.blend1 and b/Assets/entezoa.blend1 differ diff --git a/Assets/joystick.fbx b/Assets/joystick.fbx new file mode 100644 index 0000000..bc53af2 Binary files /dev/null and b/Assets/joystick.fbx differ diff --git a/Assets/joystick.fbx.meta b/Assets/joystick.fbx.meta new file mode 100644 index 0000000..034a983 --- /dev/null +++ b/Assets/joystick.fbx.meta @@ -0,0 +1,106 @@ +fileFormatVersion: 2 +guid: c1e013bed503e8f409f9c0ccc42890d4 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Material + 2300000: //RootNode + 3300000: //RootNode + 4300000: Joystick + 7400000: Joystick|ArrowAction + 7400002: Joystick|CubeAction + 7400004: Joystick|CubeAction.001 + 7400006: Joystick|Empty.001Action + 7400008: Joystick|EmptyAction + 7400010: Joystick|EmptyAction.001 + 7400012: Joystick|JoystickAction + 9500000: //RootNode + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 3 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.099999994 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 2 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/ProjectSettings/GraphicsSettings.asset b/ProjectSettings/GraphicsSettings.asset index 283d5a6..7997460 100644 --- a/ProjectSettings/GraphicsSettings.asset +++ b/ProjectSettings/GraphicsSettings.asset @@ -38,7 +38,6 @@ GraphicsSettings: - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0} - - {fileID: 16002, guid: 0000000000000000f000000000000000, type: 0} m_PreloadedShaders: [] m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 7573535..f675049 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -106,6 +106,7 @@ PlayerSettings: xboxOneMonoLoggingLevel: 0 xboxOneLoggingLevel: 1 xboxOneDisableEsram: 0 + xboxOneEnableTypeOptimization: 0 xboxOnePresentImmediateThreshold: 0 switchQueueCommandMemory: 0 switchQueueControlMemory: 16384 @@ -120,7 +121,7 @@ PlayerSettings: 16:10: 1 16:9: 1 Others: 1 - bundleVersion: 7 + bundleVersion: 8 preloadedAssets: [] metroInputSource: 0 wsaTransparentSwapchain: 0 @@ -161,7 +162,7 @@ PlayerSettings: Android: com.dofdev.SnakeInABox Standalone: com.dofdev.SnakeInABox buildNumber: {} - AndroidBundleVersionCode: 57 + AndroidBundleVersionCode: 58 AndroidMinSdkVersion: 22 AndroidTargetSdkVersion: 0 AndroidPreferredInstallLocation: 0 diff --git a/ProjectSettings/UnityConnectSettings.asset b/ProjectSettings/UnityConnectSettings.asset index c3ae9a0..fa0b146 100644 --- a/ProjectSettings/UnityConnectSettings.asset +++ b/ProjectSettings/UnityConnectSettings.asset @@ -4,7 +4,7 @@ UnityConnectSettings: m_ObjectHideFlags: 0 serializedVersion: 1 - m_Enabled: 1 + m_Enabled: 0 m_TestMode: 0 m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events m_EventUrl: https://cdp.cloud.unity3d.com/v1/events