下载 App

「自制卡牌游戏DIY」自动生成卡牌(2)

修改于2025/07/27110 浏览主题教程
我正在尝试用『星火编辑器』制作一款卡牌游戏。
经过前面的努力,我们已经可以做出卡牌,做出卡牌包,并且在服务端构建了卡牌属性信息。为了让每个玩家都有自己的卡包,我们还需要建立一个玩家类(“类”的概念上一期有讲),并在玩家类中创建一个数组*,用于存放玩家的卡牌,而数组的每个元素都是一张“标准卡牌”(P2)
/*科普-数组:数组是多个相同类型的数据按一定顺序排列,其中的每个数据称为“元素”,而数组中的元素位于数组的位序编号称为“下标”。数组的第一个元素下标为0,第二个下标为1,第n个下标为n-1,依次类推。通过数组的下标,可以取到数组中的元素,格式为“数组名[下标]”,例如某数值类型数组[5,7,2,-1,9]名为"AA",则其中AA[3]的值为-1。此外还可删除、修改数组中的元素或插入新元素*/
为了在服务器上存储所有玩家的信息,我们建立一个名为“所有玩家信息”的简单表。它的键就是玩家编号,值就是该编号所对应的“玩家信息”(P3)
目前玩家的标准卡牌数组里并没有元素,那么我们新建一个方法用于生成玩家初始的卡牌,让服务器“送给”玩家一些卡。在方法中建立一个代表进入玩家的参数,这样在局部变量中就可以取到该玩家的编号,从而在简单表“所有玩家信息”中精准调用这个方法的玩家来执行下面的“送卡”动作。
通过循环遍历上一期中建立的卡牌模板数组,我们将数组中“是否初始赠送”标记为True的元素”摘”出来,将其添加到玩家信息的“已有卡牌”中(P4)
但现在的问题是,送给玩家的卡牌信息数组未经过整理,是杂乱无章的。这就需要新建一个用于整理卡牌的方法。这里要用到一个比较函数。
/*科普-比较函数:输入两个比较参数,分别代表数组中两个需要比较的元素。指定比较的条件,在条件下返回一个返回值,若返回值大于等于0则参数1元素排在前,否则则参数2元素排在前。遍历数组并进行两两比较+排序,即可按指定的条件排序整个数组*/
这里我选择优先按卡牌类型进行先后排序,其次按卡牌等级,最后按卡牌费用(P5)
将已有卡牌信息的数组整理整齐后,还要将这些卡牌信息转成简单表从服务端发给玩家客户端,用于在对应玩家客户端上更新和显示卡牌UI (P6)
最后在服务端触发器调用这些函数,此功能的服务端部分就暂告一段落了。下一期将会继续分享此功能的客户端部分,谢谢大家点赞支持
猜你想搜
星火编辑器 卡牌游戏制作
星火编辑器客户端物品获取属性值的方法截图
星火编辑器客户端物品获取属性值的方法
物品添加属性分两种情况 1:设置额外属性 2:添加词缀 各有各的优缺点。 本次主要讲的是添加词缀如何在客户端获取属性值。 第一种情况:词缀buff里的属性值是设置好的固定值。 这类添加给物品后,在客户端获取就很容易。 因为添加的词缀是“装备”词缀,只需要遍历指定的装备词缀列表这条语句,获取到buff_id 再直接将buff_id通过转化成(数编表:buff),再对数编表buff里的属性修改里去获取
9 赞
35 回复
星火编辑器-修改官方预制自定义物品信息模板截图
星火编辑器-修改官方预制自定义物品信息模板
大家对DIY物品信息显示都很热衷,但是在具体实现上还是比较费神费力的,这次的更新将会极大程度上减少开发者的困难,而且非常好用。 首先,需要将编辑器更新到10版本,这次的更新官方重构了物品提示信息面板,并在界面编辑器中加入了7个全新的页面: 我们所要修改的页面主要是【物品信息_物品信息模板】中的【物品信息】控件: 其中【上部属性面板】就是背包效果,【下部属性面板】就是装备效果 这两个不需要管它,我们
18 赞
3 回复
「自制卡牌游戏DIY」战斗抽卡系统(2)截图
「自制卡牌游戏DIY」战斗抽卡系统(2)
#星火编辑器 #星火编辑器入门 #星火编辑器案例 在上期内容中,我们从卡牌状态的切换打开思路,将从卡池中刷新场上卡牌逻辑用触发器一步步实现,并通过洗牌的方法确保玩家从入场卡池中刷出的卡牌具有随机性。但在此之后系统还需要将抽取的卡牌替换为新卡,并为抽到的法术卡添加法术,方可将刷出卡牌的信息完备地打包给客户端以呈现给玩家,而这正是今天要做的。话不多说,来吧。 接着上期,在对卡池中未抽取的卡牌进行
2 赞
「自制卡牌游戏DIY」战斗抽卡系统(1)截图
「自制卡牌游戏DIY」战斗抽卡系统(1)
#星火编辑器 #星火编辑器入门 #星火编辑器案例 上一期我们完成了游戏的核心功能——战斗抽卡系统的设计,并将主要设计梗概用思维导图的形式清楚呈现。今天我们要着手开始用触发器编写逻辑,实现这个游戏核心玩法系统。本期车速较快,请站稳扶好! 首先我们先做好前置准备,确保已经有了“标准卡牌”类以及足以存储卡牌所需信息的各个成员变量(P2) 同样的,确认玩家信息类里面已经有了这三个“标准卡牌”数组
1 赞
「自制卡牌游戏DIY」战斗抽卡系统(3)截图
「自制卡牌游戏DIY」战斗抽卡系统(3)
#星火编辑器 #星火编辑器入门 #星火编辑器案例 我正在用『星火编辑器』将一张游戏卡牌变成一款卡牌游戏。 在上一期,我们成功把玩家刷新刷出卡的信息经服务端处理后,转化为客户端中可用于显示给玩家的面板控件。这期让我们继续完善战斗抽卡系统及相关功能的触发器逻辑。 还是在触发器客户端,我们已经完成了修改牌面UI的方法,接下来要做两件事:一个是将场上每张刷出来的卡的UI进行生成和保存,另一个是要为
2 赞
「自制卡牌游戏DIY」战斗出卡逻辑(1)截图
「自制卡牌游戏DIY」战斗出卡逻辑(1)
#星火编辑器 #星火编辑器入门 #星火编辑器案例 我正在用『星火编辑器』将一张卡牌变成一款卡牌游戏。 在前几期中,我们设计并完善了战斗抽卡系统,使得游戏能以符合玩家体验的方式,在战斗阶段中为玩家刷出呈现各具效果的卡牌——我们正在一步步为这款卡牌游戏搭建肉体、铸造灵魂。然而,玩家选择及打出卡牌的逻辑同样重要,今天我们就要对这一部分的功能搭建发起冲锋。 在前面我们已经在客户端逻辑中为场上的卡
6 赞
2025年3月12日更新日志【12版本】截图
2025年3月12日更新日志【12版本】
除部分严重BUG修复会覆盖旧版本,以下新功能均在编辑器版本12中生效。 开发者可以在编辑器顶部菜单-编辑器版本中进行版本切换。 Spine动画 参加过之前开发者沙龙的开发者,应该了解Spine动画原本是星火2.0版本的规划;但是在开发过程中,我们充分评估了工作量和收益,认为此能力在当前版本支持亦是有足够价值的。 在本次更新后,界面编辑器正式支持Spine动画了。 开发者可以在「界面编辑器-组件库」
11 赞
4 回复
01:09
【开发日志6】《预制菜梦工坊》即将开张截图
【开发日志6】《预制菜梦工坊》即将开张
清理完开张前最后一批不合预期的bug,做完开张前最后一次全工坊大扫除,我们的《预制菜梦工坊》终于要开张啦! 无论是喜欢卡牌的小伙伴,还是喜欢烹饪的小厨师,都能在这里体验到别样的乐趣与风味!另外,传言中梦工坊的Bug怪谈是否真的是其造就一代传奇的梦幻奥秘,就等你来经营探索了! #TapTap聚光灯 #TapTap聚光灯游戏创作挑战 #聚光灯gamejam开发者日志 #聚光灯游戏创作挑战 #TapTa
16 赞
2 回复
【版本更新】全新传说汽水——力量汽水截图
【版本更新】全新传说汽水——力量汽水
全新传说级汽水「力量汽水」现已加入《疯狂跳跳糖》! 「力量汽水」(传说) 售价:8 币 效果:跳跳糖跳到它上时,会随机弹跳至一个非相邻格上并在该格额外弹跳 1 次;优先弹至非力量汽水的汽水格。 「力量汽水」是一种能够带来巨大能量的功能饮料。顾名思义,它无论给人还是给糖果都能带来满满的力量。当跳跳糖跳至「力量汽水」后,会弹射至随机非相邻格并在该格额外原地弹跳一次,且会优先弹至除力量汽水之外的汽水,并
官方
3 赞
1 回复
22:58
星火写轮眼-技能系列006-刀塔2-双头龙截图
星火写轮眼-技能系列006-刀塔2-双头龙
星火写轮眼-技能系列006-刀塔2-双头龙
2 赞
2 回复