Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(196评价)
价格: 4019.00元
Unity脚本的外部赋值
水滕TD发起了问答06-04
3
回复
116
浏览

Unity的脚本外部赋值或者赋值有一个特点,类型需要是脚本的类,Unity没有专门给出类似于Code 脚本; 的类型,导致一个脚本需要对应的类型,一一对应,无法赋值其他的脚本,但是通常会出现需要一个脚本变量要储存多个脚本,如一个管理血量的脚本,他需要赋值士兵的本身主脚本,但是士兵可能会是很多种,这时如果想要通用一个管理血量的脚本,就需要管理血量的脚本能赋值不同的脚本,这该如何处理呢?

在其他也有类似的情况,如子弹碰到敌人时进行扣血,他需要获取脚本,但是这个脚本通常不会只有一种,会有不同类型的,所以也需要一个可以储存所有脚本的变量,脚本里写接口,只要获取到脚本,扣血就行,但是需要拿到脚本,GetCompent又需要给一个确切的脚本类型,该怎么办?

所有回复
  • 老师_maimai 06-05

    可以使用抽象类或接口来解决这个问题,编写扣血接口,而每个士兵的脚本就可以实现这个接口或抽象类,

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
  • 水滕TD 06-06

    那么实现后怎么做呢?直接GetCompent<接口>().GetHurt(); 吗?,还是GetCompent<脚本>().GetHurt(); 怎么调用接口内的方法呢?获取脚本就又出现无法适用多个脚本的问题

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
  • 水滕TD 06-06

    已经解决!!非常感谢!!!!!

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
发表回复
你还没有登录,请先 登录或 注册!