2013-11-04 16 views
0

我完成了一個角色四處走動,收集東西並射擊敵人的迷宮遊戲。遊戲完全動態生成。我現在想要添加一場戰爭迷霧,角色只能在某個圓周上看到他周圍的情況。我已經使用精靈/電影剪輯創建了圖像和背景圖像。AS3如何製作戰爭迷霧

我最初的想法是在整個地圖上創建5 * 5的黑色方塊,並讓它們全部運行一個eventlistener來查看它們是否被擊中,並在命中時將alpha改爲0。但我認爲這可能會導致太多EVENT活躍起來。有一個更好的方法嗎?

謝謝。

+1

您可以嘗試在此處詢問:http://gamedev.stackexchange.com/ – Cherniv

回答

2

據我所知,你需要在小地圖上製造戰爭迷霧,以便英雄只在預定義半徑周圍看到敵人等等,並且如果他訪問過地圖的那部分,還可以看到地形。事情是這樣的:

enter image description here

在哪裏黃色爪子是英雄和紅色的點是敵人。尚未訪問地圖的較深部分。

你可以通過使用2個蒙版來實現這個效果,其中1個用於蒙板顯示地形的一部分,另一個用於矇蔽地形和敵人或其他物體的突出部分。所以,你的層結構應該是這樣的:

enter image description here

設置圖層後,您也可以叫黑暗地形面具的graphics對象的

beginFill(0xFF0000); // any color will do 
drawCircle(mHero.x, mHero.y, radius); 
endFill(); 

方法(下一個) 。 mHero是小地圖上英雄符號的實例名稱。

這是揭示部分,對於英雄在小地圖上的位置的突出顯示,您需要對突出顯示的地形蒙版執行相同的操作,但在每次繪製調用時添加clear()方法,以便舊圈子不要保存。對於突出顯示的地形圖圖形對象,您將擁有類似如下的東西:

clear(); 
beginFill(0xFF0000); // any color will do 
drawCircle(mHero.x, mHero.y, radius); 
endFill();