首页 - 神途资讯 > 你知道如何使用优雅的代码为游戏角色切换不同技能吗?

你知道如何使用优雅的代码为游戏角色切换不同技能吗?

发布于:2024-04-05 作者:admin 阅读:96

优雅的代码,需要策略

大家好,今天我想和大家分享一下游戏开发中常用的设计模式之一——策略模式。策略模式是一种行为型设计模式,它通过定义一系列算法,将它们封装起来,并使它们可以相互替换,从而使算法的变化独立于使用算法的客户端。在游戏开发中,策略模式可以帮助我们实现更灵活、可维护的代码。

本文源码和源工程在文末获取,小伙伴们自行前往。

什么是策略模式?

首先,让我们来了解一下策略模式的基本概念。策略模式包含三个主要角色:

环境():持有一个策略类的引用,提供接口给客户端使用。

抽象策略():定义了一组算法,为所有具体策略类所共享。

具体策略():实现抽象策略中的算法,提供具体的业务逻辑。

一起来使用策略模式

哼哈哈

接下来,让我们看一个简单的例子来说明策略模式的应用。假设我们正在开发一个角色扮演游戏,玩家可以通过选择不同的技能来进行攻击。我们可以使用策略模式来实现这个功能。

首先,我们定义一个策略类Skill,它有一个方法()用于执行技能。然后,我们创建两个具体策略类和,分别实现紫色攻击和粉色攻击的逻辑。最后,我们在环境类中使用这些策略。

1.准备资源

我们还是从82年祖传的资源里面找到一个紫色的技能攻击特效。但是一个技能可能不够演示策略模式。

传统的配方

但是对于一个PS大神来说(不是),二话不说我们打开熟悉PS,并且把紫色技能拖进去。

一秒学会PS

然后通过ctrl+u调整色相到87并点击确定,神奇的一幕出现了,技能变成了粉色。

是不是很神奇

最后通过文件-存储为-修改技能名字-保存生成新的粉色技能。

东山再起另存为

这样我们就得到一个粉色新技能(???)

Get2.环境

首先定义我们的环境类,其中包含和接口,先在构造函数里面添加一个帧动画组件,关于帧动画组件的实现与使用可以阅读《》。

环境3.抽象策略

然后定义一个抽象策略类Skill,包含接口,同时在构造函数中添加一个组件。

抽象策略4.具体策略

最后实现2个具体的策略类,分别是和,唯一的区别就是加载不同的技能效果,正是我们准备的紫色技能和粉色技能资源。

具体策略5.测试代码

创建一个主角,同时实例化2个具体的技能。

进入游戏

监听键盘事件,q、w、e分别执行空手攻击、装备后攻击和装备后攻击。

学习技能6.结果演示

哼哼哈嘿

在上面的例子中,我们通过将技能抽象成策略类,使得玩家可以自由选择不同的技能进行攻击。如果以后需要添加更多的技能,只需要创建一个新的具体策略类即可,而不需要修改其他代码。这样,我们的代码就变得更加灵活、可维护了。

结语

在哪里可以看到如此清晰的思路,快跟上我的节奏!关注我,和我一起了解游戏行业最新动态,学习游戏开发技巧。

二维码

扫一扫关注我们

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,请告知我们,本站将立刻删除涉嫌侵权内容。

相关文章