iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Unity如何实现射击小游戏
  • 234
分享到

Unity如何实现射击小游戏

2023-06-29 13:06:53 234人浏览 独家记忆
摘要

这篇文章主要为大家展示了“Unity如何实现射击小游戏”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Unity如何实现射击小游戏”这篇文章吧。游戏画面展示这款小游戏只用了两个UI界面,一个是菜单

这篇文章主要为大家展示了“Unity如何实现射击小游戏”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Unity如何实现射击小游戏”这篇文章吧。

游戏画面展示

这款小游戏只用了两个UI界面,一个是菜单界面,另一个是战斗界面

菜单界面有三种模式,分别是一般、困难和地狱

战斗界面就是很简单的从两边刷野怪,然后主角开枪打死他们

UI搭建很简单,只有一张背景图使用Image,加上一个Text文本输入框,然后摆放一下位置即可!

菜单界面如下

Unity如何实现射击小游戏

战斗画面演示

Unity如何实现射击小游戏

游戏代码解析

这款横版2D射击小游戏,核心部分只需要 两个脚本 就可以完成,一学就会,一起来看一下代码吧!

一个挂载到玩家身上的脚本PlayerMove,用于控制玩家的左右移动和跳跃

还有两种开枪的方法,分别是穿透和重击!当碰到怪物的时候就会掉血

当玩家血量低于0 的时候就跳出 游戏结束 的画面,非常简单清晰的逻辑!

代码如下,一个没有多少行,代码内容也是Unity最基础的知识点,相信稍微懂一点的人也都能看懂

PlayerMove代码如下

using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class PlayerMove : MonoBehaviour {    /// <summary>    /// 生命值    /// </summary>    public int HP;    public Slider hpUI;    /// <summary>    /// 动画组建    /// </summary>    public Animator _animator;    /// <summary>    /// 击杀    /// </summary>    public static int jisha;    public Text jishaUI;    public Text jishaUIEnd;    /// <summary>    /// 是否跳跃    /// </summary>    public bool isJump;    /// <summary>    /// 游戏结束UI    /// </summary>    public GameObject ui;    // Use this for initialization    void Start ()    {        Time.timeScale = 1;        jisha = 0;        hpUI.maxValue = HP;        hpUI.value = HP;    }// Update is called once per framevoid Update ()    {        if (Input.GeTKEyDown (KeyCode.Escape))        {            UnityEngine.SceneManagement.SceneManager.LoadScene("Menu");        }        if (HP <= 0)        {            HP = 0;        }        jishaUI.text = "击杀:" + jisha;        jishaUIEnd.text = "击杀:" + jisha;        if (HP == 0)        {            ui.SetActive(true);            Time.timeScale = 0;        }        hpUI.transfORM.position = Camera.main.WorldToScreenPoint(transform.position + new Vector3(0, 3, 0));        hpUI.value = HP;        if (Input.GetKey (KeyCode.D))        {            transform.localEulerAngles = new Vector3(0, 0, 0);            transform.Translate(Vector3.right * Time.deltaTime * 7);            _animator.SetBool("run", true);        }        else if (Input.GetKey(KeyCode.A))        {            transform.localEulerAngles = new Vector3(0, 180, 0);            transform.Translate(Vector3.right * Time.deltaTime * 7);            _animator.SetBool("run", true);        }        else        {            _animator.SetBool("run", false);        }        if (Input.GetKeyDown (KeyCode.Space) && !isJump)        {            GetComponent<Rigidbody2D>().velocity = new Vector2(0, 30);        }        if (isJump)        {            _animator.SetBool("Jump", true);        }        else        {            _animator.SetBool("Jump", false);        }        if (Input.GetKeyDown (KeyCode.J))        {            GameObject n = Instantiate(Resources.Load("a1"), transform.GetChild(0).position, transform.GetChild(0).rotation) as GameObject;            n.name = "a1";            Destroy(n, 2);        }        if (Input.GetKeyDown(KeyCode.K))        {            GameObject n = Instantiate(Resources.Load("a2"), transform.GetChild(0).position, transform.GetChild(0).rotation) as GameObject;            n.name = "a2";            Destroy(n, 2);        }    }    private void OnTriggerStay2D(Collider2D collision)    {        if (collision.name == "0")        {            isJump = false;        }    }    private void OnTriggerExit2D(Collider2D collision)    {        if (collision.name == "0")        {            isJump = true;        }    }    public void ReturnMenu()    {        UnityEngine.SceneManagement.SceneManager.LoadScene("Menu");    }}

还有一个Monster脚本,用于显示怪物的生命、速度和攻击力等

还有受到玩家打出的子弹就会掉血,很简单的方法就可以实现!

完整代码如下:

using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class Monster : MonoBehaviour {    /// <summary>    /// 生命    /// </summary>    public int HP;    /// <summary>    /// 速度    /// </summary>    public float speed;    /// <summary>    /// 攻击力    /// </summary>    public int att;    public Slider hpUI;// Use this for initializationvoid Start ()    {        speed = Random.RandomRange(speed - 2, speed + 2);        Destroy(gameObject, 10);        GameObject n = Instantiate(Resources.Load("HP")) as GameObject;        n.transform.SetParent(GameObject.Find("HPShow").transform);        n.transform.localScale = Vector3.one;        hpUI = n.GetComponent<Slider>();        hpUI.maxValue = HP;        hpUI.value = HP;}// Update is called once per framevoid Update ()    {        if (HP <= 0)        {            HP = 0;            PlayerMove.jisha++;            Destroy(gameObject);        }        hpUI.transform.position = Camera.main.WorldToScreenPoint(transform.position + new Vector3 (0, 6, 0));        hpUI.value = HP;        transform.Translate(Vector3.right * Time.deltaTime * speed);    }    private void OnTriggerEnter2D(Collider2D collision)    {        //撞到玩家生命值        if (collision.name == "Player")        {            collision.GetComponent<PlayerMove>().HP -= Random.RandomRange(att - 2, att + 2);            Destroy(gameObject);        }        //红色子弹伤害低,能够连续穿透射击多个目标        if (collision.name == "a1")        {            HP -= Random.RandomRange(8, 15);        }        //红色子弹伤害高,只能击中一个目标        if (collision.name == "a2")        {            HP -= Random.RandomRange(20, 40);            Destroy(collision.gameObject);        }    }    private void OnDestroy()    {        Destroy(hpUI.gameObject);    }}

游戏打包

这个小游戏只需要上面两个脚本差不多就算是完成了,然后还可以打包出来到电脑上面玩!

打包这个游戏也很简单,只需要在Build下将下面几个场景添加进去直接Build就好啦!

Unity如何实现射击小游戏

打包出来的文件夹是这个样子的,然后点击.exe文件就可以直接在电脑上玩了!

Unity如何实现射击小游戏

以上是“Unity如何实现射击小游戏”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: Unity如何实现射击小游戏

本文链接: https://www.lsjlt.com/news/325074.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Unity如何实现射击小游戏
    这篇文章主要为大家展示了“Unity如何实现射击小游戏”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Unity如何实现射击小游戏”这篇文章吧。游戏画面展示这款小游戏只用了两个UI界面,一个是菜单...
    99+
    2023-06-29
  • Unity游戏开发之射击小游戏的实现
    目录前言游戏画面展示游戏代码解析游戏打包总结前言 人们一直都说学习和玩游戏不能兼顾,那我们就来边学习怎样制作游戏,边玩游戏 不就兼得了嘛~ 我可真是一个小天才呢~ 所以本篇文章为大家...
    99+
    2024-04-02
  • Unity实现3D射箭小游戏
    Unity 小游戏:3D射箭,供大家参考,具体内容如下 前两周因为实训太忙,再加上自己对老师所讲的设计模式并不是很理解,所以就没有写博客。这次博客是记录3D射箭游戏的实现过程。 1....
    99+
    2024-04-02
  • 如何用CocosCreator实现射击小游戏
    分析下制作步骤: 1. 准备好资源,搭建场景 资源的话可以自己到网上找,也可以直接用我的也行;创建好相应文件夹,把资源放到res文件夹下; 搭建场景: 第一步:创建一个单色精灵(Sc...
    99+
    2024-04-02
  • Unity怎么实现3D射箭小游戏
    这篇文章主要介绍Unity怎么实现3D射箭小游戏,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Unity 小游戏:3D射箭前两周因为实训太忙,再加上自己对老师所讲的设计模式并不是很理解,所以就没有写博客。这次博客是记...
    99+
    2023-06-14
  • Python+Pygame如何实现简单的射击小游戏
    本文小编为大家详细介绍“Python+Pygame如何实现简单的射击小游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python+Pygame如何实现简单的射击小游戏”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知...
    99+
    2023-06-30
  • Python如何实现射击闯关游戏
    本文小编为大家详细介绍“Python如何实现射击闯关游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python如何实现射击闯关游戏”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。项目功能地图编辑器:可以实现玩...
    99+
    2023-07-04
  • 怎么使用CocosCreator实现射击小游戏
    这篇文章主要介绍怎么使用CocosCreator实现射击小游戏,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!分析下制作步骤:1. 准备好资源,搭建场景资源的话可以自己到网上找,也可以直接用我的也行;创建好相应文件夹,...
    99+
    2023-06-14
  • Python+Pygame实现简单的射击小游戏
    目录前言一、运行环境二、代码展示​三、效果展示1)游戏界面2)击中效果3)+3分前言 哈喽!哈喽。栗子上线啦~ 要说什么游戏能够获得大家的喜爱? 唯射击游戏莫属。此前大火手游的《刺激...
    99+
    2024-04-02
  • 基于Python怎么实现射击小游戏
    本文小编为大家详细介绍“基于Python怎么实现射击小游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“基于Python怎么实现射击小游戏”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.游戏画面1.1开始1....
    99+
    2023-06-29
  • 基于Python实现射击小游戏的制作
    目录1.游戏画面1.1开始1.2射击怪物2.涉及知识点3.代码3.1发射声3.2背景3.3射击效果4.经验总结1.游戏画面 1.1开始 1.2射击怪物 2.涉及知识点 1.spr...
    99+
    2024-04-02
  • Unity如何实现炸弹人游戏
    这篇文章给大家分享的是有关Unity如何实现炸弹人游戏的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言来看一下炸弹人小游戏的效果吧!制作思路老规矩,做之前我们先来整一下做这个小游戏的思路 让我们动一下脑袋瓜想一...
    99+
    2023-06-29
  • Unity怎么实现3D迷宫小游戏
    这篇文章主要介绍了Unity怎么实现3D迷宫小游戏的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Unity怎么实现3D迷宫小游戏文章都会有所收获,下面我们一起来看看吧。一、前言闲来无事,从零开始整个《3D迷宫》...
    99+
    2023-06-29
  • Python3+Pygame实现射击游戏完整代码
    目录一、游戏特点二、运行效果展示三、完整代码四、运行方式之前看到过很多人写的飞机大战,当然了之前我也写过多个版本,总体来说功能是实现了,但总感觉不够“炫” 今天浏览Python资料的...
    99+
    2024-04-02
  • 如何进行Unity中FlyPin见缝插针小游戏的实现
    本篇文章为大家展示了如何进行Unity中FlyPin见缝插针小游戏的实现,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、简单介绍Unity 游戏实例开发集合,使用简单易懂的方式,讲解常见游戏的开发...
    99+
    2023-06-26
  • Unity游戏开发之2048游戏的实现
    目录一、前言二、游戏开发知识储备2-1技术栈三、休闲类游戏《2048》开发实战3-1玩法概述3-2实现分析3-3搭建场景3-4实现代码一、前言 写今天这篇文章的缘由,其实是来自于前段...
    99+
    2024-04-02
  • Unity实现打砖块游戏
    本文实例为大家分享了Unity实现打砖块游戏的具体代码,供大家参考,具体内容如下 效果演示 1.创建墙 1.1我们用预制体来统一管理墙 方便以后对墙进行修改 1.2我们还需要给砖...
    99+
    2024-04-02
  • 使用Python3怎么实现一个射击游戏
    今天就跟大家聊聊有关使用Python3怎么实现一个射击游戏,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。from __future__ import d...
    99+
    2023-06-14
  • Python开发之射击闯关游戏的实现
    目录项目功能地图编辑器游戏主运行程序部分游戏截图项目功能 地图编辑器:可以实现玩家自己定义每一关卡的样式和难易程度 运行界面:实现了玩家的移动,跳跃,发射子弹,投掷手雷,以及敌人的A...
    99+
    2023-01-14
    Python实现射击闯关游戏 Python射击闯关游戏 Python射击游戏
  • 使用canvas怎么实现一个飞机打怪兽射击小游戏
    使用canvas怎么实现一个飞机打怪兽射击小游戏?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。游戏规则要求玩家控制飞机发射子弹,消灭会移动的怪兽,如果全部消灭了则游戏成功,如果...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作