简体   繁体   English

没有重载方法需要 0 个参数

[英]No overload method takes 0 arguments

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

public class CollisionDetection : MonoBehaviour {
    public Collision c;
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {
        OnCollisionEnter ();
    }

    void OnCollisionEnter(Collision c){     
        if (c.gameObject.name == "Wall") {
            Movement.MoveDirection = Vector2.zero;
        }
    }
} 

I can pass the parameter Collision c but i cant pass it back as an argument, when I do I get the error expected 3 with a bunch of syntax on my screen such as: Expected ) , Expected ;我可以传递参数Collision c但我不能将它作为参数传递回来,当我这样做时,我在屏幕上收到了expected 3的错误expected 3和一堆语法,例如: Expected ) , Expected ;

Your method signature doesn't match the invocation.您的方法签名与调用不匹配。 In detail:详细:

void OnCollisionEnter(Collision c) {
    ...
}

Does not match the usage just above where you're invoking it (in Update ):与上面调用它的地方的用法不匹配(在Update ):

OnCollisionEnter ();

Remove two lines Public coliision c Oncollision enter()删除两行 public colision c Oncollision enter()

Everything fine一切都很好

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM