我想用 Actionscript 创建一个简单的气球射击游戏。气球应该从舞台的底部漂浮到顶端。会有两种气球。一个人将携带一个框架,其中附有网络摄像头的图像。如果您拍摄没有图像的那张,您将获得 100 分。如果你用图像拍摄,你就输了。
到目前为止,我的解决方案分别解决了每个元素(图形和视频)。这意味着,我必须为每个应该升起的气球编写几次代码。这似乎不是很有效。此外,气球的数量是有限的。
import flash.media.Camera;
import flash.media.Video;
import flash.display.MovieClip;
var camera:Camera = Camera.getCamera();
if (camera != null)
{
videoFrame1.attachCamera(camera);
}
else
{
trace("You need a camera.");
}
stop();
Score.appendText("Your Score: ");
//Balloon1
var directionY1;
video1.addEventListener(Event.ENTER_FRAME, float1);
function float1(event:Event)
{
if (video1.y > 0)
{
richtungY1 = 1;
}
video1.y -= 3 * directionY1;
}
videoFrame1.addEventListener(Event.ENTER_FRAME, Framefloat1);
function Framefloat1(event:Event)
{
if (videoFrame1.y > 0)
{
directionY1 = 1;
}
videoFrame1.y -= 3 * directionY1;
}
clickFrame1.addEventListener(Event.ENTER_FRAME, clickFramefloat1);
function clickFramefloat1(event:Event)
{
if (clickFrame1.y > 0)
{
directionY1 = 1;
}
clickFrame1.y -= 3 * directionY1;
}
balloon1.addEventListener(Event.ENTER_FRAME, Balloonfloat1);
function Balloonfloat1(event:Event)
{
if (balloon1.y > 0)
{
directionY1 = 1;
}
balloon1.y -= 3 * directionY1;
}
tv1.addEventListener(Event.ENTER_FRAME, TVfloat1);
function TVfloat1(event:Event)
{
if (tv1.y > 0)
{
directionY1 = 1;
}
tv1.y -= 3 * directionY1;
}
function clicked(event:MouseEvent):void
{
removeChild(videoFrame1);
removeChild(tv1);
removeChild(balloon1);
}
clickFrame1.addEventListener(MouseEvent.CLICK, clicked);
//Counter;
clickFrame1.addEventListener(MouseEvent.CLICK, count);
var counter = 0;
function count( e:MouseEvent ):void
{
counter += 100;
Score.appendText(counter);
trace( counter );
}
现在,我的想法是为每个气球构建一种,然后将其从库中加载出来。我考虑过使用 addChild。如果你射击一个气球,应该会生成一个新的气球,并且速度会提高。但我无法解决。
似乎我无法将视频放入movieClip 并将其与其他元素组合到一个对象中。
有谁知道,我如何创建一个包含所有元素的movieClip,并将其从库中加载出来?
非常感谢您!