最近把小丑牌的全牌组打通金注了。
于是,我开始自己动手制作新挑战关卡和新的小丑牌(这是可以说的吗?)。
制作新挑战
在主界面选择挑战,有共计20个挑战模式可供选择。在挑战模式下,预先设定了特殊的规则、限制条件、牌组。
以“疯狂世界”挑战为例:

打开challenges.lua,可以对挑战模式进行配置,示例为官方给的挑战之一疯狂世界:
挑战配置的前半部份定义了页面中的“规则”部份:

后半部份定义了“限制条件”和“牌组”:

自定义规则:no_extra_hand_money(额外出牌次数不再赚取资金),在额外出牌次数结算资金时,加入判断条件not no_extra_hand_money

打开zh_CN.lua文件,为id=c_mad_world_1新增中文翻译即可展示中文名称:

综上,只要改变这部份的配置,就可以轻松地自定义一个新的挑战啦~
以下是我自定义的挑战:
- 天赋
新增挑战:天赋,初始携带永恒小丑礼品卡(gift)

效果展示:







1 / 3
- 月色真美
初始携带缟玛瑙、重影两张永恒小丑,两张月亮塔罗,一张魔术优惠券,使用方格牌组。

效果展示:





1 / 2
车一张新小丑
基本思路:小丑牌的基础逻辑很简单,基本上都是if/else判断,新增的小丑牌逻辑加一个新的if即可。
但我只会写代码,所以我选择上网找一张joker(土下座,我真的不会画图)。
单车是一副经典的花式切牌的扑克牌,里面的小丑牌就是一张骑着单车的小丑,就用它作为卡牌:

我觉得黑白配色更好看一点
1. 在game.lua中为新小丑进行初始化定义,其中cost为购买的费用,rarity为稀有度(3=稀有),pos={x=1,y=9}定义了小丑牌的牌面图案。全部的小丑牌面都放在Jokers.png的一张大图中,正好中间还有空位,将单车的牌面抠出来p进去,然后把坐标在初始化的地方赋值给pos即可。

2. 小丑牌使用说明,在中文翻译文件zh_CN.lua中新增小丑说明

3. 新增逻辑,在function Card:calculate_joker(context)中新增条件语句

完成!

效果展示:

结语
浅试了一下游戏制作之后发现,设计关卡真的好深奥!我对游戏性平衡性什么的简直一窍不通,虽然去学习了一下关卡是怎么设计的,但这知识它不进脑子啊QAQ,比起设计游戏,写代码反而是最简单的一部份呢。