Unity3D学习记录——飞盘射击游戏3

本文记录了Unity3D中制作的一款飞盘射击游戏的开发过程,包括游戏界面展示、ShooterWeapon组件中整合的分数计算与计时器功能,以及游戏中克隆盘子的控制方法调整,确保游戏开始前不会自动克隆盘子。
摘要由CSDN通过智能技术生成

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>(); //获取总
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值