1
0
forked from cgvr/DeltaVR

archery range npc voicelines for completing round and submitting name

This commit is contained in:
2026-03-16 15:32:46 +02:00
parent 439094f74a
commit 6a77893ed7
14 changed files with 1148 additions and 9 deletions

View File

@@ -85,7 +85,6 @@ public class ArcheryRange : NetworkBehaviour
_presentPlayers.Remove(exitedPlayer); // Shifts others left automatically
if (exitedPlayer == _scoredPlayer) keyboardManager.DeActivate(); // If the player <20>refuses to enter their name.
}

View File

@@ -8,6 +8,11 @@ public class KeyboardManager : NetworkBehaviour
{
public enum ShiftMode { Lowercase, NextUppercase, Uppercase }
public delegate void OnActivateDelegate();
public event OnActivateDelegate OnActivate;
public delegate void OnSubmitDelegate();
public event OnSubmitDelegate OnSubmit;
[Header("UI References")]
public TMP_Text nameTextField;
public TMP_Text scoreTextField;
@@ -57,6 +62,7 @@ public class KeyboardManager : NetworkBehaviour
gameObject.transform.position = assignedTransform.position;
gameObject.transform.rotation = assignedTransform.rotation;
OnActivate?.Invoke();
}
public void DeActivate()
@@ -64,7 +70,7 @@ public class KeyboardManager : NetworkBehaviour
gameObject.SetActive(false);
}
private void addToInput(string newInput)
private void AddToInput(string newInput)
{
if (_input.Length < inputTextLimit)
@@ -82,13 +88,13 @@ public class KeyboardManager : NetworkBehaviour
switch (_shiftMode)
{
case ShiftMode.Lowercase:
addToInput(letter.ToLower());
AddToInput(letter.ToLower());
break;
case ShiftMode.Uppercase:
addToInput(letter.ToUpper());
AddToInput(letter.ToUpper());
break;
case ShiftMode.NextUppercase:
addToInput(letter.ToUpper());
AddToInput(letter.ToUpper());
_shiftMode = ShiftMode.Lowercase;
UpdateKeyLabels();
break;
@@ -124,6 +130,7 @@ public class KeyboardManager : NetworkBehaviour
void OnEnterPressed()
{
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, enterButton.gameObject);
OnSubmit?.Invoke();
if (_input.Length > 0)
{
@@ -136,7 +143,7 @@ public class KeyboardManager : NetworkBehaviour
{
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, spaceButton.gameObject);
addToInput(" ");
AddToInput(" ");
UpdateOutput();
}