unity3d用的人挺多。

。本来想写个3d游戏试试。

。额。。貌似挺麻烦。。 。

。。

。。先用unity写个简单的2d游戏吧。。

(adsw回车  或者  触摸屏虚拟摇杆)

开发环境 unity4.5.1f3      vs2013 express       win8.1

实现方法例如以下

1.创建自己的坦克Sprite

2.创建敌方坦克Prefab

3.创建子弹Prefab

4.加入虚拟摇杆

5.碰撞检測

详细实现

1.控制自己坦克的代码

		if (Input.GetKey (KeyCode.W)) {
Rotate (0);
}
else if (Input.GetKey (KeyCode.S)) {
Rotate (180);
} else if (Input.GetKey (KeyCode.A)) {
Rotate (90); } else if (Input.GetKey (KeyCode.D)) {
Rotate (270);
} i++;
if (i == 10) {i=0;
if (Input.GetKey (KeyCode.Return)||rotateJoystick.tapCount > 0) {
m.tag = "GOOD";
Instantiate (m, transform.position, transform.rotation);
}
}

2.控制地方坦克的代码

		if (step == 0)
{
int i=Random.Range(0, 4);
Rotate(angles[i]);
step = Random.Range(0, 20) + 85;
if(Random.Range(0,50)>40)
{
m.tag="BAD";
Instantiate(m, transform.position, transform.rotation);
}
}
else
{
step--;
}
transform.Translate (Vector3.up*Time.deltaTime*4);

3.控制子弹移动

transform.Translate (Vector3.up * Time.deltaTime * 10);

4.虚拟摇杆用的Untiy   里面  Standard Assets(Mobile).unityPackage自带的

5.碰撞检測代码

	void OnTriggerEnter2D(Collider2D mCollider)
{
if ((mCollider.gameObject.tag == "Enemy"&&gameObject.tag=="GOOD")||(mCollider.gameObject.tag == "Player"&&gameObject.tag=="BAD"))
{
Destroy(mCollider.gameObject);
Destroy(this.gameObject);
if(gameObject.tag=="BAD")
{
PlayerPrefs.SetString("key","OVER");
Application.LoadLevel(1);
}
}
}

代码下载:http://download.csdn.net/detail/xiaoxiao108/7674235





假设你发现有什么不合理的,须要改进的地方,请留言。或者能够通过 328452421@qq.com 联系我。很感谢。

unity + win8.1 apps 小游戏demo的更多相关文章

  1. 微信小游戏 demo 飞机大战 代码分析(四)(enemy.js, bullet.js, index.js)

    微信小游戏 demo 飞机大战 代码分析(四)(enemy.js, bullet.js, index.js) 微信小游戏 demo 飞机大战 代码分析(一)(main.js) 微信小游戏 demo 飞 ...

  2. 微信小游戏 demo 飞机大战 代码分析 (三)(spirit.js, animation.js)

    微信小游戏 demo 飞机大战 代码分析(三)(spirit.js, animation.js) 微信小游戏 demo 飞机大战 代码分析(一)(main.js) 微信小游戏 demo 飞机大战 代码 ...

  3. 微信小游戏 demo 飞机大战 代码分析 (二)(databus.js)

    微信小游戏 demo 飞机大战 代码分析(二)(databus.js) 微信小游戏 demo 飞机大战 代码分析(一)(main.js) 微信小游戏 demo 飞机大战 代码分析(三)(spirit. ...

  4. 微信小游戏 demo 飞机大战 代码分析 (一)(game.js, main.js)

    微信小游戏 demo 飞机大战 代码分析(一)(main.js) 微信小游戏 demo 飞机大战 代码分析(二)(databus.js) 微信小游戏 demo 飞机大战 代码分析(三)(spirit. ...

  5. Unity手撸2048小游戏——模块拆分

    最近惹女票生气了,想起撸个游戏来哄哄她,加之以前在小恩爱App上,玩过那情侣版的2048,加之她喜欢玩这类益智类的游戏,打算撸一个3D的情侣版2048.不过之前没怎么独立做过游戏,就从2D的开始吧. ...

  6. Unity手撸2048小游戏——自动生成4*4棋盘

    1.新建文件夹,命prefabs,将刚刚做成的Chessman拖入该文件下,做成预制体 2.删除panel下的Chessman 3.在panel下,新建一个空对象,命名为Chessboard,大小设置 ...

  7. Python2048小游戏demo

    # -*- coding:UTF-8 -*- #! /usr/bin/python3 import random v = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, ...

  8. Unity手撸2048小游戏——背景文字控制

    今天继续昨天的计划吧 1.新建项目.场景命名啥的都不说了吧. 2.直接开始新建一个Image,顺便把Image改名成Chessman 3.选中Image新建一个Text对象,调整下大小位置.这样就算完 ...

  9. 学习unity的第一个小游戏(Roll the ball)的笔记

    1.摄像机的跟随运动,逻辑就是保持摄像机跟主角的距离不变(Undate()函数). offset=trandform.position-player.position. Undate() { tran ...

随机推荐

  1. [Python] 错误“IndentationError: unindent does not match any outer indentation level”是什么意思?

    文本没有对齐,建议打开文本编辑器的Tab显示(我用的Editplus是视图->空白->制表符),看缩进是否合理,调整一致就好了.

  2. nginx学习笔记(四)-----日志切割脚本及定时任务

    一.日志切割脚本 #!/bin/sh #nginx目录 BASE_DIR=/usr/local/nginx #生成的日志 BASE_FILE_NAME=jonychen.access.log CURR ...

  3. 在AE10.1环境下调试其他版本的程序

    不同人的可能使用的开发环境不一样,使用SDK版本也不一样,比如用ArcEngine9.3开发的程序在ArcEngine10.1下就不能运行,需要重新调试,才能运行. 这里的例子程序是其他网友在ArcE ...

  4. ZH奶酪:JavaScript中的JSON.stringify() and JSON.parse()

    JSON.stringify() JSON.stringify()可以将任意的JavaScript值序列化成JSON字符串. 语法 JSON.stringify(value[, replacer [, ...

  5. JSTL详解(二)

    JSTL详解(二) 在JSTL中,一般用途的标签只要是指具有输出,设置变量,和错误处理等功能的标签,他们在jsp中使用很频繁,它们有: l         <c:out> l        ...

  6. php之快速入门学习-7(运算符)

    PHP 运算符 本章节我们将讨论 PHP 中不同运算符的应用. 在 PHP 中,赋值运算符 = 用于给变量赋值. 在 PHP 中,算术运算符 + 用于把值加在一起. PHP 算术运算符 运算符 名称 ...

  7. MySQL 设置慢查询为200ms

    1:查看当前版本并设置long_query_time为0.2 mysql> select version(); +------------+ | version() | +----------- ...

  8. mysql 创建表单

    1.表名:Customer 属性: ID   字符型  最大10个字符   ——顾客编号 NAME   字符型  最大16个字符   ——顾客姓名 SEX     字符型  最大2个字符   ——性别 ...

  9. java 实现文本格式转换

    代码如下,不太规范,仅作学习用 import java.io.*; public class CharSetTest { public static void main(String[] args) ...

  10. 【转】ubuntu如何修改/添加/删除硬盘分区的挂载(点)?

    我(macroliu)的问题:安装ubuntu时,/home单独挂载在一个分区,此后我想调整分区大小,删除了/home对应的分区以及另外几个分区,导致开机时找不到挂载点.把硬盘空闲空间分好区后,想把1 ...