public bool RegisterPlayer(int deviceIndex, CharacterSkinData skinData = null, string devotionName = null, string spiritName = null, CharToolType charToolType = CharToolType.None) { if (deviceIndex.IsBetween(-1, userDevices.Count) && !IsDeviceUsed(deviceIndex)) { CreatePlayerWithDevice(deviceIndex, skinData, devotionName, spiritName, charToolType); return(true); } return(false); }
private PlayerSessionData CreatePlayerWithDevice(int deviceIndex, CharacterSkinData skinData = null, string devotionName = "", string spiritName = "", CharToolType charToolType = CharToolType.None) { PlayerSessionData playerSessionData = new PlayerSessionData(activePlayers.Count, deviceIndex, gameplayInputManagers[deviceIndex], playerUIInputManagers[deviceIndex]); playerSessionData.skin = skinData; playerSessionData.devotionName = devotionName; playerSessionData.spiritName = spiritName; playerSessionData.charToolType = charToolType; activePlayers.Add(playerSessionData); OnPlayerRegistered?.Invoke(playerSessionData); return(playerSessionData); }
public void UpdatePanel(SelectScreenPlayerData playerData) { string devotionName = characterSelectScreen.characterNames.GetDevotionName(playerData.devotionNameIndex); devotionNameOptionSelect.UpdateText(devotionName); string spiritName = characterSelectScreen.characterNames.GetSpiritName(playerData.spiritNameIndex); spiritNameOptionSelect.UpdateText(spiritName); string toolName = playerData.charTool.ToString(); toolOptionSelect.UpdateText(toolName); CharacterSkinData skinData = characterSelectScreen.characterSkins.GetSkinData(playerData.skinIndex); skinOptionSelect.UpdateImage(skinData.defaultImage); playerReadyObject.SetActive(playerData.playerReady); //Debug.Log(devotionName + " " + spiritName); }