网站首页 全球最实用的IT互联网站!

人工智能P2P分享Wind搜索发布信息网站地图标签大全

当前位置:诺佳网 > 软件工程 > 其他技术区 > 游戏开发 >

重构: 面对类结构相似的,重复创造类脚本的解

时间:2025-05-17 16:49

人气:

作者:admin

标签:

导读:面对类结构相似的,重复创造类脚本的解决方法。 实战: 笔者在开发一款农场类游戏,在做种植相关的挑战系统时,随着植物种类的增多,与植物相关的挑战成本增多,若对每个挑战都...

面对类结构相似的,重复创造类脚本的解决方法。

实战:

笔者在开发一款农场类游戏,在做种植相关的挑战系统时,随着植物种类的增多,与植物相关的挑战成本增多,若对每个挑战都创建一个脚本未尝觉得有些麻烦,我想能否像给一个数组赋值那样子,来统一配置挑战内容和编写挑战相关的逻辑的方法呢?

答案自然是肯定的!

我们可以把挑战脚本看作数组的元素,一种数据结构,我们只要在数组声明时候进行逐个赋值即可

对于Challenge.cs脚本内容,我们可以知道,成员变量可以直接赋值,可是函数体中的函数逻辑该如何在外部赋值呢?当然可以使用委托来进行!

好,下面看两个挑战脚本内容,然后尝试来实现最初的想法:像数组赋值那样,在外部直接新建挑战类型对象,以方便快速开发!

image

image

来看一下他们的父类:

image

挑战脚本的内容比较简单,为此我们可以使用几个委托来分别完成对不同函数的“等效赋值”操作;

从下面代码内容可以看到,在外部逻辑调用判断挑战是否开始、结束、达标的函数时候,便会执行

委托,此时在外部赋值的委托中的函数便会执行. 使用委托来解决函数逻辑的脚本外部赋值问题。

image

先看成员变量:

这里主要使用委托来对函数进行“赋值”,实现在外界直接给新创建的类对象赋值。

image

再看下给外部链式赋值的赋值方法:

image

这样在外部可以直链式的配置Challenge内容:

image

对比之前的逐个挑战脚本的开发,降低了重复代码脚本内容,适合快速开发!

之前每新增一个挑战都需要新建一个对应的脚本,比较繁琐。

image

ok,至此通过解决一个函数逻辑外部赋值的问题(使用委托),来完成对多重复的逻辑挑战内容快速开发!当然,在这里也使用链式赋值的方法,保持代码的简洁性,帮助我们快速初始化挑战内容。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
  • 便捷打包Instant Asset脚本

    便捷打包Instant Asset脚本

    使用说明 将脚本放在Assets/Editor目录下 在需要打包同一个table的资源要放在同一...
  • Tuanjie InstantAsset

    Tuanjie InstantAsset

    InstantAsset InstantAsset 是一套全新的资产解决方案,旨在提升开发者的开发和运行...
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信