重磅来袭(90街机坦克大战unity制作)

本文介绍了使用Unity引擎重构90年代街机坦克大战游戏的过程,涉及坦克生成、子弹移动、爆炸特效、音效管理、敌方坦克控制、玩家选择及控制等多个关键脚本的实现,提供了部分源码,并邀请读者参与完善和交流。

进入游戏UI画面分为单双人模式,原滋原味还原
游戏事实画面
以下为源码,如有错误欢迎指教。
using UnityEngine;

///
/// 坦克生成复活脚本
///
public class Born : MonoBehaviour
{
[Header(“坦克生成特效脚本:补充代码,实现要求”)]

public GameObject playerPrefab;
public GameObject enemyPrefab;
public bool createPlayer;

void Start()
{
    Invoke("BornTank", 1f);
    Destroy(gameObject, 1);
}

private void BornTank()
{
    if (createPlayer)
    {
        Instantiate(playerPrefab, transform.position, Quaternion.identity);
    }
    else
    {
        Instantiate(enemyPrefab, transform.position, Quaternion.identity);
    }

}

}

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

///
/// 子弹移动脚本
///
public class Bullect : MonoBehaviour
{
public float moveSpeed = 10f;
public bool IsPlayerBullect = true;

void Update()
{
    transform.Translate(transform.up * moveSpeed * Time.deltaTime, Space.World);
}

private void OnTriggerEnter2D(Collider2D collision)
{
    switch (collision.tag)
    {
        case "Tank":
            if (!IsPlayerBullect)
            {
                collision.SendMessage("Die");
                Destroy(gameObject);
            }
            break;
        case "Heart":
            collision.SendMessage("Die");
            Destroy(gameObject);
            break;
        case "Enemy":
            if (IsPlayerBullect)
            {
                collision.SendMessage("Die");
                Destroy(gameObject);
            }
            break;
        case "Wall":
            Destroy(collision.gameObject);
            Destroy(gameObject);
            break;
        case "Barriar":
            Destroy(gameObject);
            break;
        case "Border":
            Destroy(gameObject);
            break;
        default:
            break;
    }
}

}

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

///
/// 爆炸特效
///
public class ExplosionA

前言: 作者系四川大学计算机科学系毕业,但是毕业后十几年都没有编过程序,干的工作有抄水电表,网管,销售工作,最近发现人渐渐老去,有心愿未了,于是最近跟着网络视频教学,学习了一下VC++和面向对象编程,就自已小时候最爱玩的坦克大战为练习,来熟悉和巩固对VC++的学习。 本作特点: 1. 可能是世界上最接近“坦克大战”原作的VC程序. 几乎99%相似模拟度。 2. 本作还特别包括“坦克90”加强版。 3. 即时存档,读档功能。 4. 即时回退,时光倒流功能。 5. 播放战斗录相功能。 6. 智能躲避敌方攻击的功能。(在演示状态) 7. 敌方坦克智能躲避工方攻击的功能。(在TANKE90模式) 8. 对Win7兼容性不好, 运行会变慢 9. 本作是精确到象素级的模拟原作了. 如何编译: 1. 运行VC6. 2. 用打开工作空间的方式, 打开Tank.dsw 3. 如编译出现Diretx方面的错,请下载directx8程序包http://115.com/file/clqzomlm#dx81sdk.zip 加入到你的VC6里面, 如何安装请查网上. 4. 根目录下有Tank.exe已经编译好的了, 你可以试一试, 360可能会误报, 但保证没有病毒. 不信你自已编译好后, 也可能会误报 后记: 本次放出的是DirectX版本, 如有其它问题请联系作者. 作者邮箱: romman@163.com 另外,还有一个CFrame版本,和一个WIN32版本,这两个版本效率不高,但兼容性好,有需要的联系。
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值