news 2026/6/10 1:50:32

Netcode for GameObjects Boss Room 多人RPG战斗(20)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Netcode for GameObjects Boss Room 多人RPG战斗(20)

ConcreteActions

1. 动作类型与分类

ConcreteActions目录包含了游戏中所有具体的动作实现,这些动作可以分为以下几类:

动作类型代表实现核心特点
物理攻击MeleeAction基于物理检测的近战攻击,需要碰撞检测
投射物攻击LaunchProjectileAction, ChargedLaunchProjectileAction生成物理投射物,有飞行轨迹和碰撞效果
范围攻击AOEAction基于指定位置和半径的区域攻击
移动与追逐ChaseAction, DashAttackAction控制角色移动和位置调整
状态变化StealthModeAction, ChargedShieldAction改变角色状态或提供持续效果
交互动作ReviveAction, PickUpAction, DropAction与其他角色或物体的交互
情绪与表达EmoteAction角色情绪表达或非战斗动作

2. 共同实现模式

所有具体动作都继承自Action基类,并遵循相似的实现模式:

2.1 动作生命周期管理

每个动作都实现了完整的生命周期方法:

// 动作启动publicoverrideboolOnStart(ServerCharacterserverCharacter){/* ... */}// 动作更新publicoverrideboolOnUpdate(ServerCharacterclientCharacter){/* ... */}// 动作重置publicoverridevoidReset(){/* ... */}// 动作取消publicoverridevoidCancel(ServerCharacterserverCharacter){/* ... */}// 客户端特定方法publicoverrideboolOnStartClient(ClientCharacterclientCharacter){/* ... */}publicoverrideboolOnUpdateClient(ClientCharacterclientCharacter){/* ... */}publicoverridevoidCancelClient(ClientCharacterclientCharacter){/* ... */}

2.2 执行时间控制

所有动作都使用TimeRunningTime.time - TimeStarted来控制执行时间:

if(TimeRunning>=Config.ExecTimeSeconds&&!m_ExecFired){// 执行动作核心逻辑m_ExecFired=true;PerformAction();}

2.3 状态管理

每个动作都维护自己的状态变量,如执行标志、目标引用等:

privateboolm_ExecFired;privateNetworkObjectm_Target;privateList<SpecialFXGraphic
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 12:02:00

【OpenGL ES】在Windows上手撕一个mini版的渲染框架

1 前言1.1 开发该框架的动机​ OpenGL ES 是一个渲染指令接口集合&#xff0c;每渲染一帧图像都是一系列渲染指令的排列组合。常用的渲染指令约有 70 个&#xff0c;记住这些渲染指令及其排列组合方式&#xff0c;是一件痛苦的事情。另外&#xff0c;在图形开发中&#xff0c;经…

作者头像 李华
网站建设 2026/6/10 14:21:53

推荐系统中的损失函数梳理:从Pointwise到Listwise

引言&#xff1a;目标决定损失函数选择推荐系统通常采用两阶段架构&#xff1a;召回&#xff08;Recall&#xff09;与精排&#xff08;Ranking&#xff09;。两个阶段的优化目标存在本质差异&#xff0c;这直接决定了损失函数的选择。召回阶段从海量候选集&#xff08;百万至亿…

作者头像 李华
网站建设 2026/6/9 11:43:36

BewlyBewly多语言支持实践指南:5步搞定国际化开发

BewlyBewly多语言支持实践指南&#xff1a;5步搞定国际化开发 【免费下载链接】BewlyBewly Improve your Bilibili homepage by redesigning it, adding more features, and personalizing it to match your preferences. 项目地址: https://gitcode.com/gh_mirrors/be/Bewly…

作者头像 李华
网站建设 2026/6/10 4:52:46

基于BP的低密度校验码LDPC的编译码仿真

基于BP的低密度校验码LDPC的编译码仿真 第一章 仿真研发背景与核心目标 在5G通信、卫星通信等领域&#xff0c;信号传输易受噪声、信道衰落干扰导致数据失真&#xff0c;纠错编码技术成为保障传输可靠性的关键。低密度校验码&#xff08;LDPC&#xff09;凭借逼近香农极限的纠错…

作者头像 李华
网站建设 2026/6/10 13:56:51

基于51单片机的语音储存于回放

基于51单片机的语音储存与回放系统设计 第一章 绪论 在日常办公、教学演示、小型设备交互等场景中&#xff0c;语音储存与回放功能具有广泛应用需求。传统语音记录设备如磁带录音机、专用录音笔等&#xff0c;存在体积较大、存储容量有限、数据传输不便等问题&#xff0c;难以适…

作者头像 李华