private void UpdateHUD() { if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.D)) { DisableCamera(); } if (currentTarget == null) { return; } //Update UserDefault user = null; try { user = (UserDefault)currentTarget; } catch (Exception e) { } if (user != null) { userHUDVariables.SetActive(true); UpdateHUDVariables(); } else { userHUDVariables.SetActive(false); } userHUDState.text = currentTarget.currentState; if (!currentTarget.gameObject.activeSelf) { noTargetHUD.SetActive(true); } }
IEnumerator TimeUsing(UserDefault user) { yield return(new WaitForSeconds(Random.Range(minTime, maxTime))); user.FinishPee(exitPosition); userRiding.Dequeue(); }
// Update is called once per frame protected override void Update() { base.Update(); if (readyFood.Count < maxStackedFood) { foodDelay -= Time.deltaTime; } if (foodDelay < 0) { readyFood.Enqueue(new Food()); foodDelay = Random.Range(minFoodDelay, maxFoodDelay); } if (userQueue.Count > 0) { foreach (UserDefault user in userQueue) { user.LowerTolerance(); } if (userRiding.Count < maxCapacity) { if (Mathf.Abs((userQueue.Peek().transform.position - queuePosition).magnitude) < 1) { if (readyFood.Count > 0) { UserDefault customer = userQueue.Dequeue(); customer.GiveFood(readyFood.Dequeue()); ReajustQueue(); } } } } }
/// <summary> /// Gets the hash code /// </summary> /// <returns>Hash code</returns> public override int GetHashCode() { unchecked // Overflow is fine, just wrap { var hashCode = 41; // Suitable nullity checks etc, of course :) if (UserMapping != null) { hashCode = hashCode * 59 + UserMapping.GetHashCode(); } if (UserDefault != null) { hashCode = hashCode * 59 + UserDefault.GetHashCode(); } if (UserEnableDefaultMapping != null) { hashCode = hashCode * 59 + UserEnableDefaultMapping.GetHashCode(); } if (RequireValidation != null) { hashCode = hashCode * 59 + RequireValidation.GetHashCode(); } return(hashCode); } }
/// <summary> /// Returns true if OrgApacheSlingServiceusermappingImplServiceUserMapperImplProperties instances are equal /// </summary> /// <param name="other">Instance of OrgApacheSlingServiceusermappingImplServiceUserMapperImplProperties to be compared</param> /// <returns>Boolean</returns> public bool Equals(OrgApacheSlingServiceusermappingImplServiceUserMapperImplProperties other) { if (other is null) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return (( UserMapping == other.UserMapping || UserMapping != null && UserMapping.Equals(other.UserMapping) ) && ( UserDefault == other.UserDefault || UserDefault != null && UserDefault.Equals(other.UserDefault) ) && ( UserEnableDefaultMapping == other.UserEnableDefaultMapping || UserEnableDefaultMapping != null && UserEnableDefaultMapping.Equals(other.UserEnableDefaultMapping) ) && ( RequireValidation == other.RequireValidation || RequireValidation != null && RequireValidation.Equals(other.RequireValidation) )); }
public void AddUser(UserDefault user) { userQueue.Enqueue(user); Vector3 dest = queuePosition + queueDirection * (userQueue.Count - 1); Debug.Log(userQueue.Count); user.getAgent().SetDestination(dest); }
// Update is called once per frame protected override void Update() { base.Update(); if (quality < 0) { quality = 0; } // Decrementar tiempo if (waitTimer > 0) { waitTimer -= Time.deltaTime; } if ((quality < qualityThreshold) && (currentEngineer == null)) { brokenAttraction(); } // Actualizar cola if (userQueue.Count > 0) { foreach (UserDefault user in userQueue) { user.LowerTolerance(); } if (!riding && (quality > qualityThreshold)) { // Añadir a la atraccion if (userRiding.Count < maxCapacity) { if (Mathf.Abs((userQueue.Peek().transform.position - queuePosition).magnitude) < 1) { UserDefault nextUser = userQueue.Dequeue(); userRiding.Enqueue(nextUser); nextUser.EnterRide(); waitTimer = maxWait; // Recolocar cola ReajustQueue(); } } // Comenzar attraccion if (userRiding.Count >= maxCapacity) { Ride(); } else if (userRiding.Count > 0 && waitTimer < 0) { Ride(); } } } }
public void Leave(UserDefault user) { if (userQueue.Contains(user)) { Queue <UserDefault> aux = new Queue <UserDefault>(); while (userQueue.Count > 0) { UserDefault u = userQueue.Dequeue(); if (!u.Equals(user)) { aux.Enqueue(u); } } foreach (UserDefault u in aux) { userQueue.Enqueue(u); } aux.Clear(); ReajustQueue(); } }
// Update is called once per frame protected override void Update() { base.Update(); if (userQueue.Count > 0) { foreach (UserDefault user in userQueue) { user.LowerTolerance(); } if (userRiding.Count < maxCapacity) { if (Mathf.Abs((userQueue.Peek().transform.position - queuePosition).magnitude) < 1) { UserDefault user = userQueue.Dequeue(); userRiding.Enqueue(user); ReajustQueue(); user.EnterToilet(); Use(user); } } } }
/********************* * Prefab Generators * *********************/ public bool GenerateUser(int amount) { Bounds exitBounds = parkExit.GetComponent <BoxCollider>().bounds; if (userPrefab != null) { for (int i = 0; i < amount; i++) { float spawnPosX = UnityEngine.Random.Range(exitBounds.min.x, exitBounds.max.x); float spawnPosY = UnityEngine.Random.Range(exitBounds.min.z, exitBounds.max.z); Vector3 spawnPos = new Vector3(spawnPosX, 0, spawnPosY); UserDefault u = Instantiate( userPrefab, spawnPos, Quaternion.Euler(0, UnityEngine.Random.Range(0, 359), 0), userContainer.transform ); u.gameObject.SetActive(true); } return(true); } return(false); }
public void Use(UserDefault user) { StartCoroutine(TimeUsing(user)); }