J'ai besoin d'aide je galère tellement, le code ça n'a jamais été ma tasse de thé donc je m'excuse d'avance pour la simplicité du problème, pour moi c'est la mer à boire mais pour vous ça sera surement un jeu d'enfant.
J'essaye de faire en sorte qu'un cube change de forme lorsqu'on appuie sur une touche du clavier. Je veux l’agrandir quand la touche est enfoncé et le faire revenir à sa forme initial lorsque qu'on relâche la touche.
ça me semblait facile ahah mais non, ça va faire plusieurs heures que je tourne en rond
Code : Tout sélectionner
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SmoothAnimation : MonoBehaviour
{
float speed = 5f;
KeyCode KeySelected;
void OnGUI()
{
KeySelected = Event.current.keyCode;
}
void Update ()
{
if (Input.GetKeyDown(KeySelected))
{
StartCoroutine(ScaleDown());
}
if (Input.GetKeyUp(KeySelected))
{
StartCoroutine(ScaleUp());
}
}
IEnumerator ScaleDown()
{
while(Input.GetKeyDown(KeySelected))
{
Debug.Log("Down "+KeySelected);
GameObject CubeSelected = GameObject.FindGameObjectWithTag("Key"+KeySelected);
CubeSelected.gameObject.transform.localScale += new Vector3(0, 10, 0)* (Time.deltaTime * speed);
yield return null;
}
}
IEnumerator ScaleUp()
{
while(Input.GetKeyUp(KeySelected))
{
Debug.Log("Up "+KeySelected);
GameObject CubeSelected = GameObject.FindGameObjectWithTag("Key"+KeySelected);
CubeSelected.gameObject.transform.localScale += new Vector3(0, 1, 0)* (Time.deltaTime * speed);
yield return null;
}
}
}