找回密码
 入住遨海湾
搜索
网站解决方案专享优惠-3折上云
查看: 1195|回复: 0

土人系列AS入门教程--实战篇

[复制链接]
发表于 2004-12-16 18:15:00 | 显示全部楼层 |阅读模式

登录后查才能浏览下载更多咨询,有问题联系QQ:3283999

您需要 登录 才可以下载或查看,没有账号?入住遨海湾

×

AS 实战篇2 `, o7 g9 u: X7 K! N1 ], n -----------------------------------3 ?% X) j4 n0 q- x: x8 d& d , [3 V; k% r6 J3 ?" x 这次我们要进入实战,我要教你们做一个很简单的游戏,下面的每句代码我都会加上注释,如果你看过上面的教程,我想要全部理解应该不会困难。 % \4 ~& ~2 R+ ]2 f7 a现在让我们开始吧。这个游戏是我初学的时候按教程做的一个游戏,所以印象比较深刻。这个游戏叫做蜗牛赛跑,流程是这样的:画面上有若干条赛道,每条赛道上面有一只蜗牛,每只蜗牛爬行的速度不一样。游戏开始了,你要猜猜哪只蜗牛先跑到终点。如果你猜对了,You Win,否则,Game Over。) K) p k# s, B+ P9 s! M+ X* M! S# x 第1步,我们先设置场景的大小 600*400 px ,运行速度为 48帧/秒 这个是我个人喜好速度。# ]7 x: p0 U0 X; W$ T 6 ~% t4 l5 e0 m; W% ] [img]http://www.aosea.com/attachments/UploadFile/2004-12/2004121618284979.gif[/upload]$ ^; e' M' E- ^8 a5 f 1 f$ x3 w( L8 f; ~! a6 q. y) t$ H8 E* L 第2步,我们把默认的层名称改成Bkground,并且画上赛道、起跑线和终点线,我这里是4条赛道。1 R" ^. U( i2 n9 M1 D9 E4 P" l ; R5 Z2 o. \% ^8 d: v" d [img]http://www.aosea.com/attachments/UploadFile/2004-12/2004121618284615.gif[/upload] . Q. P2 P% G+ D3 b% u / u1 ^( b* C- v& l: l2 J, j1 F t8 R( f) P 第3步,新建一个层,层命名成WN_Layer,然后画一个会动的蜗牛放在这个层,F8定义成MC,MC命名成WN_MC。把蜗牛的尾巴放在整个MC的正中间,如果少了这步,蜗牛还没到终点就结束了。然后复制3个一样的蜗牛,在属性栏里面调整一下颜色,使他们看起来有点区别。然后对齐放到各条赛道的起点位置。 8 d0 E, u& d0 V. j第4步,新建一个层,命名成btn , 然后做一个按钮,复制4个分别放在4个蜗牛的旁边。 & I8 h- T$ f7 U1 R# X) s ) E/ ~! E5 m# n: ~1 I, ~[img]http://www.aosea.com/attachments/UploadFile/2004-12/200412161828451.gif[/upload]% L- r/ E. N# y8 \/ @( o ) a T$ X9 ?& \# U' M7 d, V: V" [- k( a) L* r$ s 第5步,记住蜗牛开始的X轴位置数据,我这里是25,然后把一个蜗牛拖到终点看看它的X轴位置数据多少,然后记下来,为AS做准备。我这里得到的是540。记得把它放回去哦~

: N, g# e+ S5 \& U2 G

[img]http://www.aosea.com/attachments/UploadFile/2004-12/2004121618284508.gif[/upload]" p, L4 Y, i5 c1 T; F 5 j$ ^, |) E4 j. w9 W第6步,新建一个层,命名为Actoins,用来写AS的。这个层我们需要4个关键帧。我来讲一下为什么。 ' r7 a* A2 ~+ ^( O& V0 E我们需要一个帧来准备开始游戏,也就是让玩家猜的帧,是游戏一开始的蜗牛不动的画面。这个就由第1帧来完成了。我们做的4个按钮也就是要让玩家去猜哪只蜗牛会赢。 4 S( Z# h/ P* n, |! _2 B7 M6 l当游戏开始以后,玩家不能改变数据了,所以在乌龟爬的过程中,按钮层没有内容。 / l- D) q/ X: m# G) @第2个帧我们要让每个蜗牛都爬一次,为什么只让他们爬一次呢?因为时间轴的指针经过这个关键帧的时候,只让帧里面的AS执行一次而已。为了让蜗牛不断地爬,我们需要重复的让时间指针走过这个第2帧,所以我们第3帧的内容就是要让时间指针回到第2帧。: Q8 s1 L1 i" x' x3 G) `) N+ ^ 第3帧以后就是显示结果的帧了,那我们新建一个层,命名show ,做第4跟第5两个关键帧,在第4帧放一个胜利的字样,在第5帧放一个失败的字样。 " `$ ?4 c' s+ t0 X( Y' x' W另外在游戏结束后,我们需要一个按钮让玩家再玩一次,所以,按钮层的第 4到5 两个帧需要一个按钮。 ( j. Y1 y5 C4 u布置完以后,整个层的结构如图(还没有任何 AS): & `1 z+ [/ X/ g; R) ] " R. b8 v5 a" [/ K[img]http://www.aosea.com/attachments/UploadFile/2004-12/2004121618284385.gif[/upload]

7 M) C7 b+ g. n

/ q; e z6 F7 [. O2 J: q) C/ G. Y现在我们有 4 个对象 : _root.wn1 , _root.wn2 , _root.wn3 , _root.wn4: V% C' N4 h2 [+ a- q, i8 x 下面我们一帧一帧来做: ! N% `! u" k6 r8 gAction 第1帧2 J* l# }% @7 ?0 c( I! l _root.stop(); //停止时间轴 # R7 o* Z$ O8 y_root.truewinner = 0; ) W5 F2 c. H+ w) w3 {% F: y _root.guesswinner = 0; ! f9 O2 q ~9 u J ?- {后面2句代码定义了两个变量truewinner,guesswinner在_root这条时间轴。变量是用来储存数据的,可以自己定义。这里的truewinner,guesswinner分别表示 哪号蜗牛赢了 和 玩家猜的是哪号 。这里初始化了这两个数据。$ h1 g4 x4 G: y; K( M Action 第2帧 2 Q7 a, i$ i* Q$ p4 G9 p* Y_root.wn1._x += random(10)/10+random(1); //蜗牛1号的X轴数据增加某一数值" Y5 N, s) E7 `. | _root.wn2._x += random(10)/10+random(1); //蜗牛2号的X轴数据增加某一数值 ; v. [; ^( O1 g. H# i) [_root.wn3._x += random(10)/10+random(1); //蜗牛3号的X轴数据增加某一数值7 J) J* z. j; V$ k! z9 ^$ ]9 p4 F _root.wn4._x += random(10)/10+random(1); //蜗牛4号的X轴数据增加某一数值 5 _) d4 O. q/ }! w7 q9 X/ l看过对象篇,这里理解起来不难吧?$ H2 b9 t' t2 [& h _x 表示对象蜗牛的属性之一:X轴的位置。 8 _# f: z; N* V9 E# w+= 表示自加 , 这样理解 a=a+1 和 a+=1 是一样的。表示自加1。 0 F! J) J7 d- ]这里有个方法 , random() : ]+ I' _2 W- W* ~9 D5 |: p, ~这个方法用来获得一个随机的数字,如 random(10) 获得 0-9 中间的任何一个数字。上面的表达式获得一个从 0-1.9 的一个随机数。 ' m- @ X: F0 {& V" j3 [Action 第3帧' b# i& X5 f7 H' w& s if (_root.wn1._x>540) { w5 ~0 t" N0 |& L" k. U+ M2 ~/ M, t _root.truewinner = 1; C6 ]. A% ]/ h: u1 L} / _6 Z8 G& H5 C, r' i! dif (_root.wn2._x>540) { ! s8 C2 w5 \* k2 y+ `% g3 J; m_root.truewinner = 2;6 l! J$ A4 L5 W- u" L: n6 M5 w% c }! I' H# k* \. p5 o7 ?( X if (_root.wn3._x>540) {; X& r. y: V5 L _root.truewinner = 3; ; Q# L9 ?5 p; e4 O& L/ N} " f# v6 } Y' p6 p) yif (_root.wn4._x>540) {5 c& n) b2 x, ^ |, i _root.truewinner = 4;4 g2 h4 x# ?# x. d) u } ) Z$ R& P6 t$ e+ k0 t1 D//判断哪只蜗牛到了,到了就改变truewinner的值,纪录哪只蜗牛获胜 : O2 m9 h' c, z' [' z# fif (_root.truewinner != 0) { 1 O6 Y4 b& Z$ @if (_root.guesswinner == _root.truewinner) { & X5 c) j- |, C! n _root.gotoAndStop(4);8 C- ?6 t7 B; ]7 J+ B C' a2 k } else {: ]7 _: f! I9 W' |$ ? _root.gotoAndStop(5);* V9 X: v/ h* E5 D. } }& C$ Z; u" R' ~, A' q. |: I } else {3 k: J. X+ l4 N; Y _root.gotoAndPlay(2);' m W0 Y& Z) }- L5 d3 d3 V } / T0 C' n) ]$ ]& |/*-------------------------------------------- - I+ ^4 ^, D, S7 P# P3 s判断truewinner的值,如果被改变了,说明已经有蜗牛到了4 n0 L% L6 r: } 如果还没有改变,说明蜗牛们还没到。* O% q, H+ \* P8 ~ 如果没到,就把_root的指针跳到第2帧,让他们继续跑,如果到了,# z9 P4 |2 c. g2 ]5 ]3 R4 H* \' [ \ 判断玩家压的那只和真正到的那只是不是一样。如果猜对了,让时间8 `7 j, M% G4 I4 e' g 指针跳停到第4帧,否则跳停到第5帧。! n$ C" O' ^1 n1 x, k( H ---------------------------------------------*/ 3 b& \8 V! J" H [$ A仔细理解一下流程,应该不难 7 E' ^* b7 w8 J \ 接下来是按钮上的AS: + r7 y- ~$ n& |+ o+ U( }* E第1帧的按钮, Z. t% r) u7 w6 B' Z' P on(release){ 6 u$ B* E9 o1 b$ [; P_root.play();$ `9 I& e g; l) _ _root.guesswinner = 1; - T3 l* x1 R5 y$ V5 c} 8 w5 |- [& ?5 n$ ~$ S# F第一只蜗牛旁边的按钮上面的as。松开按钮后,指针跳到第2帧,然后纪录变量guesswinner为1(猜第1只)。( z, R; ^* d0 ~/ V: H) \ 其它蜗牛旁边的代码类似,就是纪录变量guesswinner值为相对应的 2、3、48 s8 T5 J j& A1 u% \6 C) i 最后一个按钮,用来重玩的。) a& I3 P. }3 Z+ W' g- B on(release){! H& z; N9 y3 P! \+ F6 X0 k n, o9 `) I _root.gotoAndStop(1); c- x: u% l/ \) i_root.wn1._x = 25;//蜗牛1号回起点 : t5 b0 Y6 y, C- A) a9 W_root.wn2._x = 25;5 i1 ^# y+ Z# ~6 Q$ H+ \; w _root.wn3._x = 25; 9 k% a5 U: ?* D" y9 J9 Y, K/ A0 v_root.wn4._x = 25; 5 d& d3 u9 } d: U+ {' Q" e}7 d( A I- y6 J3 ^ 全部看明白了吧?嗯,看看我做的% H8 \# u+ @! ]0 I, g 这里我就不给源文件了,大家自己动手做做,很有成就感的~ 1 _8 ~$ Y3 t3 K0 N (完)

2 K- B3 K: S6 J. x: d

0 m# R) N- I) a1 ?3 Y2 H1 d4 L, C, L( p

' G3 e1 }5 F4 _: _& o0 Q
[此贴子已经被作者于2004-12-16 18:28:40编辑过]

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇
遨海湾-心灵的港湾 www.aosea.com
您需要登录后才可以回帖 登录 | 入住遨海湾

本版积分规则

网站解决方案专享优惠-3折上云

QQ|手机版|小黑屋|遨海湾超级社区

GMT+8, 2024-11-24 21:12

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表