Flash 遊戲設計筆記 滑鼠類遊戲(4)

2021-09-30 03:55:08 字數 1730 閱讀 1279

flash 遊戲設計筆記:滑鼠類遊戲(1)

flash 遊戲設計筆記:滑鼠類遊戲(2)

flash 遊戲設計筆記:滑鼠類遊戲(3)

一,旋轉炮台製作

之前我曾經寫了一些炮台的製作。這個炮台能夠跟隨滑鼠旋轉角度;他的原理很簡單,使用math.atan2(y,x)來求出對應的角度

如:(fire 為場景上的mc)

fire.rotation=math.atan2(mousey-fire.y, mou***- fire.x)*180/math.pi;

flash 製作旋轉炮台:

由於rotation 是角度,所以要進行弧度轉換角度單位

我們在場景上加入了一些名為fire的影片剪輯

二、子彈的執行軌跡

在fla 檔案裡面建立乙個名為ball的子彈類,當我們滑鼠按下去就產生乙個物件,而這個物件根據乙個角度和乙個速度進行執行,由於速度是向量可以分解兩個不同軸的速度乙個是 dx 乙個是dy

dx=speed*cos(angle);

dy=speed*sin(angle);

物理上 h=dy*t;

s=dx*t ;在一定時間內執行乙個在某乙個角度的恆速的運動

flash上的物理:

這裡我們只是計算機出它所在的子彈初始化位置:

2.1子彈的速度分量:

簡單一點來說:根據角度來計算出速度speed 的兩個分量;

ball.vx=speed*math.cos(angle*math.pi/180);

ball.vy=speed*math.sin(angle*math.pi/180);

2.2子彈執行

當我們指定了子彈的初始角度和初始速度,按理想狀態(不引入重力),它會以這個方向一直運動下去。

接下來,我們所做的事情是讓子彈能夠按照這個速度和方向執行;

ball.addeventlistener(event.enter_frame,ballmove); 使用event.enter_frame 事件讓其每一幀產生渲染。

這樣 每一關幀就會產生乙個畫素的位移,子彈的座標也發生了改變。

在物理當中 s=v*t; 位移=速度x時間

而在flash裡面,其實已經隱藏了時間,代替為幀

物體.x+=speed*t 而t就是隱藏的幀

物體.y+=speed*t

2.3引入重力

由於子彈在空中執行的時候,它受重力和其他阻力,假設我們忽略子彈其他阻力,使用重力讓子彈能夠在重力的過程中

以乙個拋物線的運動軌跡執行,所以在y軸的速度分量當中,我們要加上重力的加速度。假設為2.

這樣就可以模擬出乙個簡單的重力效果

效果:

酷吧:嘿嘿

加上一些位圖

**清單:

累了明天再修改。

flash 遊戲設計筆記 鍵盤控制

暫時不多寫了,因為csdn部落格出問題,經常寫文章都出錯。真鬱悶,先發乙個鍵盤控制的類。可以進行使用的,在網上看到的。有興趣嘗試一下。用法很簡單 使用的方法 使用 if key.isdown 鍵值 這樣就可以實現控制到我們希望的物件了。第三種是使用 開關式的判斷 private var isleft...

flash 遊戲設計筆記 堅持幾秒

昨晚玩了乙個這樣的小遊戲,感覺很有意思。於是嘗試寫乙個來寫一下。最近心情老是漂浮不定,可能老了,面對現實的殘酷,其實不想找太多藉口,乙個說的很對,我需要反省一下,很多事情不是活在理想的國度。但是有一些事情還是必須保持一種狀態,這個是起碼每天都是要堅持的事情。以後不再找藉口,給自己找理由。下面不作解析...

挑戰類Flash遊戲測試用例設計

前段時間參與了flash遊戲的 功能測試,發現 遊戲測試的內容比較的繁多,因此總結一下 測試用例的編寫思路,便於以後能快速進行同類遊戲的 用例設計。所測試的flash遊戲類似 雪地漂移上百層 這款遊戲,先簡介一下這款遊戲的需求 這是一款考驗快速反應的益智遊戲,遊戲的過程就是通過控制角色在空中左右平移...