随笔分类 -  unity / 勇士传说

摘要:打包前需要一个初始场景 新建一个场景,名叫Initialization,然后在它下面挂载一个 GameObject 名叫InitialLoad,上面挂载一个脚本InitialLoad,内容为 using System.Collections; using System.Collections.Gen 阅读全文
posted @ 2024-02-29 22:31 hellozjf 阅读(48) 评论(0) 推荐(0) 编辑
摘要:打开设置面板 UIManager 注册了设置按钮的监听 如果 pausePanel 原来是 active 的话,则隐藏它,并取消暂停。如果 pausePanel 原来不是 active 的话,则显示它,并暂停游戏 调节音量 PausePanel 上有个滑动条,记录了音量。当暂停事件触发的时候,从 a 阅读全文
posted @ 2024-02-29 18:34 hellozjf 阅读(49) 评论(0) 推荐(0) 编辑
摘要:添加虚拟手柄 如上图所示,绘制虚拟手柄,包括左侧操作杆和右侧NESW键 给左侧操作杆添加 On-Screen Stick 给右侧按钮添加 On-Screen Button 因为我们使用的是新输入系统,所以这些虚拟按键就能直接使用了 PC 版不显示虚拟手柄 使用 UNITY_STANDALONE 宏, 阅读全文
posted @ 2024-02-29 14:49 hellozjf 阅读(190) 评论(0) 推荐(0) 编辑
摘要:安装 newtonsoftjson newtonsoftjson 是一个比 JsonUtility 更好的 JSON 工具,但是 Unity Registry 没办法直接下载,需要点击 Package Manager 左上角的 + 号,点击 Add package from git URL,输入 c 阅读全文
posted @ 2024-02-29 13:54 hellozjf 阅读(122) 评论(0) 推荐(0) 编辑
摘要:界面 先制作一个简单的 Game Over 面板 人物死亡的时候打开 Game Over 面板 创建一个 GameOver Event 人物死亡的时候触发 GameOverEvent UIManager 接收 Game Over Event UIManager 会打开 GameOverPanel,并 阅读全文
posted @ 2024-02-29 12:46 hellozjf 阅读(67) 评论(0) 推荐(0) 编辑
摘要:人物数值保存加载 在 Data 中添加一个 floatSavedData 然后在 Character 里面进行设置,读取血量之后记得通知血条栏更新血量 场景保存加载 Data 中增加一个字符串,用于存储场景信息。存储的时候传入一个 GameSceneSO,通过 JsonUtility 转换为 字符串 阅读全文
posted @ 2024-02-29 11:17 hellozjf 阅读(48) 评论(0) 推荐(0) 编辑
摘要:使用 ISaveable 标识可保存的数据 现在 C# 也像 Java 一样,接口可以写默认实现。大括号的写法和=>的写法是完全一致的 使用 DataManager 来统一管理所有数据 using System.Collections; using System.Collections.Generi 阅读全文
posted @ 2024-02-29 10:31 hellozjf 阅读(45) 评论(0) 推荐(0) 编辑
摘要:制作一个可以点亮的存储点 切图 第一张是存储点的基座,第二张是存储点上面的文字 将它们组合在一起就是存储点了 让存储点可交互 核心代码与宝箱的代码完全一致 using System.Collections; using System.Collections.Generic; using UnityE 阅读全文
posted @ 2024-02-29 08:55 hellozjf 阅读(30) 评论(0) 推荐(0) 编辑
摘要:实现新的冒险 添加 New Game Event SO 使用 Void Event SO 创建 New Game Event SO 点击新的冒险发布事件 订阅新的冒险事件 由 SceneLoadManager 订阅事件 为了区分菜单场景和第一次加载场景,分别使用的 MenuScene MenuPos 阅读全文
posted @ 2024-02-28 21:37 hellozjf 阅读(45) 评论(1) 推荐(0) 编辑
摘要:最终形态 新建一个场景 Menu,将物品摆放上去,并在上面添加文字,文字使用 TextMeshPro,字体使用得意黑 此外还要注意,Game Scenes 里面要添加名为 Menu 的 GameSceneSO Menu 场景也要放到 Addressable 上面 制作完主场景之后,有两件事需要注意 阅读全文
posted @ 2024-02-28 20:02 hellozjf 阅读(25) 评论(0) 推荐(0) 编辑
摘要:DoTween 实现淡入淡出 定义淡入淡出事件 切换场景的时候发布淡入淡出事件 卸载场景的时候,蒙版变黑 场景加载完之后,蒙版变透明 创建 FadeCanvas 以及监听淡入淡出事件 项目相关代码 代码仓库:https://gitee.com/nbda1121440/2DAdventure.git 阅读全文
posted @ 2024-02-28 15:40 hellozjf 阅读(70) 评论(0) 推荐(0) 编辑
摘要:解决场景加载后人物坐标不正确的问题 在 SceneLoader.UnLoadPreviousScene 中,场景卸载掉之后,需要将人物隐藏 场景加载完之后,需要执行回调 在回调中,需要设置当前加载的场景,设置人物的坐标,显示人物,并发布场景完成后的事件 注意,afterSceneLoadedEven 阅读全文
posted @ 2024-02-28 15:04 hellozjf 阅读(34) 评论(0) 推荐(0) 编辑
摘要:使用 Addressable 如下图所示安装 Addressables 打开 Addressables 创建 Addressables Settings 创建完毕之后,就能在 Assets 目录下找到配置好的文件 我们把默认的 Group Name 改成 Scenes 然后选择场景,勾选 Addre 阅读全文
posted @ 2024-02-28 14:15 hellozjf 阅读(53) 评论(0) 推荐(0) 编辑
摘要:创建可互动接口 实现宝箱代码 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Chest : MonoBehaviour, IInteractable { priv 阅读全文
posted @ 2024-02-28 12:55 hellozjf 阅读(37) 评论(0) 推荐(0) 编辑
摘要:场景中叠加场景 将两个场景的公用部分提取到 Persistent 场景中,之后需要使用哪个场景,只需要把那个场景添加到 Persistent 场景下面就行了 注意,如果要往场景中添加物体的话,需要先把场景激活 添加宝箱 先切割宝箱图片,然后把宝箱放到场景中,给宝箱添加 Box Collider 2D 阅读全文
posted @ 2024-02-28 11:59 hellozjf 阅读(52) 评论(0) 推荐(0) 编辑
摘要:修改场景中的 Grid 它们都要有 Tilemap Collider 2D 组件,并且 Is Trigger 为 true 给 水 添加 Water 标签 人物碰到水就死亡 修改 Character.cs,增加 OnTriggerStay2D 方法 添加荆棘 然后再给荆棘添加 Attack 组件 项 阅读全文
posted @ 2024-02-28 11:36 hellozjf 阅读(20) 评论(0) 推荐(0) 编辑
摘要:免费音乐和音效 音效:https://assetstore.unity.com/packages/audio/sound-fx/free-casual-game-sfx-pack-54116 音乐:https://assetstore.unity.com/packages/audio/music/f 阅读全文
posted @ 2024-02-27 15:19 hellozjf 阅读(52) 评论(0) 推荐(0) 编辑
摘要:Cinemachine 安装 cinemachine 添加 cinemachine 添加完之后,需要将 Player 作为 Cinemachine 的 Follow 对象 之后摄像机默认就能跟随玩家了,我们还可以调整一些参数 通过设置 Dead Zone 给摄像机一个缓冲值,中心点没有离开缓冲区域的 阅读全文
posted @ 2024-02-27 14:08 hellozjf 阅读(64) 评论(0) 推荐(0) 编辑
摘要:动画 我们需要快速打断滑铲,所以没用结束滑铲 动画状态机中,使用了 isSlide 这个布尔变量 New State -> blueSlide0,需要 isSlide = true,立即进入 blueSlide0 -> blueSilde1,需要 isSlide = true,完整播放一次之后进入 阅读全文
posted @ 2024-02-26 22:11 hellozjf 阅读(100) 评论(0) 推荐(0) 编辑
摘要:滑墙的实现方式 动画 使用滑墙图片制作滑墙动画,只有一帧的动画 动画状态机中,增加了 onWall 这个 bool 变量,以及 blueWallSlide 这个状态 当 onWall == true 时,从 Jump 立即切换到 blueWallSlide 当 onWall == false && 阅读全文
posted @ 2024-02-26 20:41 hellozjf 阅读(225) 评论(0) 推荐(0) 编辑

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