随笔分类 -  unity / 王国之梦

摘要:本节目标 实现场景切换时的淡入淡出效果,实现开场动画,实现打包 实现 实现淡入淡出效果 首先在 Persistent 场景下面添加一个 FadePanel 对象,然后给它添加 UI 和脚本 UI 非常简单,就是一张全黑的图片,注意需要把 Picking Mode 改为 Ignore,否则其它UI组件 阅读全文
posted @ 2024-03-13 20:22 hellozjf 阅读(91) 评论(0) 推荐(0) 编辑
摘要:本节目标 给精英敌人场景添加精英,给Boss场景添加Boss 实现方法 精英敌人场景添加精英 将普通敌人拷贝一份复制到精英场景,把 Spine 动画拖过去,拖过去记得选 SkeletonMecaim,还要修改一下图层,让它来到 default 层 然后编辑 EliteEnemy_Controller 阅读全文
posted @ 2024-03-13 15:01 hellozjf 阅读(58) 评论(0) 推荐(0) 编辑
摘要:本节目标 实现休息房间可以回一次血,实现宝箱房间可以获得卡牌 实现办法 休息房间回血 添加一个 RestRoomPanel,给它挂上 UI 和 脚本 代码实现如下 using System; using UnityEngine; using UnityEngine.UIElements; publi 阅读全文
posted @ 2024-03-13 13:06 hellozjf 阅读(20) 评论(0) 推荐(0) 编辑
摘要:本节目标 实现 GameOver 面板,并且在点击返回菜单之后进入 Menu 场景,点击 Menu 场景中的 New Game 进入游戏 开始实现 GameOver 面板 记得给 BackToStartButton 添加 turnbutton 样式 添加 GameOver 对象 当点击 醒来 按钮的 阅读全文
posted @ 2024-03-13 09:58 hellozjf 阅读(50) 评论(0) 推荐(0) 编辑
摘要:本节目标 打开抽卡面板之后,显示三张可以抽取的卡牌,点击选择卡牌之后将卡牌添加到牌堆中,然后游戏胜利面板隐藏抽卡按钮 实现方法 添加卡牌的 UI Document 需要给 Card 也添加turnbutton样式,这样鼠标移动过去的时候会有放大的效果 抽卡面板调试布局 调试的时候,我们可以把 Pro 阅读全文
posted @ 2024-03-12 21:19 hellozjf 阅读(49) 评论(0) 推荐(0) 编辑
摘要:本节目标 绘制出游戏胜利的面板,以及抽卡面板。当游戏胜利的时候弹出游戏胜利面板,然后游戏胜利面板上面有个抽卡按钮,点击抽卡按钮之后进入抽卡面板 实现 绘制面板 首先在 UI 文件夹下面添加两个 UI Document 文件 第一个是 GameWinPanel,注意需要给按钮添加样式,以便它有放大的效 阅读全文
posted @ 2024-03-12 13:30 hellozjf 阅读(124) 评论(0) 推荐(0) 编辑
摘要:本节目标 让用户从地图场景进入对战场景,然后对战胜利或失败之后收起卡牌 实现过程 让用户从地图场景进入对战场景 Persistent 场景隐藏 Player 和 Gameplay Panel Hierarchy 窗口中移除对战场景,添加map场景 清除 MapLayoutSO 中的数据 然后启动游戏 阅读全文
posted @ 2024-03-12 09:34 hellozjf 阅读(43) 评论(0) 推荐(0) 编辑
摘要:本节目标 上节只是把逻辑写好了,为了让游戏看起来更好看,我们需要将敌人的动画也加上去 实现 动画状态机 敌人的状态比较简单,只有站立、加Buff、攻击、受伤、死亡这五种状态 各状态之间的转换关系如下 站立 -> 加 Buff 通过 skill 触发,立刻执行 因为是从 Any State 出来的,所 阅读全文
posted @ 2024-03-11 13:28 hellozjf 阅读(40) 评论(0) 推荐(0) 编辑
摘要:本节目标 在玩家回合,需要显示敌人的意图,然后在敌人回合执行意图 代码实现 拼 UI 在 HealthBar 上面添加意图的图片和文字 然后在 HealthBarController 上面添加意图图片和意图文字 添加敌人意图 敌人意图 ScriptableObject 敌人意图实例 Effect 把 阅读全文
posted @ 2024-03-11 09:24 hellozjf 阅读(45) 评论(0) 推荐(0) 编辑
摘要:人物动画状态机 设置变量 isParry 是否在防御 isSleep 是否正在睡觉 isDead 是否已经死亡 attack 攻击 hit 受伤 skill 技能 状态 stand 站立 parry_stand 防御 hurt 受伤 attack_pillow 攻击 sleep 睡眠 wake 醒来 阅读全文
posted @ 2024-03-09 14:11 hellozjf 阅读(56) 评论(0) 推荐(0) 编辑
摘要:实现做梦牌(减敌攻击) 复用原来的 StrengthEffect,实现 DeBuffStrengthEffect 注意要对敌人产生效果 创建做梦牌 实现翻书牌(抽牌) 创建 DrawCardEffect using UnityEngine; [CreateAssetMenu(fileName = " 阅读全文
posted @ 2024-03-07 19:35 hellozjf 阅读(33) 评论(0) 推荐(0) 编辑
摘要:本节目标 实现一张力量牌,使用了它之后玩家两个回合的输出增加50% 代码实现 增加 StrengthEffect 力量效果如果是对自己使用的话,就会提高攻击。如果是对敌人使用的话,就会降低攻击 增加 EnemyStrengthRound 增加 BuffStrengthEffect 力量拳套使用 Bu 阅读全文
posted @ 2024-03-07 18:32 hellozjf 阅读(22) 评论(0) 推荐(0) 编辑
摘要:本节目标 玩家使用苹果牌之后会回血,并播放回血特效 代码实现 回血效果 需要给 CharacterBase 添加一个回血方法 实例化回血效果 苹果牌 在初始卡组中添加三张苹果牌 回血特效 给玩家和敌人身上挂上 VFX 脚本 需要在 VFX 下面添加两个特效,特效来自 Art/Effects/Buff 阅读全文
posted @ 2024-03-07 13:14 hellozjf 阅读(34) 评论(0) 推荐(0) 编辑
摘要:本节目标 当玩家打出防御牌之后,会产生一个护盾,用于抵消伤害。在一个回合内护盾是可以叠加的。当新回合开始的时候护盾消失。 代码实现 护盾变量 首先要在CharacterBase中添加一个护盾值 增加护盾的时候会提高它的数值 回合开始的时候会清空护盾值 角色受伤时,首先扣除护盾再减去血量 需要在 Va 阅读全文
posted @ 2024-03-07 10:54 hellozjf 阅读(33) 评论(0) 推荐(0) 编辑
摘要:本节目标 当玩家出牌的时候会扣除能量,当能量不够的时候不能出牌。每个玩家回合开始的时候恢复能量。 代码实现 玩家身上的能量 首先创建一个IntVariable来表示玩家当前的能量,其中该值发生变化的时候会产生PlayerManaChangedEvent事件 然后再写代码,使用这个IntVariabl 阅读全文
posted @ 2024-03-07 09:50 hellozjf 阅读(51) 评论(0) 推荐(0) 编辑
摘要:本节目标 当我点击右下角回合切换按钮的时候,会从我的回合切换到敌人回合,然后敌人回合经过几秒后回到我的回合 代码实现 TurnBaseManager 广播 playerTurnBegin 事件 首先我们需要一个TurnBaseManager类,用于管理当前是哪个回合 using UnityEngin 阅读全文
posted @ 2024-03-06 20:47 hellozjf 阅读(32) 评论(0) 推荐(0) 编辑
摘要:本节目标 当玩家抽卡、弃卡的时候,抽牌堆和弃牌堆的数量要与实际的保持一致 实现方法 添加抽牌堆数量和弃牌堆数量变更事件 抽牌弃牌的时候发布事件 绑定广播事件 GameplayPanel 接收事件 首先 GameplayPanel 需要在OnEnable的时候,绑定相关的 UI 元素 当事件到来的时候 阅读全文
posted @ 2024-03-06 15:30 hellozjf 阅读(30) 评论(0) 推荐(0) 编辑
摘要:本节目标 实现以下 UI 功能实现 创建 GameplayPanel 在 UI 目录下创建一个 GameplayPanel,编辑 GameplayPanel,增加 Visual Element、Label、Button 注意,需要将它们的 Attributes -> Picking Mode 都修改 阅读全文
posted @ 2024-03-06 14:33 hellozjf 阅读(29) 评论(0) 推荐(0) 编辑
摘要:创建 HealthBarUSS 内容如下所示 这个 CSS 选择器是什么意思呢? .unity-progress-bar__container、.unity-progress-bar__background、.unity-progress-bar__progress分别会修改上面三张图里面的样式 在 阅读全文
posted @ 2024-03-06 12:01 hellozjf 阅读(50) 评论(0) 推荐(0) 编辑
摘要:查看 HealthBar 如果我们想根据当前的血量和最大血量,修改血条的值以及是否显示,那么我们可以修改上图中画红框的部分 代码实现 Awake 的时候调用InitHealthBar方法,在InitHealthBar的方法中修改highValue值 然后在Update方法中不停修改healthBar 阅读全文
posted @ 2024-03-06 11:08 hellozjf 阅读(29) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示