U3D小游戏愤怒的小鸟地图选则界面和部分逻辑
Posted 布小禅
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了U3D小游戏愤怒的小鸟地图选则界面和部分逻辑相关的知识,希望对你有一定的参考价值。
前言
自己做一下小时候玩的风靡一时的愤怒的小鸟这个游戏,相信有很多人都在某一段时间沉迷过这个游戏吧~~
1. 制作地图选择界面UI
把滴入关卡选择的UI简单制作一下。
1. 背景
首先我们先切换到地图选则的场景,我这里命名的是Level
。
我们制作一个背景,可以选择和游戏界面的背景一样,我就是,当然你也可以选择其他组合。
- 创建一个UI.Image作为我们的背景
- 将我们需要的背景拖拽或者选择到图片上
- 设置好大小
就像这样:
这样我们的背景就完成了
2. 地图关卡图片设置
在画布Canvas
下创建一个空对象,用于管理各个关卡。
然后随便命名吧,我命名为select
。
地图图集在Iamge文件夹下面,名字叫LEVELSELECTION_SHEET_4
。星星在同一个文件夹,名字叫LEVELSELECTION_SHEET_1
。
先点击图集,然后类型设置成Multiple
,然后点击Apply
确认设置,然后点击Sprite Editor
切割图集。
然后选择好哪个关卡就行了,做好一个,copy换贴图就可以了。
星星是这样的:
2. 界面部分逻辑
找到之前创建的空物体,然后挂在一个脚本组件,名字随意,你自己知道什么意思就行。
/**
* ==========================================
* FileName:#FileName#
* Author:#Name#
* CreatTime:#CreateTime#
* NowPath:#path#
* ==========================================
*/
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class SelectLevel : MonoBehaviour
public int leverSn = 1;//关卡序号
public Text levelStar;//关卡星星总个数
private bool isLock = false;//关卡是否解锁
private Text starNum;//关卡已获得星星个数
public int noLockStar = 0;//解锁关卡所需要的个数
private GameObject lockUI;
private GameObject starUI;
private void Start()
LevelSelect();
void LevelSelect()
if (leverSn == 1)
//如果是关卡1
starNum = transform.Find("level1/star/starNum").GetComponent<Text>();
lockUI = transform.Find("level1/lock").gameObject;
starUI = transform.Find("level1/star").gameObject;
isLock = true;
IsLock();
if (leverSn == 2)
//如果是关卡2
noLockStar = 10;
starNum = transform.Find("level2/star/starNum").GetComponent<Text>();
lockUI = transform.Find("level1/lock").gameObject;
starUI = transform.Find("level1/star").gameObject;
if (int.Parse(levelStar.text) > noLockStar)
isLock = true;
IsLock();
if (leverSn == 3)
//如果是关卡3
noLockStar = 20;
starNum = transform.Find("level3/star/starNum").GetComponent<Text>();
lockUI = transform.Find("level1/lock").gameObject;
starUI = transform.Find("level1/star").gameObject;
if (int.Parse(levelStar.text) > noLockStar)
isLock = true;
IsLock();
void IsLock()
//判断关卡是否解锁
if (isLock)
lockUI.SetActive(false);//锁消失
starUI.SetActive(true);//显示星星
先简单写一点吧,别的以后再写
结语
积少成多,聚沙成塔,每天走一点,在场的路也能走完。
以上是关于U3D小游戏愤怒的小鸟地图选则界面和部分逻辑的主要内容,如果未能解决你的问题,请参考以下文章