今天跟大家唠唠我最近在琢磨的“芬克斯”这个事儿,可不是啥高科技,就是我自个儿瞎琢磨的一个小玩意儿,灵感嘛一半来自《全职猎人》里的芬克斯,一半来自最近玩的荒野乱斗。
就是觉得芬克斯那股子“莽”劲儿挺有意思,啥也不管,先干再说。然后玩荒野乱斗的时候,就琢磨着能不能把这感觉搬到游戏里,整个角色或者机制啥的。
琢磨来琢磨去,就想到一个简单的点子:越挨揍,攻击力越高。
说干就干,先用纸笔画个草图,大概就是个穿着运动服,头发竖起来的家伙,手里拿着个...随便啥武器都行,反正重点是挨揍变强。
接下来就是折腾代码。我用的是Unity,先建个简单的场景,放个主角,然后开始写脚本。
核心代码就几行:
csharp
public class Fen克斯 : MonoBehaviour
public float baseAttack = 10f; // 基础攻击力
public float attackIncreasePerHit = 2f; // 每次挨打增加的攻击力
private float currentAttack; // 当前攻击力
private int hitCount = 0; // 挨打次数
void Start()
currentAttack = baseAttack;
public void TakeDamage(float damage)
hitCount++;
currentAttack = baseAttack + hitCount attackIncreasePerHit;
*("芬克斯挨打!当前攻击力:" + currentAttack);
public float GetAttack()
return currentAttack;
这段代码很简单,就是定义一个“芬克斯”类,里面有基础攻击力,每次挨打增加的攻击力,当前攻击力,和挨打次数。每次调用`TakeDamage`函数,就挨打一次,攻击力就增加。`GetAttack`函数就是用来获取当前攻击力的。
写完这段代码,我把它挂到主角身上,然后又写个简单的敌人AI,让敌人攻击主角。
一开始测试的时候,主角那攻击力,挠痒痒都不够。但是挨几下揍之后,攻击力蹭蹭往上涨,打敌人就疼多。
玩几把,感觉还挺爽的。就是视觉效果不太看不出来攻击力增加。
然后我就开始折腾特效。
先是给主角加个“愤怒”的buff,就是身上冒红光,随着挨打次数增加,红光越来越亮。这个用Unity的粒子系统很容易实现。
然后又给武器加个拖尾特效,攻击力越高,拖尾越长,颜色也越鲜艳。
加这些特效之后,感觉就好多。每次挨揍,看着红光越来越亮,拖尾越来越长,就感觉自己变强!
这只是个雏形,还有很多可以改进的地方。
比如,可以加个攻击力上限,免得无限增加,一下秒杀boss。
还可以加个“爆发”技能,把积累的攻击力一次性释放出来,造成巨额伤害。
还可以...
这回“芬克斯”实践,让我又找回做游戏的乐趣。虽然只是个小玩意儿,但是能把自己的想法变成现实,那种感觉真的很棒!
确定想法:越挨揍越厉害
画草图:随便画画,有个大概样子就行
写代码:核心代码就几行,实现基本功能
加特效:让效果更明显
不断改进:让游戏更好玩
下次我准备试试能不能把“回旋”这个概念加进去,毕竟芬克斯的招牌动作就是回旋嘛
还没有评论,来说两句吧...