2023-08-22 17:02:25 +03:00
|
|
|
|
using System;
|
2023-07-24 16:38:13 +03:00
|
|
|
|
using System.Collections;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
|
|
public class PlayerSetup : MonoBehaviour
|
|
|
|
|
{
|
2023-08-07 13:23:18 +03:00
|
|
|
|
public static PlayerSetup Instance;
|
2023-07-24 16:38:13 +03:00
|
|
|
|
private Player _currentPlayer;
|
2023-08-07 13:23:18 +03:00
|
|
|
|
|
2023-08-22 15:41:12 +03:00
|
|
|
|
public Player CurrentPlayer => _currentPlayer;
|
2023-10-05 17:56:59 +03:00
|
|
|
|
|
2023-10-25 12:09:15 +03:00
|
|
|
|
public string DefaultName = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
|
2023-08-07 13:23:18 +03:00
|
|
|
|
|
|
|
|
|
private void Awake()
|
2023-07-24 16:38:13 +03:00
|
|
|
|
{
|
2023-10-10 17:25:59 +03:00
|
|
|
|
//transform.parent = null;
|
2023-10-05 17:56:59 +03:00
|
|
|
|
|
2023-08-07 13:23:18 +03:00
|
|
|
|
if (Instance == null)
|
|
|
|
|
{
|
2023-10-05 17:56:59 +03:00
|
|
|
|
Instance = this;
|
2023-10-10 17:25:59 +03:00
|
|
|
|
//DontDestroyOnLoad(gameObject);
|
2023-08-07 13:23:18 +03:00
|
|
|
|
}
|
2023-10-17 12:37:34 +03:00
|
|
|
|
else if (Instance != this)
|
2023-08-07 13:23:18 +03:00
|
|
|
|
{
|
|
|
|
|
Destroy(gameObject);
|
|
|
|
|
}
|
2023-08-22 17:02:25 +03:00
|
|
|
|
}
|
|
|
|
|
|
2023-10-05 17:56:59 +03:00
|
|
|
|
public void CreateNewPlayer()
|
2023-08-07 13:23:18 +03:00
|
|
|
|
{
|
|
|
|
|
_currentPlayer = new Player();
|
2023-10-25 12:09:15 +03:00
|
|
|
|
_currentPlayer.Name = $"{DefaultName} {UnityEngine.Random.Range(1,999)}";
|
2023-08-15 17:38:54 +03:00
|
|
|
|
}
|
|
|
|
|
|
2023-08-22 15:41:12 +03:00
|
|
|
|
public void SetPlayerName(string name)
|
2023-07-24 16:38:13 +03:00
|
|
|
|
{
|
2023-10-20 13:29:44 +03:00
|
|
|
|
if (_currentPlayer != null)
|
|
|
|
|
_currentPlayer.Name = name;
|
2023-07-24 16:38:13 +03:00
|
|
|
|
}
|
2023-08-07 13:23:18 +03:00
|
|
|
|
|
2023-10-05 17:56:59 +03:00
|
|
|
|
public void AddPlayerScore(int score)
|
2023-08-07 13:23:18 +03:00
|
|
|
|
{
|
2023-10-18 11:59:26 +03:00
|
|
|
|
if (_currentPlayer != null)
|
|
|
|
|
_currentPlayer.Score += score;
|
2023-08-07 13:23:18 +03:00
|
|
|
|
}
|
|
|
|
|
|
2023-08-15 17:38:54 +03:00
|
|
|
|
public void UnlockMonument(MonumentInfo info)
|
2023-08-07 13:23:18 +03:00
|
|
|
|
{
|
2023-10-20 13:29:44 +03:00
|
|
|
|
if (_currentPlayer != null)
|
|
|
|
|
_currentPlayer.UnlockedMonumets.Add(info);
|
2023-08-07 13:23:18 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public bool TryFindMonument(MonumentInfo info)
|
|
|
|
|
{
|
|
|
|
|
return _currentPlayer.UnlockedMonumets.Contains(info);
|
|
|
|
|
}
|
2023-07-24 16:38:13 +03:00
|
|
|
|
}
|