Compare commits
No commits in common. "f2d9a7f7cce373db0ceafbd5da63138487b8641b" and "6e74d058513d40789ac4eba67c04390f1d8d1564" have entirely different histories.
f2d9a7f7cc
...
6e74d05851
Binary file not shown.
|
Before Width: | Height: | Size: 1.5 MiB |
@ -1,147 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: f6f7cf722ebaa46bdab456d7c3009064
|
|
||||||
TextureImporter:
|
|
||||||
internalIDToNameTable: []
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 12
|
|
||||||
mipmaps:
|
|
||||||
mipMapMode: 0
|
|
||||||
enableMipMap: 0
|
|
||||||
sRGBTexture: 1
|
|
||||||
linearTexture: 0
|
|
||||||
fadeOut: 0
|
|
||||||
borderMipMap: 0
|
|
||||||
mipMapsPreserveCoverage: 0
|
|
||||||
alphaTestReferenceValue: 0.5
|
|
||||||
mipMapFadeDistanceStart: 1
|
|
||||||
mipMapFadeDistanceEnd: 3
|
|
||||||
bumpmap:
|
|
||||||
convertToNormalMap: 0
|
|
||||||
externalNormalMap: 0
|
|
||||||
heightScale: 0.25
|
|
||||||
normalMapFilter: 0
|
|
||||||
isReadable: 0
|
|
||||||
streamingMipmaps: 0
|
|
||||||
streamingMipmapsPriority: 0
|
|
||||||
vTOnly: 0
|
|
||||||
ignoreMasterTextureLimit: 0
|
|
||||||
grayScaleToAlpha: 0
|
|
||||||
generateCubemap: 6
|
|
||||||
cubemapConvolution: 0
|
|
||||||
seamlessCubemap: 0
|
|
||||||
textureFormat: 1
|
|
||||||
maxTextureSize: 2048
|
|
||||||
textureSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
filterMode: 1
|
|
||||||
aniso: 1
|
|
||||||
mipBias: 0
|
|
||||||
wrapU: 1
|
|
||||||
wrapV: 1
|
|
||||||
wrapW: 0
|
|
||||||
nPOTScale: 0
|
|
||||||
lightmap: 0
|
|
||||||
compressionQuality: 50
|
|
||||||
spriteMode: 1
|
|
||||||
spriteExtrude: 1
|
|
||||||
spriteMeshType: 1
|
|
||||||
alignment: 0
|
|
||||||
spritePivot: {x: 0.5, y: 0.5}
|
|
||||||
spritePixelsToUnits: 100
|
|
||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
spriteGenerateFallbackPhysicsShape: 1
|
|
||||||
alphaUsage: 1
|
|
||||||
alphaIsTransparency: 1
|
|
||||||
spriteTessellationDetail: -1
|
|
||||||
textureType: 8
|
|
||||||
textureShape: 1
|
|
||||||
singleChannelComponent: 0
|
|
||||||
flipbookRows: 1
|
|
||||||
flipbookColumns: 1
|
|
||||||
maxTextureSizeSet: 0
|
|
||||||
compressionQualitySet: 0
|
|
||||||
textureFormatSet: 0
|
|
||||||
ignorePngGamma: 0
|
|
||||||
applyGammaDecoding: 0
|
|
||||||
cookieLightType: 0
|
|
||||||
platformSettings:
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: DefaultTexturePlatform
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: Standalone
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: iPhone
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: Android
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: WebGL
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
spriteSheet:
|
|
||||||
serializedVersion: 2
|
|
||||||
sprites: []
|
|
||||||
outline: []
|
|
||||||
physicsShape: []
|
|
||||||
bones: []
|
|
||||||
spriteID: 5e97eb03825dee720800000000000000
|
|
||||||
internalID: 0
|
|
||||||
vertices: []
|
|
||||||
indices:
|
|
||||||
edges: []
|
|
||||||
weights: []
|
|
||||||
secondaryTextures: []
|
|
||||||
nameFileIdTable: {}
|
|
||||||
spritePackingTag:
|
|
||||||
pSDRemoveMatte: 0
|
|
||||||
pSDShowRemoveMatteOption: 0
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@ -1,8 +1,7 @@
|
|||||||
using System;
|
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
public class DiceView : MonoBehaviour, IBase
|
public class DiceView : MonoBehaviour, IBase, IBootLoader
|
||||||
{
|
{
|
||||||
private Rigidbody rb;
|
private Rigidbody rb;
|
||||||
private bool rolling;
|
private bool rolling;
|
||||||
@ -16,23 +15,21 @@ public class DiceView : MonoBehaviour, IBase
|
|||||||
[SerializeField] private float liftForce = 0.1f;
|
[SerializeField] private float liftForce = 0.1f;
|
||||||
|
|
||||||
|
|
||||||
private Action<int> onRollingComplete = null;
|
|
||||||
|
|
||||||
void Awake()
|
void Awake()
|
||||||
{
|
{
|
||||||
rb = GetComponent<Rigidbody>();
|
rb = GetComponent<Rigidbody>();
|
||||||
rb.useGravity = false;
|
rb.useGravity = false;
|
||||||
|
}
|
||||||
|
public void Initialize()
|
||||||
|
{
|
||||||
|
InterfaceManager.Instance?.RegisterInterface<DiceView>(this);
|
||||||
transform.localPosition = new Vector3(0, 20, 0);
|
transform.localPosition = new Vector3(0, 20, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Roll(Action<int> onComplete, bool isBot)
|
public void Roll()
|
||||||
{
|
{
|
||||||
if (!rolling)
|
if (!rolling)
|
||||||
{
|
|
||||||
Debug.Log($"isBot: {isBot}");
|
|
||||||
onRollingComplete = onComplete;
|
|
||||||
StartCoroutine(RollRoutine());
|
StartCoroutine(RollRoutine());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
IEnumerator RollRoutine()
|
IEnumerator RollRoutine()
|
||||||
@ -40,26 +37,26 @@ public class DiceView : MonoBehaviour, IBase
|
|||||||
rolling = true;
|
rolling = true;
|
||||||
|
|
||||||
// MICRO DELAY → breaks physics sync between dice
|
// MICRO DELAY → breaks physics sync between dice
|
||||||
yield return new WaitForSeconds(UnityEngine.Random.Range(0.01f, 0.06f));
|
yield return new WaitForSeconds(Random.Range(0.01f, 0.06f));
|
||||||
|
|
||||||
rb.useGravity = true;
|
rb.useGravity = true;
|
||||||
|
|
||||||
// PER-DICE FORCE MULTIPLIER
|
// PER-DICE FORCE MULTIPLIER
|
||||||
float spinMultiplier = UnityEngine.Random.Range(0.8f, 1.25f);
|
float spinMultiplier = Random.Range(0.8f, 1.25f);
|
||||||
|
|
||||||
// RANDOM TORQUE
|
// RANDOM TORQUE
|
||||||
rb.AddTorque(
|
rb.AddTorque(
|
||||||
UnityEngine.Random.Range(-baseSpinForce, baseSpinForce) * spinMultiplier,
|
Random.Range(-baseSpinForce, baseSpinForce) * spinMultiplier,
|
||||||
UnityEngine.Random.Range(-baseSpinForce, baseSpinForce) * spinMultiplier,
|
Random.Range(-baseSpinForce, baseSpinForce) * spinMultiplier,
|
||||||
UnityEngine.Random.Range(-baseSpinForce, baseSpinForce) * spinMultiplier,
|
Random.Range(-baseSpinForce, baseSpinForce) * spinMultiplier,
|
||||||
ForceMode.Impulse
|
ForceMode.Impulse
|
||||||
);
|
);
|
||||||
|
|
||||||
// RANDOM SIDE FORCE
|
// RANDOM SIDE FORCE
|
||||||
Vector3 sideDir = new Vector3(
|
Vector3 sideDir = new Vector3(
|
||||||
UnityEngine.Random.Range(-1f, 1f),
|
Random.Range(-1f, 1f),
|
||||||
0f,
|
0f,
|
||||||
UnityEngine.Random.Range(-1f, 1f)
|
Random.Range(-1f, 1f)
|
||||||
).normalized;
|
).normalized;
|
||||||
|
|
||||||
rb.AddForce(sideDir * sideForce, ForceMode.Impulse);
|
rb.AddForce(sideDir * sideForce, ForceMode.Impulse);
|
||||||
@ -74,8 +71,6 @@ public class DiceView : MonoBehaviour, IBase
|
|||||||
//TODO: Use the dice value as needed
|
//TODO: Use the dice value as needed
|
||||||
Debug.Log($"Dice rolled: {value}");
|
Debug.Log($"Dice rolled: {value}");
|
||||||
|
|
||||||
onRollingComplete?.Invoke(value);
|
|
||||||
|
|
||||||
ResetDice();
|
ResetDice();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -97,12 +92,5 @@ public class DiceView : MonoBehaviour, IBase
|
|||||||
rb.angularVelocity = Vector3.zero;
|
rb.angularVelocity = Vector3.zero;
|
||||||
transform.localPosition = new Vector3(0, 20, 0);
|
transform.localPosition = new Vector3(0, 20, 0);
|
||||||
rolling = false;
|
rolling = false;
|
||||||
|
|
||||||
Invoke(nameof(ResetEvent), 0.5f);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ResetEvent()
|
|
||||||
{
|
|
||||||
onRollingComplete = null;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -576,7 +576,6 @@ Transform:
|
|||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 4424967554755073335}
|
- {fileID: 4424967554755073335}
|
||||||
- {fileID: 534221319385673590}
|
- {fileID: 534221319385673590}
|
||||||
- {fileID: 3729843840315893126}
|
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
@ -629,7 +628,6 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
playerState: 0
|
playerState: 0
|
||||||
animator: {fileID: 5526766409186502679}
|
animator: {fileID: 5526766409186502679}
|
||||||
playerCountCanvasPrefab: {fileID: 9029553984926861784}
|
|
||||||
--- !u!1 &4818123989977612668
|
--- !u!1 &4818123989977612668
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -1516,114 +1514,3 @@ Transform:
|
|||||||
m_Father: {fileID: 724652835177063243}
|
m_Father: {fileID: 724652835177063243}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!1001 &4537709141704337870
|
|
||||||
PrefabInstance:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Modification:
|
|
||||||
m_TransformParent: {fileID: 5420572229297639394}
|
|
||||||
m_Modifications:
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.x
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.y
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_RootOrder
|
|
||||||
value: 2
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 2.239
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Name
|
|
||||||
value: Canvas - World
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_IsActive
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
m_RemovedComponents: []
|
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
--- !u!224 &3729843840315893126 stripped
|
|
||||||
RectTransform:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 4537709141704337870}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &9029553984926861784 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 4537709141704337870}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
|
|||||||
@ -576,7 +576,6 @@ Transform:
|
|||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 4101024636752269533}
|
- {fileID: 4101024636752269533}
|
||||||
- {fileID: 209575521726294684}
|
- {fileID: 209575521726294684}
|
||||||
- {fileID: 1276728539856229656}
|
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
@ -629,7 +628,6 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
playerState: 0
|
playerState: 0
|
||||||
animator: {fileID: 5274388487207906813}
|
animator: {fileID: 5274388487207906813}
|
||||||
playerCountCanvasPrefab: {fileID: 6862258105288866118}
|
|
||||||
--- !u!1 &5059623752267150313
|
--- !u!1 &5059623752267150313
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -1516,158 +1514,3 @@ Transform:
|
|||||||
m_Father: {fileID: 1832908541896867547}
|
m_Father: {fileID: 1832908541896867547}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!1001 &2057554100330600784
|
|
||||||
PrefabInstance:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Modification:
|
|
||||||
m_TransformParent: {fileID: 5672526856521419272}
|
|
||||||
m_Modifications:
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.x
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.y
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_RootOrder
|
|
||||||
value: 2
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.x
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.y
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.z
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 2.239
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Name
|
|
||||||
value: Canvas - World
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_IsActive
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.b
|
|
||||||
value: 0.1882353
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.g
|
|
||||||
value: 0.52156866
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.r
|
|
||||||
value: 0.13333334
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
m_RemovedComponents: []
|
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
--- !u!224 &1276728539856229656 stripped
|
|
||||||
RectTransform:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 2057554100330600784}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &6862258105288866118 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 2057554100330600784}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
|
|||||||
@ -162,7 +162,6 @@ Transform:
|
|||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 8277875877323360066}
|
- {fileID: 8277875877323360066}
|
||||||
- {fileID: 5251663078533119235}
|
- {fileID: 5251663078533119235}
|
||||||
- {fileID: 7416033585674372540}
|
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
@ -201,7 +200,6 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
playerState: 0
|
playerState: 0
|
||||||
animator: {fileID: 232863433340697214}
|
animator: {fileID: 232863433340697214}
|
||||||
playerCountCanvasPrefab: {fileID: 2911420982173280738}
|
|
||||||
--- !u!136 &1627116187348267135
|
--- !u!136 &1627116187348267135
|
||||||
CapsuleCollider:
|
CapsuleCollider:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -1516,158 +1514,3 @@ Transform:
|
|||||||
m_Father: {fileID: 8503180080140070530}
|
m_Father: {fileID: 8503180080140070530}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!1001 &7769048123306772980
|
|
||||||
PrefabInstance:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Modification:
|
|
||||||
m_TransformParent: {fileID: 338321318880370071}
|
|
||||||
m_Modifications:
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.x
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.y
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_RootOrder
|
|
||||||
value: 2
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.x
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.y
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.z
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 2.239
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Name
|
|
||||||
value: Canvas - World
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_IsActive
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.b
|
|
||||||
value: 0.7294118
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.g
|
|
||||||
value: 0.6666667
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.r
|
|
||||||
value: 0.6313726
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
m_RemovedComponents: []
|
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
--- !u!1 &2911420982173280738 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 7769048123306772980}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!224 &7416033585674372540 stripped
|
|
||||||
RectTransform:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 7769048123306772980}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
|
|||||||
@ -1205,7 +1205,6 @@ Transform:
|
|||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 2133300963410926754}
|
- {fileID: 2133300963410926754}
|
||||||
- {fileID: 2853674755695388387}
|
- {fileID: 2853674755695388387}
|
||||||
- {fileID: 8164022016059970845}
|
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
@ -1258,7 +1257,6 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
playerState: 0
|
playerState: 0
|
||||||
animator: {fileID: 7800412279828783518}
|
animator: {fileID: 7800412279828783518}
|
||||||
playerCountCanvasPrefab: {fileID: 4593694095142779203}
|
|
||||||
--- !u!1 &7074820051352815849
|
--- !u!1 &7074820051352815849
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -1516,158 +1514,3 @@ Transform:
|
|||||||
m_Father: {fileID: 5537228651064754093}
|
m_Father: {fileID: 5537228651064754093}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!1001 &8968445451050703189
|
|
||||||
PrefabInstance:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Modification:
|
|
||||||
m_TransformParent: {fileID: 7767047851774264951}
|
|
||||||
m_Modifications:
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 65645560966781747, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.x
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Pivot.y
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_RootOrder
|
|
||||||
value: 2
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.x
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.y
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalScale.z
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 2.239
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Name
|
|
||||||
value: Canvas - World
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_IsActive
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.b
|
|
||||||
value: 0.19607843
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.g
|
|
||||||
value: 0.17254902
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 8752947010238866161, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
propertyPath: m_Color.r
|
|
||||||
value: 0.46666667
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
m_RemovedComponents: []
|
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
--- !u!1 &4593694095142779203 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 4879164135252893718, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 8968445451050703189}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!224 &8164022016059970845 stripped
|
|
||||||
RectTransform:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 953143927943285832, guid: a925361762f504380a8aa4d7eb87b32c, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 8968445451050703189}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
|
|||||||
@ -237,18 +237,6 @@ PrefabInstance:
|
|||||||
propertyPath: m_Layer
|
propertyPath: m_Layer
|
||||||
value: 3
|
value: 3
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1804238606659730488, guid: 7a038d77e6ef54ce4b627bc5bf3ed17d, type: 3}
|
|
||||||
propertyPath: liftForce
|
|
||||||
value: 0.25
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1804238606659730488, guid: 7a038d77e6ef54ce4b627bc5bf3ed17d, type: 3}
|
|
||||||
propertyPath: sideForce
|
|
||||||
value: 0.5
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1804238606659730488, guid: 7a038d77e6ef54ce4b627bc5bf3ed17d, type: 3}
|
|
||||||
propertyPath: baseSpinForce
|
|
||||||
value: 2000
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1804238606659730489, guid: 7a038d77e6ef54ce4b627bc5bf3ed17d, type: 3}
|
- target: {fileID: 1804238606659730489, guid: 7a038d77e6ef54ce4b627bc5bf3ed17d, type: 3}
|
||||||
propertyPath: m_RootOrder
|
propertyPath: m_RootOrder
|
||||||
value: 0
|
value: 0
|
||||||
|
|||||||
@ -111,15 +111,15 @@ PrefabInstance:
|
|||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
||||||
propertyPath: m_LocalScale.x
|
propertyPath: m_LocalScale.x
|
||||||
value: 0.2
|
value: 0.14
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
||||||
propertyPath: m_LocalScale.y
|
propertyPath: m_LocalScale.y
|
||||||
value: 0.2
|
value: 0.14
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
||||||
propertyPath: m_LocalScale.z
|
propertyPath: m_LocalScale.z
|
||||||
value: 0.2
|
value: 0.14
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
- target: {fileID: -8679921383154817045, guid: 5da822beb0d884a49a6333925f5142a8, type: 3}
|
||||||
propertyPath: m_LocalPosition.x
|
propertyPath: m_LocalPosition.x
|
||||||
|
|||||||
@ -25,7 +25,7 @@ RectTransform:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 1950433650452808236}
|
m_GameObject: {fileID: 1950433650452808236}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: -0, y: -0.40670383, z: -0, w: 0.91356015}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
@ -34,7 +34,7 @@ RectTransform:
|
|||||||
- {fileID: 6813413954384782979}
|
- {fileID: 6813413954384782979}
|
||||||
m_Father: {fileID: 953143927943285832}
|
m_Father: {fileID: 953143927943285832}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: -47.996, z: 0}
|
||||||
m_AnchorMin: {x: 0, y: 0}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
m_AnchorMax: {x: 1, y: 1}
|
m_AnchorMax: {x: 1, y: 1}
|
||||||
m_AnchoredPosition: {x: 0, y: 0}
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
@ -61,7 +61,7 @@ MonoBehaviour:
|
|||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
m_Material: {fileID: 0}
|
m_Material: {fileID: 0}
|
||||||
m_Color: {r: 0.1254902, g: 0.42352942, b: 0.75686276, a: 1}
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
m_RaycastTarget: 1
|
m_RaycastTarget: 1
|
||||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
m_Maskable: 1
|
m_Maskable: 1
|
||||||
@ -166,7 +166,6 @@ GameObject:
|
|||||||
- component: {fileID: 5587250865659051320}
|
- component: {fileID: 5587250865659051320}
|
||||||
- component: {fileID: 1334714064113256010}
|
- component: {fileID: 1334714064113256010}
|
||||||
- component: {fileID: 2739169735767897497}
|
- component: {fileID: 2739169735767897497}
|
||||||
- component: {fileID: 8176763997504289913}
|
|
||||||
m_Layer: 5
|
m_Layer: 5
|
||||||
m_Name: Canvas - World
|
m_Name: Canvas - World
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@ -183,7 +182,7 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 4879164135252893718}
|
m_GameObject: {fileID: 4879164135252893718}
|
||||||
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: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 3, y: 3, z: 3}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 65645560966781747}
|
- {fileID: 65645560966781747}
|
||||||
@ -239,7 +238,7 @@ MonoBehaviour:
|
|||||||
m_FallbackScreenDPI: 96
|
m_FallbackScreenDPI: 96
|
||||||
m_DefaultSpriteDPI: 96
|
m_DefaultSpriteDPI: 96
|
||||||
m_DynamicPixelsPerUnit: 1
|
m_DynamicPixelsPerUnit: 1
|
||||||
m_PresetInfoIsWorld: 0
|
m_PresetInfoIsWorld: 1
|
||||||
--- !u!114 &2739169735767897497
|
--- !u!114 &2739169735767897497
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -257,19 +256,6 @@ MonoBehaviour:
|
|||||||
m_BlockingMask:
|
m_BlockingMask:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Bits: 4294967295
|
m_Bits: 4294967295
|
||||||
--- !u!114 &8176763997504289913
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 4879164135252893718}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 12325a6692b2349b5992ec00a2cf8162, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
playerCountText: {fileID: 5414082930131347236}
|
|
||||||
--- !u!1 &8183529856602442984
|
--- !u!1 &8183529856602442984
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,40 +0,0 @@
|
|||||||
using System.Collections.Generic;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
public enum GameModeType
|
|
||||||
{
|
|
||||||
PVP,
|
|
||||||
Bot,
|
|
||||||
}
|
|
||||||
|
|
||||||
public class GameModeHandler : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|
||||||
{
|
|
||||||
private GameplayManager gameplayManager;
|
|
||||||
|
|
||||||
public GameModeType GameModeType
|
|
||||||
{
|
|
||||||
get; private set;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Initialize()
|
|
||||||
{
|
|
||||||
InterfaceManager.Instance.RegisterInterface<GameModeHandler>(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void InitializeData()
|
|
||||||
{
|
|
||||||
gameplayManager = InterfaceManager.Instance.GetInterfaceInstance<GameplayManager>();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void InitPVPModeData(List<PlayerType> types)
|
|
||||||
{
|
|
||||||
GameModeType = GameModeType.PVP;
|
|
||||||
gameplayManager.InitPlayerTypesForPVP(types);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void InitBotModeData(PlayerType selectedPlayer, int botCount)
|
|
||||||
{
|
|
||||||
GameModeType = GameModeType.Bot;
|
|
||||||
gameplayManager.InitPlayerTypesForBotMatch(selectedPlayer, botCount);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 2d8a94cfc31bb45f9a403db0c1f4c116
|
|
||||||
MonoImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@ -80,7 +80,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
private List<PlayerPawn> availPlayers = new List<PlayerPawn>();
|
private List<PlayerPawn> availPlayers = new List<PlayerPawn>();
|
||||||
private bool canSwitchPlayer = false;
|
private bool canSwitchPlayer = false;
|
||||||
|
|
||||||
public bool CanRollDiceForUser
|
public bool CanRollDice
|
||||||
{
|
{
|
||||||
get; private set;
|
get; private set;
|
||||||
}
|
}
|
||||||
@ -96,20 +96,23 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
{
|
{
|
||||||
tilesManager = InterfaceManager.Instance.GetInterfaceInstance<TilesManager>();
|
tilesManager = InterfaceManager.Instance.GetInterfaceInstance<TilesManager>();
|
||||||
|
|
||||||
// InitPlayerTypesForBotMatch(PlayerType.Player1, 3);
|
CanRollDice = true;
|
||||||
// InitPlayerTypesForPVP(new List<PlayerType> { PlayerType.Player1, PlayerType.Player2})
|
|
||||||
|
// initialize the player list from UI.
|
||||||
|
|
||||||
|
// InitPlayerTypesForLAN(null);
|
||||||
|
InitPlayerTypesForBotMatch(PlayerType.Player1, 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO :: Call when the UI selection is made and game starts
|
// TODO :: Call when the UI selection is made and game starts
|
||||||
public void InitPlayerTypesForPVP(List<PlayerType> types)
|
public void InitPlayerTypesForLAN(List<PlayerType> types)
|
||||||
{
|
{
|
||||||
// TODO :: 2P, 3P, 4P
|
// TODO :: 2P, 3P, 4P
|
||||||
allPlayerTypes = new List<PlayerType>(types);
|
allPlayerTypes = new List<PlayerType> { PlayerType.Player1, PlayerType.Player2, PlayerType.Player3, PlayerType.Player4 };
|
||||||
|
// allPlayerTypes = new List<PlayerType> { PlayerType.Player1, PlayerType.Player3 };
|
||||||
|
|
||||||
playerBaseHandler.InitPlayerTypes(allPlayerTypes);
|
playerBaseHandler.InitPlayerTypes(allPlayerTypes);
|
||||||
InitCurrentGamePlayerInfo();
|
InitCurrentGamePlayerInfo();
|
||||||
|
|
||||||
SetCanRollDiceForUser(true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void InitPlayerTypesForBotMatch(PlayerType selectedPlayerType, int botCount)
|
public void InitPlayerTypesForBotMatch(PlayerType selectedPlayerType, int botCount)
|
||||||
@ -118,7 +121,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
allPlayerTypes.Clear();
|
allPlayerTypes.Clear();
|
||||||
AssignBotTypes(selectedPlayerType, botCount);
|
AssignBotTypes(selectedPlayerType, botCount);
|
||||||
|
|
||||||
|
|
||||||
allPlayerTypes.Add(selectedPlayerType);
|
allPlayerTypes.Add(selectedPlayerType);
|
||||||
allPlayerTypes.AddRange(botTypesInGame);
|
allPlayerTypes.AddRange(botTypesInGame);
|
||||||
|
|
||||||
@ -126,8 +128,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
InitCurrentGamePlayerInfo();
|
InitCurrentGamePlayerInfo();
|
||||||
InitBotRuntimeData();
|
InitBotRuntimeData();
|
||||||
AssignPlayerAndBotStates(selectedPlayerType);
|
AssignPlayerAndBotStates(selectedPlayerType);
|
||||||
|
|
||||||
SetCanRollDiceForUser(!botTypesInGame.Contains(selectedPlayerType));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void InitBotRuntimeData()
|
private void InitBotRuntimeData()
|
||||||
@ -205,7 +205,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
Debug.Log($"playerGameData.playerType: {playerGameData.playerType}");
|
Debug.Log($"playerGameData.playerType: {playerGameData.playerType}");
|
||||||
|
|
||||||
playerGameDatasDict.Add(playerGameData.playerType, playerGameData);
|
playerGameDatasDict.Add(playerGameData.playerType, playerGameData);
|
||||||
playerGameDatasDict[playerGameData.playerType].playerPawnsDict = new Dictionary<int, PlayerPawn>();
|
playerGameDatasDict[playerGameData.playerType].playerPawnsDict = new Dictionary<int, PlayerPawn>();
|
||||||
|
|
||||||
@ -233,7 +232,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
|
|
||||||
public void OnDiceInteracted()
|
public void OnDiceInteracted()
|
||||||
{
|
{
|
||||||
diceRollHandler.HandleDiceViewForUser();
|
diceRollHandler.HandleDiceView();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RollDiceForPlayer(int rolledVal)
|
public void RollDiceForPlayer(int rolledVal)
|
||||||
@ -249,6 +248,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
{
|
{
|
||||||
Debug.Log($"Switching player");
|
Debug.Log($"Switching player");
|
||||||
SwitchPlayer();
|
SwitchPlayer();
|
||||||
|
SetCanRollDiceForUser(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -264,12 +264,12 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void RollDiceForBot(int rolledVal)
|
private void RollDiceForBot()
|
||||||
{
|
{
|
||||||
Debug.Log($"CallTest: RollDiceForBot");
|
Debug.Log($"CallTest: RollDiceForBot");
|
||||||
|
|
||||||
// OnDiceRolled(diceValue == 0 ? UnityEngine.Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1) : diceValue);
|
// OnDiceRolled(diceValue == 0 ? UnityEngine.Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1) : diceValue);
|
||||||
OnDiceRolled(rolledVal);
|
OnDiceRolled(diceValue == 0 ? UnityEngine.Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1) : diceValue);
|
||||||
|
|
||||||
SelectPawnFromBotBase();
|
SelectPawnFromBotBase();
|
||||||
|
|
||||||
@ -280,11 +280,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
// What happens when you get a 6
|
// What happens when you get a 6
|
||||||
private void SelectPawnFromBotBase()
|
private void SelectPawnFromBotBase()
|
||||||
{
|
{
|
||||||
if (canSwitchPlayer || availPlayers.Count() < 1 && !CanRollDiceAgain || !botTypesInGame.Contains(currentPlayerTypeTurn))
|
if (canSwitchPlayer || availPlayers.Count() < 1 && !CanRollDiceAgain || !botTypesInGame.Contains(currentPlayerTypeTurn)) return; // Have a better check here
|
||||||
{
|
|
||||||
Debug.Log($"returning from SelectPawnFromBotBase");
|
|
||||||
return; // Have a better check here
|
|
||||||
}
|
|
||||||
|
|
||||||
Debug.Log($"CallTest: SelectPawnFromBotBase: {currentPlayerTypeTurn}");
|
Debug.Log($"CallTest: SelectPawnFromBotBase: {currentPlayerTypeTurn}");
|
||||||
var botPawnsDictForCurrentPlayer = botRuntimeMovementData[currentPlayerTypeTurn]; // set the data inside this dict
|
var botPawnsDictForCurrentPlayer = botRuntimeMovementData[currentPlayerTypeTurn]; // set the data inside this dict
|
||||||
@ -460,7 +456,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
Debug.Log($"### AreAllPawnsInFinishingPath");
|
Debug.Log($"### AreAllPawnsInFinishingPath");
|
||||||
if (AreAllPawnsInFinishingPath())
|
if (AreAllPawnsInFinishingPath())
|
||||||
{
|
{
|
||||||
SetCanRollDiceForUser(!botTypesInGame.Contains(currentPlayerTypeTurn));
|
SetCanRollDiceForUser(true);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -521,16 +517,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
.Where(pawn => pawn.GetPlayerState() == PlayerState.InSafeZone ||
|
.Where(pawn => pawn.GetPlayerState() == PlayerState.InSafeZone ||
|
||||||
pawn.GetPlayerState() == PlayerState.Moving ||
|
pawn.GetPlayerState() == PlayerState.Moving ||
|
||||||
pawn.GetPlayerState() == PlayerState.InFinishingPath).ToList();
|
pawn.GetPlayerState() == PlayerState.InFinishingPath).ToList();
|
||||||
|
|
||||||
Debug.Log($"#### UpdatePlayerState in InitActivePlayers ");
|
|
||||||
foreach (var pawn in playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict.Values)
|
|
||||||
{
|
|
||||||
Debug.Log($"pawn: {pawn.name}, state: {pawn.GetPlayerState()}");
|
|
||||||
}
|
|
||||||
foreach (var player in availPlayers) // TODO :: Move from here
|
|
||||||
{
|
|
||||||
DisplayPlayerCountOnTile(player, true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private bool AreAllPawnsInFinishingPath()
|
private bool AreAllPawnsInFinishingPath()
|
||||||
@ -555,7 +541,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
|
|
||||||
private void UpdatePlayerState(PlayerPawn playerPawn, PlayerState playerState)
|
private void UpdatePlayerState(PlayerPawn playerPawn, PlayerState playerState)
|
||||||
{
|
{
|
||||||
Debug.Log($"#### UpdatePlayerState ");
|
|
||||||
playerGameDatasDict[playerPawn.PlayerType].playerPawnsDict[playerPawn.PlayerId] = playerPawn;
|
playerGameDatasDict[playerPawn.PlayerType].playerPawnsDict[playerPawn.PlayerId] = playerPawn;
|
||||||
playerGameDatasDict[playerPawn.PlayerType].playerPawnsDict[playerPawn.PlayerId].SetPlayerState(playerState);
|
playerGameDatasDict[playerPawn.PlayerType].playerPawnsDict[playerPawn.PlayerId].SetPlayerState(playerState);
|
||||||
playerPawn.SetPlayerState(playerState);
|
playerPawn.SetPlayerState(playerState);
|
||||||
@ -564,15 +549,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
private void CheckDiceRollForBot(PlayerPawn playerPawn)
|
private void CheckDiceRollForBot(PlayerPawn playerPawn)
|
||||||
{
|
{
|
||||||
if (CanRollDiceAgain)
|
if (CanRollDiceAgain)
|
||||||
{
|
RollDiceForBot();
|
||||||
HandleDiceRoll();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void HandleDiceRoll()
|
|
||||||
{
|
|
||||||
// diceRollHandler.HandleDiceViewForBot((rollVal) => RollDiceForBot(rollVal));
|
|
||||||
diceRollHandler.HandleDiceViewForBot((rollVal) => RollDiceForBot(rollVal), diceValue == 0 ? UnityEngine.Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1) : diceValue);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnPawnSelected(PlayerPawn playerPawn)
|
public void OnPawnSelected(PlayerPawn playerPawn)
|
||||||
@ -582,19 +559,16 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
PlayerGameData playerGameData = playerGameDatasDict[currentPlayerTypeTurn];
|
PlayerGameData playerGameData = playerGameDatasDict[currentPlayerTypeTurn];
|
||||||
Debug.Log($"playerPawn.GetPlayerState(): {playerPawn.GetPlayerState()}");
|
Debug.Log($"playerPawn.GetPlayerState(): {playerPawn.GetPlayerState()}");
|
||||||
|
|
||||||
|
|
||||||
if (playerPawn.GetPlayerState() == PlayerState.InHome)
|
if (playerPawn.GetPlayerState() == PlayerState.InHome)
|
||||||
{
|
{
|
||||||
Tile targetTile = tilesManager.RetrieveTileBasedOnIndex(playerGameData.startIndex);
|
Tile targetTile = tilesManager.RetrieveTileBasedOnIndex(playerGameData.startIndex);
|
||||||
|
|
||||||
DisplayPlayerCountOnTile(playerPawn, false);
|
|
||||||
playerPawn.MoveToTile(
|
playerPawn.MoveToTile(
|
||||||
GetAndInitPositionInsideSafeZone(playerPawn, targetTile),
|
GetAndInitPositionInsideSafeZone(playerPawn, targetTile),
|
||||||
onComplete: () =>
|
onComplete: () =>
|
||||||
{
|
{
|
||||||
playerGameDatasDict[playerGameData.playerType].totalPawnsInHome--;
|
playerGameDatasDict[playerGameData.playerType].totalPawnsInHome--;
|
||||||
UpdatePlayerState(playerPawn, PlayerState.InSafeZone);
|
UpdatePlayerState(playerPawn, PlayerState.InSafeZone);
|
||||||
DisplayPlayerCountOnTile(playerPawn, true);
|
|
||||||
if (CheckForMaxDiceRollAttempt())
|
if (CheckForMaxDiceRollAttempt())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@ -633,13 +607,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
{
|
{
|
||||||
SafeTile safeTile = (SafeTile)currentSittingTile;
|
SafeTile safeTile = (SafeTile)currentSittingTile;
|
||||||
safeTile.UpdateSafeZonePlayerData(currentPlayerTypeTurn, playerPawn);
|
safeTile.UpdateSafeZonePlayerData(currentPlayerTypeTurn, playerPawn);
|
||||||
// DisplayPlayerCountOnTile(playerPawn, false);
|
|
||||||
// if (safeTile.PlayerTypesCount > 0)
|
|
||||||
// {
|
|
||||||
// var pawns = safeTile.GetPlayerPawns(playerPawn.PlayerType);
|
|
||||||
// foreach (var pawn in pawns)
|
|
||||||
// DisplayPlayerCountOnTile(pawn, true);
|
|
||||||
// }
|
|
||||||
|
|
||||||
if (safeTile.PlayerTypesCount == 1)
|
if (safeTile.PlayerTypesCount == 1)
|
||||||
{
|
{
|
||||||
@ -683,24 +650,12 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
private void SwitchPlayer(PlayerPawn playerPawn = null)
|
private void SwitchPlayer(PlayerPawn playerPawn = null)
|
||||||
{
|
{
|
||||||
Debug.Log($"CallTest: SwitchPlayer");
|
Debug.Log($"CallTest: SwitchPlayer");
|
||||||
if (playerPawn)
|
|
||||||
UpdatePlayerState(playerPawn, tilesManager.RetrieveTileBasedOnIndex(playerPawn.CurrentTileIndex).IsSafeZone ? PlayerState.InSafeZone : PlayerState.Moving);
|
|
||||||
|
|
||||||
if (!CanRollDiceAgain)
|
if (!CanRollDiceAgain)
|
||||||
{
|
{
|
||||||
Debug.Log($"currentPlayerTurn: {currentPlayerTypeTurn}");
|
Debug.Log($"currentPlayerTurn: {currentPlayerTypeTurn}");
|
||||||
Debug.Log($"currentPlayerTurnIndex: {currentPlayerTurnIndex}");
|
Debug.Log($"currentPlayerTurnIndex: {currentPlayerTurnIndex}");
|
||||||
|
|
||||||
Debug.Log($"before SwitchPlayer availPlayers: {availPlayers.Count}, playerPawn: {playerPawn}");
|
|
||||||
if (availPlayers.Count < 1)
|
|
||||||
InitActivePlayers();
|
|
||||||
|
|
||||||
Debug.Log($"after SwitchPlayer availPlayers: {availPlayers.Count}, playerPawn: {playerPawn}");
|
|
||||||
foreach (var pawn in availPlayers)
|
|
||||||
{
|
|
||||||
DisplayPlayerCountOnTile(pawn, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (allPlayerTypes.Count == 1)
|
if (allPlayerTypes.Count == 1)
|
||||||
{
|
{
|
||||||
Debug.LogError($"GAME IS OVER");
|
Debug.LogError($"GAME IS OVER");
|
||||||
@ -720,12 +675,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
|
|
||||||
diceSixRollCounter = 0;
|
diceSixRollCounter = 0;
|
||||||
diceText.text = $"{0}";
|
diceText.text = $"{0}";
|
||||||
|
|
||||||
InitActivePlayers();
|
|
||||||
foreach (var pawn in availPlayers)
|
|
||||||
{
|
|
||||||
DisplayPlayerCountOnTile(pawn, true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
SetCanRollDiceForUser(!botTypesInGame.Contains(currentPlayerTypeTurn));
|
SetCanRollDiceForUser(!botTypesInGame.Contains(currentPlayerTypeTurn));
|
||||||
@ -736,12 +685,15 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
pointerMeshRend.material = turnMat;
|
pointerMeshRend.material = turnMat;
|
||||||
// pointerMeshRend.materials[0] = turnMat;
|
// pointerMeshRend.materials[0] = turnMat;
|
||||||
|
|
||||||
|
if (playerPawn)
|
||||||
|
UpdatePlayerState(playerPawn, tilesManager.RetrieveTileBasedOnIndex(playerPawn.CurrentTileIndex).IsSafeZone ? PlayerState.InSafeZone : PlayerState.Moving);
|
||||||
|
|
||||||
Debug.Log($"botTypesInGame.Contains(currentPlayerTypeTurn): {botTypesInGame.Contains(currentPlayerTypeTurn)}");
|
Debug.Log($"botTypesInGame.Contains(currentPlayerTypeTurn): {botTypesInGame.Contains(currentPlayerTypeTurn)}");
|
||||||
|
|
||||||
if (botTypesInGame.Contains(currentPlayerTypeTurn)) // TODO :: Double check calling of the function
|
if (botTypesInGame.Contains(currentPlayerTypeTurn)) // TODO :: Double check calling of the function
|
||||||
{
|
{
|
||||||
Debug.Log($"Invoking RollDiceForBot");
|
Debug.Log($"Invoking RollDiceForBot");
|
||||||
Invoke(nameof(HandleDiceRoll), 1f);
|
Invoke(nameof(RollDiceForBot), 1f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -762,7 +714,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
Debug.Log($"tile targetPosition: {targetPosition}");
|
Debug.Log($"tile targetPosition: {targetPosition}");
|
||||||
DisplayPlayerCountOnTile(playerPawn, false);
|
|
||||||
|
|
||||||
playerPawn.MoveToTile(
|
playerPawn.MoveToTile(
|
||||||
targetPosition,
|
targetPosition,
|
||||||
@ -791,12 +742,8 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// TODO :: Improve this logic, use a collection
|
// TODO :: Improve this logic, use a collection
|
||||||
Debug.Log($"nextTile.IsSafeZone: {nextTile.IsSafeZone}");
|
Debug.Log($"nextTile.IsSafeZone: {nextTile.IsSafeZone}");
|
||||||
|
|
||||||
if (CanRollDiceAgain)
|
|
||||||
DisplayPlayerCountOnTile(playerPawn, true);
|
|
||||||
|
|
||||||
if (!nextTile.IsSafeZone)
|
if (!nextTile.IsSafeZone)
|
||||||
{
|
{
|
||||||
Debug.Log($"nextTile.HasPawnsAvailable: {nextTile.HasPawnsAvailable}");
|
Debug.Log($"nextTile.HasPawnsAvailable: {nextTile.HasPawnsAvailable}");
|
||||||
@ -850,6 +797,10 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
}
|
}
|
||||||
|
|
||||||
SwitchPlayer(playerPawn);
|
SwitchPlayer(playerPawn);
|
||||||
|
if (!CanRollDiceAgain)
|
||||||
|
{
|
||||||
|
SetCanRollDiceForUser(true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
index);
|
index);
|
||||||
@ -890,7 +841,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
Debug.Log($"targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn): {targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn)}");
|
Debug.Log($"targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn): {targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn)}");
|
||||||
if (!targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn))
|
if (!targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn))
|
||||||
{
|
{
|
||||||
Debug.Log($"targetSafeTile.PlayerTypesCount: {targetSafeTile.PlayerTypesCount}");
|
Debug.Log($"targetSafeTile.PlayerTypesCount: {targetSafeTile.PlayerTypesCount}");
|
||||||
if (targetSafeTile.PlayerTypesCount < 1) // he is the only player that is being added to the safe zone
|
if (targetSafeTile.PlayerTypesCount < 1) // he is the only player that is being added to the safe zone
|
||||||
{
|
{
|
||||||
targetSafeTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn);
|
targetSafeTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn);
|
||||||
@ -915,8 +866,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
private void MoveThroughFinishingPath(PlayerPawn playerPawn, int index, int targetIndex)
|
private void MoveThroughFinishingPath(PlayerPawn playerPawn, int index, int targetIndex)
|
||||||
{
|
{
|
||||||
UpdatePlayerState(playerPawn, PlayerState.InFinishingPath);
|
UpdatePlayerState(playerPawn, PlayerState.InFinishingPath);
|
||||||
|
|
||||||
|
|
||||||
playerPawn.MoveToTile(
|
playerPawn.MoveToTile(
|
||||||
tilesManager.RetrievePositionForFinishingTile(currentPlayerTypeTurn, index).position,
|
tilesManager.RetrievePositionForFinishingTile(currentPlayerTypeTurn, index).position,
|
||||||
onComplete: () =>
|
onComplete: () =>
|
||||||
@ -936,7 +885,6 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
Debug.Log($"CurrentTileIndex: {playerPawn.CurrentTileIndex} == lastIndex: {tilesManager.GetFinishingTileDataLength(currentPlayerTypeTurn) - 1}");
|
Debug.Log($"CurrentTileIndex: {playerPawn.CurrentTileIndex} == lastIndex: {tilesManager.GetFinishingTileDataLength(currentPlayerTypeTurn) - 1}");
|
||||||
if (playerPawn.CurrentTileIndex == tilesManager.GetFinishingTileDataLength(currentPlayerTypeTurn) - 1)
|
if (playerPawn.CurrentTileIndex == tilesManager.GetFinishingTileDataLength(currentPlayerTypeTurn) - 1)
|
||||||
{
|
{
|
||||||
@ -974,20 +922,20 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
CanRollDiceAgain = true;
|
CanRollDiceAgain = true;
|
||||||
if (playerPawn.IsBotPlayer)
|
if (playerPawn.IsBotPlayer)
|
||||||
CheckDiceRollForBot(playerPawn);
|
CheckDiceRollForBot(playerPawn);
|
||||||
else
|
|
||||||
SetCanRollDiceForUser(true);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// activate here
|
|
||||||
if (CheckForMaxDiceRollAttempt())
|
if (CheckForMaxDiceRollAttempt())
|
||||||
{
|
{
|
||||||
|
SetCanRollDiceForUser(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
SwitchPlayer();
|
SwitchPlayer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SetCanRollDiceForUser(true);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
index);
|
index);
|
||||||
@ -995,29 +943,8 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
|
|
||||||
private void SetCanRollDiceForUser(bool state)
|
private void SetCanRollDiceForUser(bool state)
|
||||||
{
|
{
|
||||||
CanRollDiceForUser = state;
|
// if (botTypesInGame.Contains(playerType)) return;
|
||||||
Debug.Log($"CAnRollDiceForUser: {CanRollDiceForUser}");
|
|
||||||
|
CanRollDice = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DisplayPlayerCountOnTile(PlayerPawn playerPawn, bool show)
|
|
||||||
{
|
|
||||||
Tile tile = tilesManager.RetrieveTileBasedOnIndex(playerPawn.CurrentTileIndex);
|
|
||||||
Debug.Log($"Displaycount: {playerPawn.name} on tile: {tile.name}, show: {show}");
|
|
||||||
playerPawn.ShowPlayerCountCanvas(show);
|
|
||||||
if (!show) return;
|
|
||||||
|
|
||||||
int count = 0;
|
|
||||||
if (tile.IsSafeZone)
|
|
||||||
{
|
|
||||||
count = (tile as SafeTile).GetPlayerPawnsCountInTile(playerPawn.PlayerType);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
count = tile.TotalPawnsInTile;
|
|
||||||
}
|
|
||||||
|
|
||||||
playerPawn.GetComponentInChildren<PlayerCountCanvas>().SetPlayerCount(count);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -21,10 +21,6 @@ public class PlayerPawn : MonoBehaviour
|
|||||||
{
|
{
|
||||||
[SerializeField] private PlayerState playerState;
|
[SerializeField] private PlayerState playerState;
|
||||||
[SerializeField] private Animator animator;
|
[SerializeField] private Animator animator;
|
||||||
[SerializeField] private GameObject playerCountCanvasPrefab;
|
|
||||||
[SerializeField] private PlayerCountCanvas playerCountCanvas;
|
|
||||||
|
|
||||||
public PlayerCountCanvas PlayerCountCanvas => playerCountCanvas;
|
|
||||||
|
|
||||||
public bool CanSelectPlayer
|
public bool CanSelectPlayer
|
||||||
{
|
{
|
||||||
@ -140,11 +136,4 @@ public class PlayerPawn : MonoBehaviour
|
|||||||
PlayerId = id;
|
PlayerId = id;
|
||||||
PlayerType = playerType;
|
PlayerType = playerType;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowPlayerCountCanvas(bool show)
|
|
||||||
{
|
|
||||||
if (playerCountCanvasPrefab == null) return;
|
|
||||||
|
|
||||||
playerCountCanvasPrefab.SetActive(show);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
using System;
|
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
@ -13,40 +12,32 @@ public class DiceRollHandler : MonoBehaviour
|
|||||||
private void OnMouseDown()
|
private void OnMouseDown()
|
||||||
{
|
{
|
||||||
inputManager = inputManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<InputManager>() : inputManager;
|
inputManager = inputManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<InputManager>() : inputManager;
|
||||||
|
if (!inputManager.GameplayManager.CanRollDice) return;
|
||||||
|
|
||||||
// RollDiceOnClick();
|
RollDiceOnClick();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
{
|
{
|
||||||
inputManager = inputManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<InputManager>() : inputManager;
|
inputManager = inputManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<InputManager>() : inputManager;
|
||||||
|
if (!inputManager.GameplayManager.CanRollDice) return;
|
||||||
|
|
||||||
|
if (Input.GetKeyDown(KeyCode.Space))
|
||||||
|
RollDiceOnClick();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnUserDiceRollComplete(int rolledVal)
|
private void RollDiceOnClick()
|
||||||
{
|
{
|
||||||
inputManager.SetDiceRollValue(rolledVal);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void HandleDiceViewForUser()
|
|
||||||
{
|
|
||||||
if (!inputManager.GameplayManager.CanRollDiceForUser) return;
|
|
||||||
|
|
||||||
SoundManager soundManager = InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>();
|
SoundManager soundManager = InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>();
|
||||||
soundManager?.PlayGameSoundClip(SoundType.Dice);
|
soundManager?.PlayGameSoundClip(SoundType.Dice);
|
||||||
|
|
||||||
OnUserDiceRollComplete(GetDiceTestVal());
|
int currentRolledVal = // Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1);
|
||||||
// diceView.Roll(onComplete: (rolledVal) => OnUserDiceRollComplete(rolledVal), false);
|
diceTestValue != 0 ? diceTestValue : Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1);
|
||||||
|
inputManager.SetDiceRollValue(currentRolledVal);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void HandleDiceViewForBot(Action<int> onComplete)
|
public void HandleDiceView()
|
||||||
{
|
{
|
||||||
diceView.Roll(onComplete: (val) => onComplete?.Invoke(val), true);
|
diceView.Roll();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void HandleDiceViewForBot(Action<int> onComplete, int val)
|
|
||||||
{
|
|
||||||
onComplete?.Invoke(val);
|
|
||||||
}
|
|
||||||
|
|
||||||
private int GetDiceTestVal() => diceTestValue == 0 ? UnityEngine.Random.Range(1, Ludo_3D_Constants.Max_Dice_Rolls + 1) : diceTestValue;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,6 +5,7 @@ using UnityEngine;
|
|||||||
public class UIManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
public class UIManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
||||||
{
|
{
|
||||||
private GameplayManager gameplayManager;
|
private GameplayManager gameplayManager;
|
||||||
|
private PopupManager popupManager;
|
||||||
private ScreenManager screenManager;
|
private ScreenManager screenManager;
|
||||||
|
|
||||||
public void Initialize()
|
public void Initialize()
|
||||||
@ -15,6 +16,8 @@ public class UIManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
public void InitializeData()
|
public void InitializeData()
|
||||||
{
|
{
|
||||||
gameplayManager = InterfaceManager.Instance.GetInterfaceInstance<GameplayManager>();
|
gameplayManager = InterfaceManager.Instance.GetInterfaceInstance<GameplayManager>();
|
||||||
|
popupManager = InterfaceManager.Instance.GetInterfaceInstance<PopupManager>();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnDiceViewInteracted()
|
public void OnDiceViewInteracted()
|
||||||
@ -35,7 +38,7 @@ public class UIManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|||||||
screenManager.ShowScreen(ScreenType.InGameHUDScreen);
|
screenManager.ShowScreen(ScreenType.InGameHUDScreen);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void UpdateSelectedPlayerCount(int playersCount)
|
public void OnPlayButtonClicked()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,25 +1,13 @@
|
|||||||
using System.Collections.Generic;
|
|
||||||
using TMPro;
|
using TMPro;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
|
|
||||||
public class PvAIModePopup : PopupBase
|
public class PvAIModePopup : PopupBase
|
||||||
{
|
{
|
||||||
[SerializeField] private Color playerBtnNormalColor;
|
[Header("Buttons")]
|
||||||
[SerializeField] private Color playerBtnSelectedColor;
|
|
||||||
|
|
||||||
[Header("Bot Selection Buttons")]
|
|
||||||
[SerializeField] private Button twoPlayerBtn;
|
[SerializeField] private Button twoPlayerBtn;
|
||||||
[SerializeField] private Button threePlayerBtn;
|
[SerializeField] private Button threePlayerBtn;
|
||||||
[SerializeField] private Button fourPlayerBtn;
|
[SerializeField] private Button fourPlayerBtn;
|
||||||
|
|
||||||
[Header("Color Selection Buttons")]
|
|
||||||
[SerializeField] private Button redBtn;
|
|
||||||
[SerializeField] private Button blueBtn;
|
|
||||||
[SerializeField] private Button greyBtn;
|
|
||||||
[SerializeField] private Button greenBtn;
|
|
||||||
|
|
||||||
[Header("Action Buttons")]
|
|
||||||
[SerializeField] private Button playBtn;
|
[SerializeField] private Button playBtn;
|
||||||
[SerializeField] private Button closeBtn;
|
[SerializeField] private Button closeBtn;
|
||||||
|
|
||||||
@ -32,32 +20,18 @@ public class PvAIModePopup : PopupBase
|
|||||||
|
|
||||||
private ScreenManager screenManager;
|
private ScreenManager screenManager;
|
||||||
private SoundManager soundManager;
|
private SoundManager soundManager;
|
||||||
private GameModeHandler gameModeHandler;
|
|
||||||
|
|
||||||
private int selectedPlayerCount;
|
private int selectedPlayerCount;
|
||||||
private PlayerType playerType;
|
public int SelectedPlayerCount => selectedPlayerCount;
|
||||||
|
|
||||||
private Button currPlayerCountBtn, prevPlayerCountBtn;
|
|
||||||
private Button currPlayerTypeBtn, prePlayerTypeBtn;
|
|
||||||
|
|
||||||
private void OnEnable()
|
private void OnEnable()
|
||||||
{
|
{
|
||||||
twoPlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(2, twoPlayerBtn));
|
twoPlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(2));
|
||||||
threePlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(3, threePlayerBtn));
|
threePlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(3));
|
||||||
fourPlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(4, fourPlayerBtn));
|
fourPlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(4));
|
||||||
|
playBtn.onClick.AddListener(OnClick_playBtn);
|
||||||
|
closeBtn.onClick.AddListener(OnClick_closeBtn);
|
||||||
|
|
||||||
playBtn.onClick.AddListener(OnClick_PlayButton);
|
twoPlayerBtn.Select();
|
||||||
closeBtn.onClick.AddListener(OnClick_CloseButton);
|
|
||||||
|
|
||||||
redBtn.onClick.AddListener(() => OnColorSelected(PlayerType.Player1, redBtn));
|
|
||||||
blueBtn.onClick.AddListener(() => OnColorSelected(PlayerType.Player2, blueBtn));
|
|
||||||
greyBtn.onClick.AddListener(() => OnColorSelected(PlayerType.Player3, greyBtn));
|
|
||||||
greenBtn.onClick.AddListener(() => OnColorSelected(PlayerType.Player4, greenBtn));
|
|
||||||
}
|
|
||||||
|
|
||||||
private void Start()
|
|
||||||
{
|
|
||||||
OnPlayerCountSelected(2, twoPlayerBtn);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnDisable()
|
private void OnDisable()
|
||||||
@ -65,34 +39,17 @@ public class PvAIModePopup : PopupBase
|
|||||||
twoPlayerBtn.onClick.RemoveAllListeners();
|
twoPlayerBtn.onClick.RemoveAllListeners();
|
||||||
threePlayerBtn.onClick.RemoveAllListeners();
|
threePlayerBtn.onClick.RemoveAllListeners();
|
||||||
fourPlayerBtn.onClick.RemoveAllListeners();
|
fourPlayerBtn.onClick.RemoveAllListeners();
|
||||||
|
|
||||||
playBtn.onClick.RemoveAllListeners();
|
playBtn.onClick.RemoveAllListeners();
|
||||||
closeBtn.onClick.RemoveAllListeners();
|
closeBtn.onClick.RemoveAllListeners();
|
||||||
}
|
}
|
||||||
|
private void OnPlayerCountSelected(int count)
|
||||||
private void OnPlayerCountSelected(int count, Button button)
|
|
||||||
{
|
{
|
||||||
selectedPlayerCount = count;
|
selectedPlayerCount = count;
|
||||||
|
|
||||||
prevPlayerCountBtn = currPlayerCountBtn;
|
|
||||||
currPlayerCountBtn = button;
|
|
||||||
|
|
||||||
ColorBlock colorBlock;
|
|
||||||
if (prevPlayerCountBtn)
|
|
||||||
{
|
|
||||||
colorBlock = prevPlayerCountBtn.colors;
|
|
||||||
colorBlock.normalColor = playerBtnNormalColor;
|
|
||||||
prevPlayerCountBtn.colors = colorBlock;
|
|
||||||
}
|
|
||||||
|
|
||||||
colorBlock = currPlayerCountBtn.colors;
|
|
||||||
colorBlock.normalColor = playerBtnSelectedColor;
|
|
||||||
currPlayerCountBtn.colors = colorBlock;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_PlayButton()
|
private void OnClick_playBtn()
|
||||||
{
|
{
|
||||||
playerName = string.IsNullOrWhiteSpace(playerNameInput.text) ? Ludo_3D_Constants.Player1_Name : playerNameInput.text;
|
playerName = playerNameInput.text;
|
||||||
|
|
||||||
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
||||||
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
||||||
@ -102,13 +59,10 @@ public class PvAIModePopup : PopupBase
|
|||||||
Debug.Log($"Starting PVP Mode with {selectedPlayerCount} players:");
|
Debug.Log($"Starting PVP Mode with {selectedPlayerCount} players:");
|
||||||
Debug.Log($"Player 1: {playerName}");
|
Debug.Log($"Player 1: {playerName}");
|
||||||
|
|
||||||
popupManager.HidePopup(popupType);
|
|
||||||
|
|
||||||
gameModeHandler = gameModeHandler == null ? InterfaceManager.Instance.GetInterfaceInstance<GameModeHandler>() : gameModeHandler;
|
|
||||||
gameModeHandler.InitBotModeData(playerType, selectedPlayerCount - 1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_CloseButton()
|
private void OnClick_closeBtn()
|
||||||
{
|
{
|
||||||
screenManager = screenManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<ScreenManager>() : screenManager;
|
screenManager = screenManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<ScreenManager>() : screenManager;
|
||||||
screenManager.ShowScreen(ScreenType.MenuScreen);
|
screenManager.ShowScreen(ScreenType.MenuScreen);
|
||||||
@ -117,24 +71,4 @@ public class PvAIModePopup : PopupBase
|
|||||||
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
||||||
Hide();
|
Hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnColorSelected(PlayerType type, Button button)
|
|
||||||
{
|
|
||||||
playerType = type;
|
|
||||||
|
|
||||||
prePlayerTypeBtn = currPlayerTypeBtn;
|
|
||||||
currPlayerTypeBtn = button;
|
|
||||||
|
|
||||||
ColorBlock colorBlock;
|
|
||||||
if (prePlayerTypeBtn)
|
|
||||||
{
|
|
||||||
colorBlock = prePlayerTypeBtn.colors;
|
|
||||||
colorBlock.normalColor = playerBtnNormalColor;
|
|
||||||
prePlayerTypeBtn.colors = colorBlock;
|
|
||||||
}
|
|
||||||
|
|
||||||
colorBlock = currPlayerTypeBtn.colors;
|
|
||||||
colorBlock.normalColor = playerBtnSelectedColor;
|
|
||||||
currPlayerTypeBtn.colors = colorBlock;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
|
||||||
using TMPro;
|
using TMPro;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UI;
|
using UnityEngine.UI;
|
||||||
@ -20,6 +19,12 @@ public class PvPModePopup : PopupBase
|
|||||||
[SerializeField] private TMP_InputField playerThreeNameInput;
|
[SerializeField] private TMP_InputField playerThreeNameInput;
|
||||||
[SerializeField] private TMP_InputField playerFourNameInput;
|
[SerializeField] private TMP_InputField playerFourNameInput;
|
||||||
|
|
||||||
|
[Header("Player Names")]
|
||||||
|
private string playerOneName;
|
||||||
|
private string playerTwoName;
|
||||||
|
private string playerThreeName;
|
||||||
|
private string playerFourName;
|
||||||
|
|
||||||
[Header("References")]
|
[Header("References")]
|
||||||
[SerializeField] private GameObject playerNameInputParent1;
|
[SerializeField] private GameObject playerNameInputParent1;
|
||||||
[SerializeField] private GameObject playerNameInputParent2;
|
[SerializeField] private GameObject playerNameInputParent2;
|
||||||
@ -29,44 +34,27 @@ public class PvPModePopup : PopupBase
|
|||||||
[SerializeField] private TMP_Text playerTwoPlaceholder;
|
[SerializeField] private TMP_Text playerTwoPlaceholder;
|
||||||
[SerializeField] private TMP_Text playerThreePlaceholder;
|
[SerializeField] private TMP_Text playerThreePlaceholder;
|
||||||
[SerializeField] private TMP_Text playerFourPlaceholder;
|
[SerializeField] private TMP_Text playerFourPlaceholder;
|
||||||
[SerializeField] private List<TMP_InputField> inputFields = new List<TMP_InputField>();
|
|
||||||
|
|
||||||
[Header("Player Names")]
|
|
||||||
private string playerOneName;
|
|
||||||
private string playerTwoName;
|
|
||||||
private string playerThreeName;
|
|
||||||
private string playerFourName;
|
|
||||||
|
|
||||||
private ScreenManager screenManager;
|
private ScreenManager screenManager;
|
||||||
|
private GameManager gameManager;
|
||||||
private SoundManager soundManager;
|
private SoundManager soundManager;
|
||||||
private GameModeHandler gameModeHandler;
|
|
||||||
|
|
||||||
private int selectedPlayerCount;
|
private int selectedPlayerCount;
|
||||||
public int SelectedPlayerCount => selectedPlayerCount;
|
public int SelectedPlayerCount => selectedPlayerCount;
|
||||||
|
|
||||||
[Header("Horizontal Rows (P1–P4)")]
|
[Header("Horizontal Rows (P1–P4)")]
|
||||||
|
public List<GameObject> rows;
|
||||||
private int hiddenIndex = 0;
|
private int hiddenIndex = 0;
|
||||||
|
|
||||||
private List<int> hiddenIndexes = new List<int>();
|
Dictionary<PlayerType, string> playerNameMap = new();
|
||||||
private Dictionary<PlayerType, string> playerNameMap = new();
|
|
||||||
|
|
||||||
|
|
||||||
private void OnEnable()
|
private void OnEnable()
|
||||||
{
|
{
|
||||||
twoPlayerBtn.onClick.AddListener(OnClick_TwoPlayerBtn);
|
twoPlayerBtn.onClick.AddListener(OnClick_TwoPlayerBtn);
|
||||||
threePlayerBtn.onClick.AddListener(OnClick_ThreePlayerBtn);
|
threePlayerBtn.onClick.AddListener(OnClick_ThreePlayerBtn);
|
||||||
fourPlayerBtn.onClick.AddListener(OnClick_FourPlayerBtn);
|
fourPlayerBtn.onClick.AddListener(OnClick_FourPlayerBtn);
|
||||||
|
playBtn.onClick.AddListener(OnClick_PlayBtn);
|
||||||
playBtn.onClick.AddListener(OnClick_PlayButton);
|
closeBtn.onClick.AddListener(OnClick_CloseBtn);
|
||||||
closeBtn.onClick.AddListener(OnClick_CloseButton);
|
switchBtn.onClick.AddListener(OnClick_SwitchBtn);
|
||||||
|
|
||||||
switchBtn.onClick.AddListener(OnClick_SwitchButton);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void Start()
|
|
||||||
{
|
|
||||||
OnClick_FourPlayerBtn();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnDisable()
|
private void OnDisable()
|
||||||
@ -74,44 +62,33 @@ public class PvPModePopup : PopupBase
|
|||||||
twoPlayerBtn.onClick.RemoveListener(OnClick_TwoPlayerBtn);
|
twoPlayerBtn.onClick.RemoveListener(OnClick_TwoPlayerBtn);
|
||||||
threePlayerBtn.onClick.RemoveListener(OnClick_ThreePlayerBtn);
|
threePlayerBtn.onClick.RemoveListener(OnClick_ThreePlayerBtn);
|
||||||
fourPlayerBtn.onClick.RemoveAllListeners();
|
fourPlayerBtn.onClick.RemoveAllListeners();
|
||||||
|
playBtn.onClick.RemoveListener(OnClick_PlayBtn);
|
||||||
playBtn.onClick.RemoveListener(OnClick_PlayButton);
|
closeBtn.onClick.RemoveListener(OnClick_CloseBtn);
|
||||||
closeBtn.onClick.RemoveListener(OnClick_CloseButton);
|
switchBtn.onClick.RemoveListener(OnClick_SwitchBtn);
|
||||||
|
|
||||||
switchBtn.onClick.RemoveListener(OnClick_SwitchButton);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_TwoPlayerBtn()
|
private void OnClick_TwoPlayerBtn()
|
||||||
{
|
{
|
||||||
selectedPlayerCount = 2;
|
|
||||||
|
|
||||||
OnPlayerCountsSwitched();
|
|
||||||
|
|
||||||
switchBtn.gameObject.SetActive(true);
|
switchBtn.gameObject.SetActive(true);
|
||||||
|
selectedPlayerCount = 2;
|
||||||
playerNameInputParent2.SetActive(false);
|
playerNameInputParent2.SetActive(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_ThreePlayerBtn()
|
private void OnClick_ThreePlayerBtn()
|
||||||
{
|
{
|
||||||
selectedPlayerCount = 3;
|
|
||||||
|
|
||||||
OnPlayerCountsSwitched();
|
|
||||||
|
|
||||||
switchBtn.gameObject.SetActive(true);
|
switchBtn.gameObject.SetActive(true);
|
||||||
|
selectedPlayerCount = 3;
|
||||||
playerNameInputParent1.SetActive(true);
|
playerNameInputParent1.SetActive(true);
|
||||||
playerNameInputParent2.SetActive(true);
|
playerNameInputParent2.SetActive(true);
|
||||||
|
|
||||||
UpdateInputFieldsVisibility();
|
UpdateInputFieldsVisibility();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_FourPlayerBtn()
|
private void OnClick_FourPlayerBtn()
|
||||||
{
|
{
|
||||||
selectedPlayerCount = 4;
|
|
||||||
|
|
||||||
switchBtn.gameObject.SetActive(false);
|
switchBtn.gameObject.SetActive(false);
|
||||||
|
selectedPlayerCount = 4;
|
||||||
playerNameInputParent1.SetActive(true);
|
playerNameInputParent1.SetActive(true);
|
||||||
playerNameInputParent2.SetActive(true);
|
playerNameInputParent2.SetActive(true);
|
||||||
|
|
||||||
UpdateInputFieldsVisibility();
|
UpdateInputFieldsVisibility();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -123,51 +100,61 @@ public class PvPModePopup : PopupBase
|
|||||||
playerFourNameInput.transform.parent.gameObject.SetActive(selectedPlayerCount >= 4);
|
playerFourNameInput.transform.parent.gameObject.SetActive(selectedPlayerCount >= 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_PlayButton()
|
private void OnClick_PlayBtn()
|
||||||
{
|
{
|
||||||
playerNameMap.Clear();
|
int logicalIndex = 0;
|
||||||
for (int idx = 0; idx < inputFields.Count; idx++)
|
|
||||||
{
|
|
||||||
PlayerType playerType = (PlayerType)idx;
|
|
||||||
if (!inputFields[idx].transform.parent.gameObject.activeInHierarchy)
|
|
||||||
{
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
playerNameMap.Add(playerType, string.IsNullOrWhiteSpace(inputFields[idx].text) ? $"{playerType}" : inputFields[idx].text);
|
foreach (GameObject row in rows)
|
||||||
|
{
|
||||||
|
if (!row.activeSelf)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
TMP_InputField input = row.GetComponentInChildren<TMP_InputField>();
|
||||||
|
|
||||||
|
PlayerType playerType = (PlayerType)logicalIndex;
|
||||||
|
|
||||||
|
string playerName = string.IsNullOrWhiteSpace(input.text)
|
||||||
|
? playerType.ToString()
|
||||||
|
: input.text;
|
||||||
|
|
||||||
|
playerNameMap[playerType] = playerName;
|
||||||
|
logicalIndex++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// playerOneName = string.IsNullOrWhiteSpace(playerOneNameInput.text) ? Ludo_3D_Constants.Player1_Name : playerOneNameInput.text;
|
||||||
|
// playerTwoName = string.IsNullOrWhiteSpace(playerTwoNameInput.text) ? Ludo_3D_Constants.Player1_Name : playerTwoNameInput.text;
|
||||||
|
// playerThreeName = string.IsNullOrWhiteSpace(playerThreeNameInput.text) ? Ludo_3D_Constants.Player1_Name : playerThreeNameInput.text;
|
||||||
|
// playerFourName = string.IsNullOrWhiteSpace(playerFourNameInput.text) ? Ludo_3D_Constants.Player1_Name : playerFourNameInput.text;
|
||||||
|
|
||||||
playerOneName = playerNameMap.GetValueOrDefault(PlayerType.Player1, Ludo_3D_Constants.Player1_Name);
|
playerOneName = playerNameMap.GetValueOrDefault(PlayerType.Player1, Ludo_3D_Constants.Player1_Name);
|
||||||
playerTwoName = playerNameMap.GetValueOrDefault(PlayerType.Player2, Ludo_3D_Constants.Player2_Name);
|
playerTwoName = playerNameMap.GetValueOrDefault(PlayerType.Player2, Ludo_3D_Constants.Player2_Name);
|
||||||
playerThreeName = playerNameMap.GetValueOrDefault(PlayerType.Player3, Ludo_3D_Constants.Player3_Name);
|
playerThreeName = playerNameMap.GetValueOrDefault(PlayerType.Player3, Ludo_3D_Constants.Player3_Name);
|
||||||
playerFourName = playerNameMap.GetValueOrDefault(PlayerType.Player4, Ludo_3D_Constants.Player4_Name);
|
playerFourName = playerNameMap.GetValueOrDefault(PlayerType.Player4, Ludo_3D_Constants.Player4_Name);
|
||||||
|
|
||||||
|
|
||||||
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
||||||
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
||||||
|
|
||||||
|
//TODO: Start PVP Game with the selected player count and names
|
||||||
Debug.Log($"Starting PVP Mode with {selectedPlayerCount} players:");
|
Debug.Log($"Starting PVP Mode with {selectedPlayerCount} players:");
|
||||||
|
Debug.Log($"Player 1: {playerOneName}");
|
||||||
popupManager.HidePopup(popupType);
|
Debug.Log($"Player 2: {playerTwoName}");
|
||||||
|
if (selectedPlayerCount >= 3)
|
||||||
gameModeHandler = gameModeHandler == null ? InterfaceManager.Instance.GetInterfaceInstance<GameModeHandler>() : gameModeHandler;
|
Debug.Log($"Player 3: {playerThreeName}");
|
||||||
gameModeHandler.InitPVPModeData(playerNameMap.Keys.ToList());
|
if (selectedPlayerCount == 4)
|
||||||
|
Debug.Log($"Player 4: {playerFourName}");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_SwitchButton()
|
private void OnClick_SwitchBtn()
|
||||||
{
|
{
|
||||||
hiddenIndexes.Clear();
|
|
||||||
if (SelectedPlayerCount == 2)
|
if (SelectedPlayerCount == 2)
|
||||||
{
|
{
|
||||||
if (playerNameInputParent1.activeInHierarchy)
|
if (playerNameInputParent1.activeSelf)
|
||||||
{
|
{
|
||||||
playerNameInputParent1.SetActive(false);
|
playerNameInputParent1.SetActive(false);
|
||||||
playerNameInputParent2.SetActive(true);
|
playerNameInputParent2.SetActive(true);
|
||||||
|
|
||||||
playerOnePlaceholder.text = "Player 1";
|
playerOnePlaceholder.text = "Player 1";
|
||||||
playerThreePlaceholder.text = "Player 2";
|
playerThreePlaceholder.text = "Player 2";
|
||||||
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player1);
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player3);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -175,63 +162,30 @@ public class PvPModePopup : PopupBase
|
|||||||
playerNameInputParent2.SetActive(false);
|
playerNameInputParent2.SetActive(false);
|
||||||
playerTwoPlaceholder.text = "Player 1";
|
playerTwoPlaceholder.text = "Player 1";
|
||||||
playerFourPlaceholder.text = "Player 2";
|
playerFourPlaceholder.text = "Player 2";
|
||||||
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player2);
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player4);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (SelectedPlayerCount == 3)
|
else if (SelectedPlayerCount == 3)
|
||||||
{
|
{
|
||||||
hiddenIndex = (hiddenIndex + 1) % inputFields.Count;
|
hiddenIndex = (hiddenIndex + 1) % rows.Count;
|
||||||
hiddenIndexes.Add(hiddenIndex);
|
UpdateRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateRows();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnPlayerCountsSwitched()
|
|
||||||
{
|
|
||||||
hiddenIndexes.Clear();
|
|
||||||
if (SelectedPlayerCount == 2)
|
|
||||||
{
|
|
||||||
if (playerNameInputParent1.activeInHierarchy)
|
|
||||||
{
|
|
||||||
playerOnePlaceholder.text = "Player 1";
|
|
||||||
playerThreePlaceholder.text = "Player 2";
|
|
||||||
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player2);
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player4);
|
|
||||||
}
|
|
||||||
else if (playerNameInputParent2.activeInHierarchy)
|
|
||||||
{
|
|
||||||
playerTwoPlaceholder.text = "Player 1";
|
|
||||||
playerFourPlaceholder.text = "Player 2";
|
|
||||||
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player1);
|
|
||||||
hiddenIndexes.Add((int)PlayerType.Player3);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (SelectedPlayerCount == 3)
|
|
||||||
{
|
|
||||||
hiddenIndex = (hiddenIndex + 1) % inputFields.Count;
|
|
||||||
hiddenIndexes.Add(hiddenIndex);
|
|
||||||
}
|
|
||||||
|
|
||||||
UpdateRows();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void UpdateRows()
|
private void UpdateRows()
|
||||||
{
|
{
|
||||||
int visiblePlayerIndex = 1;
|
int visiblePlayerIndex = 1;
|
||||||
|
|
||||||
for (int i = 0; i < inputFields.Count; i++)
|
for (int i = 0; i < rows.Count; i++)
|
||||||
{
|
{
|
||||||
bool isHidden = hiddenIndexes.Contains(i);
|
bool isHidden = (i == hiddenIndex);
|
||||||
inputFields[i].transform.parent.gameObject.SetActive(!isHidden);
|
rows[i].SetActive(!isHidden);
|
||||||
|
|
||||||
if (!isHidden)
|
if (!isHidden)
|
||||||
{
|
{
|
||||||
TMP_Text placeholder = inputFields[i].placeholder as TMP_Text;
|
TMP_InputField input =
|
||||||
|
rows[i].GetComponentInChildren<TMP_InputField>();
|
||||||
|
|
||||||
|
TMP_Text placeholder = input.placeholder as TMP_Text;
|
||||||
if (placeholder != null)
|
if (placeholder != null)
|
||||||
{
|
{
|
||||||
placeholder.text = $"Player {visiblePlayerIndex}";
|
placeholder.text = $"Player {visiblePlayerIndex}";
|
||||||
@ -241,7 +195,7 @@ public class PvPModePopup : PopupBase
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnClick_CloseButton()
|
private void OnClick_CloseBtn()
|
||||||
{
|
{
|
||||||
screenManager = screenManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<ScreenManager>() : screenManager;
|
screenManager = screenManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<ScreenManager>() : screenManager;
|
||||||
screenManager.ShowScreen(ScreenType.MenuScreen);
|
screenManager.ShowScreen(ScreenType.MenuScreen);
|
||||||
|
|||||||
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: cbe9ff41df8934561963daf6b67cd147
|
|
||||||
folderAsset: yes
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
using TMPro;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
public class PlayerCountCanvas : MonoBehaviour
|
|
||||||
{
|
|
||||||
Transform cam;
|
|
||||||
[SerializeField] private TMP_Text playerCountText;
|
|
||||||
|
|
||||||
void Start()
|
|
||||||
{
|
|
||||||
cam = GameObject.FindGameObjectWithTag("MainCamera").transform;
|
|
||||||
}
|
|
||||||
void LateUpdate()
|
|
||||||
{
|
|
||||||
transform.LookAt(cam.forward + transform.position);
|
|
||||||
}
|
|
||||||
public void SetPlayerCount(int count)
|
|
||||||
{
|
|
||||||
playerCountText.text = count.ToString();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 12325a6692b2349b5992ec00a2cf8162
|
|
||||||
MonoImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@ -157,9 +157,7 @@ PlayerSettings:
|
|||||||
resetResolutionOnWindowResize: 0
|
resetResolutionOnWindowResize: 0
|
||||||
androidSupportedAspectRatio: 1
|
androidSupportedAspectRatio: 1
|
||||||
androidMaxAspectRatio: 2.1
|
androidMaxAspectRatio: 2.1
|
||||||
applicationIdentifier:
|
applicationIdentifier: {}
|
||||||
Android: com.DefaultCompany.Ludo3D
|
|
||||||
Standalone: com.DefaultCompany.Ludo-3D
|
|
||||||
buildNumber:
|
buildNumber:
|
||||||
Standalone: 0
|
Standalone: 0
|
||||||
iPhone: 0
|
iPhone: 0
|
||||||
@ -273,14 +271,7 @@ PlayerSettings:
|
|||||||
AndroidMinifyDebug: 0
|
AndroidMinifyDebug: 0
|
||||||
AndroidValidateAppBundleSize: 1
|
AndroidValidateAppBundleSize: 1
|
||||||
AndroidAppBundleSizeToValidate: 150
|
AndroidAppBundleSizeToValidate: 150
|
||||||
m_BuildTargetIcons:
|
m_BuildTargetIcons: []
|
||||||
- m_BuildTarget:
|
|
||||||
m_Icons:
|
|
||||||
- serializedVersion: 2
|
|
||||||
m_Icon: {fileID: 2800000, guid: f6f7cf722ebaa46bdab456d7c3009064, type: 3}
|
|
||||||
m_Width: 128
|
|
||||||
m_Height: 128
|
|
||||||
m_Kind: 0
|
|
||||||
m_BuildTargetPlatformIcons:
|
m_BuildTargetPlatformIcons:
|
||||||
- m_BuildTarget: iPhone
|
- m_BuildTarget: iPhone
|
||||||
m_Icons:
|
m_Icons:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user