Compare commits

..

4 Commits

4 changed files with 32 additions and 10 deletions

View File

@ -1756,7 +1756,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 1 m_IsActive: 0
--- !u!136 &102349500 --- !u!136 &102349500
CapsuleCollider: CapsuleCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -8460,7 +8460,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 0483b263e22fc433caab31141efbe319, type: 3} m_Script: {fileID: 11500000, guid: 0483b263e22fc433caab31141efbe319, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
isDebugTest: 1 isDebugTest: 0
diceRollHandler: {fileID: 1013177415} diceRollHandler: {fileID: 1013177415}
diceValue: 0 diceValue: 0
maxDiceSixRollCounter: 2 maxDiceSixRollCounter: 2
@ -15149,6 +15149,7 @@ MonoBehaviour:
- {fileID: 5608193482197189505} - {fileID: 5608193482197189505}
- {fileID: 5608193481571390227} - {fileID: 5608193481571390227}
baseObjects: baseObjects:
- {fileID: 1949792867}
- {fileID: 2095159703} - {fileID: 2095159703}
- {fileID: 247469677} - {fileID: 247469677}
- {fileID: 875086323} - {fileID: 875086323}
@ -15157,7 +15158,6 @@ MonoBehaviour:
- {fileID: 1954289399} - {fileID: 1954289399}
- {fileID: 1107252688} - {fileID: 1107252688}
- {fileID: 1406544794} - {fileID: 1406544794}
- {fileID: 1949792867}
- {fileID: 884011400} - {fileID: 884011400}
--- !u!4 &1335794571 --- !u!4 &1335794571
Transform: Transform:
@ -20274,7 +20274,7 @@ AudioSource:
m_PlayOnAwake: 0 m_PlayOnAwake: 0
m_Volume: 1 m_Volume: 1
m_Pitch: 1 m_Pitch: 1
Loop: 0 Loop: 1
Mute: 0 Mute: 0
Spatialize: 0 Spatialize: 0
SpatializePostEffects: 0 SpatializePostEffects: 0
@ -24609,8 +24609,6 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
screenType: 6 screenType: 6
shouldFade: 0 shouldFade: 0
playBtn: {fileID: 0}
closeBtn: {fileID: 0}
--- !u!224 &5608193481924487018 --- !u!224 &5608193481924487018
RectTransform: RectTransform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -60,6 +60,9 @@ public class MusicManager : MonoBehaviour, IBootLoader, IBase, IDataLoader
audioSource.priority = musicData.priority; audioSource.priority = musicData.priority;
audioSource.clip = musicData.musicClip; audioSource.clip = musicData.musicClip;
if (audioSource.isPlaying) audioSource.Stop();
audioSource.Play(); audioSource.Play();
} }
} }

View File

@ -232,8 +232,18 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
Debug.Log($"playerGameData.playerType: {playerGameData.playerType}"); Debug.Log($"playerGameData.playerType: {playerGameData.playerType}");
playerGameDatasDict.Add(playerGameData.playerType, playerGameData); playerGameDatasDict.Add(
playerGameDatasDict[playerGameData.playerType].playerPawnsDict = new Dictionary<int, PlayerPawn>(); playerGameData.playerType,
new PlayerGameData
{
playerType = playerGameData.playerType,
startIndex = playerGameData.startIndex,
endIndex = playerGameData.endIndex,
playersParent = playerGameData.playersParent,
playerPawnsDict = new Dictionary<int, PlayerPawn>(),
totalPawnsInHome = playerGameData.totalPawnsInHome,
totalPawnsFinished = playerGameData.totalPawnsFinished
});
foreach (Transform playerPawnChild in playerGameData.playersParent) foreach (Transform playerPawnChild in playerGameData.playersParent)
{ {
@ -242,7 +252,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
var pawn = playerPawnChild.GetComponent<PlayerPawn>(); var pawn = playerPawnChild.GetComponent<PlayerPawn>();
playerGameDatasDict[playerGameData.playerType].playerPawnsDict.Add(pawn.PlayerId, pawn); playerGameDatasDict[playerGameData.playerType].playerPawnsDict.Add(pawn.PlayerId, pawn);
} }
playerGameDatasDict[playerGameData.playerType].totalPawnsInHome = playerGameDatasDict[playerGameData.playerType].playerPawnsDict.Count; playerGameDatasDict[playerGameData.playerType].totalPawnsInHome = playerGameDatasDict[playerGameData.playerType].playerPawnsDict.Count;
} }
} }
@ -753,6 +763,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
UpdateActivePlayersAndSetDisplay(false); UpdateActivePlayersAndSetDisplay(false);
Debug.Log($"after SwitchPlayer availPlayers: {availPlayers.Count}, playerPawn: {playerPawn}"); Debug.Log($"after SwitchPlayer availPlayers: {availPlayers.Count}, playerPawn: {playerPawn}");
Debug.Log($"after allPlayerTypes.Count: {allPlayerTypes.Count}");
if (allPlayerTypes.Count == 0) if (allPlayerTypes.Count == 0)
{ {
@ -781,6 +792,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
UpdateActivePlayersAndSetDisplay(true); UpdateActivePlayersAndSetDisplay(true);
} }
Debug.Log($"currentPlayerTurnIndex: {currentPlayerTurnIndex}");
Debug.Log($"CurrentPlayerTurn: {currentPlayerTypeTurn}"); Debug.Log($"CurrentPlayerTurn: {currentPlayerTypeTurn}");
SetCanRollDiceForUser(gameModeHandler.CurrentGameModeType != GameModeType.Bot || !botTypesInGame.Contains(currentPlayerTypeTurn)); SetCanRollDiceForUser(gameModeHandler.CurrentGameModeType != GameModeType.Bot || !botTypesInGame.Contains(currentPlayerTypeTurn));
@ -951,17 +963,21 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
{ {
Tile tile = TilesManager.RetrieveFinishingTileBasedOnIndex(playerPawn.PlayerType, playerPawn.CurrentTileIndex); Tile tile = TilesManager.RetrieveFinishingTileBasedOnIndex(playerPawn.PlayerType, playerPawn.CurrentTileIndex);
tile.InitPlayerPawn(playerPawn, playerPawn.PlayerType); tile.InitPlayerPawn(playerPawn, playerPawn.PlayerType);
ShowUpdatedPlayerCountOnTile(playerPawn); // ShowUpdatedPlayerCountOnTile(playerPawn);
UpdatePlayerState(playerPawn, PlayerState.HasFinished); UpdatePlayerState(playerPawn, PlayerState.HasFinished);
playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished++; playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished++;
Debug.Log($"playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished: {playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished}");
Debug.Log($"playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict.Count: {playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict.Count}");
if (playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished == playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict.Count) if (playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished == playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict.Count)
{ {
CanRollDiceAgain = false; CanRollDiceAgain = false;
var playerTypeToRemove = currentPlayerTypeTurn; var playerTypeToRemove = currentPlayerTypeTurn;
allPlayerTypes.ForEach(type => Debug.Log($"before allPlayerTypes: {type}"));
SwitchPlayer(); SwitchPlayer();
allPlayerTypes.ForEach(type => Debug.Log($"after allPlayerTypes: {type}"));
if (allPlayerTypes.Contains(playerTypeToRemove)) if (allPlayerTypes.Contains(playerTypeToRemove))
{ {

View File

@ -11,6 +11,7 @@ public class GameManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
{ {
private UIManager uiManager; private UIManager uiManager;
private TilesManager tilesManager; private TilesManager tilesManager;
private MusicManager musicManager;
private GameplayManager gameplayManager; private GameplayManager gameplayManager;
public GameState GameState public GameState GameState
@ -30,6 +31,7 @@ public class GameManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
uiManager = InterfaceManager.Instance.GetInterfaceInstance<UIManager>(); uiManager = InterfaceManager.Instance.GetInterfaceInstance<UIManager>();
tilesManager = InterfaceManager.Instance.GetInterfaceInstance<TilesManager>(); tilesManager = InterfaceManager.Instance.GetInterfaceInstance<TilesManager>();
gameplayManager = InterfaceManager.Instance.GetInterfaceInstance<GameplayManager>(); gameplayManager = InterfaceManager.Instance.GetInterfaceInstance<GameplayManager>();
musicManager = InterfaceManager.Instance.GetInterfaceInstance<MusicManager>();
OnGameStateChanged(GameState.InMenu); OnGameStateChanged(GameState.InMenu);
} }
@ -42,13 +44,16 @@ public class GameManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
switch (gameState) switch (gameState)
{ {
case GameState.InMenu: case GameState.InMenu:
musicManager.PlayMusicClip(MusicType.HomeMusic);
CheckPrevGameState(); CheckPrevGameState();
uiManager.OnInMenuScreen(); uiManager.OnInMenuScreen();
break; break;
case GameState.InGame: case GameState.InGame:
musicManager.PlayMusicClip(MusicType.GameMusic);
uiManager.OnInGameScreen(); uiManager.OnInGameScreen();
break; break;
case GameState.GameOver: case GameState.GameOver:
musicManager.PlayMusicClip(MusicType.GameOverMusic);
uiManager.OnGameOver(); uiManager.OnGameOver();
break; break;
} }