Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
SSBookMinigames
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
SSBookMinigames
Commits
69557ade
Commit
69557ade
authored
Apr 05, 2026
by
Yousef Sameh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fake multiplayer
parent
5bf877b7
Changes
29
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
1870 additions
and
94 deletions
+1870
-94
IOnlineMatch.cs
My project/Assets/App/Core/IOnlineMatch.cs
+23
-0
IOnlineMatch.cs.meta
My project/Assets/App/Core/IOnlineMatch.cs.meta
+2
-0
MatchFinder.meta
My project/Assets/App/Infrastructure/MatchFinder.meta
+8
-0
MatchFinderService.cs
...sets/App/Infrastructure/MatchFinder/MatchFinderService.cs
+6
-0
MatchFinderService.cs.meta
...App/Infrastructure/MatchFinder/MatchFinderService.cs.meta
+2
-0
MatchModel.cs
...oject/Assets/App/Infrastructure/MatchFinder/MatchModel.cs
+32
-0
MatchModel.cs.meta
.../Assets/App/Infrastructure/MatchFinder/MatchModel.cs.meta
+2
-0
MatchPlayer.cs
...ject/Assets/App/Infrastructure/MatchFinder/MatchPlayer.cs
+36
-0
MatchPlayer.cs.meta
...Assets/App/Infrastructure/MatchFinder/MatchPlayer.cs.meta
+2
-0
MatchService.cs
...ect/Assets/App/Infrastructure/MatchFinder/MatchService.cs
+380
-0
MatchService.cs.meta
...ssets/App/Infrastructure/MatchFinder/MatchService.cs.meta
+2
-0
SupabaseTester.cs
My project/Assets/App/Testing/SupabaseTester.cs
+6
-0
HomeController.cs
My project/Assets/App/UI/HomeController.cs
+0
-1
Mainmenu.unity
My project/Assets/AppUI/Scenes/Mainmenu.unity
+46
-0
Canvas.prefab
My project/Assets/Prefabs/CS/Canvas.prefab
+233
-0
CsGameManager.cs
My project/Assets/ScienceStreet/CS/Scripts/CsGameManager.cs
+69
-1
CsUIManager.cs
My project/Assets/ScienceStreet/CS/Scripts/CsUIManager.cs
+13
-1
IMultiplayerGame.cs
...t/Assets/ScienceStreet/Shared/Scripts/IMultiplayerGame.cs
+13
-0
IMultiplayerGame.cs.meta
...ets/ScienceStreet/Shared/Scripts/IMultiplayerGame.cs.meta
+2
-0
MultiplayerBridge.cs
.../Assets/ScienceStreet/Shared/Scripts/MultiplayerBridge.cs
+115
-0
MultiplayerBridge.cs.meta
...ts/ScienceStreet/Shared/Scripts/MultiplayerBridge.cs.meta
+2
-0
0 (5).unity
My project/Assets/_Recovery/0 (5).unity
+767
-0
0 (5).unity.meta
My project/Assets/_Recovery/0 (5).unity.meta
+7
-0
manifest.json
My project/Packages/manifest.json
+2
-0
packages-lock.json
My project/Packages/packages-lock.json
+19
-0
VirtualProjectsConfig.json
My project/ProjectSettings/VirtualProjectsConfig.json
+4
-0
EditorUserSettings.asset
My project/UserSettings/EditorUserSettings.asset
+9
-9
CurrentMaximizeLayout.dwlt
My project/UserSettings/Layouts/CurrentMaximizeLayout.dwlt
+57
-71
default-6000.dwlt
My project/UserSettings/Layouts/default-6000.dwlt
+11
-11
No files found.
My project/Assets/App/Core/IOnlineMatch.cs
0 → 100644
View file @
69557ade
using
System.Collections.Generic
;
public
interface
IOnlineMatch
{
string
matchId
{
get
;
set
;
}
List
<
MatchPlayer
>
players
{
get
;
set
;
}
MatchState
state
{
get
;
set
;
}
void
OnUpdateMatch
(
IOnlineMatch
updatedMatch
)
{
matchId
=
updatedMatch
.
matchId
;
players
=
updatedMatch
.
players
;
state
=
updatedMatch
.
state
;
}
}
public
enum
MatchState
{
Waiting
,
Started
,
Finished
}
My project/Assets/App/Core/IOnlineMatch.cs.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: 80603aa8ffcaf94d185a23ae4d47c9e6
\ No newline at end of file
My project/Assets/App/Infrastructure/MatchFinder.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: 60059e41d2cfeca18add57ada2e93873
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
My project/Assets/App/Infrastructure/MatchFinder/MatchFinderService.cs
0 → 100644
View file @
69557ade
using
UnityEngine
;
public
class
MatchFinderService
:
MonoBehaviour
{
}
My project/Assets/App/Infrastructure/MatchFinder/MatchFinderService.cs.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: 84042fd921608127faf0d8e74e634a5f
\ No newline at end of file
My project/Assets/App/Infrastructure/MatchFinder/MatchModel.cs
0 → 100644
View file @
69557ade
using
System
;
using
Newtonsoft.Json
;
using
Supabase.Postgrest.Attributes
;
using
Supabase.Postgrest.Models
;
[Table("matches")]
public
class
Match
:
BaseModel
{
[
PrimaryKey
(
"id"
)]
[
JsonProperty
(
"id"
)]
public
string
Id
{
get
;
set
;
}
[
Column
(
"player_count"
)]
[
JsonProperty
(
"player_count"
)]
public
int
PlayerCount
{
get
;
set
;
}
[
Column
(
"match_state"
)]
[
JsonProperty
(
"match_state"
)]
public
string
MatchState
{
get
;
set
;
}
[
Column
(
"created_at"
)]
[
JsonProperty
(
"created_at"
)]
public
DateTime
CreatedAt
{
get
;
set
;
}
[
Column
(
"started_at"
)]
[
JsonProperty
(
"started_at"
)]
public
DateTime
?
StartedAt
{
get
;
set
;
}
[
Column
(
"finished_at"
)]
[
JsonProperty
(
"finished_at"
)]
public
DateTime
?
FinishedAt
{
get
;
set
;
}
}
My project/Assets/App/Infrastructure/MatchFinder/MatchModel.cs.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: f9ae4b926d8407e3cba8783a15c14a40
\ No newline at end of file
My project/Assets/App/Infrastructure/MatchFinder/MatchPlayer.cs
0 → 100644
View file @
69557ade
using
System
;
using
Newtonsoft.Json
;
using
Supabase.Postgrest.Attributes
;
using
Supabase.Postgrest.Models
;
[Table("match_players")]
public
class
MatchPlayer
:
BaseModel
{
[
PrimaryKey
(
"id"
)]
[
JsonProperty
(
"id"
)]
public
string
Id
{
get
;
set
;
}
[
Column
(
"match_id"
)]
[
JsonProperty
(
"match_id"
)]
public
string
MatchId
{
get
;
set
;
}
[
Column
(
"user_id"
)]
[
JsonProperty
(
"user_id"
)]
public
string
UserId
{
get
;
set
;
}
[
Column
(
"username"
)]
[
JsonProperty
(
"username"
)]
public
string
Username
{
get
;
set
;
}
[
Column
(
"score"
)]
[
JsonProperty
(
"score"
)]
public
int
Score
{
get
;
set
;
}
[
Column
(
"has_finished"
)]
[
JsonProperty
(
"has_finished"
)]
public
bool
HasFinished
{
get
;
set
;
}
[
Column
(
"joined_at"
)]
[
JsonProperty
(
"joined_at"
)]
public
DateTime
JoinedAt
{
get
;
set
;
}
}
My project/Assets/App/Infrastructure/MatchFinder/MatchPlayer.cs.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: b7a52c5b750261470a648130ebe63dd2
\ No newline at end of file
My project/Assets/App/Infrastructure/MatchFinder/MatchService.cs
0 → 100644
View file @
69557ade
This diff is collapsed.
Click to expand it.
My project/Assets/App/Infrastructure/MatchFinder/MatchService.cs.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: b73e737ec498ebd4da8d49950d22f9cc
\ No newline at end of file
My project/Assets/App/Testing/SupabaseTester.cs
View file @
69557ade
...
@@ -17,4 +17,10 @@ public class SupabaseTester : MonoBehaviour
...
@@ -17,4 +17,10 @@ public class SupabaseTester : MonoBehaviour
GameHistoryService
.
Instance
.
AddGame
(
"CS"
,
3200
,
DateTime
.
Now
,
DateTime
.
Today
);
GameHistoryService
.
Instance
.
AddGame
(
"CS"
,
3200
,
DateTime
.
Now
,
DateTime
.
Today
);
}
}
[
ContextMenu
(
"Find Match"
)]
public
void
FindMatch
()
{
MatchService
.
Instance
.
FindMatch
();
}
}
}
My project/Assets/App/UI/HomeController.cs
View file @
69557ade
...
@@ -76,7 +76,6 @@ public class HomeController : MonoBehaviour
...
@@ -76,7 +76,6 @@ public class HomeController : MonoBehaviour
{
{
await
UniTask
.
Delay
(
2000
);
await
UniTask
.
Delay
(
2000
);
var
ran
=
Random
.
Range
(
0
,
100
);
var
ran
=
Random
.
Range
(
0
,
100
);
print
(
$"Fake Activity: حصلت على
{
ran
}
نقطة خبرة!"
);
OnNewActivityReceived
(
new
Activity
{
Message
=
$"لقد حصلت على
{
ran
}
نقطة خبرة!"
});
OnNewActivityReceived
(
new
Activity
{
Message
=
$"لقد حصلت على
{
ran
}
نقطة خبرة!"
});
}
}
}
}
...
...
My project/Assets/AppUI/Scenes/Mainmenu.unity
View file @
69557ade
...
@@ -455,6 +455,51 @@ MonoBehaviour:
...
@@ -455,6 +455,51 @@ MonoBehaviour:
m_Name
:
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::HomeController
m_EditorClassIdentifier
:
Assembly-CSharp::HomeController
mainMenuDocument
:
{
fileID
:
96388575
}
mainMenuDocument
:
{
fileID
:
96388575
}
---
!u!1
&1011050774
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
1011050775
}
-
component
:
{
fileID
:
1011050776
}
m_Layer
:
0
m_Name
:
SupabaseTester
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&1011050775
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1011050774
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
1
}
m_LocalPosition
:
{
x
:
0
,
y
:
0
,
z
:
0
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
[]
m_Father
:
{
fileID
:
2129398203
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!114
&1011050776
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1011050774
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
87e81a7f39f4c68ea8e8ab8d8462bd14
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::SupabaseTester
supabaseAuthentication
:
{
fileID
:
0
}
---
!u!1
&1859771920
---
!u!1
&1859771920
GameObject
:
GameObject
:
m_ObjectHideFlags
:
0
m_ObjectHideFlags
:
0
...
@@ -670,6 +715,7 @@ Transform:
...
@@ -670,6 +715,7 @@ Transform:
-
{
fileID
:
882327170
}
-
{
fileID
:
882327170
}
-
{
fileID
:
755069556
}
-
{
fileID
:
755069556
}
-
{
fileID
:
1859771921
}
-
{
fileID
:
1859771921
}
-
{
fileID
:
1011050775
}
m_Father
:
{
fileID
:
744843710
}
m_Father
:
{
fileID
:
744843710
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!1660057539
&9223372036854775807
---
!u!1660057539
&9223372036854775807
...
...
My project/Assets/Prefabs/CS/Canvas.prefab
View file @
69557ade
...
@@ -158,6 +158,7 @@ RectTransform:
...
@@ -158,6 +158,7 @@ RectTransform:
-
{
fileID
:
8716194432650774373
}
-
{
fileID
:
8716194432650774373
}
-
{
fileID
:
6047220882580981041
}
-
{
fileID
:
6047220882580981041
}
-
{
fileID
:
2974416343790448367
}
-
{
fileID
:
2974416343790448367
}
-
{
fileID
:
1135406654181278682
}
-
{
fileID
:
6746614375622947549
}
-
{
fileID
:
6746614375622947549
}
-
{
fileID
:
625702886984310365
}
-
{
fileID
:
625702886984310365
}
-
{
fileID
:
4609650033240504519
}
-
{
fileID
:
4609650033240504519
}
...
@@ -250,6 +251,7 @@ MonoBehaviour:
...
@@ -250,6 +251,7 @@ MonoBehaviour:
_errorUI
:
{
fileID
:
6695881930393796689
}
_errorUI
:
{
fileID
:
6695881930393796689
}
_resultsUI
:
{
fileID
:
2062261329829810082
}
_resultsUI
:
{
fileID
:
2062261329829810082
}
_countDownGroup
:
{
fileID
:
1182562254121867504
}
_countDownGroup
:
{
fileID
:
1182562254121867504
}
_waitingForPlayersGroup
:
{
fileID
:
7241970758368405782
}
_optionsPanel
:
{
fileID
:
8280680030703331504
}
_optionsPanel
:
{
fileID
:
8280680030703331504
}
_feedbackGroup
:
{
fileID
:
344031917242914019
}
_feedbackGroup
:
{
fileID
:
344031917242914019
}
_progressText
:
{
fileID
:
7196988870985223380
}
_progressText
:
{
fileID
:
7196988870985223380
}
...
@@ -1493,6 +1495,148 @@ MonoBehaviour:
...
@@ -1493,6 +1495,148 @@ MonoBehaviour:
clickColor
:
{
r
:
0.2
,
g
:
0.5
,
b
:
1
,
a
:
0.6
}
clickColor
:
{
r
:
0.2
,
g
:
0.5
,
b
:
1
,
a
:
0.6
}
fadeDuration
:
0.25
fadeDuration
:
0.25
hoverColor
:
{
r
:
0.2
,
g
:
0.5
,
b
:
1
,
a
:
0.1
}
hoverColor
:
{
r
:
0.2
,
g
:
0.5
,
b
:
1
,
a
:
0.1
}
---
!u!1
&3019886760604928320
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
4807829741731571677
}
-
component
:
{
fileID
:
3974575150665437606
}
-
component
:
{
fileID
:
1153969497962315254
}
m_Layer
:
0
m_Name
:
Txt
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!224
&4807829741731571677
RectTransform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
3019886760604928320
}
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
:
1135406654181278682
}
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
:
500
,
y
:
60
}
m_Pivot
:
{
x
:
0.5
,
y
:
0.5
}
---
!u!222
&3974575150665437606
CanvasRenderer
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
3019886760604928320
}
m_CullTransparentMesh
:
1
---
!u!114
&1153969497962315254
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
3019886760604928320
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
0e20cc1eab1d04e7c9515c000ca5ba22
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::ALArcade.ArabicTMP.ArabicTextMeshProUGUI
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
:
"
\uFE91\uFE8E\uFEE7\uFE98\uFEC8\uFE8E\u0631
\uFEFB\uFECB\uFE92\uFEF4\uFEE6
..."
m_isRightToLeft
:
1
m_fontAsset
:
{
fileID
:
11400000
,
guid
:
8b4edeefed0fc9f60b1084045988b4cb
,
type
:
2
}
m_sharedMaterial
:
{
fileID
:
2623560040057873289
,
guid
:
8b4edeefed0fc9f60b1084045988b4cb
,
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_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
:
28
m_fontSizeBase
:
28
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_characterHorizontalScale
:
1
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
:
0
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
}
m_ArabicText
:
"
\u0628\u0627\u0646\u062A\u0638\u0627\u0631
\u0644\u0627\u0639\u0628\u064A\u0646
..."
m_ShowTashkeel
:
1
m_PreserveNumbers
:
1
m_FixTags
:
1
m_ForceRTL
:
1
---
!u!1
&3190950786820414927
---
!u!1
&3190950786820414927
GameObject
:
GameObject
:
m_ObjectHideFlags
:
0
m_ObjectHideFlags
:
0
...
@@ -2077,6 +2221,95 @@ MonoBehaviour:
...
@@ -2077,6 +2221,95 @@ MonoBehaviour:
m_PreserveNumbers
:
1
m_PreserveNumbers
:
1
m_FixTags
:
1
m_FixTags
:
1
m_ForceRTL
:
1
m_ForceRTL
:
1
---
!u!1
&4852549295037247943
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
1135406654181278682
}
-
component
:
{
fileID
:
7241970758368405782
}
-
component
:
{
fileID
:
9160941753166587409
}
-
component
:
{
fileID
:
4348413795064593866
}
m_Layer
:
0
m_Name
:
WaitingForPlayers
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!224
&1135406654181278682
RectTransform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
4852549295037247943
}
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
:
4807829741731571677
}
m_Father
:
{
fileID
:
6699056385477313718
}
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
:
791.8534
,
y
:
429.32
}
m_Pivot
:
{
x
:
0.5
,
y
:
0.5
}
---
!u!225
&7241970758368405782
CanvasGroup
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
4852549295037247943
}
m_Enabled
:
1
m_Alpha
:
1
m_Interactable
:
1
m_BlocksRaycasts
:
1
m_IgnoreParentGroups
:
0
---
!u!222
&9160941753166587409
CanvasRenderer
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
4852549295037247943
}
m_CullTransparentMesh
:
1
---
!u!114
&4348413795064593866
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
4852549295037247943
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
fe87c0e1cc204ed48ad3b37840f39efc
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
UnityEngine.UI::UnityEngine.UI.Image
m_Material
:
{
fileID
:
0
}
m_Color
:
{
r
:
0.1254902
,
g
:
0.1254902
,
b
:
0.65882355
,
a
:
0.92
}
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
:
21300000
,
guid
:
a54a00aa58b9b455c895e9312d25164d
,
type
:
3
}
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!1
&5194712150942957175
---
!u!1
&5194712150942957175
GameObject
:
GameObject
:
m_ObjectHideFlags
:
0
m_ObjectHideFlags
:
0
...
...
My project/Assets/ScienceStreet/CS/Scripts/CsGameManager.cs
View file @
69557ade
...
@@ -10,6 +10,7 @@ namespace com.al_arcade.cs
...
@@ -10,6 +10,7 @@ namespace com.al_arcade.cs
using
System.Linq
;
using
System.Linq
;
using
shared
;
using
shared
;
using
Unity.Cinemachine
;
using
Unity.Cinemachine
;
using
Unity.VisualScripting
;
using
UnityEngine.SceneManagement
;
using
UnityEngine.SceneManagement
;
public
enum
CsGameState
public
enum
CsGameState
...
@@ -23,10 +24,18 @@ namespace com.al_arcade.cs
...
@@ -23,10 +24,18 @@ namespace com.al_arcade.cs
Complete
,
Complete
,
}
}
public
class
CsGameManager
:
MonoBehaviour
public
class
CsGameManager
:
MonoBehaviour
,
IMultiplayerGame
{
{
public
static
CsGameManager
Instance
{
get
;
private
set
;
}
public
static
CsGameManager
Instance
{
get
;
private
set
;
}
[
Header
(
"Multiplayer"
)]
[
SerializeField
]
private
MultiplayerBridge
mpBridge
;
public
bool
IsMultiplayer
{
get
;
private
set
;
}
public
Match
CurrentMatch
{
get
;
private
set
;
}
public
List
<
MatchPlayer
>
Players
{
get
;
private
set
;
}
=
new
();
public
MatchPlayer
Me
{
get
;
private
set
;
}
[
Header
(
"Settings"
)]
[
Header
(
"Settings"
)]
[
SerializeField
]
[
SerializeField
]
private
float
sentenceShowDelay
=
0.5f
;
private
float
sentenceShowDelay
=
0.5f
;
...
@@ -84,6 +93,7 @@ namespace com.al_arcade.cs
...
@@ -84,6 +93,7 @@ namespace com.al_arcade.cs
CinemachineTargetGroup
_targetGroup
;
CinemachineTargetGroup
_targetGroup
;
CinemachineGroupFraming
_groupFraming
;
CinemachineGroupFraming
_groupFraming
;
private
void
Awake
()
private
void
Awake
()
{
{
if
(
Instance
!=
null
&&
Instance
!=
this
)
if
(
Instance
!=
null
&&
Instance
!=
this
)
...
@@ -95,8 +105,53 @@ namespace com.al_arcade.cs
...
@@ -95,8 +105,53 @@ namespace com.al_arcade.cs
_targetGroup
=
FindFirstObjectByType
<
CinemachineTargetGroup
>();
_targetGroup
=
FindFirstObjectByType
<
CinemachineTargetGroup
>();
_groupFraming
=
FindFirstObjectByType
<
CinemachineGroupFraming
>();
_groupFraming
=
FindFirstObjectByType
<
CinemachineGroupFraming
>();
mpBridge
=
transform
.
AddComponent
<
MultiplayerBridge
>();
mpBridge
.
Bind
(
this
);
}
}
public
void
InitMultiplayer
(
Match
match
,
List
<
MatchPlayer
>
players
)
{
IsMultiplayer
=
true
;
CurrentMatch
=
match
;
Players
=
players
;
Me
=
players
.
FirstOrDefault
(
p
=>
p
.
UserId
==
UserService
.
Instance
.
CurrentUser
.
Id
);
Debug
.
Log
(
$"[CS MP] Initialized with
{
players
.
Count
}
players"
);
}
public
void
OnMatchChanged
(
Match
match
)
{
CurrentMatch
=
match
;
if
(
match
.
MatchState
==
"finished"
)
{
_state
=
CsGameState
.
Complete
;
StopAllCoroutines
();
var
winner
=
Players
.
OrderByDescending
(
p
=>
p
.
Score
).
First
();
bool
iWon
=
winner
.
UserId
==
Me
?.
UserId
;
if
(
iWon
)
StartCoroutine
(
VictorySequence
());
else
StartCoroutine
(
LoseSequence
());
}
}
public
void
OnPlayersChanged
(
List
<
MatchPlayer
>
players
)
{
Players
=
players
;
Me
=
players
.
FirstOrDefault
(
p
=>
p
.
UserId
==
UserService
.
Instance
.
CurrentUser
.
Id
);
print
(
"Players updated:"
);
// Update scoreboard UI
// uiManager.UpdateScoreboard(players);
}
// Score reporting stays the same
// In CorrectAnswerFeedback: if (IsMultiplayer) mpBridge.ReportScore(points);
// When finished: if (IsMultiplayer) mpBridge.ReportFinished();
private
void
Update
()
private
void
Update
()
{
{
if
(
_state
==
CsGameState
.
WaitingForWordClick
||
_state
==
CsGameState
.
WaitingForDrop
)
if
(
_state
==
CsGameState
.
WaitingForWordClick
||
_state
==
CsGameState
.
WaitingForDrop
)
...
@@ -247,6 +302,10 @@ namespace com.al_arcade.cs
...
@@ -247,6 +302,10 @@ namespace com.al_arcade.cs
if
(
uiManager
!=
null
)
if
(
uiManager
!=
null
)
uiManager
.
HideLoading
();
uiManager
.
HideLoading
();
uiManager
.
ShowWaitingForPlayers
();
yield
return
new
WaitUntil
(()
=>
CurrentMatch
!=
null
&&
CurrentMatch
.
MatchState
==
"started"
);
uiManager
.
HideWaitingForPlayers
();
yield
return
uiManager
.
ShowCountDown
();
yield
return
uiManager
.
ShowCountDown
();
gameStartTime
=
DateTime
.
Now
;
gameStartTime
=
DateTime
.
Now
;
...
@@ -367,6 +426,8 @@ namespace com.al_arcade.cs
...
@@ -367,6 +426,8 @@ namespace com.al_arcade.cs
uiManager
.
SetStreak
(
_streak
);
uiManager
.
SetStreak
(
_streak
);
}
}
mpBridge
.
ReportScore
(
_score
);
SSAudioManager
.
Instance
.
PlayCorrectDrag
();
SSAudioManager
.
Instance
.
PlayCorrectDrag
();
yield
return
new
WaitForSeconds
(
0.4f
);
yield
return
new
WaitForSeconds
(
0.4f
);
...
@@ -554,6 +615,13 @@ namespace com.al_arcade.cs
...
@@ -554,6 +615,13 @@ namespace com.al_arcade.cs
public
int
Score
=>
_score
;
public
int
Score
=>
_score
;
private
void
OnApplicationQuit
()
{
MatchService
.
Instance
.
LeaveMatchSync
();
}
}
}
}
}
My project/Assets/ScienceStreet/CS/Scripts/CsUIManager.cs
View file @
69557ade
...
@@ -16,7 +16,7 @@ namespace com.al_arcade.cs
...
@@ -16,7 +16,7 @@ namespace com.al_arcade.cs
public
class
CsUIManager
:
MonoBehaviour
public
class
CsUIManager
:
MonoBehaviour
{
{
[
SerializeField
]
protected
Canvas
_canvas
;
[
SerializeField
]
protected
Canvas
_canvas
;
[
SerializeField
]
protected
CanvasGroup
_gameUI
,
_loadingUI
,
_errorUI
,
_resultsUI
,
_countDownGroup
;
[
SerializeField
]
protected
CanvasGroup
_gameUI
,
_loadingUI
,
_errorUI
,
_resultsUI
,
_countDownGroup
,
_waitingForPlayersGroup
;
[
SerializeField
]
protected
CanvasGroup
_optionsPanel
,
_feedbackGroup
;
[
SerializeField
]
protected
CanvasGroup
_optionsPanel
,
_feedbackGroup
;
[
SerializeField
]
protected
UniText
_progressText
;
[
SerializeField
]
protected
UniText
_progressText
;
...
@@ -440,6 +440,18 @@ namespace com.al_arcade.cs
...
@@ -440,6 +440,18 @@ namespace com.al_arcade.cs
public
void
ShowLoading
(
string
msg
)
public
void
ShowLoading
(
string
msg
)
{
_loadingUI
.
gameObject
.
SetActive
(
true
);
if
(
_loadingText
!=
null
)
_loadingText
.
arabicText
=
msg
;
_loadingUI
.
DOFade
(
1f
,
0.3f
);
}
{
_loadingUI
.
gameObject
.
SetActive
(
true
);
if
(
_loadingText
!=
null
)
_loadingText
.
arabicText
=
msg
;
_loadingUI
.
DOFade
(
1f
,
0.3f
);
}
public
void
ShowWaitingForPlayers
()
{
_waitingForPlayersGroup
.
gameObject
.
SetActive
(
true
);
_waitingForPlayersGroup
.
alpha
=
0
;
_waitingForPlayersGroup
.
DOFade
(
1f
,
0.3f
);
}
public
void
HideWaitingForPlayers
()
{
_waitingForPlayersGroup
.
DOFade
(
0f
,
0.3f
).
OnComplete
(()
=>
_waitingForPlayersGroup
.
gameObject
.
SetActive
(
false
));
}
public
void
HideLoading
()
public
void
HideLoading
()
{
_loadingUI
.
DOFade
(
0f
,
0.3f
).
OnComplete
(()
=>
_loadingUI
.
gameObject
.
SetActive
(
false
));
}
{
_loadingUI
.
DOFade
(
0f
,
0.3f
).
OnComplete
(()
=>
_loadingUI
.
gameObject
.
SetActive
(
false
));
}
...
...
My project/Assets/ScienceStreet/Shared/Scripts/IMultiplayerGame.cs
0 → 100644
View file @
69557ade
using
System.Collections.Generic
;
public
interface
IMultiplayerGame
{
bool
IsMultiplayer
{
get
;
}
Match
CurrentMatch
{
get
;
}
List
<
MatchPlayer
>
Players
{
get
;
}
MatchPlayer
Me
{
get
;
}
void
InitMultiplayer
(
Match
match
,
List
<
MatchPlayer
>
players
);
void
OnMatchChanged
(
Match
match
);
void
OnPlayersChanged
(
List
<
MatchPlayer
>
players
);
}
My project/Assets/ScienceStreet/Shared/Scripts/IMultiplayerGame.cs.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: 3b3265d30fee77f61b8fe160ca67a9c4
\ No newline at end of file
My project/Assets/ScienceStreet/Shared/Scripts/MultiplayerBridge.cs
0 → 100644
View file @
69557ade
using
System.Collections.Generic
;
using
Cysharp.Threading.Tasks
;
using
UnityEngine
;
public
class
MultiplayerBridge
:
MonoBehaviour
{
private
IMultiplayerGame
_game
;
private
MatchService
_matchService
;
private
bool
_bound
;
[
Header
(
"Settings"
)]
[
SerializeField
]
private
bool
_autoFindMatch
=
true
;
public
bool
IsBound
=>
_bound
;
public
async
UniTask
Bind
(
IMultiplayerGame
game
)
{
_game
=
game
;
_matchService
=
MatchService
.
Instance
;
if
(
_matchService
==
null
)
{
Debug
.
LogError
(
"[MP Bridge] MatchService not found"
);
return
;
}
if
(!
_matchService
.
IsInMatch
)
{
if
(!
_autoFindMatch
)
{
Debug
.
Log
(
"[MP Bridge] No active match — running solo"
);
return
;
}
Debug
.
Log
(
"[MP Bridge] No active match — finding one..."
);
var
match
=
await
_matchService
.
FindMatch
();
if
(
match
==
null
)
{
Debug
.
LogError
(
"[MP Bridge] Failed to find/create match"
);
return
;
}
if
(
match
.
MatchState
==
"waiting"
)
{
Debug
.
Log
(
"[MP Bridge] Waiting for players..."
);
var
started
=
false
;
void
OnStart
(
Match
m
)
{
if
(
m
.
MatchState
==
"started"
)
started
=
true
;
}
_matchService
.
OnMatchChanged
+=
OnStart
;
await
UniTask
.
WaitUntil
(()
=>
started
);
_matchService
.
OnMatchChanged
-=
OnStart
;
Debug
.
Log
(
"[MP Bridge] All players ready"
);
}
}
_game
.
InitMultiplayer
(
_matchService
.
CurrentMatch
,
_matchService
.
CurrentPlayers
);
_matchService
.
OnMatchChanged
+=
HandleMatchChanged
;
_matchService
.
OnPlayersChanged
+=
HandlePlayersChanged
;
_bound
=
true
;
Debug
.
Log
(
"[MP Bridge] Bound to match"
);
}
private
void
HandleMatchChanged
(
Match
match
)
{
_game
.
OnMatchChanged
(
match
);
}
private
void
HandlePlayersChanged
(
List
<
MatchPlayer
>
players
)
{
_game
.
OnPlayersChanged
(
players
);
}
public
void
ReportScore
(
int
points
)
{
if
(!
_bound
)
return
;
_matchService
.
AddScore
(
points
).
Forget
();
}
public
void
ReportFinished
()
{
if
(!
_bound
)
return
;
_matchService
.
FinishPlaying
().
Forget
();
}
public
async
UniTask
Leave
()
{
if
(!
_bound
||
_matchService
==
null
)
return
;
await
_matchService
.
LeaveMatch
();
Unbind
();
}
private
void
Unbind
()
{
if
(!
_bound
||
_matchService
==
null
)
return
;
_matchService
.
OnMatchChanged
-=
HandleMatchChanged
;
_matchService
.
OnPlayersChanged
-=
HandlePlayersChanged
;
_bound
=
false
;
Debug
.
Log
(
"[MP Bridge] Unbound"
);
}
private
void
OnDestroy
()
{
Unbind
();
}
}
My project/Assets/ScienceStreet/Shared/Scripts/MultiplayerBridge.cs.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: 73f8d50c2a9fd8012b057a1ecf5771e7
\ No newline at end of file
My project/Assets/_Recovery/0 (5).unity
0 → 100644
View file @
69557ade
This diff is collapsed.
Click to expand it.
My project/Assets/_Recovery/0 (5).unity.meta
0 → 100644
View file @
69557ade
fileFormatVersion: 2
guid: 9e38646d496cf83b48d584022a8ab565
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
My project/Packages/manifest.json
View file @
69557ade
...
@@ -10,6 +10,8 @@
...
@@ -10,6 +10,8 @@
"com.unity.ide.visualstudio"
:
"2.0.26"
,
"com.unity.ide.visualstudio"
:
"2.0.26"
,
"com.unity.inputsystem"
:
"1.18.0"
,
"com.unity.inputsystem"
:
"1.18.0"
,
"com.unity.multiplayer.center"
:
"1.0.1"
,
"com.unity.multiplayer.center"
:
"1.0.1"
,
"com.unity.multiplayer.center.quickstart"
:
"1.1.1"
,
"com.unity.multiplayer.playmode"
:
"2.0.2"
,
"com.unity.nuget.newtonsoft-json"
:
"3.2.2"
,
"com.unity.nuget.newtonsoft-json"
:
"3.2.2"
,
"com.unity.postprocessing"
:
"3.5.1"
,
"com.unity.postprocessing"
:
"3.5.1"
,
"com.unity.recorder"
:
"5.1.6"
,
"com.unity.recorder"
:
"5.1.6"
,
...
...
My project/Packages/packages-lock.json
View file @
69557ade
...
@@ -126,6 +126,25 @@
...
@@ -126,6 +126,25 @@
"com.unity.modules.uielements"
:
"1.0.0"
"com.unity.modules.uielements"
:
"1.0.0"
}
}
},
},
"com.unity.multiplayer.center.quickstart"
:
{
"version"
:
"1.1.1"
,
"depth"
:
0
,
"source"
:
"registry"
,
"dependencies"
:
{
"com.unity.modules.uielements"
:
"1.0.0"
,
"com.unity.multiplayer.center"
:
"1.0.0"
},
"url"
:
"https://packages.unity.com"
},
"com.unity.multiplayer.playmode"
:
{
"version"
:
"2.0.2"
,
"depth"
:
0
,
"source"
:
"registry"
,
"dependencies"
:
{
"com.unity.nuget.newtonsoft-json"
:
"2.0.2"
},
"url"
:
"https://packages.unity.com"
},
"com.unity.nuget.mono-cecil"
:
{
"com.unity.nuget.mono-cecil"
:
{
"version"
:
"1.11.6"
,
"version"
:
"1.11.6"
,
"depth"
:
2
,
"depth"
:
2
,
...
...
My project/ProjectSettings/VirtualProjectsConfig.json
0 → 100644
View file @
69557ade
{
"PlayerTags"
:
[],
"version"
:
"6000.3.0f1"
}
\ No newline at end of file
My project/UserSettings/EditorUserSettings.asset
View file @
69557ade
...
@@ -9,31 +9,31 @@ EditorUserSettings:
...
@@ -9,31 +9,31 @@ EditorUserSettings:
value
:
18134705175a055722080a3115371d4a0d55006876786860616b0471b8b2656eacb72ba5a52a362c3c0ee63201181433fe3e101bf3250b06144ca74c24f1190708e016c213c61a52f91c12cac80fd8edd298e1e4d1fde2cacddeacbcc1fee7eef0e3b6faa69af9ceaeaaec81a6d2c2c8c8c4b2e5dfd5ccd3f8cf
value
:
18134705175a055722080a3115371d4a0d55006876786860616b0471b8b2656eacb72ba5a52a362c3c0ee63201181433fe3e101bf3250b06144ca74c24f1190708e016c213c61a52f91c12cac80fd8edd298e1e4d1fde2cacddeacbcc1fee7eef0e3b6faa69af9ceaeaaec81a6d2c2c8c8c4b2e5dfd5ccd3f8cf
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-0
:
RecentlyUsedSceneGuid-0
:
value
:
520
8560200560f090f5d5e2743730e444516192b757e23667b7e4863b4e36c39
value
:
520
0570406560d58095e5c75432609124f154e737a2d2432787e4b62b4e1366a
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-1
:
RecentlyUsedSceneGuid-1
:
value
:
5
200570406560d58095e5c75432609124f154e737a2d2432787e4b62b4e1366a
value
:
5
45005025c000d0b0f5c087516715944424e4d7b747e2568287e4c64b6e1316e
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-2
:
RecentlyUsedSceneGuid-2
:
value
:
545005025c000d0b0f5c087516715944424e4d7b747e2568287e4c64b6e1316
e
value
:
0003525055055d020e0b0a7216755d444215417e787d27362e2f4866b2e1323
e
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-3
:
RecentlyUsedSceneGuid-3
:
value
:
0003525055055d020e0b0a7216755d444215417e787d27362e2f4866b2e132
3e
value
:
5305515503010a0e0f580977147208444e151a78787b726775711931bbe161
3e
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-4
:
RecentlyUsedSceneGuid-4
:
value
:
530
5515503010a0e0f580977147208444e151a78787b726775711931bbe1613e
value
:
530
4575f5c0c51035d5a5e771271594417154e7c2d7b70647b7b4c35bbe1646d
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-5
:
RecentlyUsedSceneGuid-5
:
value
:
5304575f5c0c51035d5a5e771271594417154e7c2d7b70647b7b4c35bbe1646d
value
:
0752035101010f0c54595b2046760e44134e4e7a7f7d71677c2c4836b7b4633e
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-6
:
RecentlyUsedSceneGuid-6
:
value
:
0752035101010f0c54595b2046760e44134e4e7a7f7d71677c2c4836b7b4633e
value
:
52080c51560d5f03580b5e7242700c4446164f7d2e7f77612c281f32e0b8603d
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-7
:
RecentlyUsedSceneGuid-7
:
value
:
5
701055506000a030f5c542744260844404f4d73797975367c2c1e6ab7e2653
d
value
:
5
a54075e53015f5f59575a21167b0c12424f1c7f747c76627f284532e0b5626
d
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-8
:
RecentlyUsedSceneGuid-8
:
value
:
5
2080c51560d5f03580b5e7242700c4446164f7d2e7f77612c281f32e0b860
3d
value
:
5
701055506000a030f5c542744260844404f4d73797975367c2c1e6ab7e265
3d
flags
:
0
flags
:
0
RecentlyUsedSceneGuid-9
:
RecentlyUsedSceneGuid-9
:
value
:
060203560401505a595d0a7345200d44404e1b7e2d707e617b7f4d63e7b6606b
value
:
060203560401505a595d0a7345200d44404e1b7e2d707e617b7f4d63e7b6606b
...
...
My project/UserSettings/Layouts/CurrentMaximizeLayout.dwlt
View file @
69557ade
...
@@ -19,12 +19,12 @@ MonoBehaviour:
...
@@ -19,12 +19,12 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
36
y
:
36
width
:
1904
width
:
948
height
:
983
height
:
983
m_MinSize
:
{
x
:
300
,
y
:
112
}
m_MinSize
:
{
x
:
300
,
y
:
112
}
m_MaxSize
:
{
x
:
24288
,
y
:
16192
}
m_MaxSize
:
{
x
:
24288
,
y
:
16192
}
vertical
:
0
vertical
:
0
controlID
:
17415
controlID
:
3276
draggingID
:
0
draggingID
:
0
---
!u!114
&2
---
!u!114
&2
MonoBehaviour
:
MonoBehaviour
:
...
@@ -47,9 +47,9 @@ MonoBehaviour:
...
@@ -47,9 +47,9 @@ MonoBehaviour:
m_TextWithWhitespace
:
"
Game
\u200B
"
m_TextWithWhitespace
:
"
Game
\u200B
"
m_Pos
:
m_Pos
:
serializedVersion
:
2
serializedVersion
:
2
x
:
355
x
:
177
y
:
61
y
:
61
width
:
1097
width
:
545
height
:
606
height
:
606
m_SerializedDataModeController
:
m_SerializedDataModeController
:
m_DataMode
:
0
m_DataMode
:
0
...
@@ -97,7 +97,7 @@ MonoBehaviour:
...
@@ -97,7 +97,7 @@ MonoBehaviour:
m_HSlider
:
0
m_HSlider
:
0
m_VSlider
:
0
m_VSlider
:
0
m_IgnoreScrollWheelUntilClicked
:
0
m_IgnoreScrollWheelUntilClicked
:
0
m_EnableMouseInput
:
0
m_EnableMouseInput
:
1
m_EnableSliderZoomHorizontal
:
0
m_EnableSliderZoomHorizontal
:
0
m_EnableSliderZoomVertical
:
0
m_EnableSliderZoomVertical
:
0
m_UniformScale
:
1
m_UniformScale
:
1
...
@@ -106,23 +106,23 @@ MonoBehaviour:
...
@@ -106,23 +106,23 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
21
y
:
21
width
:
1097
width
:
545
height
:
585
height
:
585
m_Scale
:
{
x
:
0.2437
5
,
y
:
0.24375
}
m_Scale
:
{
x
:
0.2437
4999
,
y
:
0.24375
}
m_Translation
:
{
x
:
548
.5
,
y
:
292.5
}
m_Translation
:
{
x
:
272
.5
,
y
:
292.5
}
m_MarginLeft
:
0
m_MarginLeft
:
0
m_MarginRight
:
0
m_MarginRight
:
0
m_MarginTop
:
0
m_MarginTop
:
0
m_MarginBottom
:
0
m_MarginBottom
:
0
m_LastShownAreaInsideMargins
:
m_LastShownAreaInsideMargins
:
serializedVersion
:
2
serializedVersion
:
2
x
:
-
2250.2563
x
:
-
1117.9487
y
:
-1200
y
:
-1200
width
:
4500.5127
width
:
2235.8975
height
:
2400
height
:
2400
m_MinimalGUI
:
1
m_MinimalGUI
:
1
m_defaultScale
:
0.24375
m_defaultScale
:
0.24375
m_LastWindowPixelSize
:
{
x
:
1097
,
y
:
606
}
m_LastWindowPixelSize
:
{
x
:
545
,
y
:
606
}
m_ClearInEditMode
:
1
m_ClearInEditMode
:
1
m_NoCameraWarning
:
1
m_NoCameraWarning
:
1
m_LowResolutionForAspectRatios
:
01000000000000000000
m_LowResolutionForAspectRatios
:
01000000000000000000
...
@@ -148,12 +148,12 @@ MonoBehaviour:
...
@@ -148,12 +148,12 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
0
y
:
0
width
:
145
4
width
:
72
4
height
:
983
height
:
983
m_MinSize
:
{
x
:
200
,
y
:
112
}
m_MinSize
:
{
x
:
200
,
y
:
112
}
m_MaxSize
:
{
x
:
16192
,
y
:
16192
}
m_MaxSize
:
{
x
:
16192
,
y
:
16192
}
vertical
:
1
vertical
:
1
controlID
:
17416
controlID
:
3277
draggingID
:
0
draggingID
:
0
---
!u!114
&4
---
!u!114
&4
MonoBehaviour
:
MonoBehaviour
:
...
@@ -174,12 +174,12 @@ MonoBehaviour:
...
@@ -174,12 +174,12 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
0
y
:
0
width
:
145
4
width
:
72
4
height
:
632
height
:
632
m_MinSize
:
{
x
:
200
,
y
:
56
}
m_MinSize
:
{
x
:
200
,
y
:
56
}
m_MaxSize
:
{
x
:
16192
,
y
:
8096
}
m_MaxSize
:
{
x
:
16192
,
y
:
8096
}
vertical
:
0
vertical
:
0
controlID
:
17417
controlID
:
3278
draggingID
:
0
draggingID
:
0
---
!u!114
&5
---
!u!114
&5
MonoBehaviour
:
MonoBehaviour
:
...
@@ -198,7 +198,7 @@ MonoBehaviour:
...
@@ -198,7 +198,7 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
0
y
:
0
width
:
355
width
:
177
height
:
632
height
:
632
m_MinSize
:
{
x
:
201
,
y
:
226
}
m_MinSize
:
{
x
:
201
,
y
:
226
}
m_MaxSize
:
{
x
:
4001
,
y
:
4026
}
m_MaxSize
:
{
x
:
4001
,
y
:
4026
}
...
@@ -230,7 +230,7 @@ MonoBehaviour:
...
@@ -230,7 +230,7 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
61
y
:
61
width
:
354
width
:
176
height
:
606
height
:
606
m_SerializedDataModeController
:
m_SerializedDataModeController
:
m_DataMode
:
0
m_DataMode
:
0
...
@@ -253,32 +253,11 @@ MonoBehaviour:
...
@@ -253,32 +253,11 @@ MonoBehaviour:
m_LastClickedID
:
m_LastClickedID
:
m_Data
:
0
m_Data
:
0
m_ExpandedIDs
:
m_ExpandedIDs
:
-
m_Data
:
-71546
-
m_Data
:
-39438
-
m_Data
:
-68228
-
m_Data
:
-33872
-
m_Data
:
-44434
-
m_Data
:
-31324
-
m_Data
:
-44200
-
m_Data
:
-14854
-
m_Data
:
-43538
-
m_Data
:
-38984
-
m_Data
:
-37594
-
m_Data
:
-37584
-
m_Data
:
-37574
-
m_Data
:
-32768
-
m_Data
:
-22248
-
m_Data
:
-16466
-
m_Data
:
-8816
-
m_Data
:
-1344
-
m_Data
:
-1344
-
m_Data
:
-12
-
m_Data
:
58532
-
m_Data
:
58540
-
m_Data
:
58550
-
m_Data
:
58582
-
m_Data
:
62798
-
m_Data
:
71130
-
m_Data
:
71352
-
m_Data
:
75232
-
m_Data
:
75264
-
m_Data
:
76034
-
m_Data
:
76064
m_RenameOverlay
:
m_RenameOverlay
:
m_UserAcceptedRename
:
0
m_UserAcceptedRename
:
0
m_Name
:
m_Name
:
...
@@ -319,9 +298,9 @@ MonoBehaviour:
...
@@ -319,9 +298,9 @@ MonoBehaviour:
m_Children
:
[]
m_Children
:
[]
m_Position
:
m_Position
:
serializedVersion
:
2
serializedVersion
:
2
x
:
355
x
:
177
y
:
0
y
:
0
width
:
1099
width
:
547
height
:
632
height
:
632
m_MinSize
:
{
x
:
202
,
y
:
226
}
m_MinSize
:
{
x
:
202
,
y
:
226
}
m_MaxSize
:
{
x
:
4002
,
y
:
4026
}
m_MaxSize
:
{
x
:
4002
,
y
:
4026
}
...
@@ -940,9 +919,9 @@ MonoBehaviour:
...
@@ -940,9 +919,9 @@ MonoBehaviour:
m_AudioPlay
:
0
m_AudioPlay
:
0
m_DebugDrawModesUseInteractiveLightBakingData
:
0
m_DebugDrawModesUseInteractiveLightBakingData
:
0
m_Position
:
m_Position
:
m_Target
:
{
x
:
0
,
y
:
0
,
z
:
0
}
m_Target
:
{
x
:
0
.043204196
,
y
:
-0.01800735
,
z
:
-0.0003897087
}
speed
:
2
speed
:
2
m_Value
:
{
x
:
0
,
y
:
0
,
z
:
0
}
m_Value
:
{
x
:
0
.043204196
,
y
:
-0.01800735
,
z
:
-0.0003897087
}
m_RenderMode
:
0
m_RenderMode
:
0
m_CameraMode
:
m_CameraMode
:
drawMode
:
0
drawMode
:
0
...
@@ -992,9 +971,9 @@ MonoBehaviour:
...
@@ -992,9 +971,9 @@ MonoBehaviour:
speed
:
2
speed
:
2
m_Value
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
1
}
m_Value
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
1
}
m_Size
:
m_Size
:
m_Target
:
0.
8660254
m_Target
:
0.
9049965
speed
:
2
speed
:
2
m_Value
:
0.
8660254
m_Value
:
0.
9049965
m_Ortho
:
m_Ortho
:
m_Target
:
1
m_Target
:
1
speed
:
2
speed
:
2
...
@@ -1038,25 +1017,25 @@ MonoBehaviour:
...
@@ -1038,25 +1017,25 @@ MonoBehaviour:
m_Enabled
:
1
m_Enabled
:
1
m_EditorHideFlags
:
1
m_EditorHideFlags
:
1
m_Script
:
{
fileID
:
12006
,
guid
:
0000000000000000e000000000000000
,
type
:
0
}
m_Script
:
{
fileID
:
12006
,
guid
:
0000000000000000e000000000000000
,
type
:
0
}
m_Name
:
ConsoleWindow
m_Name
:
ProjectBrowser
m_EditorClassIdentifier
:
m_EditorClassIdentifier
:
m_Children
:
[]
m_Children
:
[]
m_Position
:
m_Position
:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
632
y
:
632
width
:
145
4
width
:
72
4
height
:
351
height
:
351
m_MinSize
:
{
x
:
101
,
y
:
12
6
}
m_MinSize
:
{
x
:
231
,
y
:
27
6
}
m_MaxSize
:
{
x
:
4001
,
y
:
4
026
}
m_MaxSize
:
{
x
:
10001
,
y
:
10
026
}
m_ActualView
:
{
fileID
:
1
1
}
m_ActualView
:
{
fileID
:
1
0
}
m_Panes
:
m_Panes
:
-
{
fileID
:
10
}
-
{
fileID
:
10
}
-
{
fileID
:
11
}
-
{
fileID
:
11
}
-
{
fileID
:
12
}
-
{
fileID
:
12
}
-
{
fileID
:
13
}
-
{
fileID
:
13
}
m_Selected
:
1
m_Selected
:
0
m_LastSelected
:
0
m_LastSelected
:
1
---
!u!114
&10
---
!u!114
&10
MonoBehaviour
:
MonoBehaviour
:
m_ObjectHideFlags
:
52
m_ObjectHideFlags
:
52
...
@@ -1080,7 +1059,7 @@ MonoBehaviour:
...
@@ -1080,7 +1059,7 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
693
y
:
693
width
:
145
3
width
:
72
3
height
:
325
height
:
325
m_SerializedDataModeController
:
m_SerializedDataModeController
:
m_DataMode
:
0
m_DataMode
:
0
...
@@ -1106,7 +1085,7 @@ MonoBehaviour:
...
@@ -1106,7 +1085,7 @@ MonoBehaviour:
m_SkipHidden
:
0
m_SkipHidden
:
0
m_SearchArea
:
1
m_SearchArea
:
1
m_Folders
:
m_Folders
:
-
Assets/App
/Infrastructure
-
Assets/App
UI/Scenes
m_Globs
:
[]
m_Globs
:
[]
m_ProductIds
:
m_ProductIds
:
m_AnyWithAssetOrigin
:
0
m_AnyWithAssetOrigin
:
0
...
@@ -1116,7 +1095,7 @@ MonoBehaviour:
...
@@ -1116,7 +1095,7 @@ MonoBehaviour:
m_ViewMode
:
1
m_ViewMode
:
1
m_StartGridSize
:
96
m_StartGridSize
:
96
m_LastFolders
:
m_LastFolders
:
-
Assets/App
/Infrastructure
-
Assets/App
UI/Scenes
m_LastFoldersGridSize
:
96
m_LastFoldersGridSize
:
96
m_LastProjectPath
:
/home/p0wer/development/ssbookminigames/My project
m_LastProjectPath
:
/home/p0wer/development/ssbookminigames/My project
m_LockTracker
:
m_LockTracker
:
...
@@ -1125,12 +1104,19 @@ MonoBehaviour:
...
@@ -1125,12 +1104,19 @@ MonoBehaviour:
m_FolderTreeState
:
m_FolderTreeState
:
scrollPos
:
{
x
:
0
,
y
:
79
}
scrollPos
:
{
x
:
0
,
y
:
79
}
m_SelectedIDs
:
m_SelectedIDs
:
-
m_Data
:
5829
4
-
m_Data
:
6973
4
m_LastClickedID
:
m_LastClickedID
:
m_Data
:
5829
4
m_Data
:
6973
4
m_ExpandedIDs
:
m_ExpandedIDs
:
-
m_Data
:
0
-
m_Data
:
0
-
m_Data
:
56354
-
m_Data
:
56574
-
m_Data
:
59308
-
m_Data
:
59326
-
m_Data
:
59346
-
m_Data
:
59352
-
m_Data
:
72336
-
m_Data
:
72338
-
m_Data
:
72340
-
m_Data
:
1000000000
-
m_Data
:
1000000000
-
m_Data
:
2147483647
-
m_Data
:
2147483647
m_RenameOverlay
:
m_RenameOverlay
:
...
@@ -1165,7 +1151,7 @@ MonoBehaviour:
...
@@ -1165,7 +1151,7 @@ MonoBehaviour:
m_Data
:
0
m_Data
:
0
m_ExpandedIDs
:
m_ExpandedIDs
:
-
m_Data
:
0
-
m_Data
:
0
-
m_Data
:
56
35
4
-
m_Data
:
56
57
4
-
m_Data
:
1000000000
-
m_Data
:
1000000000
-
m_Data
:
2147483647
-
m_Data
:
2147483647
m_RenameOverlay
:
m_RenameOverlay
:
...
@@ -1195,14 +1181,14 @@ MonoBehaviour:
...
@@ -1195,14 +1181,14 @@ MonoBehaviour:
m_ResourceFile
:
m_ResourceFile
:
m_ListAreaState
:
m_ListAreaState
:
m_SelectedInstanceIDs
:
m_SelectedInstanceIDs
:
-
m_Data
:
6208
2
-
m_Data
:
3126
2
m_LastClickedInstanceID
:
6208
2
m_LastClickedInstanceID
:
3126
2
m_HadKeyboardFocusLastEvent
:
1
m_HadKeyboardFocusLastEvent
:
1
m_ExpandedInstanceIDs
:
m_ExpandedInstanceIDs
:
-
m_Data
:
46526
-
m_Data
:
46526
-
m_Data
:
61214
-
m_Data
:
61214
-
m_Data
:
54106
-
m_Data
:
54106
-
m_Data
:
5
9494
-
m_Data
:
5
7932
m_RenameOverlay
:
m_RenameOverlay
:
m_UserAcceptedRename
:
0
m_UserAcceptedRename
:
0
m_Name
:
m_Name
:
...
@@ -1381,12 +1367,12 @@ MonoBehaviour:
...
@@ -1381,12 +1367,12 @@ MonoBehaviour:
m_Children
:
[]
m_Children
:
[]
m_Position
:
m_Position
:
serializedVersion
:
2
serializedVersion
:
2
x
:
145
4
x
:
72
4
y
:
0
y
:
0
width
:
450
width
:
224
height
:
983
height
:
983
m_MinSize
:
{
x
:
27
6
,
y
:
76
}
m_MinSize
:
{
x
:
27
5
,
y
:
50
}
m_MaxSize
:
{
x
:
400
1
,
y
:
4026
}
m_MaxSize
:
{
x
:
400
0
,
y
:
4000
}
m_ActualView
:
{
fileID
:
15
}
m_ActualView
:
{
fileID
:
15
}
m_Panes
:
m_Panes
:
-
{
fileID
:
15
}
-
{
fileID
:
15
}
...
@@ -1413,9 +1399,9 @@ MonoBehaviour:
...
@@ -1413,9 +1399,9 @@ MonoBehaviour:
m_TextWithWhitespace
:
"
Inspector
\u200B
"
m_TextWithWhitespace
:
"
Inspector
\u200B
"
m_Pos
:
m_Pos
:
serializedVersion
:
2
serializedVersion
:
2
x
:
145
4
x
:
72
4
y
:
61
y
:
61
width
:
449
width
:
223
height
:
957
height
:
957
m_SerializedDataModeController
:
m_SerializedDataModeController
:
m_DataMode
:
0
m_DataMode
:
0
...
...
My project/UserSettings/Layouts/default-6000.dwlt
View file @
69557ade
...
@@ -641,23 +641,23 @@ MonoBehaviour:
...
@@ -641,23 +641,23 @@ MonoBehaviour:
serializedVersion
:
2
serializedVersion
:
2
x
:
0
x
:
0
y
:
21
y
:
21
width
:
1097
width
:
545
height
:
585
height
:
585
m_Scale
:
{
x
:
0.24375
,
y
:
0.24375
}
m_Scale
:
{
x
:
0.24375
,
y
:
0.24375
}
m_Translation
:
{
x
:
548
.5
,
y
:
292.5
}
m_Translation
:
{
x
:
272
.5
,
y
:
292.5
}
m_MarginLeft
:
0
m_MarginLeft
:
0
m_MarginRight
:
0
m_MarginRight
:
0
m_MarginTop
:
0
m_MarginTop
:
0
m_MarginBottom
:
0
m_MarginBottom
:
0
m_LastShownAreaInsideMargins
:
m_LastShownAreaInsideMargins
:
serializedVersion
:
2
serializedVersion
:
2
x
:
-
2250.2563
x
:
-
1117.9487
y
:
-1200
y
:
-1200
width
:
4500.5127
width
:
2235.8975
height
:
2400
height
:
2400
m_MinimalGUI
:
1
m_MinimalGUI
:
1
m_defaultScale
:
0.24375
m_defaultScale
:
0.24375
m_LastWindowPixelSize
:
{
x
:
1097
,
y
:
606
}
m_LastWindowPixelSize
:
{
x
:
545
,
y
:
606
}
m_ClearInEditMode
:
1
m_ClearInEditMode
:
1
m_NoCameraWarning
:
1
m_NoCameraWarning
:
1
m_LowResolutionForAspectRatios
:
01000000000000000000
m_LowResolutionForAspectRatios
:
01000000000000000000
...
@@ -1380,9 +1380,9 @@ MonoBehaviour:
...
@@ -1380,9 +1380,9 @@ MonoBehaviour:
m_AudioPlay
:
0
m_AudioPlay
:
0
m_DebugDrawModesUseInteractiveLightBakingData
:
0
m_DebugDrawModesUseInteractiveLightBakingData
:
0
m_Position
:
m_Position
:
m_Target
:
{
x
:
632.0484
,
y
:
1166.8389
,
z
:
-2.3196595
}
m_Target
:
{
x
:
0
,
y
:
0
,
z
:
0
}
speed
:
2
speed
:
2
m_Value
:
{
x
:
632.0484
,
y
:
1166.8389
,
z
:
-2.3196595
}
m_Value
:
{
x
:
0
,
y
:
0
,
z
:
0
}
m_RenderMode
:
0
m_RenderMode
:
0
m_CameraMode
:
m_CameraMode
:
drawMode
:
0
drawMode
:
0
...
@@ -1432,9 +1432,9 @@ MonoBehaviour:
...
@@ -1432,9 +1432,9 @@ MonoBehaviour:
speed
:
2
speed
:
2
m_Value
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
1
}
m_Value
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
1
}
m_Size
:
m_Size
:
m_Target
:
311.54352
m_Target
:
0.8660254
speed
:
2
speed
:
2
m_Value
:
311.54352
m_Value
:
0.8660254
m_Ortho
:
m_Ortho
:
m_Target
:
1
m_Target
:
1
speed
:
2
speed
:
2
...
@@ -1541,7 +1541,7 @@ MonoBehaviour:
...
@@ -1541,7 +1541,7 @@ MonoBehaviour:
m_Data
:
58130
m_Data
:
58130
m_ExpandedIDs
:
m_ExpandedIDs
:
-
m_Data
:
0
-
m_Data
:
0
-
m_Data
:
56
35
4
-
m_Data
:
56
57
4
m_RenameOverlay
:
m_RenameOverlay
:
m_UserAcceptedRename
:
0
m_UserAcceptedRename
:
0
m_Name
:
m_Name
:
...
@@ -1574,7 +1574,7 @@ MonoBehaviour:
...
@@ -1574,7 +1574,7 @@ MonoBehaviour:
m_Data
:
0
m_Data
:
0
m_ExpandedIDs
:
m_ExpandedIDs
:
-
m_Data
:
0
-
m_Data
:
0
-
m_Data
:
56
35
4
-
m_Data
:
56
57
4
m_RenameOverlay
:
m_RenameOverlay
:
m_UserAcceptedRename
:
0
m_UserAcceptedRename
:
0
m_Name
:
m_Name
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment