Unity3D 5.0简单的实现跳跃功能

这里是一个简单的跳跃,5.0和其他版本貌似不一样,并且,再起跳功能做的不完全。

不过一个基本的思路在这里。

首先,射线检测,这里是利用一个空对象,放到目前对象的下面

然后,在绑定主角的脚本文件上开始写脚本:

using UnityEngine;
using System.Collections;

public class move : MonoBehaviour {

	// Use this for initialization
	private bool grounded = false;
	private Transform groundcheck;
	private bool jump = false; //角色的跳起
	private Rigidbody2D hero;
	public float jumpy = 360f;
	public AudioClip jumpclips; //跳跃音频
	void Start () {
		groundcheck = transform.Find ("groundcheck");
		//hero = transform.Find ("pk_0");

	}

	// Update is called once per frame
	void Update () {
		if(Input.GetKey(KeyCode.W)){

			gameObject.transform.Translate(Vector3.up*5*Time.deltaTime);
		}
		if(Input.GetKey(KeyCode.S)){
			gameObject.transform.Translate(Vector3.down*5*Time.deltaTime);
		}
		if(Input.GetKey(KeyCode.A)){
			gameObject.transform.Translate(Vector3.left*5*Time.deltaTime);
		}
		if(Input.GetKey(KeyCode.D)){
			gameObject.transform.Translate(Vector3.right*5*Time.deltaTime);
		}
		//与地面接触为真,太能够进行跳跃
		grounded = Physics2D.Linecast (transform.position, groundcheck.transform.position);
		if(grounded && Input.GetKeyDown(KeyCode.J)){
			jump = true;

			//设置角色的起跳功能
			if(jump == true){
				AudioSource.PlayClipAtPoint(jumpclips,gameObject.transform.position);
				gameObject.GetComponent<Rigidbody2D>().AddForce(new Vector2(0f,jumpy));
				//hero.AddForce(new Vector2(0f,1000f));
				jump = false;
				grounded = false;
			}

		}
		Debug.DrawLine (transform.position, groundcheck.transform.position,Color.red,1f);
	}

}

  

时间: 2024-10-23 04:41:03

Unity3D 5.0简单的实现跳跃功能的相关文章

[ Unity3D]unity3d5.0简单的调用摄像头

Unity3D中新建一个工程,加一个Plane,新建一个C# 脚本,将这个脚本添加到Plane上,调用摄像头.(如果显示的图片居然是翻转的,Plane的Rotation 值就可以了) 以下是脚本内容: using UnityEngine; using System.Collections; public class C : MonoBehaviour { WebCamTexture webcamTexture; // Use this for initialization void Start

(六)Unity5.0新特性------新动画功能

?? unity 5.0 中的新动画功能 这里是你可以期待的新动画功能快速概述 ! State Machine Behaviours状态机行为 在Unity 5 中,你会能够将StateMachineBehaviour 脚本添加到您的states,当played状态时能接收callbacks回调: ?OnStateEnter ?OnStateUpdate ?OnStateExit ?OnStateMove ?OnStateIK 在你的状态,您可以创建尽可能多的StateMachineBehavi

Linux主机实现简单的路由转发功能

只要在Linux主机上添加一些简单的路由条目, 这些Linux主机就可以充当简单路由器的功能. 在实际生产坏境中, 当我们需要一台路由器简单作为转发数据, 但是手上却没有路由器的话, 我们就可以指定一台Linux主机充当一个简单的路由器,实现路由简单的转发. 上面所诉尤其强调简单, 所以说只是实现简单的路由的功能, 如果要实现非常复杂的功能的话, 一台Linux主机可能无法实现你想要的条件. 实验坏境: 基于VMware上的4台虚拟主机,主机名为R1.R2的两台主机(都是centos6.8系统)

独立完成的第一个c++面向对象程序(虽然很简单&#160;以后会增加功能)

一个简单的商品展示程序 功能如下: 1.输出一张商品表(嘻嘻 就这一个功能) 代码如下: #include<iostream> #include<string> using namespace std; class Goods { private: int amount; double price; string name; public: Goods(); int AddAmount(int); int LoseAmount(int); int SetGoods(int,doub

简单的购物商城功能

实现了简单的购物商城功能1.展现商品及价格2.商品加入购物车3.购物车商品显示及最终价格结算. fruit = {'Apple': 3, 'Pear': 2, 'Banana': 3, 'Lemon': 5, 'Watermelon': 4} books = {'语文': 4, '英语': 3, '数学': 5, '体育': 1} cart = {} # goods = [] print('水果如下价格:') print(fruit) print('课本价格如下:') print(books)

百度地图API制作类似 百度地图的路线导航界面并实现简单的路线规划功能

之前我们讲了怎么在百度地图上设置Marker(如A点..) 和弹出框(跟随Marker的,Marker移动的时候也是会跟着移动的),接着又觉得百度地图自带的放大缩小不(fei)是(chang)很(de)漂(chou)亮,我们自定义了放大缩小的控件,本篇我们将制作类似百度地图API制作类似百度地图的公交/驾车/行走/查询界面并实现简单的路线规划功能. 先来张截图:   这个界面的实现其实是使用的SlidingUpPanelLayout 开源库从而使得可以跟随手指下拉上划: 其实布局也没什么好讲的,

利用videoView创建播放器,实现展示视频列表和搜索sd卡功能 以及android6.0的动态授权等功能

最近无聊写了个播放器除了没实现解码功能大多的功能都实现了,主要是回顾一些android的知识点和andorid6.0的动态授权的学习. 1.android 6.0的动态授权问题. android 6.0后需要开发人员实现动态授权,不再像以前一样在mainfet的清单文件中加入权限就可以了,需要在代码中动态分配权限.如微信发送图片时候就需要访问图库,用户可以在setting里设置不能访问也可以设置为可以访问图库,以前的android系统在安装时候同意了后就一直可以访问图库否则就不能安装微信,现在的

完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能

#!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能'''try: a=int(raw_input("please input a number:"))except ValueError: print("第一个运算数字输入非数字") try: b=int(raw_input("please input another number:"))except Val

WCF学习之旅—WCF4.0中的简化配置功能(十五)

六 WCF4.0中的简化配置功能 WCF4.0为了简化服务配置,提供了默认的终结点.绑定和服务行为.也就是说,在开发WCF服务程序的时候,即使我们不提供显示的 服务终结点,WCF框架也能为我们的服务提供一些默认配置功能的服务终结点.当然也包含默认的绑定和默认的服务行为.这一切都是为了简化配置过程,避免一 些不必要的错误. 下面我们就来通过代码示例来体验一下WCF4.0提供简化配置的功能. (1)默认终结点 默认终结点(Default Endpoints)指的是,如果开发人员没有为服务显示配置服务