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
Hide 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
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
Cysharp.Threading.Tasks
;
using
Supabase.Realtime
;
using
Supabase.Realtime.PostgresChanges
;
using
UnityEngine
;
public
class
MatchService
:
Singleton
<
MatchService
>,
IDisposable
{
private
readonly
Supabase
.
Client
_supabase
;
private
readonly
string
_userId
;
private
readonly
string
_username
;
private
RealtimeChannel
_matchChannel
;
private
RealtimeChannel
_playersChannel
;
private
string
_currentMatchId
;
private
bool
_isHost
;
public
Match
CurrentMatch
{
get
;
private
set
;
}
public
List
<
MatchPlayer
>
CurrentPlayers
{
get
;
private
set
;
}
=
new
();
public
MatchPlayer
Me
=>
CurrentPlayers
.
FirstOrDefault
(
p
=>
p
.
UserId
==
_userId
);
public
bool
IsInMatch
=>
CurrentMatch
!=
null
&&
CurrentMatch
.
MatchState
!=
"finished"
;
public
bool
IsHost
=>
_isHost
;
public
event
Action
<
Match
>
OnMatchChanged
;
public
event
Action
<
List
<
MatchPlayer
>>
OnPlayersChanged
;
public
MatchService
()
{
_supabase
=
SupabaseManager
.
Instance
.
Supabase
();
_userId
=
UserService
.
Instance
.
CurrentUser
.
Id
;
_username
=
UserService
.
Instance
.
CurrentUser
.
DisplayName
;
}
public
async
UniTask
<
Match
>
FindMatch
()
{
var
existing
=
await
GetExistingMatch
();
if
(
existing
!=
null
)
{
Debug
.
Log
(
$"[Match] Already in match:
{
existing
.
Id
}
"
);
return
existing
;
}
var
response
=
await
_supabase
.
From
<
Match
>()
.
Select
(
"*"
)
.
Filter
(
"match_state"
,
Supabase
.
Postgrest
.
Constants
.
Operator
.
Equals
,
"waiting"
)
.
Filter
(
"player_count"
,
Supabase
.
Postgrest
.
Constants
.
Operator
.
LessThan
,
"4"
)
.
Order
(
"created_at"
,
Supabase
.
Postgrest
.
Constants
.
Ordering
.
Ascending
)
.
Limit
(
1
)
.
Get
();
Match
match
;
if
(
response
.
Models
.
Count
>
0
)
{
match
=
response
.
Models
[
0
];
_isHost
=
false
;
Debug
.
Log
(
$"[Match] Found existing match:
{
match
.
Id
}
"
);
}
else
{
var
newMatch
=
new
Match
{
MatchState
=
"waiting"
,
PlayerCount
=
0
,
};
var
createResponse
=
await
_supabase
.
From
<
Match
>()
.
Insert
(
newMatch
);
match
=
createResponse
.
Models
[
0
];
_isHost
=
true
;
Debug
.
Log
(
$"[Match] Created new match:
{
match
.
Id
}
(host)"
);
}
_currentMatchId
=
match
.
Id
;
CurrentMatch
=
match
;
await
JoinMatch
(
match
);
await
RefreshPlayers
();
SubscribeToMatch
();
return
CurrentMatch
;
}
private
async
UniTask
<
Match
>
GetExistingMatch
()
{
var
playerResponse
=
await
_supabase
.
From
<
MatchPlayer
>()
.
Select
(
"match_id"
)
.
Filter
(
"user_id"
,
Supabase
.
Postgrest
.
Constants
.
Operator
.
Equals
,
_userId
)
.
Get
();
if
(
playerResponse
.
Models
.
Count
==
0
)
return
null
;
foreach
(
var
mp
in
playerResponse
.
Models
)
{
var
matchResponse
=
await
_supabase
.
From
<
Match
>()
.
Select
(
"*"
)
.
Filter
(
"id"
,
Supabase
.
Postgrest
.
Constants
.
Operator
.
Equals
,
mp
.
MatchId
)
.
Filter
(
"match_state"
,
Supabase
.
Postgrest
.
Constants
.
Operator
.
In
,
new
List
<
string
>
{
"waiting"
,
"started"
})
.
Get
();
if
(
matchResponse
.
Models
.
Count
>
0
)
{
var
match
=
matchResponse
.
Models
[
0
];
_currentMatchId
=
match
.
Id
;
CurrentMatch
=
match
;
_isHost
=
false
;
// Reconnecting, don't assume host
await
RefreshPlayers
();
SubscribeToMatch
();
return
match
;
}
}
return
null
;
}
private
async
UniTask
RefreshPlayers
()
{
var
response
=
await
_supabase
.
From
<
MatchPlayer
>()
.
Where
(
p
=>
p
.
MatchId
==
_currentMatchId
)
.
Order
(
"joined_at"
,
Supabase
.
Postgrest
.
Constants
.
Ordering
.
Ascending
)
.
Get
();
CurrentPlayers
=
response
.
Models
;
}
private
async
UniTask
JoinMatch
(
Match
match
)
{
var
player
=
new
MatchPlayer
{
MatchId
=
match
.
Id
,
UserId
=
_userId
,
Username
=
_username
,
Score
=
0
,
HasFinished
=
false
,
};
await
_supabase
.
From
<
MatchPlayer
>()
.
Insert
(
player
);
var
newCount
=
match
.
PlayerCount
+
1
;
if
(
newCount
>=
2
)
{
await
_supabase
.
From
<
Match
>()
.
Where
(
m
=>
m
.
Id
==
match
.
Id
)
.
Set
(
m
=>
m
.
PlayerCount
,
newCount
)
.
Set
(
m
=>
m
.
MatchState
,
"started"
)
.
Set
(
m
=>
m
.
StartedAt
,
DateTime
.
UtcNow
)
.
Update
();
CurrentMatch
.
MatchState
=
"started"
;
CurrentMatch
.
StartedAt
=
DateTime
.
UtcNow
;
}
else
{
await
_supabase
.
From
<
Match
>()
.
Where
(
m
=>
m
.
Id
==
match
.
Id
)
.
Set
(
m
=>
m
.
PlayerCount
,
newCount
)
.
Update
();
}
CurrentMatch
.
PlayerCount
=
newCount
;
Debug
.
Log
(
$"[Match] Joined as player
{
newCount
}{(
_isHost
?
" (host)"
:
""
)}
"
);
}
private
void
SubscribeToMatch
()
{
_matchChannel
?.
Unsubscribe
();
_playersChannel
?.
Unsubscribe
();
_matchChannel
=
_supabase
.
Realtime
.
Channel
(
$"match-
{
_currentMatchId
}
"
);
_matchChannel
.
Register
(
new
PostgresChangesOptions
(
schema
:
"public"
,
table
:
"matches"
,
eventType
:
PostgresChangesOptions
.
ListenType
.
Updates
,
filter
:
$"id=eq.
{
_currentMatchId
}
"
));
_matchChannel
.
AddPostgresChangeHandler
(
listenType
:
PostgresChangesOptions
.
ListenType
.
Updates
,
(
_
,
change
)
=>
{
var
match
=
change
.
Model
<
Match
>();
UniTask
.
Post
(()
=>
{
CurrentMatch
=
match
;
OnMatchChanged
?.
Invoke
(
match
);
});
});
_playersChannel
=
_supabase
.
Realtime
.
Channel
(
$"players-
{
_currentMatchId
}
"
);
_playersChannel
.
Register
(
new
PostgresChangesOptions
(
schema
:
"public"
,
table
:
"match_players"
,
eventType
:
PostgresChangesOptions
.
ListenType
.
All
,
filter
:
$"match_id=eq.
{
_currentMatchId
}
"
));
_playersChannel
.
AddPostgresChangeHandler
(
listenType
:
PostgresChangesOptions
.
ListenType
.
All
,
(
_
,
change
)
=>
{
var
player
=
change
.
Model
<
MatchPlayer
>();
UniTask
.
Post
(()
=>
{
switch
(
change
.
Payload
.
Data
.
Type
)
{
case
Supabase
.
Realtime
.
Constants
.
EventType
.
Insert
:
CurrentPlayers
.
Add
(
player
);
break
;
case
Supabase
.
Realtime
.
Constants
.
EventType
.
Update
:
var
index
=
CurrentPlayers
.
FindIndex
(
p
=>
p
.
UserId
==
player
.
UserId
);
if
(
index
>=
0
)
CurrentPlayers
[
index
]
=
player
;
break
;
case
Supabase
.
Realtime
.
Constants
.
EventType
.
Delete
:
CurrentPlayers
.
RemoveAll
(
p
=>
p
.
UserId
==
player
.
UserId
);
break
;
}
OnPlayersChanged
?.
Invoke
(
CurrentPlayers
);
});
});
_matchChannel
.
Subscribe
();
_playersChannel
.
Subscribe
();
Debug
.
Log
(
$"[Match] Subscribed to realtime for
{
_currentMatchId
}
"
);
}
public
async
UniTask
AddScore
(
int
points
)
{
var
me
=
Me
;
if
(
me
==
null
)
{
Debug
.
LogError
(
"[Match] Not in match"
);
return
;
}
var
newScore
=
me
.
Score
+
points
;
await
_supabase
.
From
<
MatchPlayer
>()
.
Where
(
p
=>
p
.
MatchId
==
_currentMatchId
)
.
Where
(
p
=>
p
.
UserId
==
_userId
)
.
Set
(
p
=>
p
.
Score
,
newScore
)
.
Update
();
me
.
Score
=
newScore
;
Debug
.
Log
(
$"[Match] Score:
{
newScore
}
"
);
}
public
async
UniTask
FinishPlaying
()
{
await
_supabase
.
From
<
MatchPlayer
>()
.
Where
(
p
=>
p
.
MatchId
==
_currentMatchId
)
.
Where
(
p
=>
p
.
UserId
==
_userId
)
.
Set
(
p
=>
p
.
HasFinished
,
true
)
.
Update
();
var
me
=
Me
;
if
(
me
!=
null
)
me
.
HasFinished
=
true
;
var
allFinished
=
CurrentPlayers
.
All
(
p
=>
p
.
HasFinished
);
if
(
allFinished
)
{
await
_supabase
.
From
<
Match
>()
.
Where
(
m
=>
m
.
Id
==
_currentMatchId
)
.
Set
(
m
=>
m
.
MatchState
,
"finished"
)
.
Set
(
m
=>
m
.
FinishedAt
,
DateTime
.
UtcNow
)
.
Update
();
}
Debug
.
Log
(
$"[Match] Finished. All done:
{
allFinished
}
"
);
}
public
async
UniTask
LeaveMatch
()
{
if
(
_currentMatchId
==
null
)
return
;
if
(
_isHost
)
{
// Host created this match — nuke everything
// CASCADE on match_players FK handles player rows
await
_supabase
.
From
<
Match
>()
.
Where
(
m
=>
m
.
Id
==
_currentMatchId
)
.
Delete
();
Debug
.
Log
(
"[Match] Host left — match deleted"
);
}
else
{
// Guest — just remove yourself
await
_supabase
.
From
<
MatchPlayer
>()
.
Where
(
p
=>
p
.
MatchId
==
_currentMatchId
)
.
Where
(
p
=>
p
.
UserId
==
_userId
)
.
Delete
();
await
_supabase
.
From
<
Match
>()
.
Where
(
m
=>
m
.
Id
==
_currentMatchId
)
.
Set
(
m
=>
m
.
PlayerCount
,
CurrentMatch
.
PlayerCount
-
1
)
.
Update
();
Debug
.
Log
(
"[Match] Guest left"
);
}
Dispose
();
}
// Add this method to MatchService
public
void
LeaveMatchSync
()
{
if
(
_currentMatchId
==
null
)
return
;
try
{
if
(
_isHost
)
{
_supabase
.
From
<
Match
>()
.
Where
(
m
=>
m
.
Id
==
_currentMatchId
)
.
Delete
()
.
GetAwaiter
()
.
GetResult
();
}
else
{
_supabase
.
From
<
MatchPlayer
>()
.
Where
(
p
=>
p
.
MatchId
==
_currentMatchId
)
.
Where
(
p
=>
p
.
UserId
==
_userId
)
.
Delete
()
.
GetAwaiter
()
.
GetResult
();
}
}
catch
(
Exception
e
)
{
Debug
.
LogError
(
$"[Match] Sync cleanup failed:
{
e
.
Message
}
"
);
}
Dispose
();
Debug
.
Log
(
"[Match] Sync leave complete"
);
}
public
void
Dispose
()
{
_matchChannel
?.
Unsubscribe
();
_playersChannel
?.
Unsubscribe
();
_matchChannel
=
null
;
_playersChannel
=
null
;
CurrentMatch
=
null
;
CurrentPlayers
.
Clear
();
_currentMatchId
=
null
;
_isHost
=
false
;
OnMatchChanged
=
null
;
OnPlayersChanged
=
null
;
Debug
.
Log
(
"[Match] Disposed"
);
}
}
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
%YAML
1.1
%TAG
!u!
tag:unity3d.com,2011:
---
!u!29
&1
OcclusionCullingSettings
:
m_ObjectHideFlags
:
0
serializedVersion
:
2
m_OcclusionBakeSettings
:
smallestOccluder
:
5
smallestHole
:
0.25
backfaceThreshold
:
100
m_SceneGUID
:
00000000000000000000000000000000
m_OcclusionCullingData
:
{
fileID
:
0
}
---
!u!104
&2
RenderSettings
:
m_ObjectHideFlags
:
0
serializedVersion
:
10
m_Fog
:
0
m_FogColor
:
{
r
:
0.5
,
g
:
0.5
,
b
:
0.5
,
a
:
1
}
m_FogMode
:
3
m_FogDensity
:
0.01
m_LinearFogStart
:
0
m_LinearFogEnd
:
300
m_AmbientSkyColor
:
{
r
:
0.212
,
g
:
0.227
,
b
:
0.259
,
a
:
1
}
m_AmbientEquatorColor
:
{
r
:
0.114
,
g
:
0.125
,
b
:
0.133
,
a
:
1
}
m_AmbientGroundColor
:
{
r
:
0.047
,
g
:
0.043
,
b
:
0.035
,
a
:
1
}
m_AmbientIntensity
:
1
m_AmbientMode
:
0
m_SubtractiveShadowColor
:
{
r
:
0.42
,
g
:
0.478
,
b
:
0.627
,
a
:
1
}
m_SkyboxMaterial
:
{
fileID
:
10304
,
guid
:
0000000000000000f000000000000000
,
type
:
0
}
m_HaloStrength
:
0.5
m_FlareStrength
:
1
m_FlareFadeSpeed
:
3
m_HaloTexture
:
{
fileID
:
0
}
m_SpotCookie
:
{
fileID
:
10001
,
guid
:
0000000000000000e000000000000000
,
type
:
0
}
m_DefaultReflectionMode
:
0
m_DefaultReflectionResolution
:
128
m_ReflectionBounces
:
1
m_ReflectionIntensity
:
1
m_CustomReflection
:
{
fileID
:
0
}
m_Sun
:
{
fileID
:
0
}
m_UseRadianceAmbientProbe
:
0
---
!u!157
&3
LightmapSettings
:
m_ObjectHideFlags
:
0
serializedVersion
:
13
m_BakeOnSceneLoad
:
0
m_GISettings
:
serializedVersion
:
2
m_BounceScale
:
1
m_IndirectOutputScale
:
1
m_AlbedoBoost
:
1
m_EnvironmentLightingMode
:
0
m_EnableBakedLightmaps
:
1
m_EnableRealtimeLightmaps
:
0
m_LightmapEditorSettings
:
serializedVersion
:
12
m_Resolution
:
2
m_BakeResolution
:
40
m_AtlasSize
:
1024
m_AO
:
0
m_AOMaxDistance
:
1
m_CompAOExponent
:
1
m_CompAOExponentDirect
:
0
m_ExtractAmbientOcclusion
:
0
m_Padding
:
2
m_LightmapParameters
:
{
fileID
:
0
}
m_LightmapsBakeMode
:
1
m_TextureCompression
:
1
m_ReflectionCompression
:
2
m_MixedBakeMode
:
2
m_BakeBackend
:
2
m_PVRSampling
:
1
m_PVRDirectSampleCount
:
32
m_PVRSampleCount
:
512
m_PVRBounces
:
2
m_PVREnvironmentSampleCount
:
256
m_PVREnvironmentReferencePointCount
:
2048
m_PVRFilteringMode
:
1
m_PVRDenoiserTypeDirect
:
1
m_PVRDenoiserTypeIndirect
:
1
m_PVRDenoiserTypeAO
:
1
m_PVRFilterTypeDirect
:
0
m_PVRFilterTypeIndirect
:
0
m_PVRFilterTypeAO
:
0
m_PVREnvironmentMIS
:
1
m_PVRCulling
:
1
m_PVRFilteringGaussRadiusDirect
:
1
m_PVRFilteringGaussRadiusIndirect
:
1
m_PVRFilteringGaussRadiusAO
:
1
m_PVRFilteringAtrousPositionSigmaDirect
:
0.5
m_PVRFilteringAtrousPositionSigmaIndirect
:
2
m_PVRFilteringAtrousPositionSigmaAO
:
1
m_ExportTrainingData
:
0
m_TrainingDataDestination
:
TrainingData
m_LightProbeSampleCountMultiplier
:
4
m_LightingDataAsset
:
{
fileID
:
20201
,
guid
:
0000000000000000f000000000000000
,
type
:
0
}
m_LightingSettings
:
{
fileID
:
0
}
---
!u!196
&4
NavMeshSettings
:
serializedVersion
:
2
m_ObjectHideFlags
:
0
m_BuildSettings
:
serializedVersion
:
3
agentTypeID
:
0
agentRadius
:
0.5
agentHeight
:
2
agentSlope
:
45
agentClimb
:
0.4
ledgeDropHeight
:
0
maxJumpAcrossDistance
:
0
minRegionArea
:
2
manualCellSize
:
0
cellSize
:
0.16666667
manualTileSize
:
0
tileSize
:
256
buildHeightMesh
:
0
maxJobWorkers
:
0
preserveTilesOutsideBounds
:
0
debug
:
m_Flags
:
0
m_NavMeshData
:
{
fileID
:
0
}
---
!u!1
&232732868
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
232732870
}
-
component
:
{
fileID
:
232732869
}
-
component
:
{
fileID
:
232732871
}
m_Layer
:
0
m_Name
:
SupabaseListener
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!114
&232732869
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
232732868
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
14bbed8449713f51db869aa6dba9c6fa
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::SessionListener
SupabaseManager
:
{
fileID
:
689087718
}
LoggedIn
:
m_PersistentCalls
:
m_Calls
:
-
m_Target
:
{
fileID
:
232732871
}
m_TargetAssemblyTypeName
:
SceneSwitcherHelpers, Assembly-CSharp
m_MethodName
:
LoadMainMenu
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
LoggedOut
:
m_PersistentCalls
:
m_Calls
:
-
m_Target
:
{
fileID
:
232732871
}
m_TargetAssemblyTypeName
:
SceneSwitcherHelpers, Assembly-CSharp
m_MethodName
:
LoadLogin
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!4
&232732870
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
232732868
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
-0
,
y
:
-0
,
z
:
-0
,
w
:
1
}
m_LocalPosition
:
{
x
:
616.9188
,
y
:
1194.7426
,
z
:
0
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
[]
m_Father
:
{
fileID
:
0
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!114
&232732871
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
232732868
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
e8c8bd5f339c3203d84f2c7279a64eb0
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::SceneSwitcherHelpers
---
!u!1
&414692743
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
414692744
}
m_Layer
:
0
m_Name
:
'
-----------
Root
-----------
'
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&414692744
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
414692743
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
1
}
m_LocalPosition
:
{
x
:
95.29111
,
y
:
1207.8973
,
z
:
0
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
-
{
fileID
:
2025685769
}
-
{
fileID
:
1707671417
}
-
{
fileID
:
2025346609
}
m_Father
:
{
fileID
:
0
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!1
&689087716
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
689087717
}
-
component
:
{
fileID
:
689087718
}
m_Layer
:
0
m_Name
:
Supabase
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&689087717
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
689087716
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
-0
,
y
:
-0
,
z
:
-0
,
w
:
1
}
m_LocalPosition
:
{
x
:
616.9188
,
y
:
1194.7426
,
z
:
0
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
[]
m_Father
:
{
fileID
:
0
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!114
&689087718
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
689087716
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
5baed90edb7a40852b66a41622c93859
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::SupabaseManager
SessionListener
:
{
fileID
:
232732869
}
---
!u!1
&1113388150
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
1113388151
}
-
component
:
{
fileID
:
1113388152
}
m_Layer
:
0
m_Name
:
LoginPageAnimation
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&1113388151
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1113388150
}
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
:
1707671417
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!114
&1113388152
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1113388150
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
af20b018acf2e55458d3f391260841c5
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::LoginPageAnimation
loginPage
:
{
fileID
:
2143987065
}
---
!u!1
&1352663825
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
1352663828
}
-
component
:
{
fileID
:
1352663827
}
-
component
:
{
fileID
:
1352663826
}
m_Layer
:
0
m_Name
:
EventSystem
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!114
&1352663826
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1352663825
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
01614664b831546d2ae94a42149d80ac
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Unity.InputSystem::UnityEngine.InputSystem.UI.InputSystemUIInputModule
m_SendPointerHoverToParent
:
1
m_MoveRepeatDelay
:
0.5
m_MoveRepeatRate
:
0.1
m_XRTrackingOrigin
:
{
fileID
:
0
}
m_ActionsAsset
:
{
fileID
:
-944628639613478452
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_PointAction
:
{
fileID
:
-1654692200621890270
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_MoveAction
:
{
fileID
:
-8784545083839296357
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_SubmitAction
:
{
fileID
:
392368643174621059
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_CancelAction
:
{
fileID
:
7727032971491509709
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_LeftClickAction
:
{
fileID
:
3001919216989983466
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_MiddleClickAction
:
{
fileID
:
-2185481485913320682
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_RightClickAction
:
{
fileID
:
-4090225696740746782
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_ScrollWheelAction
:
{
fileID
:
6240969308177333660
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_TrackedDevicePositionAction
:
{
fileID
:
6564999863303420839
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_TrackedDeviceOrientationAction
:
{
fileID
:
7970375526676320489
,
guid
:
ca9f5fa95ffab41fb9a615ab714db018
,
type
:
3
}
m_DeselectOnBackgroundClick
:
1
m_PointerBehavior
:
0
m_CursorLockBehavior
:
0
m_ScrollDeltaPerTick
:
6
---
!u!114
&1352663827
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1352663825
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
76c392e42b5098c458856cdf6ecaaaa1
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
UnityEngine.UI::UnityEngine.EventSystems.EventSystem
m_FirstSelected
:
{
fileID
:
0
}
m_sendNavigationEvents
:
1
m_DragThreshold
:
10
---
!u!4
&1352663828
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1352663825
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
-0
,
y
:
-0
,
z
:
-0
,
w
:
1
}
m_LocalPosition
:
{
x
:
-95.29111
,
y
:
-1207.8973
,
z
:
0
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
[]
m_Father
:
{
fileID
:
2025346609
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!1
&1486533216
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
1486533217
}
-
component
:
{
fileID
:
1486533218
}
m_Layer
:
0
m_Name
:
SupabaseAuthentication
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&1486533217
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1486533216
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
-0
,
y
:
-0
,
z
:
-0
,
w
:
1
}
m_LocalPosition
:
{
x
:
616.9188
,
y
:
1194.7426
,
z
:
0
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
[]
m_Father
:
{
fileID
:
0
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!114
&1486533218
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1486533216
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
740bc2dc1ba97be68adb58313f40de23
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::SupabaseAuthentication
---
!u!1
&1707671416
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
1707671417
}
m_Layer
:
0
m_Name
:
------ Scripts ------
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&1707671417
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1707671416
}
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
:
-
{
fileID
:
1113388151
}
-
{
fileID
:
1746642441
}
m_Father
:
{
fileID
:
414692744
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!1
&1746642440
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
1746642441
}
-
component
:
{
fileID
:
1746642442
}
m_Layer
:
0
m_Name
:
LoginController
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&1746642441
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1746642440
}
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
:
1707671417
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!114
&1746642442
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
1746642440
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
15584a60abf537c4fb863ba3aeb3ee6d
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Assembly-CSharp::LoginController
uIDocument
:
{
fileID
:
2143987065
}
---
!u!1
&2025346608
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
2025346609
}
m_Layer
:
0
m_Name
:
'
------
UI
------
'
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!4
&2025346609
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
2025346608
}
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
:
-
{
fileID
:
1352663828
}
-
{
fileID
:
2143987066
}
m_Father
:
{
fileID
:
414692744
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!1
&2025685766
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
2025685769
}
-
component
:
{
fileID
:
2025685768
}
-
component
:
{
fileID
:
2025685767
}
-
component
:
{
fileID
:
2025685770
}
m_Layer
:
0
m_Name
:
Main Camera
m_TagString
:
MainCamera
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!81
&2025685767
AudioListener
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
2025685766
}
m_Enabled
:
1
---
!u!20
&2025685768
Camera
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
2025685766
}
m_Enabled
:
1
serializedVersion
:
2
m_ClearFlags
:
2
m_BackGroundColor
:
{
r
:
0.19215687
,
g
:
0.3019608
,
b
:
0.4745098
,
a
:
0
}
m_projectionMatrixMode
:
1
m_GateFitMode
:
2
m_FOVAxisMode
:
0
m_Iso
:
200
m_ShutterSpeed
:
0.005
m_Aperture
:
16
m_FocusDistance
:
10
m_FocalLength
:
50
m_BladeCount
:
5
m_Curvature
:
{
x
:
2
,
y
:
11
}
m_BarrelClipping
:
0.25
m_Anamorphism
:
0
m_SensorSize
:
{
x
:
36
,
y
:
24
}
m_LensShift
:
{
x
:
0
,
y
:
0
}
m_NormalizedViewPortRect
:
serializedVersion
:
2
x
:
0
y
:
0
width
:
1
height
:
1
near clip plane
:
0.3
far clip plane
:
1000
field of view
:
60
orthographic
:
0
orthographic size
:
5
m_Depth
:
-1
m_CullingMask
:
serializedVersion
:
2
m_Bits
:
4294967295
m_RenderingPath
:
-1
m_TargetTexture
:
{
fileID
:
0
}
m_TargetDisplay
:
0
m_TargetEye
:
3
m_HDR
:
1
m_AllowMSAA
:
1
m_AllowDynamicResolution
:
0
m_ForceIntoRT
:
0
m_OcclusionCulling
:
1
m_StereoConvergence
:
10
m_StereoSeparation
:
0.022
---
!u!4
&2025685769
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
2025685766
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
-0
,
y
:
-0
,
z
:
-0
,
w
:
1
}
m_LocalPosition
:
{
x
:
-95.29111
,
y
:
-1206.8973
,
z
:
-10
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
[]
m_Father
:
{
fileID
:
414692744
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!114
&2025685770
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
2025685766
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
11500000
,
guid
:
a79441f348de89743a2939f4d699eac1
,
type
:
3
}
m_Name
:
m_EditorClassIdentifier
:
Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalCameraData
m_RenderShadows
:
1
m_RequiresDepthTextureOption
:
2
m_RequiresOpaqueTextureOption
:
2
m_CameraType
:
0
m_Cameras
:
[]
m_RendererIndex
:
-1
m_VolumeLayerMask
:
serializedVersion
:
2
m_Bits
:
1
m_VolumeTrigger
:
{
fileID
:
0
}
m_VolumeFrameworkUpdateModeOption
:
2
m_RenderPostProcessing
:
0
m_Antialiasing
:
0
m_AntialiasingQuality
:
2
m_StopNaN
:
0
m_Dithering
:
0
m_ClearDepth
:
1
m_AllowXRRendering
:
1
m_AllowHDROutput
:
1
m_UseScreenCoordOverride
:
0
m_ScreenSizeOverride
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
0
}
m_ScreenCoordScaleBias
:
{
x
:
0
,
y
:
0
,
z
:
0
,
w
:
0
}
m_RequiresDepthTexture
:
0
m_RequiresColorTexture
:
0
m_TaaSettings
:
m_Quality
:
3
m_FrameInfluence
:
0.1
m_JitterScale
:
1
m_MipBias
:
0
m_VarianceClampScale
:
0.9
m_ContrastAdaptiveSharpening
:
0
m_Version
:
2
---
!u!1
&2143987064
GameObject
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
serializedVersion
:
6
m_Component
:
-
component
:
{
fileID
:
2143987066
}
-
component
:
{
fileID
:
2143987065
}
m_Layer
:
5
m_Name
:
UIDocument
m_TagString
:
Untagged
m_Icon
:
{
fileID
:
0
}
m_NavMeshLayer
:
0
m_StaticEditorFlags
:
0
m_IsActive
:
1
---
!u!114
&2143987065
MonoBehaviour
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
2143987064
}
m_Enabled
:
1
m_EditorHideFlags
:
0
m_Script
:
{
fileID
:
19102
,
guid
:
0000000000000000e000000000000000
,
type
:
0
}
m_Name
:
m_EditorClassIdentifier
:
UnityEngine.dll::UnityEngine.UIElements.UIDocument
m_PanelSettings
:
{
fileID
:
11400000
,
guid
:
e0a4bf855a462e847a2e745fa4abf6da
,
type
:
2
}
m_ParentUI
:
{
fileID
:
0
}
sourceAsset
:
{
fileID
:
9197481963319205126
,
guid
:
c563c00100793fd4e9d71d5f6bcb78e7
,
type
:
3
}
m_SortingOrder
:
0
m_Position
:
0
m_WorldSpaceSizeMode
:
1
m_WorldSpaceWidth
:
1920
m_WorldSpaceHeight
:
1080
m_PivotReferenceSize
:
0
m_Pivot
:
0
m_WorldSpaceCollider
:
{
fileID
:
0
}
---
!u!4
&2143987066
Transform
:
m_ObjectHideFlags
:
0
m_CorrespondingSourceObject
:
{
fileID
:
0
}
m_PrefabInstance
:
{
fileID
:
0
}
m_PrefabAsset
:
{
fileID
:
0
}
m_GameObject
:
{
fileID
:
2143987064
}
serializedVersion
:
2
m_LocalRotation
:
{
x
:
-0
,
y
:
-0
,
z
:
-0
,
w
:
1
}
m_LocalPosition
:
{
x
:
-95.29111
,
y
:
-1207.8973
,
z
:
0
}
m_LocalScale
:
{
x
:
1
,
y
:
1
,
z
:
1
}
m_ConstrainProportionsScale
:
0
m_Children
:
[]
m_Father
:
{
fileID
:
2025346609
}
m_LocalEulerAnglesHint
:
{
x
:
0
,
y
:
0
,
z
:
0
}
---
!u!1660057539
&9223372036854775807
SceneRoots
:
m_ObjectHideFlags
:
0
m_Roots
:
-
{
fileID
:
232732870
}
-
{
fileID
:
1486533217
}
-
{
fileID
:
689087717
}
-
{
fileID
:
414692744
}
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