Вам нужна новая переменная isFacingRight
, чтобы отслеживать существующую облицовку. И, как уже упоминалось другими, вы переворачиваете локальную шкалу, чтобы изменить направление.
bool isFacingRight = true;
void Update(){
//other stuff
if(GetKeyDown(KeyCode.A) || GetKeyDown(KeyCode.LeftArrow)){
FaceLeft();
}
if(GetKeyDown(KeyCode.D) || GetKeyDown(KeyCode.RightArrow)){
FaceRight();
}
}
void FaceRight(){
if(!isFacingRight){
gun.transform.localScale = new Vector3(1, 1, 1);
isFacingRight = true;
}
}
void FaceLeft(){
if(isFacingRight){
gun.transform.localScale = new Vector3(-1, 1, 1);
isFacingRight = false;
}
}
********************* решено ************************* *****
Я продублировал свое оружие и перевернул его на левую сторону. Я вручную установил флажок деактивации на левом оружии. Вот код, который я использовал:
public GameObject gun = Pshoot.gun; // Right facing gun
public GameObject gun1 = Pshoot.gun1; // Left facing gun
if (Input.GetKeyDown(KeyCode.A) || Input.GetKeyDown(KeyCode.LeftArrow)) {
GetComponent<Renderer>().material = rgtFace;
gun.SetActive(false);
gun1.SetActive(true);
// isFacingRight = false;
// FaceLeft();
// gun.transform.localScale = new Vector3(-1,1,-1);
}
В этой проверке левого движения я установил для правого пистолета значение false и активировал левый пистолет для появления. (Не обращайте внимания на закомментированную часть, сегодня я выучил localeScale, поэтому сохраняю ее для дальнейшего использования. ВАМ может и не понадобиться, поэтому игнорируйте ее)
if (Input.GetKeyDown(KeyCode.D) || Input.GetKeyDown(KeyCode.RightArrow))
{
GetComponent<Renderer>().material = lftFace;
gun.SetActive(true);
gun1.SetActive(false);
// isFacingRight = true;
}
Выше приведен код для установки пистолета, обращенного вправо. Теперь просто хедз-ап, вам не понадобится код материала. Это просто то, что я сделал, чтобы оживить мой спрайт. Вы заметите, что выше написано lftFace, но я случайно поместил правильное изображение лица в переменную leftface lol, это не влияет на игру, и я могу жить с этим. Не суди меня! : Р
В любом случае, спасибо всем, кто прокомментировал, чтобы помочь мне! Очень люблю кибер-программиста Fam!