Added UI and more

This commit is contained in:
2026-07-02 17:04:29 +03:00
parent eca9be620a
commit 8ac38208ae
190 changed files with 555483 additions and 101 deletions
@@ -3,16 +3,28 @@ using Unity.Netcode;
public class PitZone : NetworkBehaviour
{
// Индекс ямы. Игрок с таким же индексом — её "хозяин" (защитник).
// Победа засчитывается тому, кто зашёл в ЧУЖУЮ яму (pitIndex != его индекс).
[SerializeField] private int pitIndex;
private void OnTriggerEnter(Collider _other)
{
if (!IsServer) return;
if (RoundManager.Current == null || !RoundManager.Current.IsRoundActive) return;
PlayerHealth _playerHealth = _other.GetComponent<PlayerHealth>();
// Клон — засчитываем вход за его ОРИГИНАЛЬНОГО игрока.
// Проверять надо ДО PlayerHealth: у клона он тоже есть,
// но OwnerClientId клона — это сервер, а не игрок.
GhostPlayer _ghost = _other.GetComponentInParent<GhostPlayer>();
if (_ghost != null)
{
RoundManager.Current.OnPlayerEnteredPit(pitIndex, _ghost.OriginalOwnerId);
return;
}
PlayerHealth _playerHealth = _other.GetComponentInParent<PlayerHealth>();
if (_playerHealth == null) return;
if(!RoundManager.Current.IsRoundActive) return;
RoundManager.Current.OnPlayerFellIntoPit(_playerHealth.OwnerClientId);
RoundManager.Current.OnPlayerEnteredPit(pitIndex, _playerHealth.OwnerClientId);
}
}
}