初学unity, 通过查阅资料以及自己的一些见解完成了自己做的第一款游戏.
现在把代码分享出来, 仅供参考,不足之处还请指正。
游戏中有三个场景,主要用到六个c#脚本:
脚本 | 作用 |
---|---|
buttonClick.cs | 控制游戏中所有的按钮 |
appearFruits.cs | 控制所有水果出现 |
cutFruit.cs | 判断水果被切以及产生其他对象 |
knife.cs | 控制切水果的的刀痕轨迹 |
scoreManager.cs | 控制分数面板的脚本 |
healthManager.cs | 控制玩家的生命值 |
场景介绍:
StartScence:
PlayScence:
OverScence:
接下来开始逐个介绍脚本:
一. buttonClick.cs
该脚本需要控制游戏中所有的按钮,其中包括:
1. 场景跳转的按钮
2. 控制音乐播放的按钮
按钮通过NGUI的OnClick()函数触发的:
代码:
using UnityEngine;
using System.Collections;
public class ButtonClick : MonoBehaviour {
public Sprite png1, png2; // 静音时的贴图,与播放时的贴图
private SpriteRenderer spr;
private bool flag; //flag判断是否播放音乐
private AudioSource bgm;
void Start()
{
spr = GetComponent<SpriteRenderer>();
bgm = GetComponent<AudioSource>();
flag = true;
}
void OnClick() //通过按钮Gameobject的名字判断是哪个按钮被点击
{
if (name == "playScence") //play按钮切换到开始场景
Application.LoadLevel("play");
else if (name == "sound") //音量按钮只需切换 SpriteRenderer组件中的贴图即可
{
if (flag)
{
spr.sprite = png2;
bgm.Stop();
}
else
{
bgm.Play();
spr.sprite = png1;
}
flag = !flag;
}
else if (name == "main") //回主界面按钮
Application.LoadLevel("StartScence");
else
Application.OpenURL("http://blog.csdn.net/axuan_k");
}
}