12 第1页 | 共2 页下一页
返回列表 发新帖
查看: 5239|回复: 12
打印 上一主题 下一主题

[经验分享] unity3d一个简单的对打游戏

[复制链接]

1557

主题

1

听众

1万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
454
精华
31

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2013-10-23 15:50:04 |只看该作者 |倒序浏览
我发现没有动画想做什么都不行噢~~~,这个动画还是一个大侠给我的,网上找了很多bip动作文件,但是转成FBX格式不行,好像是版本不一样的缘故。后来为了做进度条我之前学了一下EZGUI,但是没有得到想要的效果,高手说是因为没有SM2的缘故,后来我又学习iGUI,的确简单又多用,不错哦~~~至于NGUI我还没用过,以后看看再说~~~呵呵呵,如果要说他们的区别的话,EZGUI是3D的,但是控件较少;iGUI简单易用,控件多,是2D的和unity本身的GUI相似,NGUI没用过还不知道噢~~~~。还有就是我一运行unity就卡死,害我做了半天的东西都没保存噢,大家一定要多保存哈~~~找了半天原因,后来发现原来是我在update函数里面写了一个while循环,把while改成if就好了(千万别在update里面用while,一不小心就卡死咯,要用的话在start里面可以的)。
    下面看看今天的demo吧,如果不懂动画的兄弟,可以先去前面看看我写的一个动画的博文,应该是看得懂的啦。我把这个demo的工程放到资源里面去了,里面有动画的,大家可以去下来看看哈~~~~~



注意这里面没有用碰撞检测,因为如果要发生碰撞的话,刀可能会飞的,而且也砍不下去啊,所以只能用触发器了。
          下面简单来说说触发器的用法吧,和碰撞一样,必须至少有一个物体有rigidbody,而且两个物体必须都有含有触发器的的collider,我们这用boxcollider(meshcollider不能触发),而且在collider中的Is Trigger要勾上哦~~~~


我们的游戏对象控制代码player.js:
     
[java] view plaincopyprint?


  • //游戏角色的移动控制  
  • var playerprogressbar:iGUI.iGUIProgressBar;  
  • var play1:boolean=true;  
  • var isdie:boolean=false;  
  • function Update(){  
  • if(!isdie){  
  • if(Input.GetKey(KeyCode.UpArrow)){  
  •       animation.Play("walk");      
  •       transform.Translate(Vector3.forward*1*Time.deltaTime);  
  • }   
  • if(Input.GetKey(KeyCode.DownArrow)){  
  •      transform.Rotate(Vector3.up*180);  
  • }  
  • if(Input.GetKey(KeyCode.RightArrow)){  
  •      transform.Rotate(Vector3.up*10);  
  • }  
  • if(Input.GetKey(KeyCode.LeftArrow)){  
  •      transform.Rotate(Vector3.up*-10);  
  • }  
  • if(Input.GetKey(KeyCode.Space)){  
  •      animation.Play("attack");      
  • }  
  •   if (!animation.isPlaying){  
  •      animation.Play("Take 001");  
  •   }   
  • }      
  • }  
  • //游戏对象的血条控制  
  • function OnTriggerEnter(obj:Collider){  
  • if(obj.gameObject.name!="playerarrow"){  
  •    
  •   if(playerprogressbar.value!=0){  
  •       playerprogressbar.value-=10;  
  •       print(obj.gameObject.name);  
  •      }  
  •   else{  
  •       animation.Play("die");  
  •       isdie=true;  
  •      }  
  •   }   
  • }  

敌人的游戏对象控制代码 enemy.js:

[java] view plaincopyprint?


  • var player:Transform;  
  • var flag:boolean=true;  
  • var enemyprogressbar:iGUI.iGUIProgressBar;  
  • function Update () {  
  • if(flag){  
  •   animation.Play("walk");  
  •   transform.LookAt(player);  
  •   transform.Translate(Vector3.forward*0.5*Time.deltaTime);  
  •   }  
  •   if(Vector3.Distance(player.position,transform.position)<3){  
  •   flag=false;  
  •   animation.Play("attack");  
  •   }  
  •   else{  
  •     flag=true;  
  •   }  
  • }  
  • function OnTriggerEnter(obj:Collider){  
  • if(obj.gameObject.name!="enemyarrow"){  
  •    
  •   if(enemyprogressbar.value!=0){  
  •       enemyprogressbar.value-=10;   
  •       print(obj.gameObject.name);  
  •      }  
  •   else{  
  •       animation.Play("die");  
  •      }  
  •   }  
  • }  

分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

40

主题

0

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
279
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2013-10-23 18:14:22 |只看该作者
这一天发布的帖子量有点多了吧
回复

使用道具 举报

7

主题

0

听众

2518

积分

中级设计师

Rank: 5Rank: 5

纳金币
317
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

板凳
发表于 2013-10-24 23:36:11 |只看该作者
厲害!!!!
這Code分享
用心阿大哥!!!!
立馬試試看

提到GUI
iGUI貌似很好上手
那麼NGUI我也擺一邊不動她
感謝!!!
回复

使用道具 举报

74

主题

2

听众

3549

积分

中级设计师

Rank: 5Rank: 5

纳金币
-100
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

地板
发表于 2013-10-26 21:50:49 |只看该作者
希望楼主发出源代码及模型
回复

使用道具 举报

0

主题

1

听众

80

积分

设计初学者

Rank: 1

纳金币
3
精华
0

活跃会员 灌水之王

5#
发表于 2013-11-19 14:45:26 |只看该作者
嘿嘿 可以下载项目看就好了
回复

使用道具 举报

33

主题

1

听众

2680

积分

中级设计师

Rank: 5Rank: 5

纳金币
559
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

6#
发表于 2013-11-19 17:26:15 |只看该作者
相当不错的教程
回复

使用道具 举报

0

主题

1

听众

118

积分

设计实习生

Rank: 2

纳金币
0
精华
0

最佳新人

7#
发表于 2013-11-21 15:34:38 |只看该作者
不错不错dadawdada
回复

使用道具 举报

4

主题

1

听众

206

积分

设计实习生

Rank: 2

纳金币
117
精华
0

最佳新人

8#
发表于 2013-11-29 01:46:18 |只看该作者
haaaaaaaaa
回复

使用道具 举报

0

主题

1

听众

64

积分

设计初学者

Rank: 1

纳金币
0
精华
0

活跃会员 灌水之王

9#
发表于 2013-11-29 02:52:42 |只看该作者
真是好用的玩意儿 感恩楼主分享
回复

使用道具 举报

0

主题

1

听众

1792

积分

助理设计师

Rank: 4

纳金币
44
精华
0

活跃会员

10#
发表于 2013-11-29 18:56:49 |只看该作者
感谢分享这个资源
回复

使用道具 举报

12 第1页 | 共2 页下一页
返回列表 发新帖
您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-23 23:10 , Processed in 0.094267 second(s), 30 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部