当前位置: 首页> 游戏> 攻略 > 高清的宝安网站推广_文字图片设计制作在线_整站优化深圳_网络优化师是什么工作

高清的宝安网站推广_文字图片设计制作在线_整站优化深圳_网络优化师是什么工作

时间:2025/7/13 7:47:35来源:https://blog.csdn.net/weixin_69360830/article/details/142256979 浏览次数:0次
高清的宝安网站推广_文字图片设计制作在线_整站优化深圳_网络优化师是什么工作

我们打开上一篇43事件中心的项目,

本章要做的事情是给主角增加一个xxxCtrl.cs脚本,再创建一个xxxOpt.cs调用xxxCtrl.cs机制层利用事件中心再写一个主角战士平A对怪物的伤害

首先创建脚本:PlayerCtrl.cs

using UnityEngine;
public class PlayerCtrl : MonoBehaviour{BossCtrl bossCtrl;public void Start() {bossCtrl = FindObjectOfType<BossCtrl>();}public void SetPlayerHpValueChange(float attackValue){bossCtrl.currentHp -= (int)((attackValue - bossCtrl.defineValue) * (1 + Random.Range(-0.3f,0.3f)));}
}

将xxxCtrl.cs脚本增加到主角资源框架上

再创建脚本:PlayerOpt.cs

using UnityEngine;
public class PlayerOpt : MonoBehaviour{GameManager gm;PlayerRayClickNavigation player;#region 事件中心BossCtrl bossCtrl;PlayerCtrl playerCtrl;Vector3 monsterPos;Vector3 selfPos;#endregionpublic void Start(){gm = GameManager.Instance;player = gameObject.GetComponent<PlayerRayClickNavigation>();#region 事件中心bossCtrl = FindObjectOfType<BossCtrl>();playerCtrl = gameObject.AddComponent<PlayerCtrl>();EventCenter.Instance.AddEventListener<Vector3>("MonsterPositionChanged", OnMonsterPositionChanged);monsterPos = GameObject.FindWithTag("Monster").gameObject.transform.position;#endregion}void Update(){#region 事件中心selfPos = transform.position;Player01A(selfPos, monsterPos);#endregion}#region 事件中心void Player01A(Vector3 selfPos, Vector3 monsterPos){this.selfPos = selfPos;this.monsterPos = monsterPos;if (Vector3.Distance(selfPos, monsterPos) < 10){if (player.changeProfess == 2){if (Input.GetKeyDown(KeyCode.A)){playerCtrl.SetPlayerHpValueChange(gm.infoSys.attackValue);}}}}void OnDestroy(){EventCenter.Instance.RemoveEventListener<Vector3>("MonsterPositionChanged", OnMonsterPositionChanged);}void OnMonsterPositionChanged(Vector3 newPosition){monsterPos = newPosition;Player01A(transform.position, monsterPos);}#endregion
}

再将该脚本增加到资源框架上

保存后运行项目

本章利用事件中心实现了主角战士平A(按A键)对怪物血量造成伤害的效果

接下来的文章内容:

1.战士职业的伤害型技能

2.窗口可拖拽脚本

3.点击名称寻找地点功能

4.隐藏怪物的生成

5.怪物I攻击范围内的主动攻击

6.掉落坐骑蛋的获取

7.异步传送转换场景

以及开放回合制、坐骑系统、宠物系统、背包系统、神炼系统、商城系统、Boss的目标跟随任务导航系统以及UI播放3D动画效果等等。

具体项目运行效果请关注water1024的b站视频项目演示《破碎纪元》

【Unity回合2.5D】破碎纪元_单机游戏热门视频 (bilibili.com)icon-default.png?t=O83Ahttps://www.bilibili.com/video/BV1rZY4e9Ebs/?spm_id_from=333.999.0.0&vd_source=547091a95b03acfa8e8a9e46ef499cd6

关键字:高清的宝安网站推广_文字图片设计制作在线_整站优化深圳_网络优化师是什么工作

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: