1.这是完善后带有页面逻辑的游戏,界面如下
2.在ShooterWeapon中集成了分数计算,和计时器,ShooterWeaponFather物体结构如下图
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ShooterWeapon : MonoBehaviour {
private Transform m_transform; //变换组件对象,用于指向-物理射线碰撞点
private static LineRenderer m_line; //线渲染器用于制作制作激光特效
public Transform m_weapontrans; //先创建了空物体,用于定位枪口位置,最终为激光亮点定位
private AudioSource m_shootaudio; //射击音效
private bool canmove = false; //用于游戏开始前让射击动作无法执行
private AudioSource m_background; //背景音频对象,使在游戏开始前不播放
private float timer = 10.0f; //用作游戏倒计时
private GUIText ui_timer; //用于游戏界面显示倒计时
private int score = 0; //用于计算得分
private GUIText ui_score; //作用是在游戏界面显示得分
private GUIText ui_totlescore; //总得分,在游戏结束后显示玩家本局游戏得分
private GameManager m_gamemanager; //自定义脚本名称类型的对象,用于获取脚本里的方法控制游戏界面
void Start () {
m_transform = gameObject.GetComponent<Transform>(); //获取Transform组件
m_line = GameObject.Find("Line").GetComponent<LineRenderer>(); //获取渲染后的游戏物体Line的LineRenderer组件
m_shootaudio = gameObject.GetComponent<AudioSource>(); //获取射击音效的AudioSource组件
m_background = Camera.main.gameObject.GetComponent<AudioSource>(); //获取背景音播放组件
m_background.enabled = false; //设置背景音默认关闭
ui_timer = GameObject.Find("Timer").GetComponent<GUIText>(); //获取计时器GUIText组件
ui_score = GameObject.Find("Score").GetComponent<GUIText>(); //获取分数GUIText组件
ui_totlescore = GameObject.Find("TotleScore").GetComponent<GUIText>(); //获取总