Unity 2D, я не могу решить это - PullRequest
0 голосов
/ 25 января 2019

Я пытался сделать платформерную игру, но когда я создал анимацию падения, он показал мне эту ошибку CS1026 по адресу: if(Player, whatIsGround == 0){

Это код:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CharacterAnim : MonoBehaviour {

private Animator anim;

public LayerMask whatIsGround;

public float Player;


void Start(){
    anim = GetComponent<Animator>();
}

void Update(){

    if(Player, whatIsGround == 0){

        anim.SetBool("Test", true);
    } else {
        anim.SetBool("Test", false);
    }

    if(Input.GetKey(KeyCode.RightArrow) || Input.GetKey(KeyCode.LeftArrow)){
        anim.SetBool("Left", true);
    } else {
        anim.SetBool("Left", false);
    }

    if(Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.RightArrow)){
        anim.SetBool("Right", true);
    } else {
        anim.SetBool("Right", false);
    }

    if(Input.GetKeyDown(KeyCode.UpArrow)){
        anim.SetTrigger("Jump");
        }
}
}

Как можноя разрешаю это?

1 Ответ

0 голосов
/ 25 января 2019

Согласно документации Microsoft ( ссылка ):

Ошибка компилятора CS1026

) ожидается

Не найден неполный оператор.

У вас есть 2 ошибки здесь.Прежде всего, вы не можете конвертировать float в bool, как это, и тогда у вас не может быть символа ',' между двумя операторами в структуре if.

Я предлагаю заменить ',' на '&&' или '||»( C # операторы ) и создайте логическое выражение с помощью переменной Player, например:

  if(Player > 0 && whatIsGround == 0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...