Compare commits

...

6 Commits

Author SHA1 Message Date
08338d6dc7 Merge branch '1vs1' into dev
# Conflicts:
#	Assets/Scenes/DeathScreen.unity
#	Assets/Scenes/MainMenu.unity
#	Assets/ScriptableObjects/PlayerData.cs
#	Assets/Scripts/GameSession/GameSession.cs
#	Assets/Scripts/Player/Player.cs
#	Assets/Scripts/Road/ChunkGenerator.cs
2025-01-15 09:51:22 +01:00
2bf911a312 1V1 logique OK, Manque modif deathscreen 2025-01-14 17:41:14 +01:00
f47def84dd 1V1 OK, GameSession refactor, deathScreen to finish 2025-01-14 17:03:48 +01:00
47d6adf479 1V1 logic OK 2025-01-09 11:44:33 +01:00
2898130a82 Jump and crouch OK, lane broken 2025-01-09 10:18:10 +01:00
ee95dd043f Split screen, controls not workings 2025-01-07 17:26:15 +01:00
46 changed files with 11498 additions and 3893 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,108 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: animationend
serializedVersion: 5
m_AnimatorParameters:
- m_Name: Blend
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: Run
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: Jump
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: Dead
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: Slide
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: Idle
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 7459675453670605269}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1102 &5334629767517593806
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: a_Idle_Happy
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 0
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: e411d29e9f3ed4148a6f9d807e00efcd, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1107 &7459675453670605269
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 5334629767517593806}
m_Position: {x: 10, y: 120, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 30, y: 0, z: 0}
m_EntryPosition: {x: -230, y: 120, z: 0}
m_ExitPosition: {x: 950, y: 170, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: 5334629767517593806}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 104b61ba2d831c84e9200f18cdf2cd2f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:

16
Assets/DeathScreen1VS1.cs Normal file
View File

@ -0,0 +1,16 @@
using UnityEngine;
public class DeathScreen1VS1 : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: ee53811d3959d1b4ca9782e0dfc97ccf

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

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

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 682d64d1d4474994cba4504e7df89dd0
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -215,6 +215,9 @@ RectTransform:
m_Children:
- {fileID: 1425101074}
- {fileID: 585937282}
- {fileID: 2040053553}
- {fileID: 1715640245}
- {fileID: 641718691}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@ -222,6 +225,142 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!1 &180805238
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 180805239}
- component: {fileID: 180805241}
- component: {fileID: 180805240}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &180805239
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 180805238}
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: 1715640245}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &180805240
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 180805238}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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_text:
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
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_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &180805241
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 180805238}
m_CullTransparentMesh: 1
--- !u!1 &352716353
GameObject:
m_ObjectHideFlags: 0
@ -279,7 +418,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Button
m_text:
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
@ -390,6 +529,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
currentPlayer: {fileID: 0}
scoreboard: {fileID: 0}
isPlayer2: 0
--- !u!114 &533191357
MonoBehaviour:
m_ObjectHideFlags: 0
@ -420,6 +560,142 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &565350509
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 565350510}
- component: {fileID: 565350512}
- component: {fileID: 565350511}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &565350510
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 565350509}
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: 2040053553}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &565350511
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 565350509}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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_text:
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
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_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &565350512
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 565350509}
m_CullTransparentMesh: 1
--- !u!1 &585937281
GameObject:
m_ObjectHideFlags: 0
@ -433,7 +709,7 @@ GameObject:
- component: {fileID: 585937284}
- component: {fileID: 585937283}
m_Layer: 5
m_Name: Button
m_Name: SoloMode
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -481,10 +757,10 @@ MonoBehaviour:
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 0}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_HighlightedColor: {r: 0.21960786, g: 0.21960786, b: 0.21960786, a: 0}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 0}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
@ -505,7 +781,7 @@ MonoBehaviour:
m_Calls:
- m_Target: {fileID: 533191356}
m_TargetAssemblyTypeName: GameSession, Assembly-CSharp
m_MethodName: GoToGameScene
m_MethodName: GoToSoloMode
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
@ -553,6 +829,139 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 585937281}
m_CullTransparentMesh: 1
--- !u!1 &641718690
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 641718691}
- component: {fileID: 641718694}
- component: {fileID: 641718693}
- component: {fileID: 641718692}
m_Layer: 5
m_Name: Settings
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &641718691
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 641718690}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1435649214}
m_Father: {fileID: 28337890}
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: 265.5, y: -153.16}
m_SizeDelta: {x: 177.9763, y: 190.8653}
m_Pivot: {x: 0.5, y: 0.50000006}
--- !u!114 &641718692
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 641718690}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 0}
m_HighlightedColor: {r: 0.21960786, g: 0.21960786, b: 0.21960786, a: 0}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 0}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 641718693}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 533191356}
m_TargetAssemblyTypeName: GameSession, Assembly-CSharp
m_MethodName: GoToSoloMode
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &641718693
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 641718690}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &641718694
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 641718690}
m_CullTransparentMesh: 1
--- !u!1 &705507993
GameObject:
m_ObjectHideFlags: 0
@ -776,8 +1185,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}
m_SizeDelta: {x: 87.32, y: 79.08}
m_AnchoredPosition: {x: 0.014961, y: -0.00024796}
m_SizeDelta: {x: 130.55, y: 115.45}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1425101075
MonoBehaviour:
@ -799,7 +1208,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Texture: {fileID: 2800000, guid: de8ae31bb102a7848b475b5b60316716, type: 3}
m_Texture: {fileID: 2800000, guid: 38c95c0304ff5fa40842726137f20778, type: 3}
m_UVRect:
serializedVersion: 2
x: 0
@ -814,6 +1223,408 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1425101073}
m_CullTransparentMesh: 1
--- !u!1 &1435649213
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1435649214}
- component: {fileID: 1435649216}
- component: {fileID: 1435649215}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1435649214
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1435649213}
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: 641718691}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1435649215
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1435649213}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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_text:
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
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_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &1435649216
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1435649213}
m_CullTransparentMesh: 1
--- !u!1 &1715640244
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1715640245}
- component: {fileID: 1715640248}
- component: {fileID: 1715640247}
- component: {fileID: 1715640246}
m_Layer: 5
m_Name: Skin
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1715640245
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1715640244}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 180805239}
m_Father: {fileID: 28337890}
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: 268, y: 71}
m_SizeDelta: {x: 177.9763, y: 190.8653}
m_Pivot: {x: 0.49999997, y: 0.5}
--- !u!114 &1715640246
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1715640244}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 0}
m_HighlightedColor: {r: 0.21960786, g: 0.21960786, b: 0.21960786, a: 0}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 0}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 1715640247}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 533191356}
m_TargetAssemblyTypeName: GameSession, Assembly-CSharp
m_MethodName: GoToSoloMode
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &1715640247
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1715640244}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &1715640248
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1715640244}
m_CullTransparentMesh: 1
--- !u!1 &2040053552
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2040053553}
- component: {fileID: 2040053556}
- component: {fileID: 2040053555}
- component: {fileID: 2040053554}
m_Layer: 5
m_Name: DuoMode
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2040053553
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2040053552}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 565350510}
m_Father: {fileID: 28337890}
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: -112, y: -45.2294}
m_SizeDelta: {x: 201.0648, y: 364.0289}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &2040053554
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2040053552}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 0}
m_HighlightedColor: {r: 0.21960786, g: 0.21960786, b: 0.21960786, a: 0}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 0}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 2040053555}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 533191356}
m_TargetAssemblyTypeName: GameSession, Assembly-CSharp
m_MethodName: GoToDuoMode
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &2040053555
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2040053552}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, 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_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &2040053556
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2040053552}
m_CullTransparentMesh: 1
--- !u!1 &2056363842
GameObject:
m_ObjectHideFlags: 0

View File

@ -314,8 +314,10 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 412e4ad20c347ce47b62391fe298974c, type: 3}
m_Name:
m_EditorClassIdentifier:
currentPlayer: {fileID: 2249596435903131710}
player1: {fileID: 2249596435903131710}
player2: {fileID: 0}
scoreboard: {fileID: 634835458}
isDuoMode: 0
--- !u!4 &93601729
Transform:
m_ObjectHideFlags: 0
@ -1999,7 +2001,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
target: {fileID: 2249596435903131709}
defaultDistance: {x: 0, y: 3, z: -4}
defaultDistance: {x: 0, y: 5.9, z: -4}
distanceDamp: 0.15
--- !u!114 &1053166413
MonoBehaviour:

View File

@ -15,4 +15,6 @@ MonoBehaviour:
<InvincibilityTime>k__BackingField: 600
<JumpHeight>k__BackingField: 6
<LaneSwitchSpeed>k__BackingField: 20
<Speed>k__BackingField: 10
<CurrentSpeed>k__BackingField: 10
<InitialSpeed>k__BackingField: 10
<SpeedAcceleration>k__BackingField: 0

View File

@ -7,5 +7,7 @@ public class PlayerData : ScriptableObject
[field: SerializeField] public int InvincibilityTime { get; private set; }
[field: SerializeField] public float JumpHeight { get; private set; }
[field: SerializeField] public float LaneSwitchSpeed { get; private set; }
[field: SerializeField] public float Speed { get; set; }
[field: SerializeField] public float CurrentSpeed { get; set; }
[field: SerializeField] public float InitialSpeed { get; private set; }
[field: SerializeField] public float SpeedAcceleration { get; private set; }
}

View File

@ -36,11 +36,11 @@ public class FollowingCamera : MonoBehaviour
Vector3 moveVector = new Vector3(target.position.x, target.position.y, target.position.z);
//Quaternion rotationVector = Quaternion.Euler(target.rotation.y, target.rotation.y, defaultTargetRotation.z);
//float curveX = GameSession.Instance.Curver.CurveStrengthX;
//camTransform.rotation = target.rotation;
camTransform.rotation = target.rotation;
Vector3 toPos = moveVector + (target.rotation * defaultDistance);
//Vector3 toPos = target.position + (target.rotation * defaultDistance);
Vector3 curPos = Vector3.SmoothDamp(camTransform.position, toPos, ref velocity, distanceDamp);
camTransform.position = curPos;
camTransform.LookAt(camTransform, target.up);
camTransform.LookAt(target, target.up);
}
}

View File

@ -1,19 +1,26 @@
using System.Collections;
using System;
using System.Collections;
using System.Collections.Generic;
using JetBrains.Annotations;
using UnityEngine;
using UnityEngine.SceneManagement;
[RequireComponent(typeof(WorldCurver))]
public class GameSession : MonoBehaviour,IResettable
{
[SerializeField] private Player currentPlayer;
[SerializeField] private Player player1;
[SerializeField] [CanBeNull] private Player player2;
[SerializeField] private Scoreboard scoreboard;
[SerializeField] private Boolean isDuoMode;
public static GameSession Instance { get; private set; }
public WorldCurver Curver { get; private set; }
private IInputTranslator inputTranslator;
private bool isSessionPaused = false;
private bool isInputAlreadyRestricted = false;
private IInputTranslator _player1InputTranslator;
private IInputTranslator _player2InputTranslator;
public static string MatchResult { get; private set; }
private bool _isSessionPaused = false;
private bool _isInputAlreadyRestricted = false;
private float _speedAtPause;
private void Awake()
{
@ -31,7 +38,12 @@ public class GameSession : MonoBehaviour,IResettable
}
private void Update()
{
inputTranslator.Tick();
_player1InputTranslator.Tick();
if (isDuoMode)
{
_player2InputTranslator.Tick();
}
Curver.Tick();
// curver.SinCurveX();
// Curver.SinCurveY();
@ -40,39 +52,52 @@ public class GameSession : MonoBehaviour,IResettable
private void Init()
{
if (ApplicationUtil.platform == RuntimePlatform.Android || ApplicationUtil.platform == RuntimePlatform.IPhonePlayer)
var player1Holder = new KeyBindingHolder();
player1Holder.Init(false);
_player1InputTranslator = new InputTranslator<KeyBinding>(player1Holder, false);
if (isDuoMode)
{
IBindingHolder<TouchBinding> touchHolder = new TouchBindingHolder();
inputTranslator = new InputTranslator<TouchBinding>(touchHolder);
}
else
{
IBindingHolder<KeyBinding> keyHolder = new KeyBindingHolder();
inputTranslator = new InputTranslator<KeyBinding>(keyHolder);
var player2Holder = new KeyBindingHolder();
player2Holder.Init(true);
_player2InputTranslator = new InputTranslator<KeyBinding>(player2Holder, true);
}
}
public void AddCommandTranslator(ICommandTranslator translator)
public void AddCommandTranslator(ICommandTranslator translator, bool isPlayer2)
{
inputTranslator.AddCommandTranslator(translator);
if (isPlayer2)
{
_player2InputTranslator.AddCommandTranslator(translator);
}else
{
_player1InputTranslator.AddCommandTranslator(translator);
}
}
public void PauseSession(bool isPaused)
{
Time.timeScale = isPaused ? 0 : 1;
if (!isSessionPaused && inputTranslator.IsTranslationResticted(InputConstants.InGameCommands))
if (isPaused)
_speedAtPause = player1.playerData.CurrentSpeed;
else
{
isInputAlreadyRestricted = true;
isSessionPaused = isPaused;
player1.playerData.CurrentSpeed = _speedAtPause;
}
Time.timeScale = isPaused ? 0 : 1;
if (!_isSessionPaused && _player1InputTranslator.IsTranslationResticted(InputConstants.InGameCommands) && _player2InputTranslator.IsTranslationResticted(InputConstants.InGameCommands) )
{
_isInputAlreadyRestricted = true;
_isSessionPaused = isPaused;
return;
}
if (!inputTranslator.IsTranslationResticted(InputConstants.InGameCommands))
if (!_player1InputTranslator.IsTranslationResticted(InputConstants.InGameCommands) && !_player2InputTranslator.IsTranslationResticted(InputConstants.InGameCommands))
{
isInputAlreadyRestricted = false;
_isInputAlreadyRestricted = false;
}
isSessionPaused = isPaused;
if (isInputAlreadyRestricted)
_isSessionPaused = isPaused;
if (_isInputAlreadyRestricted)
{
return;
}
@ -81,7 +106,12 @@ public class GameSession : MonoBehaviour,IResettable
public void RestrictInputs(List<ECommand> commands,bool isRestricted)
{
inputTranslator.RestictTranslation(commands, isRestricted);
_player1InputTranslator.RestictTranslation(commands, isRestricted);
if (isDuoMode)
{
_player2InputTranslator.RestictTranslation(commands, isRestricted);
}
}
public void UpdateScoreboard(ScoreboardEntry entry)
@ -89,34 +119,60 @@ public class GameSession : MonoBehaviour,IResettable
scoreboard.AddScoreboardEntry(entry);
}
public void GoToGameScene()
private bool isCheckingEquality = false;
public void HandlePlayerDeath(Player deadPlayer)
{
StartCoroutine(LoadGameSceneAsync());
if (isDuoMode)
{
if (isCheckingEquality) return;
isCheckingEquality = true;
StartCoroutine(CheckForEquality(deadPlayer));
}
else
{
SceneManager.LoadScene("DeathScreen");
}
}
private IEnumerator LoadGameSceneAsync()
private IEnumerator CheckForEquality(Player deadPlayer)
{
AsyncOperation asyncLoad = SceneManager.LoadSceneAsync("GameScene", LoadSceneMode.Single);
asyncLoad.allowSceneActivation = false;
yield return new WaitForSeconds(0.3f);
while (!asyncLoad.isDone)
if (player1.isDead && player2.isDead)
{
// Indiquer la progression de chargement (0 à 0.9)
float progress = Mathf.Clamp01(asyncLoad.progress / 0.9f);
Debug.Log($"Loading progress: {progress * 100}%");
// Activer la scène lorsqu'elle est prête
if (asyncLoad.progress >= 0.9f)
{
asyncLoad.allowSceneActivation = true;
}
yield return null;
SendResultToDeathScreen("DRAW");
}
else if (player1.isDead)
{
SendResultToDeathScreen("PLAYER2");
}
else if (player2.isDead)
{
SendResultToDeathScreen("PLAYER1");
}
isCheckingEquality = false;
}
private void SendResultToDeathScreen(string result)
{
MatchResult = result;
SceneManager.LoadScene("DeathScreen1VS1");
}
public void GoToSoloMode()
{
SceneManager.LoadScene("SoloGameScene", LoadSceneMode.Single);
ResetToDefault();
}
public void GoToDuoMode()
{
SceneManager.LoadScene("DuoGameScene", LoadSceneMode.Single);
ResetToDefault();
}
public void GoToMainMenu()
{
SceneManager.LoadScene("MainMenu", LoadSceneMode.Single);
@ -126,7 +182,11 @@ public class GameSession : MonoBehaviour,IResettable
public void ResetToDefault()
{
PauseSession(false);
if(currentPlayer !=null)
currentPlayer.ResetToDefault();
if(player1 !=null)
player1.ResetToDefault();
if (isDuoMode && player2 != null)
{
player2.ResetToDefault();
}
}
}

View File

@ -8,6 +8,6 @@ using System.Threading.Tasks;
public interface IBindingHolder<T> where T : IBinding
{
public Dictionary<ECommand, T> InputBindings { get; }
public void Init();
public void Init(Boolean isPlayer2);
}

View File

@ -1,4 +1,5 @@
using System.Collections;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
@ -10,17 +11,32 @@ public class KeyBindingHolder : IBindingHolder<KeyBinding>
private readonly Dictionary<ECommand, KeyBinding> DefaultKeyBindings = new Dictionary<ECommand, KeyBinding>
{
{ECommand.NONE, new KeyBinding(KeyCode.None)},
{ECommand.DOWN, new KeyBinding(KeyCode.DownArrow,KeyCode.S)},
{ECommand.UP, new KeyBinding(KeyCode.UpArrow,KeyCode.W)},
{ECommand.LEFT, new KeyBinding(KeyCode.LeftArrow,KeyCode.A)},
{ECommand.RIGHT, new KeyBinding(KeyCode.RightArrow,KeyCode.D)},
{ECommand.DOWN, new KeyBinding(KeyCode.DownArrow)},
{ECommand.UP, new KeyBinding(KeyCode.UpArrow)},
{ECommand.LEFT, new KeyBinding(KeyCode.LeftArrow)},
{ECommand.RIGHT, new KeyBinding(KeyCode.RightArrow)},
{ECommand.OPEN_SCOREBOARD, new KeyBinding(KeyCode.Tab)},
{ECommand.OPEN_PAUSE_MENU, new KeyBinding(KeyCode.Escape)}
};
public void Init()
private readonly Dictionary<ECommand, KeyBinding> Player2KeyBindings = new Dictionary<ECommand, KeyBinding>
{
{ECommand.DOWN2, new KeyBinding(KeyCode.S)},
{ECommand.UP2, new KeyBinding(KeyCode.Z)},
{ECommand.LEFT2, new KeyBinding(KeyCode.Q)},
{ECommand.RIGHT2, new KeyBinding(KeyCode.D)},
};
public void Init(Boolean isPlayer2)
{
if (InputBindings == null)
InputBindings = DefaultKeyBindings;
if (isPlayer2)
{
InputBindings = Player2KeyBindings;
}
else
{
InputBindings = DefaultKeyBindings;
}
}
}

View File

@ -1,24 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class TouchBindingHolder : IBindingHolder<TouchBinding>
{
public Dictionary<ECommand, TouchBinding> InputBindings { get; private set; }
private readonly Dictionary<ECommand, TouchBinding> DefaultTouchBindings = new Dictionary<ECommand, TouchBinding>
{
{ECommand.NONE, new TouchBinding(ETouchGesture.NONE)},
{ECommand.DOWN, new TouchBinding(ETouchGesture.SWIPE_DOWN)},
{ECommand.UP, new TouchBinding(ETouchGesture.SWIPE_UP)},
{ECommand.LEFT, new TouchBinding(ETouchGesture.SWIPE_LEFT)},
{ECommand.RIGHT, new TouchBinding(ETouchGesture.SWIPE_RIGHT)},
};
public void Init()
{
if (InputBindings == null)
InputBindings = DefaultTouchBindings;
}
}

View File

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

View File

@ -1,6 +1,7 @@

public enum ECommand
{
#region Player1
NONE = 0,
LEFT = 1,
RIGHT = 2,
@ -8,5 +9,17 @@ public enum ECommand
DOWN = 4,
OPEN_SCOREBOARD = 5,
SHOOT = 6,
OPEN_PAUSE_MENU = 7
OPEN_PAUSE_MENU = 7,
#endregion
#region Player2
LEFT2 = 8,
RIGHT2 = 9,
UP2 = 10,
DOWN2 = 11,
OPEN_SCOREBOARD2 = 12,
SHOOT2 = 13,
OPEN_PAUSE_MENU2 = 14
#endregion
}

View File

@ -1,4 +1,5 @@

using System;
using System.Collections.Generic;
public interface IInputTranslator
@ -17,11 +18,11 @@ public class InputTranslator<T> : IInputTranslator where T : IBinding
private List<ICommandTranslator> commandTranslators;
private IBindingHolder<T> bindingHolder;
public InputTranslator(IBindingHolder<T> holder)
public InputTranslator(IBindingHolder<T> holder, Boolean isPlayer2)
{
commandTranslators = new List<ICommandTranslator>();
bindingHolder = holder;
bindingHolder.Init();
bindingHolder.Init(isPlayer2);
}
//public void Init(IBindingHolder<T> holder)
//{

View File

@ -6,7 +6,7 @@ public class Pause : MonoBehaviour,ICommandTranslator
{
private void Start()
{
GameSession.Instance.AddCommandTranslator(this);
GameSession.Instance.AddCommandTranslator(this, false);
}
public void TranslateCommand(ECommand command, PressedState state)

View File

@ -41,14 +41,15 @@ public class Health : MonoBehaviour, IDamageable,IHealable, IResettable
}
public void TakeDamage(int amount)
{
if (CurrentHealth > 0){
CurrentHealth -= amount;
if (CurrentHealth <= 0){
CurrentHealth = 0;
OnOutOfHealth?.Invoke();
}
OnHealthChanged(this, healthArgs.GetUpdatedArgs(CurrentHealth, MaxHealth));
}
// if (CurrentHealth > 0)
// {
// CurrentHealth -= amount;
// if (CurrentHealth <= 0){
// CurrentHealth = 0;
// OnOutOfHealth?.Invoke();
// }
// OnHealthChanged(this, healthArgs.GetUpdatedArgs(CurrentHealth, MaxHealth));
// }
}
public void Heal(int amount)
{

View File

@ -1,6 +1,8 @@
using System;
using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.Serialization;
[RequireComponent(typeof(CharacterController))]
@ -8,7 +10,7 @@ using UnityEngine.SceneManagement;
[RequireComponent(typeof(Health))]
[RequireComponent(typeof(Statistics))]
public class Player : MonoBehaviour,IResettable, ICommandTranslator
public class Player : MonoBehaviour, IResettable, ICommandTranslator
{
#region StateMachine
@ -20,18 +22,22 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
private Animator animator;
[SerializeField] private AnimationCurve jumpDeltaYCurve;
public AnimationCurve JumpDeltaYCurve { get { return jumpDeltaYCurve; } }
public AnimationCurve JumpDeltaYCurve
{
get { return jumpDeltaYCurve; }
}
public PlayerAnimator PlayerAnimator { get; private set; }
#endregion
#region PlayerComponents
[SerializeField] private PlayerData playerData;
private int initialSpeed;
[SerializeField] internal PlayerData playerData;
public IDamageable PlayerHealth { get; private set; }
public Statistics PlayerStatictics { get; private set; }
public PlayerData PlayerData { get { return playerData; } }
#endregion
@ -39,7 +45,20 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
#region MovementControl
[SerializeField] private LaneSystem laneSystem;
public LaneSystem LaneSystem { get { return laneSystem; } private set { laneSystem = value; } }
public LaneSystem LaneSystem
{
get
{
return laneSystem;
}
private set
{
laneSystem = value;
}
}
public CharacterController CharacterController { get; private set; }
public PlayerCollider PlayerCollider { get; private set; }
@ -47,10 +66,13 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
public bool IsInvincible { get; private set; }
public float InvincibilityTime { get; private set; } //PLAYER DATA ScriptableObject
[SerializeField] private Boolean isPlayer2;
[SerializeField] private Boolean isPlaying1VS1;
public bool isDead = false;
private void Awake()
{
GameSession.Instance.AddCommandTranslator(this);
GameSession.Instance.AddCommandTranslator(this, isPlayer2);
animator = GetComponent<Animator>();
if (animator)
PlayerAnimator = new PlayerAnimator(animator);
@ -60,12 +82,14 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
PlayerStatictics = GetComponent<Statistics>();
PlayerStateMachine = new PlayerStateMachine(this);
InvincibilityTime = playerData.InvincibilityTime;
initialSpeed = (int)playerData.Speed;
playerData.CurrentSpeed = playerData.InitialSpeed;
}
private void OnEnable()
{
PlayerHealth.OnOutOfHealth += Die;
}
// private void OnDisable()
// {
// PlayerHealth.OnOutOfHealth -= Die;
@ -78,15 +102,17 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
private void Update()
{
PlayerData.Speed += 0.0001f;
// Add smthg to manage the animator speed
playerData.CurrentSpeed += playerData.SpeedAcceleration / 1000;
PlayerStateMachine.Tick();
}
private void FixedUpdate()
{
PlayerStateMachine.FixedTick();
}
public float PendingAdditionalOffset { get; private set; }
private void OnTriggerEnter(Collider other)
{
if (other.TryGetComponent(out IDamageDealer damageDealer)) //switch..case
@ -99,8 +125,10 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
{
damageDealer.DealDamage(component, damageAmount);
}
StartCoroutine(GrantInvincibility());
}
if (other.TryGetComponent(out IObstacle obstacle)) //switch..case
{
obstacle.Impact();
@ -113,11 +141,24 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
private void Die()
{
PlayerData.Speed = initialSpeed;
isDead = true;
PlayerStateMachine.SetState(PlayerStateMachine.PlayerDeadState);
GameSession.Instance.UpdateScoreboard(new ScoreboardEntry(name,PlayerStatictics.Score));
GameSession.Instance.UpdateScoreboard(new ScoreboardEntry(name, PlayerStatictics.Score));
GameSession.Instance.HandlePlayerDeath(this); // Informe GameSession qu'un joueur est mort
SceneManager.LoadScene("DeathScreen");
// PlayerStateMachine.SetState(PlayerStateMachine.PlayerDeadState);
// GameSession.Instance.UpdateScoreboard(new ScoreboardEntry(name, PlayerStatictics.Score));
// if (isPlaying1VS1)
// {
// // SceneManager.LoadScene("DeathScreen1v1");
// SceneManager.LoadScene("Death1VS1");
//
// }
// else
// {
// SceneManager.LoadScene("Death1VS1");
// }
//
}
public IEnumerator GrantInvincibility()
@ -126,11 +167,13 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
yield return new WaitForSeconds(InvincibilityTime);
IsInvincible = false;
}
private void ReloadAnimator()
{
if (animator)
PlayerAnimator = new PlayerAnimator(animator);
}
public void ResetToDefault()
{
PlayerStateMachine.SetState(null);
@ -138,6 +181,7 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
LaneSystem.ResetToDefault();
Physics.SyncTransforms();
ReloadAnimator();
playerData.CurrentSpeed = playerData.InitialSpeed;
}
public void TranslateCommand(ECommand command, PressedState state)
@ -147,15 +191,19 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
switch (command)
{
case ECommand.RIGHT:
case ECommand.RIGHT2:
PlayerStateMachine.IncreaseTargetLane();
break;
case ECommand.LEFT:
case ECommand.LEFT2:
PlayerStateMachine.DecreaseTargetLane();
break;
case ECommand.UP:
case ECommand.UP2:
PlayerStateMachine.SetState(PlayerStateMachine.PlayerJumpState);
break;
case ECommand.DOWN:
case ECommand.DOWN2:
PlayerStateMachine.SetState(PlayerStateMachine.PlayerSlideState);
break;
default:
@ -163,4 +211,5 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
}
}
}
}

View File

@ -12,7 +12,7 @@ public abstract class MovingState : PlayerState
public MovingState(PlayerStateMachine playerStateMachine) : base(playerStateMachine)
{
this.playerSM = playerStateMachine;
speed = playerData.Speed;
speed = playerData.CurrentSpeed;
laneSwitchSpeed = playerData.LaneSwitchSpeed;
}
public override void OnStateEnter(){}
@ -21,7 +21,7 @@ public abstract class MovingState : PlayerState
public override void Tick()
{
speed = playerData.Speed;
speed = playerData.CurrentSpeed;
//HandleDirection();
playerSM.HorizontalDeltaPosition = playerSM.PlayerTransform.forward * speed * Time.deltaTime ;
playerSM.HorizontalDeltaPosition += playerSM.PlayerTransform.forward * speed * Time.deltaTime;

View File

@ -8,12 +8,12 @@ public class ChunkGenerator : MonoBehaviour
[SerializeField] private LaneSystem LaneSystem;
public CoinPool CoinPool { get; private set; }
[field: SerializeField] public List<ObstaclePool> ObstaclePools { get; private set; }
private bool isFirstChunk = true;
private bool _isFirstChunk = true;
public Chunk Generate(Chunk chunkToFill)
{
if (isFirstChunk)
if (_isFirstChunk)
{
isFirstChunk = false;
_isFirstChunk = false;
return chunkToFill;
}
if (ObstaclePools.IsEmpty())
@ -30,6 +30,11 @@ public class ChunkGenerator : MonoBehaviour
transform.localPosition.y,
transform.localPosition.z
);
//TODO: A enlever (pour fix bug)
// if (obstacle.IsOnAllLanes)
// {
// obstacle.transform.localPosition = new Vector3(LaneSystem.CenterLane * LaneSystem.LaneWidth, transform.localPosition.y, transform.localPosition.z);
// }
}
return chunkToFill;
}

View File

@ -22,7 +22,7 @@ public class Scoreboard : MonoBehaviour, ICommandTranslator
private void Start()
{
GameSession.Instance.AddCommandTranslator(this);
GameSession.Instance.AddCommandTranslator(this, false);
string jsonScoreboardEntries = PlayerPrefs.GetString("ScoreboardEntriesTableTest"); //Binary file
ScoreboardEntriesTable entriesTable = JsonUtility.FromJson<ScoreboardEntriesTable>(jsonScoreboardEntries);
if (entriesTable == null)

View File

@ -0,0 +1,51 @@
using TMPro;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
namespace UI.Views
{
public class DeathScreen1VS1 : MonoBehaviour
{
public TMP_Text Joueur1Text;
public TMP_Text Joueur2Text;
private void Start()
{
if (!string.IsNullOrEmpty(GameSession.MatchResult))
{
switch (GameSession.MatchResult)
{
case "PLAYER1":
Joueur1Text.text = "WINNER !";
Joueur2Text.text = "LOSER !";
break;
case "PLAYER2":
Joueur2Text.text = "WINNER !";
Joueur1Text.text = "LOSER !";
break;
case "DRAW":
Joueur1Text.text = "Draw";
Joueur2Text.text = "Draw";
break;
}
}
else
{
}
}
public void RestartGame()
{
SceneManager.LoadScene("DuoGameScene");
}
public void QuitGame()
{
Application.Quit();
}
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 80d0e44a44be4982a77850a10cbae2f9
timeCreated: 1736867806

View File

@ -31,7 +31,7 @@ public class PausedView : BaseView
restartButton.onClick.AddListener(() =>
{
GameSession.Instance.GoToGameScene();
GameSession.Instance.GoToSoloMode();
});
base.Init();
}

BIN
Assets/Sprites/Awesome Runner (2).png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,117 @@
fileFormatVersion: 2
guid: 38c95c0304ff5fa40842726137f20778
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
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: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
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: 4
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
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,39 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!84 &8400000
RenderTexture:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: CameraRenderTexture
m_ImageContentsHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_IsAlphaChannelOptional: 0
serializedVersion: 6
m_Width: 256
m_Height: 256
m_AntiAliasing: 1
m_MipCount: -1
m_DepthStencilFormat: 94
m_ColorFormat: 8
m_MipMap: 0
m_GenerateMips: 1
m_SRGB: 0
m_UseDynamicScale: 0
m_UseDynamicScaleExplicit: 0
m_BindMS: 0
m_EnableCompatibleFormat: 1
m_EnableRandomWrite: 0
m_TextureSettings:
serializedVersion: 2
m_FilterMode: 1
m_Aniso: 0
m_MipBias: 0
m_WrapU: 1
m_WrapV: 1
m_WrapW: 1
m_Dimension: 2
m_VolumeDepth: 1
m_ShadowSamplingMode: 2

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 41143e46b20d229409d956aa790eeadf
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 8400000
userData:
assetBundleName:
assetBundleVariant:

BIN
Assets/Sprites/Deathscreen.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,117 @@
fileFormatVersion: 2
guid: f3bf48d62eb8db4488ff8d833e011574
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
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: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
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: 4
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
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

BIN
Assets/Sprites/DeathscreenDUO.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,117 @@
fileFormatVersion: 2
guid: f28a94d15d7a7a640beaf309548e86f2
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
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: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
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: 4
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
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c0550badaad23f34d8372e910bdbb7dc
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,84 @@
%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: Deathscreen
m_Shader: {fileID: 46, 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:
- _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: 2800000, guid: f3bf48d62eb8db4488ff8d833e011574, type: 3}
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:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 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: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

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

File diff suppressed because one or more lines are too long

View File

@ -9,10 +9,16 @@ EditorBuildSettings:
path: Assets/Scenes/MainMenu.unity
guid: c54d72009b3041948937848dfa045fc8
- enabled: 1
path: Assets/Scenes/GameScene.unity
path: Assets/Scenes/SoloGameScene.unity
guid: 3fb30ce295307b64c947eb0b96185dfb
- enabled: 1
path: Assets/Scenes/DeathScreen.unity
guid: 9fc0d4010bbf28b4594072e72b8655ab
- enabled: 1
path: Assets/Scenes/DuoGameScene.unity
guid: 682d64d1d4474994cba4504e7df89dd0
- enabled: 1
path: Assets/Scenes/DeathScreen1VS1.unity
guid: 0c8ab113f15a70d4083297e24fb728f0
m_configObjects: {}
m_UseUCBPForAssetBundles: 0

View File

@ -2,8 +2,9 @@
%TAG !u! tag:unity3d.com,2011:
--- !u!78 &1
TagManager:
serializedVersion: 2
tags: []
serializedVersion: 3
tags:
- PlayerEyes
layers:
- Default
- TransparentFX
@ -11,8 +12,8 @@ TagManager:
-
- Water
- UI
-
-
- Player1
- Player2
-
-
-
@ -41,3 +42,5 @@ TagManager:
- name: Default
uniqueID: 0
locked: 0
m_RenderingLayers:
- Default