I have a handBreak button on my simulator that starts pressed/on, so I need that the InputManager detect if this button is pressed and modifie a boolean. The problem is that the InputManager can’t detect this already pressed button. I tested with keyboard and joystick. Every time I start or reset the game, with the button pressed, it is not detect, I need to unpressed once to start to be detect. Here is a simple code to test it. Any clues? I’m stucked. TKS
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class TestPressed : MonoBehaviour
{
// Start is called before the first frame update
[SerializeField]
private bool button1Pressed;
[SerializeField]
private int countB1;
private GUIStyle guiStyleR = new GUIStyle();
// Update is called once per frame
void Update()
{
if (Input.GetButton("Fire2")){ // using letter "c" on Input
button1Pressed = true;
countB1++;
}
else
{
button1Pressed = false;
countB1 = 0;
}
if (Input.GetKeyDown(KeyCode.R)) {
SceneManager.LoadScene(0);
}
}
private void OnGUI()
{
guiStyleR.fontSize = 30;
guiStyleR.normal.textColor = Color.blue;
guiStyleR.fontStyle = FontStyle.Bold;
GUI.Label(new Rect(200,10, 220, 40), "B1: " + button1Pressed + " " + countB1, guiStyleR);
}
}