Added roles with runtime json loading also did some more

Added roles with runtime json loading also added a conceptual round system
This commit is contained in:
Mikolaj 2022-05-05 21:58:03 +02:00
parent 35814f7ba2
commit 073d076628
68 changed files with 25341 additions and 297 deletions

View file

@ -409,7 +409,6 @@ RectTransform:
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 629738008411625369} - {fileID: 629738008411625369}
- {fileID: 254138618732735393}
m_Father: {fileID: 6167160771052314077} m_Father: {fileID: 6167160771052314077}
m_RootOrder: 2 m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -493,6 +492,8 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
_healthDisplay: {fileID: 629738008916260625} _healthDisplay: {fileID: 629738008916260625}
_healthBar: {fileID: 629738007606502689} _healthBar: {fileID: 629738007606502689}
_roleDisplay: {fileID: 629738007659103190}
_timer: {fileID: 629738008748429243}
--- !u!1 &629738008022663165 --- !u!1 &629738008022663165
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2252,93 +2253,3 @@ Transform:
m_Father: {fileID: 6167160771052314077} m_Father: {fileID: 6167160771052314077}
m_RootOrder: 1 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &4872858478319365533
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 629738007740009582}
m_Modifications:
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_RootOrder
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalScale.x
value: 0.53296775
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalScale.y
value: 0.53296775
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalScale.z
value: 0.53296775
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalPosition.x
value: 49
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalPosition.y
value: -112
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4618792496510273085, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
propertyPath: m_Name
value: Inventory
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: a6c9897145ea93b41abf3c531f857e3b, type: 3}
--- !u!4 &254138618732735393 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4618792496510273084, guid: a6c9897145ea93b41abf3c531f857e3b,
type: 3}
m_PrefabInstance: {fileID: 4872858478319365533}
m_PrefabAsset: {fileID: 0}

View file

@ -48,7 +48,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 8ef574f735723bd449e49daddc163edd, type: 3} m_Script: {fileID: 11500000, guid: 8ef574f735723bd449e49daddc163edd, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
_cameraTransform: {fileID: 0}
_spectatorMoveConfig: {fileID: 1135382073684329172} _spectatorMoveConfig: {fileID: 1135382073684329172}
_characterStateMachine: {fileID: 1135382073684329179} _characterStateMachine: {fileID: 1135382073684329179}
--- !u!114 &1135382073684329172 --- !u!114 &1135382073684329172
@ -463,6 +462,7 @@ GameObject:
- component: {fileID: 1135382075031318065} - component: {fileID: 1135382075031318065}
- component: {fileID: 1135382075031318064} - component: {fileID: 1135382075031318064}
- component: {fileID: 1135382075031318071} - component: {fileID: 1135382075031318071}
- component: {fileID: 2714724217782752003}
m_Layer: 5 m_Layer: 5
m_Name: UI m_Name: UI
m_TagString: Untagged m_TagString: Untagged
@ -552,6 +552,19 @@ MonoBehaviour:
m_BlockingMask: m_BlockingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 4294967295
--- !u!114 &2714724217782752003
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1135382075031318069}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 23e48b5dbb603ca4ba22df0d5ca93e39, type: 3}
m_Name:
m_EditorClassIdentifier:
_timer: {fileID: 1135382074586652813}
--- !u!1 &1135382075172996869 --- !u!1 &1135382075172996869
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View file

@ -1,8 +1,8 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 65f5156730f95fa46856a6c9fca543db guid: 04dc3d6b1e1866f43ba87b667227937c
NativeFormatImporter: folderAsset: yes
DefaultImporter:
externalObjects: {} externalObjects: {}
mainObjectFileID: 11400000
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:

View file

@ -0,0 +1,14 @@
{
"role":
[
{
"roleID" : 2,
"roleName": "Detective",
"roleHexColor": "0000ff",
"randomlyAssignable": true,
"roleTeamID": 1,
"canUseShop": true,
"EnemyTeamIds": [2]
}
]
}

View file

@ -1,8 +1,7 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 87d3bd07dfb8cad4abc8d1e45c65ad38 guid: 4bfcd90388c7c58459ef17984e7731b2
NativeFormatImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
mainObjectFileID: 11400000
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:

View file

@ -0,0 +1,14 @@
{
"role":
[
{
"roleID" : 1,
"roleName": "Innocent",
"roleHexColor": "00ff00",
"randomlyAssignable": true,
"roleTeamID": 0,
"canUseShop": false,
"EnemyTeamIds": [1]
}
]
}

View file

@ -1,8 +1,7 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 902c73643e40b48499e05ccd846b6e7c guid: 119ffdec07d7e344a863f4884576b250
NativeFormatImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
mainObjectFileID: 11400000
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:

View file

@ -0,0 +1,14 @@
{
"role":
[
{
"roleID" : 0,
"roleName": "Preparing",
"roleHexColor": "707070",
"randomlyAssignable": false,
"roleTeamID": 0,
"canUseShop": false,
"EnemyTeamIds": []
}
]
}

View file

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3732d11096d642b438ad1345d2be0bb2
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,14 @@
{
"role":
[
{
"roleID" : 3,
"roleName": "Traitor",
"roleHexColor": "ff0000",
"randomlyAssignable": true,
"roleTeamID": 2,
"canUseShop": true,
"EnemyTeamIds": [1]
}
]
}

View file

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4dc62ab7da6f2b043bf746eae1d388ed
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
Assets/JsonDotNet.meta Normal file
View file

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

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 577d9725f58264943855b8ac185531fe
folderAsset: yes
timeCreated: 1466788344
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 14f21d7a1e53a8c4e87b25526a7eb63c
folderAsset: yes
timeCreated: 1466788345
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: aadad8ac54f29e44583510294ac5c312
timeCreated: 1466788355
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View file

@ -0,0 +1,76 @@
fileFormatVersion: 2
guid: 6a3c684705042f345975d924f6983e36
timeCreated: 1466788352
licenseType: Store
PluginImporter:
serializedVersion: 1
iconMap: {}
executionOrder: {}
isPreloaded: 0
platformData:
Android:
enabled: 1
settings:
CPU: AnyCPU
Any:
enabled: 0
settings: {}
Editor:
enabled: 0
settings:
CPU: AnyCPU
DefaultValueInitialized: true
OS: AnyOS
Linux:
enabled: 0
settings:
CPU: x86
Linux64:
enabled: 0
settings:
CPU: x86_64
OSXIntel:
enabled: 0
settings:
CPU: AnyCPU
OSXIntel64:
enabled: 0
settings:
CPU: AnyCPU
SamsungTV:
enabled: 1
settings:
STV_MODEL: STANDARD_13
Tizen:
enabled: 1
settings: {}
WebGL:
enabled: 1
settings: {}
Win:
enabled: 0
settings:
CPU: AnyCPU
Win64:
enabled: 0
settings:
CPU: AnyCPU
WindowsStoreApps:
enabled: 1
settings:
CPU: AnyCPU
DontProcess: False
PlaceholderPath: Assets/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll
SDK: AnySDK
ScriptingBackend: Il2Cpp
iOS:
enabled: 1
settings:
CompileFlags:
FrameworkDependencies:
tvOS:
enabled: 1
settings: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 01ef782d02bb1994dbe418b69432552b
folderAsset: yes
timeCreated: 1466788344
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d6807fedb8dcaf04682d2c84f0ab753f
timeCreated: 1466788355
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,75 @@
fileFormatVersion: 2
guid: 17aef65a15b471f468b5fbeb4ff0c6a1
timeCreated: 1466788349
licenseType: Store
PluginImporter:
serializedVersion: 1
iconMap: {}
executionOrder: {}
isPreloaded: 0
platformData:
Android:
enabled: 0
settings:
CPU: AnyCPU
Any:
enabled: 0
settings: {}
Editor:
enabled: 1
settings:
CPU: AnyCPU
DefaultValueInitialized: true
OS: AnyOS
Linux:
enabled: 1
settings:
CPU: x86
Linux64:
enabled: 1
settings:
CPU: x86_64
LinuxUniversal:
enabled: 1
settings:
CPU: AnyCPU
OSXIntel:
enabled: 1
settings:
CPU: AnyCPU
OSXIntel64:
enabled: 1
settings:
CPU: AnyCPU
OSXUniversal:
enabled: 1
settings:
CPU: AnyCPU
SamsungTV:
enabled: 0
settings:
STV_MODEL: STANDARD_13
Win:
enabled: 1
settings:
CPU: AnyCPU
Win64:
enabled: 1
settings:
CPU: AnyCPU
WindowsStoreApps:
enabled: 0
settings:
CPU: AnyCPU
DontProcess: False
PlaceholderPath:
SDK: AnySDK
ScriptingBackend: Il2Cpp
iOS:
enabled: 0
settings:
CompileFlags:
FrameworkDependencies:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 1418141139a6ac443b18cb05c0643a29
folderAsset: yes
timeCreated: 1466788345
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 36f7323c55864364d8bb88c736e4bca6
timeCreated: 1466788355
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,67 @@
fileFormatVersion: 2
guid: 9b6ba260dada0ea4a871a42011f8b87d
timeCreated: 1466788355
licenseType: Store
PluginImporter:
serializedVersion: 1
iconMap: {}
executionOrder: {}
isPreloaded: 0
platformData:
Android:
enabled: 0
settings:
CPU: AnyCPU
Any:
enabled: 0
settings: {}
Editor:
enabled: 0
settings:
CPU: AnyCPU
DefaultValueInitialized: true
OS: AnyOS
Linux:
enabled: 0
settings:
CPU: x86
Linux64:
enabled: 0
settings:
CPU: x86_64
OSXIntel:
enabled: 0
settings:
CPU: AnyCPU
OSXIntel64:
enabled: 0
settings:
CPU: AnyCPU
SamsungTV:
enabled: 0
settings:
STV_MODEL: STANDARD_13
Win:
enabled: 0
settings:
CPU: AnyCPU
Win64:
enabled: 0
settings:
CPU: AnyCPU
WindowsStoreApps:
enabled: 1
settings:
CPU: AnyCPU
DontProcess: False
PlaceholderPath: Assets/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll
SDK: AnySDK
ScriptingBackend: DotNet
iOS:
enabled: 0
settings:
CompileFlags:
FrameworkDependencies:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 76f828f47ce26cc43991113c6a39dbbf
folderAsset: yes
timeCreated: 1466010535
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4e7d9a07cc3f02a41a575406e7230846
timeCreated: 1466788421
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9a6f8c7c1ea72ce46831c5e1b6150d0c
timeCreated: 1466790933
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<linker>
<assembly fullname="System">
<type fullname="System.ComponentModel.TypeConverter" preserve="all" />
<!-- <namespace fullname="System.ComponentModel" preserve="all" /> -->
</assembly>
</linker>

View file

@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: 06314f49bdda26043963578d60a0a7ee
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -1,18 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ffe32805eb7bde24bb85bb43c12614e6, type: 3}
m_Name: Detective
m_EditorClassIdentifier:
roleName: Detective
roleId: 1
roleColor: {r: 0, g: 0, b: 1, a: 0}
roleTeam: 0

View file

@ -1,18 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ffe32805eb7bde24bb85bb43c12614e6, type: 3}
m_Name: Innocent
m_EditorClassIdentifier:
roleName: Innocent
roleId: 0
roleColor: {r: 0, g: 1, b: 0, a: 0}
roleTeam: 0

View file

@ -1,18 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ffe32805eb7bde24bb85bb43c12614e6, type: 3}
m_Name: Traitor
m_EditorClassIdentifier:
roleName: Traitor
roleId: 2
roleColor: {r: 1, g: 0, b: 0, a: 0}
roleTeam: 1

View file

@ -125,6 +125,37 @@ NavMeshSettings:
debug: debug:
m_Flags: 0 m_Flags: 0
m_NavMeshData: {fileID: 0} m_NavMeshData: {fileID: 0}
--- !u!1 &24885715
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 24885716}
m_Layer: 0
m_Name: =====Map======
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &24885716
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 24885715}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -48.731323, y: -21.66117, z: 15.900226}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 8
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &104422633 --- !u!1 &104422633
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -223,6 +254,37 @@ MeshFilter:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 104422633} m_GameObject: {fileID: 104422633}
m_Mesh: {fileID: 4300000, guid: 08258afcf0b38f34a93780d9aac149f8, type: 3} m_Mesh: {fileID: 4300000, guid: 08258afcf0b38f34a93780d9aac149f8, type: 3}
--- !u!1 &160130049
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 160130050}
m_Layer: 0
m_Name: =====Player=====
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &160130050
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 160130049}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -48.731323, y: -21.66117, z: 15.900226}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &161730254 --- !u!1 &161730254
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -322,8 +384,12 @@ Transform:
- {fileID: 161730255} - {fileID: 161730255}
- {fileID: 2057082606} - {fileID: 2057082606}
- {fileID: 1152588314} - {fileID: 1152588314}
- {fileID: 656855063}
- {fileID: 1793039742}
- {fileID: 1880816063}
- {fileID: 705507995}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 9 m_RootOrder: 10
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &351313843 --- !u!1 &351313843
GameObject: GameObject:
@ -462,6 +528,37 @@ Transform:
m_Father: {fileID: 1793039742} m_Father: {fileID: 1793039742}
m_RootOrder: 1 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &446196615
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 446196616}
m_Layer: 0
m_Name: =====GameStuff=====
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &446196616
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 446196615}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -48.731323, y: -21.66117, z: 15.900226}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &555114075 --- !u!1 &555114075
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -574,7 +671,7 @@ Transform:
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 7 m_RootOrder: 9
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &619197885 --- !u!1 &619197885
GameObject: GameObject:
@ -668,8 +765,8 @@ Transform:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 656855062} m_GameObject: {fileID: 656855062}
m_LocalRotation: {x: 0, y: -0.7071068, z: 0, w: 0.7071068} m_LocalRotation: {x: -0, y: -0.7071068, z: -0, w: 0.7071068}
m_LocalPosition: {x: -32, y: 0, z: -27} m_LocalPosition: {x: -946.8866, y: 213.34412, z: -319.38452}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
@ -677,7 +774,7 @@ Transform:
- {fileID: 1433734651} - {fileID: 1433734651}
- {fileID: 1984183909} - {fileID: 1984183909}
- {fileID: 872796697} - {fileID: 872796697}
m_Father: {fileID: 0} m_Father: {fileID: 188713835}
m_RootOrder: 3 m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0} m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0}
--- !u!1 &705507993 --- !u!1 &705507993
@ -768,12 +865,12 @@ Transform:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 705507993} m_GameObject: {fileID: 705507993}
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalPosition: {x: -914.8866, y: 216.34412, z: -292.38452}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 188713835}
m_RootOrder: 1 m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!114 &705507996 --- !u!114 &705507996
MonoBehaviour: MonoBehaviour:
@ -832,6 +929,37 @@ Transform:
m_Father: {fileID: 1793039742} m_Father: {fileID: 1793039742}
m_RootOrder: 6 m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &766771634
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 766771635}
m_Layer: 0
m_Name: PlayerData
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &766771635
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 766771634}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -19.09782, y: -24.539059, z: 14.865025}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &775007326 --- !u!1 &775007326
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -903,6 +1031,172 @@ Transform:
m_Father: {fileID: 1793039742} m_Father: {fileID: 1793039742}
m_RootOrder: 10 m_RootOrder: 10
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &810374210
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 810374212}
- component: {fileID: 810374213}
- component: {fileID: 810374211}
- component: {fileID: 810374215}
- component: {fileID: 810374214}
m_Layer: 0
m_Name: GameManager
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!114 &810374211
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 810374210}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 32dbcfe97e7ee9b448cfb922c91f033a, type: 3}
m_Name:
m_EditorClassIdentifier:
roleList: []
--- !u!4 &810374212
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 810374210}
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: 0}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &810374213
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 810374210}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 82f2a7d96a954b74db52ece6cf83007d, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &810374214
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 810374210}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 951fe6b63c12fbd4f9534e38455dd24f, type: 3}
m_Name:
m_EditorClassIdentifier:
GameEvents:
- gameEventName: StartGame
GameEventSender:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 872548357}
m_TargetAssemblyTypeName: RoundSystem, Assembly-CSharp
m_MethodName: StartWaiting
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &810374215
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 810374210}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3fe1aa0149905824db5f861dc6b96200, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &872548353
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 872548354}
- component: {fileID: 872548357}
- component: {fileID: 872548356}
m_Layer: 0
m_Name: RoundManager
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!4 &872548354
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 872548353}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -19.09782, y: -24.539059, z: 14.865025}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &872548356
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 872548353}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f2677884a3dbd244d9240527634fde7f, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &872548357
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 872548353}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 22a62fafc16559140ba1e678f5c040db, type: 3}
m_Name:
m_EditorClassIdentifier:
currentTimer: 0
waitTime: 20
playerWaitTime: 0
preparingTime: 10
roundTime: 140
hasteAddTime: 0
realTimeUnix: 0
roundInProggress: 0
--- !u!1 &872796696 --- !u!1 &872796696
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1057,7 +1351,7 @@ Transform:
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 0 m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &963194229 --- !u!114 &963194229
MonoBehaviour: MonoBehaviour:
@ -2142,12 +2436,12 @@ GameObject:
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 1551772755} - component: {fileID: 1551772755}
- component: {fileID: 1551772761}
- component: {fileID: 1551772757}
- component: {fileID: 1551772760} - component: {fileID: 1551772760}
- component: {fileID: 1551772757}
- component: {fileID: 1551772752} - component: {fileID: 1551772752}
- component: {fileID: 1551772758} - component: {fileID: 1551772758}
- component: {fileID: 1551772756} - component: {fileID: 1551772756}
- component: {fileID: 1551772762}
m_Layer: 3 m_Layer: 3
m_Name: Player_Ghost m_Name: Player_Ghost
m_TagString: Player m_TagString: Player
@ -2179,9 +2473,10 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 1814309203}
- {fileID: 1681013546} - {fileID: 1681013546}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 8 m_RootOrder: 7
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!54 &1551772756 --- !u!54 &1551772756
Rigidbody: Rigidbody:
@ -2243,11 +2538,13 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
characterRigidbody: {fileID: 1551772756} characterRigidbody: {fileID: 1551772756}
cameraTransform: {fileID: 963194228} cameraTransform: {fileID: 963194228}
playerGhost: {fileID: 1551772761} playerInfoData: {fileID: 0}
playerStateEnforcrer: {fileID: 1551772758} playerStateEnforcrer: {fileID: 1551772758}
playerStateMachine: {fileID: 1551772757} playerStateMachine: {fileID: 1551772757}
playerInputReceiver: {fileID: 1551772752} playerInputReceiver: {fileID: 1551772752}
--- !u!114 &1551772761 gameManager: {fileID: 810374213}
roundSystem: {fileID: 872548357}
--- !u!114 &1551772762
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -2256,11 +2553,10 @@ MonoBehaviour:
m_GameObject: {fileID: 1551772751} m_GameObject: {fileID: 1551772751}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 121b5a9ec69d4a342a5f5527121e6d72, type: 3} m_Script: {fileID: 11500000, guid: 8e19d2cb639d0254b858f57d281e6005, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
playerGhostReffrenceHub: {fileID: 1551772760} _playerInfoData: {fileID: 0}
playerInfoData: {fileID: 0}
--- !u!1 &1591108313 --- !u!1 &1591108313
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2326,7 +2622,7 @@ Transform:
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 1551772755} m_Father: {fileID: 1551772755}
m_RootOrder: 0 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1740455084 --- !u!1 &1740455084
GameObject: GameObject:
@ -2387,8 +2683,8 @@ Transform:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1793039741} m_GameObject: {fileID: 1793039741}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: -914.8866, y: 213.34412, z: -292.38452}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children:
@ -2406,7 +2702,7 @@ Transform:
- {fileID: 619197886} - {fileID: 619197886}
- {fileID: 4052684680415584} - {fileID: 4052684680415584}
- {fileID: 650760861} - {fileID: 650760861}
m_Father: {fileID: 0} m_Father: {fileID: 188713835}
m_RootOrder: 4 m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1814309200 --- !u!1 &1814309200
@ -2488,13 +2784,13 @@ Transform:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1814309200} m_GameObject: {fileID: 1814309200}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 25, y: -2.583, z: 20.885}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 1551772755}
m_RootOrder: 5 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1880816059 --- !u!1 &1880816059
GameObject: GameObject:
@ -2586,13 +2882,13 @@ Transform:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1880816059} m_GameObject: {fileID: 1880816059}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: -914.8866, y: 213.34412, z: -292.38452}
m_LocalScale: {x: 100, y: 1, z: 100} m_LocalScale: {x: 100, y: 1, z: 100}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 188713835}
m_RootOrder: 6 m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1937364464 --- !u!1 &1937364464
GameObject: GameObject:
@ -2698,7 +2994,7 @@ Transform:
m_Children: m_Children:
- {fileID: 1179389437} - {fileID: 1179389437}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 2 m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1950290546 --- !u!114 &1950290546
MonoBehaviour: MonoBehaviour:

View file

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

View file

@ -0,0 +1,29 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class RoundConfigLoader : MonoBehaviour
{
public class RoundConfig
{
public int perparingTime;
public int roundTime;
public bool hasteMode;
public int hasteKillAddTime;
public int[] enabledRoles;
public int[] roleSpawnChance = new int[265];
public int[] rolePlayerCount = new int[265];
}
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 121b5a9ec69d4a342a5f5527121e6d72 guid: f2677884a3dbd244d9240527634fde7f
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2

View file

@ -0,0 +1,27 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ServerConfigLoader : MonoBehaviour
{
public class ServerConfig
{
public string serverName;
public string serverPassword;
public int maxPlayers;
public string map;
}
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}

View file

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

View file

@ -0,0 +1,29 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GameManager : MonoBehaviour
{
private RoleLoader _roleLoader;
private GameEventManager _gameEventManager;
private RoundSystem _roundSystem;
// Start is called before the first frame update
void Start()
{
_gameEventManager = GetComponent<GameEventManager>();
_gameEventManager.TriggerGameEvent("StartGame");
_roundSystem = FindObjectOfType<RoundSystem>();
}
// Update is called once per frame
void Update()
{
}
}

View file

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

View file

@ -1,29 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace TTTSC.Player.Character
{
public class PlayerGhost : MonoBehaviour
{
[SerializeField]
private PlayerGhostReffrenceHub playerGhostReffrenceHub;
[SerializeField]
public PlayerInfo.PlayerInfoData playerInfoData;
// Start is called before the first frame update
void Awake()
{
playerInfoData = ScriptableObject.CreateInstance<PlayerInfo.PlayerInfoData>();
}
// Update is called once per frame
void Update()
{
}
}
}

View file

@ -7,11 +7,19 @@ namespace TTTSC.Player.Character
[Header("-----------Misc------------")] [Header("-----------Misc------------")]
public Rigidbody characterRigidbody; public Rigidbody characterRigidbody;
public Transform cameraTransform; public Transform cameraTransform;
public PlayerCharacterInfo.PlayerCharacterInfoData playerInfoData;
[Header("----------Scripts-----------")] [Header("----------Scripts-----------")]
public PlayerGhost playerGhost;
public PlayerStateEnforcer playerStateEnforcrer; public PlayerStateEnforcer playerStateEnforcrer;
public PlayerStateMachine playerStateMachine; public PlayerStateMachine playerStateMachine;
public Controller.PlayerInputReceiver playerInputReceiver; public Controller.PlayerInputReceiver playerInputReceiver;
} public GameManager gameManager;
} public RoundSystem roundSystem;
void Awake()
{
playerInfoData = ScriptableObject.CreateInstance<PlayerCharacterInfo.PlayerCharacterInfoData>();
gameManager = FindObjectOfType<GameManager>();
roundSystem = FindObjectOfType<RoundSystem>();
}
}
}

View file

@ -0,0 +1,25 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace TTTSC.Player.Character.PlayerCharacterInfo
{
[CreateAssetMenu(menuName = "TTTSC/Player/Character/Player Info")]
public class PlayerCharacterInfoData : ScriptableObject
{
public int helth;
public int armor;
public enum playerPlayStates
{
Spectator,
Alive
};
public playerPlayStates currentPlayerPlayState;
public int playerRole;
}
}

View file

@ -1,17 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace TTTSC.Player.Character.PlayerInfo
{
[CreateAssetMenu(menuName = "TTTSC/Player/Character/Player Info")]
public class PlayerInfoData : ScriptableObject
{
public int helth;
public int armor;
public PlayerStateMachine.playerPlayStates currentPlayerPlayState;
public PlayerStateMachine.playerClass currentPlayerClass;
}
}

View file

@ -5,15 +5,12 @@ using UnityEngine;
[CreateAssetMenu(menuName = "TTTSC/Player/Character/Role")] [CreateAssetMenu(menuName = "TTTSC/Player/Character/Role")]
public class RoleData : ScriptableObject public class RoleData : ScriptableObject
{ {
public int roleID;
public string roleName; public string roleName;
public int roleId; public string roleHexColor;
public Color roleColor; public bool randomlyAssignable;
public int roleTeamID;
public bool canUseShop;
public int[] EnemyTeamIds;
public enum RoleTeam
{
Innocent,
Traitor
}
public RoleTeam roleTeam;
} }

View file

@ -0,0 +1,57 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace TTTSC.Player.Character
{
public class PlayerStateChanger : MonoBehaviour
{
private PlayerGhostReffrenceHub _playerGhostReffrenceHub;
private GameManager _gameManager;
private RoundSystem _roundSystem;
public PlayerCharacterInfo.PlayerCharacterInfoData _playerInfoData;
bool beforeRoundStart;
// Start is called before the first frame update
void Start()
{
_playerGhostReffrenceHub = GetComponent<PlayerGhostReffrenceHub>();
_gameManager = _playerGhostReffrenceHub.gameManager;
_roundSystem = _playerGhostReffrenceHub.roundSystem;
_playerInfoData = _playerGhostReffrenceHub.playerInfoData;
_playerInfoData.currentPlayerPlayState = PlayerCharacterInfo.PlayerCharacterInfoData.playerPlayStates.Alive;
}
// Update is called once per frame
void Update()
{
/*
if (!beforeRoundStart)
{
if (!_roundSystem.roundInProggress)
{
beforeRoundStart = true;
}
}
if (((DateTimeOffset)DateTime.UtcNow).ToUnixTimeSeconds() == _roundSystem.playerWaitTime)
{
if (!beforeRoundStart)
{
_playerInfoData.currentPlayerPlayState = PlayerCharacterInfo.PlayerCharacterInfoData.playerPlayStates.Spectator;
}
else
{
_playerInfoData.currentPlayerPlayState = PlayerCharacterInfo.PlayerCharacterInfoData.playerPlayStates.Alive;
}
}*/
}
}
}

View file

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

View file

@ -9,8 +9,7 @@ namespace TTTSC.Player.Character
[SerializeField] [SerializeField]
private PlayerGhostReffrenceHub _playerGhostReffrenceHub; private PlayerGhostReffrenceHub _playerGhostReffrenceHub;
[SerializeField] [SerializeField]
private PlayerInfo.PlayerInfoData _playerInfoData; private PlayerCharacterInfo.PlayerCharacterInfoData _playerInfoData;
private PlayerGhost _playerGhost;
private Rigidbody _characterRigidbody; private Rigidbody _characterRigidbody;
[SerializeField][Tooltip("assign the 'alive' prefab here")] [SerializeField][Tooltip("assign the 'alive' prefab here")]
private GameObject _aliveBodyPrefab; private GameObject _aliveBodyPrefab;
@ -22,69 +21,62 @@ namespace TTTSC.Player.Character
private void Start() private void Start()
{ {
_playerGhost = _playerGhostReffrenceHub.playerGhost; _playerInfoData = _playerGhostReffrenceHub.playerInfoData;
_playerInfoData = _playerGhost.playerInfoData;
_characterRigidbody = _playerGhostReffrenceHub.characterRigidbody; _characterRigidbody = _playerGhostReffrenceHub.characterRigidbody;
CheckPlayerState(); CheckPlayerState();
} }
void CheckPlayerState() private void Update()
{
CheckPlayerState();
}
public void CheckPlayerState()
{ {
switch (_playerInfoData.currentPlayerPlayState) switch (_playerInfoData.currentPlayerPlayState)
{ {
case PlayerStateMachine.playerPlayStates.Spectator: case PlayerCharacterInfo.PlayerCharacterInfoData.playerPlayStates.Spectator:
SpawnSpectatorPlayerBody(); SpawnSpectatorPlayerBody();
_characterRigidbody.useGravity = false; _characterRigidbody.useGravity = false;
break; break;
case PlayerStateMachine.playerPlayStates.Alive: case PlayerCharacterInfo.PlayerCharacterInfoData.playerPlayStates.Alive:
SpawnAlivePlayerBody(); SpawnAlivePlayerBody();
_characterRigidbody.useGravity = true; _characterRigidbody.useGravity = true;
break; break;
} }
} }
void CheckPlayerClass() public void SpawnAlivePlayerBody()
{
switch (_playerInfoData.currentPlayerClass)
{
case PlayerStateMachine.playerClass.Preparing:
//this is the default class for everyone before the round starts
break;
case PlayerStateMachine.playerClass.Innocent:
//TODO
break;
case PlayerStateMachine.playerClass.Detective:
//TODO
break;
case PlayerStateMachine.playerClass.Traitor:
//TODO
break;
}
}
void SpawnAlivePlayerBody()
{ {
_playerInfoData.helth = 100; _playerInfoData.helth = 100;
if (_spectatorBody != null) if (_spectatorBody != null)
{ {
Destroy(_spectatorBody); Destroy(_spectatorBody);
Debug.Log("destroyed spectator body");
} }
_aliveBody = Instantiate(_aliveBodyPrefab, transform.position, transform.rotation);
if (_aliveBody == null)
{
_aliveBody = Instantiate(_aliveBodyPrefab, transform.position, transform.rotation);
_aliveBody.transform.SetParent(transform); _aliveBody.transform.SetParent(transform);
} }
}
void SpawnSpectatorPlayerBody() public void SpawnSpectatorPlayerBody()
{ {
if (_aliveBody != null) if (_aliveBody != null)
{ {
Destroy(_aliveBody); Destroy(_aliveBody);
Debug.Log("destroyed alive body");
SpawnDeadBody(); SpawnDeadBody();
} }
if (_spectatorBody == null)
{
_spectatorBody = Instantiate(_spectatorBodyPrefab, transform.position, transform.rotation); _spectatorBody = Instantiate(_spectatorBodyPrefab, transform.position, transform.rotation);
_spectatorBody.transform.SetParent(transform); _spectatorBody.transform.SetParent(transform);
} }
}
void SpawnDeadBody() void SpawnDeadBody()
{ {

View file

@ -6,19 +6,7 @@ namespace TTTSC.Player.Character
{ {
public class PlayerStateMachine : MonoBehaviour public class PlayerStateMachine : MonoBehaviour
{ {
public enum playerPlayStates
{
Alive,
Spectator
};
public enum playerClass
{
Preparing,
Innocent,
Detective,
Traitor
};
} }
} }

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 96abcc748c6e1f844bdafc9894b7fb75 guid: e4581d5d0bb670b42aea243dda3caee0
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View file

@ -0,0 +1,71 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
public class RoleLoader : MonoBehaviour
{
private string roleDirectory;
public static long RoleCount(DirectoryInfo directoryInfo)
{
long _files = 0;
// Add file sizes.
FileInfo[] files = directoryInfo.GetFiles();
foreach (FileInfo file in files)
{
if (file.Extension.Contains("json"))
_files++;
}
return _files;
}
[System.Serializable]
public class Role
{
public int roleID;
public string roleName;
public string roleHexColor;
public bool randomlyAssignable;
public int roleTeamID;
public bool canUseShop;
public int[] EnemyTeamIds;
}
[System.Serializable]
public class RoleList
{
public Role[] role;
}
public List<RoleList> roleList;
// Start is called before the first frame update
void Start()
{
roleDirectory = Application.dataPath + "/CharacterRoles";
DirectoryInfo directoryInfo = new DirectoryInfo(roleDirectory);
long roleCount = RoleCount(directoryInfo);
Debug.Log(roleCount + " roles");
FileInfo[] files = directoryInfo.GetFiles();
foreach (FileInfo file in files)
{
if (file.Extension.Contains("json"))
{
StreamReader roleFile = new StreamReader(roleDirectory + "/" + file.Name);
roleList.Add(JsonUtility.FromJson<RoleList>(roleFile.ReadToEnd()));
}
}
}
// Update is called once per frame
void Update()
{
}
}

View file

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

View file

@ -3,26 +3,31 @@ using System.Collections.Generic;
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
using TMPro; using TMPro;
using System;
namespace TTTSC.Player.Character namespace TTTSC.Player.Character
{ {
public class AliveUi : MonoBehaviour public class AliveUi : MonoBehaviour
{ {
private PlayerGhostReffrenceHub _playerGhostReffrenceHub; private PlayerGhostReffrenceHub _playerGhostReffrenceHub;
private PlayerGhost _playerGhost; private PlayerCharacterInfo.PlayerCharacterInfoData _playerInfoData;
private PlayerInfo.PlayerInfoData _playerInfoData;
[SerializeField] [SerializeField]
private TMP_Text _healthDisplay; private TMP_Text _healthDisplay;
private TMP_Text _roleDisplay;
[SerializeField] [SerializeField]
private Slider _healthBar; private Slider _healthBar;
[SerializeField]
private TMP_Text _roleDisplay;
private Image _roleBackground;
private RoundSystem _roundSystem;
[SerializeField]
private TMP_Text _timer;
// Start is called before the first frame update // Start is called before the first frame update
void Start() void Start()
{ {
_playerGhostReffrenceHub = GetComponentInParent<PlayerGhostReffrenceHub>(); _playerGhostReffrenceHub = GetComponentInParent<PlayerGhostReffrenceHub>();
_playerGhost = _playerGhostReffrenceHub.playerGhost; _playerInfoData = _playerGhostReffrenceHub.playerInfoData;
_playerInfoData = _playerGhost.playerInfoData; _roundSystem = FindObjectOfType<RoundSystem>();
} }
// Update is called once per frame // Update is called once per frame
@ -30,6 +35,39 @@ namespace TTTSC.Player.Character
{ {
_healthDisplay.text = _playerInfoData.helth.ToString(); _healthDisplay.text = _playerInfoData.helth.ToString();
_healthBar.value = _playerInfoData.helth; _healthBar.value = _playerInfoData.helth;
//UiClock();
}
private void UiClock()
{
var timeUntillStart = _roundSystem.currentTimer - ((DateTimeOffset)DateTime.UtcNow).ToUnixTimeSeconds();
var unixMinutes = timeUntillStart / 60;
var unixSeconds = timeUntillStart % 60;
string minutes = null;
string seconds = null;
if (unixMinutes > 9)
{
minutes = unixMinutes.ToString();
}
else
{
minutes = "0" + unixMinutes.ToString();
}
if (unixSeconds > 9)
{
seconds = unixSeconds.ToString();
}
else
{
seconds = "0" + unixSeconds.ToString();
}
_timer.text = minutes.ToString() + ":" + seconds;
} }
} }
} }

View file

@ -0,0 +1,57 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;
using System;
public class SpectatorUI : MonoBehaviour
{
private RoundSystem _roundSystem;
[SerializeField]
private TMP_Text _timer;
// Start is called before the first frame update
void Start()
{
_roundSystem = FindObjectOfType<RoundSystem>();
}
// Update is called once per frame
void Update()
{
//UiClock();
}
private void UiClock()
{
var timeUntillStart = _roundSystem.currentTimer - ((DateTimeOffset)DateTime.UtcNow).ToUnixTimeSeconds();
var unixMinutes = timeUntillStart / 60;
var unixSeconds = timeUntillStart % 60;
string minutes = null;
string seconds = null;
if (unixMinutes > 9)
{
minutes = unixMinutes.ToString();
}
else
{
minutes = "0" + unixMinutes.ToString();
}
if (unixSeconds > 9)
{
seconds = unixSeconds.ToString();
}
else
{
seconds = "0" + unixSeconds.ToString();
}
_timer.text = minutes.ToString() + ":" + seconds;
}
}

View file

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

View file

@ -0,0 +1,92 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class RoundSystem : MonoBehaviour
{
public long currentTimer;
[Header("Time to wait for player before starting the game")]
public int waitTime;
public long playerWaitTime;
[Tooltip("preparing time in seconds")]
public int preparingTime;
public long roundStartTime { get; private set; }
public int roundTime;
public long roundEndTime { get; private set; }
[Tooltip("time that will be added to the round when someone gets killed")]
public int hasteAddTime;
public long realTimeUnix;
public bool roundInProggress;
public void StartWaiting()
{
DateTime currenetTime = DateTime.UtcNow;
playerWaitTime = ((DateTimeOffset)currenetTime).ToUnixTimeSeconds() + waitTime;
//Debug.Log("waiting for players will end at " + playerWaitTime.ToString());
currentTimer = playerWaitTime;
}
public void StartPreparing()
{
DateTime currenetTime = DateTime.UtcNow;
roundStartTime = ((DateTimeOffset)currenetTime).ToUnixTimeSeconds() + preparingTime;
//Debug.Log("preparing will end at " + roundStartTime.ToString());
roundInProggress = true;
currentTimer = roundStartTime;
}
private void FixedUpdate()
{
DateTime currenetTime = DateTime.UtcNow;
realTimeUnix = ((DateTimeOffset)currenetTime).ToUnixTimeSeconds();
if (realTimeUnix == playerWaitTime)
{
StartPreparing();
}
if (roundInProggress && realTimeUnix == roundStartTime)
{
Debug.Log("prep time ended staring round");
StartRound();
}
else if (roundInProggress && realTimeUnix == roundEndTime)
{
roundInProggress = true;
}
}
public void StartRound()
{
DateTime currenetTime = DateTime.UtcNow;
roundEndTime = ((DateTimeOffset)currenetTime).ToUnixTimeSeconds() + roundTime;
Debug.Log("round will end at at " + roundEndTime);
currentTimer = roundEndTime;
}
public void StartHasteRound()
{
}
public void HasteAddTime()
{
roundEndTime += hasteAddTime;
}
}

View file

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

View file

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

View file

@ -11,6 +11,7 @@
"com.unity.textmeshpro": "3.0.6", "com.unity.textmeshpro": "3.0.6",
"com.unity.timeline": "1.6.4", "com.unity.timeline": "1.6.4",
"com.unity.ugui": "1.0.0", "com.unity.ugui": "1.0.0",
"com.veriorpies.parrelsync": "https://github.com/VeriorPies/ParrelSync.git?path=/ParrelSync",
"com.unity.modules.ai": "1.0.0", "com.unity.modules.ai": "1.0.0",
"com.unity.modules.androidjni": "1.0.0", "com.unity.modules.androidjni": "1.0.0",
"com.unity.modules.animation": "1.0.0", "com.unity.modules.animation": "1.0.0",

View file

@ -153,6 +153,13 @@
"com.unity.modules.imgui": "1.0.0" "com.unity.modules.imgui": "1.0.0"
} }
}, },
"com.veriorpies.parrelsync": {
"version": "https://github.com/VeriorPies/ParrelSync.git?path=/ParrelSync",
"depth": 0,
"source": "git",
"dependencies": {},
"hash": "f45424822189ebd875d864a17d7f03b72eafbff7"
},
"com.unity.modules.ai": { "com.unity.modules.ai": {
"version": "1.0.0", "version": "1.0.0",
"depth": 0, "depth": 0,

View file

@ -30,6 +30,6 @@ MonoBehaviour:
m_RegistryInfoDraft: m_RegistryInfoDraft:
m_Modified: 0 m_Modified: 0
m_ErrorMessage: m_ErrorMessage:
m_UserModificationsInstanceId: -844 m_UserModificationsInstanceId: -824
m_OriginalInstanceId: -846 m_OriginalInstanceId: -826
m_LoadAssets: 0 m_LoadAssets: 0