Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by unity_2020higginbothamdarby · May 11, 2018 at 08:35 PM · c#animationgameobjectsif-statementschildren

Infinite Time inbetween if statements?

So im trying to make a script for a exit box and the player presses the esc key that brings up the exit box and player movement is disabled. But in order for it to work the player has to press the Esc key and A or D to select the choice and enter all at the same. Is there a way to put infinite time between if statements? Also this script is possibly longer than it needs to be because I dont really understand the foreach transform child thing. Also I tried disabling the Playermovement script but it didn't work.

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.SceneManagement;
 
 public class EscapeScript : MonoBehaviour {
 
 
     public Animator EscAnimNo;
     public Animator EscAnimYes;
     public float FadeOutTimer;
     public GameObject ExitBox;
     public GameObject Yes;
     public GameObject No;
     public GameObject Text;
     public GameObject MText;
 
     public Playermove PM;
         
 
 
     void Start () {
         
         ExitBox = GameObject.Find ("ExitBox");
         Yes = GameObject.Find ("EscYes");
         No = GameObject.Find ("EscNo");
         Text = GameObject.Find ("Exit Text");
         MText = GameObject.Find ("Makesuretext");
 
          
         ExitBox.SetActive (false);
         Yes.SetActive (false);
         No.SetActive (false);
         Text.SetActive (false);
         MText.SetActive (false);
 
         //Get all needed Children and disable them
     }
 
     //Fade out Animation
     IEnumerator Exiter () {
         yield return new WaitForSeconds (FadeOutTimer);
         SceneManager.LoadScene ("Start Screen");
     }
 
 
 
     void Update () {
 
         // enable the exit game box
         if (Input.GetKey(KeyCode.Escape)) { //infinite time needed here
             
             ExitBox.SetActive (true);
             Yes.SetActive (true);
             No.SetActive (true);
             Text.SetActive (true);
             MText.SetActive (true);
 
             PM.Equals (false);
             //Disable PlayermovementScript
 
             if (Input.GetKey(KeyCode.A)) {
                 EscAnimYes.SetBool ("C-Selected", true);
                 EscAnimNo.SetBool ("C-Selected", true);
                 Debug.Log ("Check Select");
 
                 //time between A and Enter needs to be infinite
                 if (Input.GetKey(KeyCode.KeypadEnter)) { 
                     StartCoroutine (Exiter ());
                 }
 
 
 
                 if (Input.GetKey (KeyCode.D)) {
                     EscAnimYes.SetBool ("X-Selected", true);
                     EscAnimNo.SetBool ("X-Selected", true);
                     Debug.Log ("X Selected");
 
                     //time between D and Enter needs to be infinite
                     if (Input.GetKey (KeyCode.KeypadEnter)) {
                         ExitBox.SetActive (false);
                         Yes.SetActive (false);
                         No.SetActive (false);
                         Text.SetActive (false);
                         MText.SetActive (false);
 
                         PM.Equals (true);
                         //Enable playermovent after exitbox is exited
 
                     }
                 }
 
         
             }
         }
     }
 }
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

2 Replies

· Add your reply
  • Sort: 
avatar image
0

Answer by vinilly · May 11, 2018 at 10:12 PM

Were you referring to Unity UI element?

To disable the player movement and pause the game.. use;

 using System.Collections;
  using System.Collections.Generic;
  using UnityEngine;
  using UnityEngine.SceneManagement;
  
  public class EscapeScript : MonoBehaviour {
  
  
      public Animator EscAnimNo;
      public Animator EscAnimYes;
      public float FadeOutTimer;
      public GameObject ExitBox;
      public GameObject Yes;
      public GameObject No;
      public GameObject Text;
      public GameObject MText;
  
      public Playermove PM;
          
  
  
      void Start () {
          
          ExitBox = GameObject.Find ("ExitBox");
          Yes = GameObject.Find ("EscYes");
          No = GameObject.Find ("EscNo");
          Text = GameObject.Find ("Exit Text");
          MText = GameObject.Find ("Makesuretext");
  
           
          ExitBox.SetActive (false);
          Yes.SetActive (false);
          No.SetActive (false);
          Text.SetActive (false);
          MText.SetActive (false);
  
          //Get all needed Children and disable them
      }
  
      //Fade out Animation
      IEnumerator Exiter () {
          yield return new WaitForSeconds (FadeOutTimer);
          SceneManager.LoadScene ("Start Screen");
      }
  
  
  
      void Update () {
  
          // enable the exit game box
          if (Input.GetKey(KeyCode.Escape)) { Time.timeScale = 0.0f; //NEW
              
              ExitBox.SetActive (true);
              Yes.SetActive (true);
              No.SetActive (true);
              Text.SetActive (true);
              MText.SetActive (true);
  
              PM.Equals (false);
              //Disable PlayermovementScript
  
              if (Input.GetKey(KeyCode.A)) {
                  EscAnimYes.SetBool ("C-Selected", true);
                  EscAnimNo.SetBool ("C-Selected", true);
                  Debug.Log ("Check Select");
  
                  //time between A and Enter needs to be infinite
                  if (Input.GetKey(KeyCode.KeypadEnter)) { 
                      StartCoroutine (Exiter ());
                  }
  
  
  
                  if (Input.GetKey (KeyCode.D)) {
                      EscAnimYes.SetBool ("X-Selected", true);
                      EscAnimNo.SetBool ("X-Selected", true);
                      Debug.Log ("X Selected");
  
                      //time between D and Enter needs to be infinite
                      if (Input.GetKey (KeyCode.KeypadEnter)) {
                          ExitBox.SetActive (false);
                          Yes.SetActive (false);
                          No.SetActive (false);
                          Text.SetActive (false);
                          MText.SetActive (false);
  
                          PM.Equals (true);
                          Time.timeScale = 1.0f; //NEW
  
                      }
                  }
  
          
              }
          }
      }
  }

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image unity_2020higginbothamdarby · May 14, 2018 at 07:27 PM 0
Share

Well pausing the game like that doesn't work with the menu and the playermovent still kinda works also there's still no infinite time between the if statements.

avatar image
0

Answer by unity_2020higginbothamdarby · May 15, 2018 at 09:17 PM

Alright I did manage to fix it by checking if the G key was pressed if it wasn't it runs again

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.SceneManagement;
 
 public class EscapeScript : MonoBehaviour {
 
 
     public Animator EscAnimNo;
     public Animator EscAnimYes;
     public float FadeOutTimer;
     public GameObject ExitBox;
     public GameObject Yes;
     public GameObject No;
     public GameObject Text;
     public GameObject MText;
     public bool PressedG;
     public bool EsckeyPressed;
 
         
 
 
     void Start () {
         
         ExitBox = GameObject.Find ("ExitBox");
         Yes = GameObject.Find ("EscYes");
         No = GameObject.Find ("EscNo");
         Text = GameObject.Find ("Exit Text");
         MText = GameObject.Find ("Makesuretext");
         PressedG = false;
         EsckeyPressed = false;
          
         ExitBox.SetActive (false);
         Yes.SetActive (false);
         No.SetActive (false);
         Text.SetActive (false);
         MText.SetActive (false);
 
         //Get all needed Children and disable them
     }
 
     //Fade out Animation
     IEnumerator Exiter () {
         yield return new WaitForSeconds (FadeOutTimer);
         SceneManager.LoadScene ("Start Screen");
     }
 
 
 
     void Update () {
 
 
         // enable the exit game box
         if (Input.GetKey(KeyCode.Escape) || EsckeyPressed == true && PressedG == false) {  
             EsckeyPressed = true;
 
             ExitBox.SetActive (true);
             Yes.SetActive (true);
             No.SetActive (true);
             Text.SetActive (true);
             MText.SetActive (true);
 
 
 
 
             if (Input.GetKey (KeyCode.A)) {
                 EscAnimYes.SetBool ("C-Selected", true);
                 EscAnimNo.SetBool ("C-Selected", true);
                 Debug.Log ("Check Select");
 
                 //time between A and Enter needs to be infinite
                 if (Input.GetKey (KeyCode.G)) { 
                     StartCoroutine (Exiter ());
                     PressedG = true;
 
                 }
             }
 
 
             if (Input.GetKey (KeyCode.D)) {
                 EscAnimYes.SetBool ("X-Selected", true);
                 EscAnimNo.SetBool ("X-Selected", true);
                 Debug.Log ("X Selected"); 
 
                 //time between D and Enter needs to be infinite
                 if (Input.GetKey (KeyCode.G)) {
                     ExitBox.SetActive (false);
                     Yes.SetActive (false);
                     No.SetActive (false);
                     Text.SetActive (false);
                     MText.SetActive (false);
                     PressedG = true;
                 }
             }
 
                 if (Input.GetKey(KeyCode.G) == false) {
                             PressedG = false;
                         }
 
 
                     }
                 }
 
 
             }
     
 

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image unity_2020higginbothamdarby · May 15, 2018 at 09:20 PM 0
Share

But now the animation is a bit weird when you press A it goes switching back and forth but pressing the D key is fine sometimes or it does the animation switching and now A key is fine.

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

615 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Make GameObject child of a child 1 Answer

Play animation on mouse click 1 Answer

Is this bug known? function parameter s and if statements c# 1 Answer

I am trying to close the GUI if its already active and the user clicks 0 Answers

How to play 'open door' animation on only one door? 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges