【发布时间】:2016-07-22 19:03:36
【问题描述】:
我一直在尝试为我的统一级别制作一个滑动门,并且我已经设法设置了动画,但是应该将功能与对象链接起来的脚本不起作用。
这是钥匙卡的脚本:
using UnityEngine;
using System.Collections;
public class Key_Pickup_1 : MonoBehaviour {
public GameObject player;
private Player_inventory playerinventory;
void Awake ()
{
playerinventory = player.GetComponent<Player_inventory>();
}
// Update is called once per frame
void onTriggerEnter()
{
if (gameObject == player)
{
playerinventory.hasKey_1 = true;
Destroy(gameObject);
}
}
}
这是门动画的脚本:
using UnityEngine;
using System.Collections;
public class Door_Animation_1 : MonoBehaviour {
public string Open;
private Animator anim_1;
public GameObject player;
private Player_inventory playerInventory;
void Start()
{
anim_1 = GetComponent<Animator>();
player = GameObject.FindGameObjectWithTag("Player");
playerInventory = player.GetComponent<Player_inventory>();
}
void OntriggerEnter (Collider other)
{
if(other.gameObject == player)
{
if (playerInventory.hasKey_1)
{
anim_1.SetTrigger(Open);
}
}
}
有什么想法吗?
【问题讨论】:
-
c# 不是脚本语言
-
这里不是问“为什么我的代码不起作用”的地方。更新您的问题并告诉我们您调试问题所采用的方法。谢谢。
-
@FirstStep 我不认为他将其称为脚本语言。附加到组件的代码在 Unity 中称为脚本。 “Unity 允许您使用脚本创建自己的组件。这些允许您触发游戏事件、随着时间的推移修改组件属性并以您喜欢的任何方式响应用户输入。”来自他们的手册。
-
@Timmy 哦,很酷,感谢您指出这一点