unity在代码中禁用其他脚本,使用其他脚本中的方法

  1. 在代码中禁用其他脚本
    脚本在unity实际上就是一个自定义的组件Component,那么我们只需要在代码中根据脚本名字获取到组件,然后禁用enabled = false即可
    以如游戏角色死亡后,我们要把它的移动组件PlayerMove.cs给禁用掉,那么我们就可以在我们定义的游戏血量脚本PlayerHp.cs中进行获取并禁用,代码如下
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerHp : MonoBehaviour
{

    public float Hp = 100;
    // Start is called before the first frame update
    void Start()
    {
    }

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

    public void TakeDamage()
    {
        if (Hp <= 0)
        {
            GetComponent<PlayerMove>().enabled = false;
        }
    }
}

  1. 在代码中使用其他脚本中的方法
    基本上和上面的同理,只不过最后不使用enabled = false,而是使用另外脚本中的public方法即可
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerHp : MonoBehaviour
{

    public float Hp = 100;
    // Start is called before the first frame update
    void Start()
    {
    }

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

    public void TakeDamage()
    {
        if (Hp <= 0)
        {
        	//可以直接调用public方法
            GetComponent<PlayerMove>().MoveToFloor();
        }
    }
}
发布了201 篇原创文章 · 获赞 210 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_40666620/article/details/104693546