public CharTool CreateCharTool(CharToolType type) { CharTool tool; if (type == CharToolType.MinePlanter) { MinePlanterTool mpTool = GameObject.Instantiate(minePlanterToolPrefab); mpTool.minePlacementRoot = minePlacementRoot; tool = mpTool; } else if (type == CharToolType.Flashlight) { FlashilightTool fTool = GameObject.Instantiate(flashLightToolPrefab); tool = fTool; } else if (type == CharToolType.Wrench) { WrenchTool wTool = GameObject.Instantiate(wrenchToolPrefab); tool = wTool; } else { return(null); } tool.transform.localPosition = Vector3.zero; tool.Initialize(); return(tool); }
public void CopyData(SelectScreenPlayerData ssPlayerData) { this.playerSessionData = ssPlayerData.playerSessionData; this.skinIndex = ssPlayerData.skinIndex; this.devotionNameIndex = ssPlayerData.devotionNameIndex; this.spiritNameIndex = ssPlayerData.spiritNameIndex; this.charTool = ssPlayerData.charTool; this.playerActive = ssPlayerData.playerActive; this.playerReady = ssPlayerData.playerReady; }
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); }