摘要: 这次我在角色状态机里继续扩展了空中移动逻辑,把“碰到墙以后慢慢下滑”和“从墙上反弹跳开”拆成了两个独立状态:Player_WallSlideState 和 Player_WallJumpState。这样做的好处是,角色在普通下落、贴墙下滑、墙上起跳这几种行为之间,不需要全部堆在一个脚本里判断,而是交 阅读全文
posted @ 2026-05-10 11:40 GhbBskl 阅读(16) 评论(0) 推荐(0)
摘要: 最近在 Unity 2D 项目里,我把玩家的移动逻辑整理成了状态机。这样做的目的,是把不同动作下的逻辑分开管理,避免所有判断都堆在 Player 的 Update 里。 我的实现里有一个 StateMachine,里面保存当前状态 currentState。开始时用 Initialize 进入初始状 阅读全文
posted @ 2026-05-09 14:21 GhbBskl 阅读(35) 评论(0) 推荐(0)
摘要: 本次完成的是一个基础状态机结构,主要用于管理玩家不同状态之间的切换,比如 Idle 和 Move。 一、整体结构 当前状态机主要由四部分组成: Player:玩家本体,负责创建状态机和各个状态 StateMachine:状态机核心,负责保存当前状态和切换状态 EntityState:状态基类,定义所 阅读全文
posted @ 2026-05-06 11:39 GhbBskl 阅读(14) 评论(0) 推荐(1)
摘要: 一、封装: 封装的核心是:把对象自己的数据和行为放在一起,隐藏内部实现,只给外部提供必要的使用方式。 比如角色受到伤害后变红,过一段时间恢复白色。外部脚本不需要知道角色怎么变色、怎么计时,只需要调用 TakeDamage()。 using UnityEngine; public class Dama 阅读全文
posted @ 2026-05-05 20:01 GhbBskl 阅读(14) 评论(0) 推荐(1)