You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.4 KiB
98 lines
2.4 KiB
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using Unity.Netcode;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class GameManager : MonoBehaviour
|
|
{
|
|
public static GameManager Instance { get; private set; }
|
|
private void Awake()
|
|
{
|
|
if (Instance == null) Instance = this;
|
|
}
|
|
|
|
|
|
[Header("Managers")]
|
|
[SerializeField] private SceneLoader sceneLoader;
|
|
[SerializeField] private MainScreensManager mainScreensManager;
|
|
|
|
[Header("References")]
|
|
[SerializeField] private GameObject loadingScreen;
|
|
[SerializeField] private Camera mainCamera;
|
|
|
|
[Header("Data")]
|
|
[SerializeField] private CharactersList charactersList;
|
|
[SerializeField] private EmojiPopupData emojiPopupData;
|
|
|
|
|
|
[Header("TestButtons")]
|
|
[SerializeField] private Button serverBtn;
|
|
[SerializeField] private Button hostBtn;
|
|
[SerializeField] private Button clientBtn;
|
|
|
|
|
|
public static CharactersList CharactersList => Instance.charactersList;
|
|
public static EmojiPopupData EmojiPopupData => Instance.emojiPopupData;
|
|
public static Player LocalPlayer => InteractionManager.LocalPlayer;
|
|
public static Camera MainCamera => Instance.mainCamera;
|
|
private void Start()
|
|
{
|
|
serverBtn.onClick.AddListener(() =>
|
|
{
|
|
NetworkManager.Singleton.StartServer();
|
|
});
|
|
hostBtn.onClick.AddListener(() =>
|
|
{
|
|
NetworkManager.Singleton.StartHost();
|
|
});
|
|
clientBtn.onClick.AddListener(() =>
|
|
{
|
|
NetworkManager.Singleton.StartClient();
|
|
});
|
|
}
|
|
|
|
public void LoadScene(string sceneName)
|
|
{
|
|
loadingScreen.SetActive(true);
|
|
sceneLoader.LoadScene(sceneName, ()=>
|
|
{
|
|
InitializePlayers();
|
|
loadingScreen.SetActive(false);
|
|
mainScreensManager.SetGameScreen();
|
|
print("test");
|
|
LocalPlayer.SetPosition(new Vector3());
|
|
});
|
|
}
|
|
|
|
public void InitializePlayers()
|
|
{
|
|
|
|
}
|
|
|
|
public void SetCharacter(Character character)
|
|
{
|
|
LocalPlayer.SetCharacter(character);
|
|
}
|
|
|
|
public void PlayAnim(string anim)
|
|
{
|
|
LocalPlayer.PlayAnimation(anim);
|
|
}
|
|
|
|
public void Lay()
|
|
{
|
|
LocalPlayer.Lay();
|
|
}
|
|
|
|
public void Sit()
|
|
{
|
|
LocalPlayer.Sit();
|
|
}
|
|
|
|
public void Emoji(int emoji)
|
|
{
|
|
LocalPlayer.SpawnEmoji(emoji);
|
|
}
|
|
}
|
|
|