『功能项目』项目优化 - 框架加载资源【41】

我们打开上一篇40播放动画时禁止点击移动的项目,

本章要做的事情是搭建一个资源加载框架,让UI界面,人物模型以及场景都存放在资源文件夹中在运行时加载出来

首先在资源商店加载资源

将怪物模型放置场景中

将普通管线模型切换成URP

重命名为Boss01放在资源文件夹里

新建Boss01对象的动画控制器

进行设置

拖拽新建动画控制器

将场景资源放进资源文件夹中后在场景中隐藏

将场景中的界面Canvas放进资源文件夹中后隐藏

接着把以前挂载在Land场景中的文件夹挂载的LoadResourcesRun.cs脚本取消挂载

新建脚本:

编写脚本:

using UnityEngine;
public class GameStart : SingletonMono<GameStart>{
    protected override void Awake(){
        EnterGame();
    }
    public void EnterGame() {
        EnterFightScene();
    }
    public void EnterFightScene() {
        GameObject mapPrefab = Resources.Load<GameObject>("Prefabs/Maps/Land");
        GameObject map = Instantiate(mapPrefab);
        map.AddComponent<GameManager>().InitGame();

        UIManager.Instance.ShowUIView("Canvas");
    }
}

打开GameManager.cs脚本

using System.Collections.Generic;
using UnityEngine;
public class GameManager : GameRoot{
    [HideInInspector]
    public InfoSystem infoSys;
    #region 41资源框架
    public GameObject player = null;
    public List<GameObject> monsters = new List<GameObject>();
    #endregion
    protected override void Awake(){
        infoSys = gameObject.AddComponent<InfoSystem>();
        infoSys.Init();
    }
    #region 41资源框架
    public void InitGame(){
        //后续放任务系对话Npc
        //TODO
        //放我们的角色
        GameObject playerPrefab = Resources.Load<GameObject>("Prefabs/Players/PlayerNormal");
        GameObject player = Instantiate(playerPrefab, new Vector3(-18f, 43, 0f), Quaternion.identity);
        player.name = "PlayerNormal";
        //end
        //放我们的怪物
        GameObject loadedMonsterKing = Resources.Load<GameObject>("Prefabs/Monsters/Boss01");
        GameObject boss01 = Instantiate(loadedMonsterKing, new Vector3(0f, 45, 0f), Quaternion.identity);
        boss01.name = "Boss01";
        monsters.Add(boss01);
        //end
    }
    #endregion
}

保存后运行项目

本章做了重构资源加载框架 后续按照框架的思想继续制作项目

下篇文章的内容:

1.Boss的有限状态机

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

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值