尝试从其他对象访问变量

时间:2020-08-23 03:35:32

标签: c# unity3d

当玩家杀死敌人时,我需要给它弹药。我正在尝试使用GetComponent,但始终出现错误“:错误CS0428:无法将方法组'GetComponent'转换为非委托类型'thro'。您是否打算调用该方法?”在这一行:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class collision : MonoBehaviour
{
 public int cardno = 13;
 public GameObject deck;
 thro deck_script;

 void OnCollisionEnter (Collision cl)
 {
  if(cl.collider.tag == "iscard")
  {
   int cardran = Random.Range(1,14);
   Debug.Log(cardran);
   *deck_script = deck.GetComponent<thro>;*
   if (cardran == cardno)
   {
    
    Destroy(gameObject);
    Debug.Log("kil");
   }
  }
 }
}

1 个答案:

答案 0 :(得分:0)

deck_script = deck.GetComponent<thro>;

不是用于调用函数的正确语法。试试:

deck_script = deck.GetComponent<thro>();

请参阅文档:https://docs.unity3d.com/ScriptReference/Component.GetComponent.html