void SpawnPlayer() { Vector2 spawnCoords = characterType == CharacterType.Parasite ? PARASITE_SPAWN_COORDINATES : HUNTER_SPAWN_COORDINATES; characterSpawner.SpawnPlayerCharacter( characterType, spawnCoords, Vector2.zero, true, true, null, false, localName ).gameObject.AddComponent <AudioListener>(); }
public void OnEvent(EventData photonEvent) { switch (photonEvent.Code) { case EventCodes.StartGame: if (characterSpawner != null) { characterSpawner.DestroyCharacter(); } break; case EventCodes.AssignPlayerTypeAndSpawnPoint: // Deconstruct event int actorNumber = (int)EventCodes.GetEventContentAtPosition(photonEvent, 0); if (actorNumber == PhotonNetwork.LocalPlayer.ActorNumber) { CharacterType assignedCharacterType = (CharacterType)EventCodes.GetEventContentAtPosition(photonEvent, 1); Vector3 spawnPoint = (Vector2)EventCodes.GetEventContentAtPosition(photonEvent, 2); characterSpawner = new CharacterSpawner(); // Spawn Character of type `assignedCharacterType` across clients Character character = characterSpawner.SpawnPlayerCharacter( assignedCharacterType, spawnPoint, Vector2.zero, true, true, null, false, PhotonNetwork.LocalPlayer.NickName); character.gameObject.AddComponent <AudioListener>(); UiManager.Instance.minimap.SetTarget(character.transform); UiManager.Instance.minimap.Activate(); } break; case EventCodes.Mutation: if (characterSpawner != null) { // CharacterSpawner may be null if we're currently in a tutorial characterSpawner.OnMutation(); } break; } }
void SpawnParasite() { Character newParasite = CharacterSpawner.SpawnPlayerCharacter(CharacterType.Parasite, transform.position, new Vector2(0, PARASITE_LAUNCH_VELOCITY), false, // Force Camera Snap false, // Should Camera Follow input, true, // Preserve Parasite Health characterName ); if (input.ShouldCameraFollowOwner()) { // Only show parasite controls if this client is playing as this parasite UiManager.Instance.ActivateControls(CharacterType.Parasite); UiManager.Instance.minimap.SetTarget(newParasite.transform); newParasite.gameObject.AddComponent <AudioListener>(); } }