Vr Hands: Troll Annoy Gui
a) Button Dodges Away public class DodgeButton : MonoBehaviour
public AudioClip[] screams; private AudioSource source; void Start() source = GetComponent<AudioSource>(); public void PlayRandomScream() source.PlayOneShot(screams[Random.Range(0, screams.Length)]);
public float jiggleAmount = 5f; private Quaternion originalRot; void Start() originalRot = transform.rotation; public void Jiggle() float angle = Random.Range(-jiggleAmount, jiggleAmount); transform.rotation = originalRot * Quaternion.Euler(0, 0, angle); Invoke("ResetRotation", 0.1f); void ResetRotation() transform.rotation = originalRot; VR Hands Troll Annoy GUI
public int annoyanceCounter = 0; public UnityEvent onAnnoyanceLevelUp; public void RegisterAnnoyance() annoyanceCounter++; if (annoyanceCounter % 5 == 0) onAnnoyanceLevelUp.Invoke();
public class AnnoySlider : MonoBehaviour a) Button Dodges Away public class DodgeButton :
private Slider slider; void Start() slider = GetComponent<Slider>(); public void RandomJump() slider.value = Random.Range(0f, 1f);
public float annoyDistance = 0.05f; public UnityEvent onAnnoyed; private bool isAnnoyed = false; private float lastAnnoyTime; private AudioSource source
public string[] annoyingMessages; private Text uiText; void Start() uiText = GetComponent<Text>(); public void ChangeTextRandomly() uiText.text = annoyingMessages[Random.Range(0, annoyingMessages.Length)]; Invoke("ResetText", 2f); void ResetText() uiText.text = originalText; private string originalText; void Awake() originalText = uiText.text;
void OnTriggerStay(Collider other)
if (other.CompareTag("VRHand") && Time.time > lastAnnoyTime + 0.5f) lastAnnoyTime = Time.time; isAnnoyed = true; onAnnoyed.Invoke();