【Unitydemo制作】音游制作—模式玩法的实现

在这里插入图片描述


👨‍💻个人主页:@元宇宙-秩沅

👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

👨‍💻 本文由 秩沅 原创
👨‍💻 收录于专栏:就业宝典

🅰️推荐专栏

⭐-软件设计师高频考点大全



文章目录

    • 前言
    • 🎶(==3==) 选择模式面板逻辑
    • 🎶(==4==) 关卡模式面板逻辑
    • 🎶(==5==) 五个关卡场景逻辑
    • 🎶(==6==) 生存模式面板逻辑
    • 🅰️


前言



🎶(3 选择模式面板逻辑


在这里插入图片描述

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//-------------------------------
//-------功能: 模式选择面板
//-------创建者:         -------
//------------------------------public class SelectPanel : BasePanel 
{// Start is called before the first frame updatevoid Start(){AllEvent();}// Update is called once per framevoid Update(){}public void AllEvent(){GetControl<Button>("Button1").onClick.AddListener(() => {UIManager.GetInstance().RemovePanel ("SelectPanel");//移除背景面板   UIManager.GetInstance().ShowPanel<LevelsMPanel>("LevelsMPanel"); //加载关卡模式选择面板     });GetControl<Button>("Button2").onClick.AddListener(()=> {UIManager.GetInstance().RemovePanel("SelectPanel");//移除背景面板   UIManager.GetInstance().ShowPanel<EndlessMPanel>("EndlessMPanel"); //加载生存模式选择面板     });GetControl<Button>("Button3").onClick.AddListener(()=> {UIManager.GetInstance().RemovePanel("SelectPanel");//移除背景面板   UIManager.GetInstance().ShowPanel<FreeMPanel>("FreeMPanel"); //加载自由模式选择面板     });}
}

🎶(4 关卡模式面板逻辑


  • 一共有五个关卡。每一个关卡的场景都不一样,并且音符下落的速度也不一样
    在这里插入图片描述
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;//-------------------------------
//-------功能:关卡模式面板         
//-------创建者:         -------
//------------------------------public class LevelsMPanel : BasePanel
{public Text hight;void Start(){hight.text = DataContorl.GetInstance().foreverPalyerdata.AllScore .ToString(); //更新最高分AllEnvent();}// Update is called once per framevoid Update(){}public void AllEnvent(){//关卡按钮逻辑GetControl<Button>("level1").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除此面板   DataContorl.GetInstance().levelGame = true; //进入关卡模式SceneManager.LoadScene(1);});GetControl<Button>("level2").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除此面板   DataContorl.GetInstance().levelGame = true;SceneManager.LoadScene(2);});GetControl<Button>("level3").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除此面板   DataContorl.GetInstance().levelGame = true;SceneManager.LoadScene(3);});GetControl<Button>("level4").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除此面板   DataContorl.GetInstance().levelGame = true;SceneManager.LoadScene(4);});GetControl<Button>("level5").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除此面板   DataContorl.GetInstance().levelGame = true;SceneManager.LoadScene(5);});GetControl<Button>("Back").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除背景面板   UIManager.GetInstance().ShowPanel<SelectPanel>("SelectPanel"); //加载模式选择面板});GetControl<Button>("rank").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除背景面板   UIManager.GetInstance().ShowPanel<RankPanel1>("RankPanel1"); //加载模式选择面板});}
}

🎶(5 五个关卡场景逻辑


  • level1 ——下落的速度为3

在这里插入图片描述

在这里插入图片描述

  • level2——下落的速度为5
    在这里插入图片描述
    在这里插入图片描述
  • level3——下落的速度为8
    在这里插入图片描述

在这里插入图片描述

  • level4——下落的速度为10
    在这里插入图片描述
    在这里插入图片描述

  • level5——下落的速度为12

在这里插入图片描述
在这里插入图片描述


🎶(6 生存模式面板逻辑


  • 生存模式中的音符下降速度会越来越快

在这里插入图片描述

  • 生存模式场景
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;//-------------------------------
//-------功能: 生存模式面板
//-------创建者:         -------
//------------------------------public class FreeMPanel : BasePanel
{public Text hight;public Text speed;public Slider slider;public AudioClip[] audioClips = new AudioClip[5];public Dropdown dropdown;//下拉列表void Start(){for (int i = 0; i < audioClips.Length; i++){DataContorl.GetInstance().audioClip[i] = audioClips[i];}hight.text  = DataContorl.GetInstance().foreverPalyerdata.livingScore.ToString();AllEvent();}void Update(){DataContorl.GetInstance().index = dropdown.value; //获取下拉列表的值Debug.Log(dropdown.value);speed.text  = (slider.value*15) .ToString ();  //速度实时更新(最大设置为15)DataContorl.GetInstance().speed = slider.value * 15;  //设置速度}public void AllEvent(){//给返回按钮添加逻辑GetControl<Button>("Back").onClick.AddListener(() => {UIManager.GetInstance().RemovePanel("FreeMPanel");//移除背景面板   UIManager.GetInstance().ShowPanel<SelectPanel>("SelectPanel"); //加载模式选择面板});//给开始按钮添加逻辑GetControl<Button>("Start").onClick.AddListener(() => {UIManager.GetInstance().RemovePanel("FreeMPanel");//移除此面板   DataContorl.GetInstance().livingGame = true;SceneManager.LoadScene(6);});GetControl<Button>("rank").onClick.AddListener(() =>{UIManager.GetInstance().RemovePanel("LevelsMPanel");//移除背景面板   UIManager.GetInstance().ShowPanel<RankPanel2>("RankPanel2"); //加载模式选择面板});}
}

🅰️


⭐【Unityc#专题篇】之c#进阶篇】

⭐【Unityc#专题篇】之c#核心篇】

⭐【Unityc#专题篇】之c#基础篇】

⭐【Unity-c#专题篇】之c#入门篇】

【Unityc#专题篇】—进阶章题单实践练习

⭐【Unityc#专题篇】—基础章题单实践练习

【Unityc#专题篇】—核心章题单实践练习


你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!


在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/15065.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在Spring中配置Bean?

在Spring框架中配置Bean&#xff0c;主要有以下几种方式&#xff1a; XML配置文件注解配置Java配置类 1. XML配置文件 早期的Spring版本广泛使用XML配置文件来定义和配置Bean。在XML中&#xff0c;可以通过 <bean> 标签定义Bean&#xff0c;指定其类、唯一标识符&…

代码随想录算法训练营第十四天(py)| 二叉树 | 递归遍历、迭代遍历、统一迭代

1 理论基础 1.1 二叉树的种类 满二叉树 只有度为0和2的节点&#xff0c;且度为0的节点在同一层。 深度为k&#xff0c;有2^k-1个节点 完全二叉树 除了最底层可能没填满&#xff0c;其余每层节点数都达到最大。并且最底层节点全部集中在左边。 二叉搜索树 是一个有数值…

使用Python将Word文档中的图片提取并生成PowerPoint幻灯片

在这篇博客中&#xff0c;我们将学习如何使用Python将Word文档中的图片提取出来并生成一个PowerPoint幻灯片。我们将借助wxPython、python-docx和python-pptx这三个强大的库来实现这一目标。以下是实现这个功能的完整过程。 C:\pythoncode\new\wordTOppt.py 所需库 首先&…

htb_FormulaX(XSS)

信息收集 常规信息收集 nmap -sV -sC 10.10.11.6开放22&#xff0c;80端口 gobuster dir -u http://10.10.11.6/ -w /usr/share/Seclists-master/Discovery/Web-Content/directory-list-2.3-medium.txt一无所获 80端口-web 注册账户 Chat Now 和 Contact Us是重点 Chat …

台湾省军事演习路径规划:A*算法在复杂地形中的应用

❤️❤️❤️ 欢迎来到我的博客。希望您能在这里找到既有价值又有趣的内容&#xff0c;和我一起探索、学习和成长。欢迎评论区畅所欲言、享受知识的乐趣&#xff01; 推荐&#xff1a;数据分析螺丝钉的首页 格物致知 终身学习 期待您的关注 导航&#xff1a; LeetCode解锁100…

【全开源】分类记账小程序系统源码(ThinkPHP+FastAdmin+UniApp)

基于ThinkPHPFastAdminUniAppvk-uView-uiVue3.0开发的一款支持多人协作的记账本小程序&#xff0c;可用于家庭&#xff0c;团队&#xff0c;组织以及个人的日常收支情况记录&#xff0c;支持周月年度统计。 &#xff1a;智能管理您的财务生活 一、引言&#xff1a;财务智能化…

代码的命名规则

单词简写 单词超长的可简写、代码内常见的可简写 方法 均小写&#xff0c;用下划线分割&#xff0c;文件名_动作_属性_子属性_子属性的子属性 例如&#xff1a;uart_open、uart_write、uart_read_remaining、uart_change_baudrate、uart_get_xxx、uart_is_xxx、uart_wait_do…

HTTP 错误 404.3 - Not Found 问题处理

问题描述 HTTP 错误 404.3 - Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本&#xff0c;请添加处理程序。如果应下载文件&#xff0c;请添加 MIME 映射。 解决对策

如何网页在线编辑 Office word 文档,并支域功能:创建域/插入域/替换域等

在日常在线办公场景中&#xff0c;我们经常会遇到一些复杂的文档编辑需求&#xff0c;特别是我们经常会遇到一些复杂的数学公式&#xff0c;会用到“域”功能&#xff0c;“域”功能便是一个高级且实用的工具。通过设置域&#xff0c;用户可以实现文档的自动化处理&#xff0c;…

【QT实战】汇总导航

✨Welcome 大家好&#xff0c;欢迎来到瑾芳玉洁的博客&#xff01; &#x1f611;励志开源分享诗和代码&#xff0c;三餐却无汤&#xff0c;顿顿都被噎。 &#x1f62d;有幸结识那个值得被认真、被珍惜、被捧在手掌心的女孩&#xff0c;不出意外被敷衍、被唾弃、被埋在了垃圾堆…

捕捉二氧化碳也能赚钱?深入探索CCUS技术与商业前景

引言 随着全球变暖和气候变化的加剧&#xff0c;如何有效减少二氧化碳&#xff08;CO2&#xff09;排放成为各国亟待解决的问题。近日&#xff0c;全球最大的二氧化碳捕集工厂在冰岛正式运营&#xff0c;这一消息引起了广泛关注。本文将深入探讨捕集二氧化碳技术&#xff08;C…

【负载均衡在线OJ项目日记】引入网络库和客户端用户路由功能

目录 引入cpp-httplib库 将编译与运行服务打包 代码 客户端用户路由功能 采用MVC结构进行设计 用户路由功能 路由功能代码 引入cpp-httplib库 对于后端编译与运行模块基本已经设计完成&#xff0c;最后用户是通过网络传递代码等信息&#xff1b;我们就要将这个模块引入…

跟TED演讲学英文:Bring on the learning revolution! by Sir Ken Robinson

Bring on the learning revolution! Link: https://www.ted.com/talks/sir_ken_robinson_bring_on_the_learning_revolution Speaker: Sir Ken Robinson Date: February 2010 文章目录 Bring on the learning revolution!IntroductionVocabularySummaryTranscriptAfterword I…

基于 BERT 对 IMDB 电影评论进行情感分类

前言 系列专栏:【深度学习&#xff1a;算法项目实战】✨︎ 涉及医疗健康、财经金融、商业零售、食品饮料、运动健身、交通运输、环境科学、社交媒体以及文本和图像处理等诸多领域&#xff0c;讨论了各种复杂的深度神经网络思想&#xff0c;如卷积神经网络、循环神经网络、生成对…

# AI产品经理的自我修养:既懂用户,更懂技术!

今天上班的时候&#xff0c;发现很多AI社群都在讨论一篇播客《一个顶级AI产品经理的自我修养&#xff0c;对谈光年之外产品负责人Hidecloud》&#xff0c;这篇播客的嘉宾是光年之外的产品负责人——Hidecloud&#xff08;张涛&#xff09;&#xff0c;聊了许多关于他在做AI产品…

MySQL多表关联查询习题

一、素材 -- Active: 1714203732007127.0.0.13306db_stu -- 1.创建student和score表 CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR(20) , address VARCHAR(50) ); -- 创建…

Springboot中的微服务架构实践

Spring Boot中的微服务架构实践 在本文中&#xff0c;我们将分析微服务架构的关键概念及其在Spring Boot中的应用。然后&#xff0c;我们将演示如何构建微服务并将它们部署到云端或本地服务器。最后&#xff0c;我们将探索使用Spring Cloud和Netflix Eureka进行服务发现和配置…

Android遇到未处理的异常时干掉自己然后重新启动

Android遇到未处理的异常时干掉自己然后重新启动 安卓主线程遇到异常会死掉表现为直接闪退&#xff0c;如果只是添加了全局异常处理&#xff0c;主线程异常会表现为卡死此时则需要对活动进行重启处理* override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(sa…

【机器学习】机器学习基础概念与初步探索

❀机器学习 &#x1f4d2;1. 引言&#x1f4d2;2. 机器学习概述&#x1f4d2;3. 机器学习基础概念&#x1f389;2.1 机器学习的分类&#x1f389;2.2 数据预处理&#x1f308;数据清洗与整合&#x1f308; 特征选择和特征工程&#x1f308;数据标准化与归一化 &#x1f4d2;4. …

c#从数据库读取数据到datagridview

从已有的数据库读取数据显示到winform的datagridview控件&#xff0c;具体代码如下&#xff1a; //判断有无表 if (sqliteConn.State ConnectionState.Closed) sqliteConn.Open(); SQLiteCommand mDbCmd sqliteConn.CreateCommand(); m…