Flash AS3: フラッシュ AS3 で 2D 配列を使用しているときに、グリッド内のランダムな色のムービークリップのグループで近くにある類似の色のムービークリップに対するロール オーバー効果の条件を確認する方法を知る必要があります。または、
ロールが必要なだけです。私が書いたオーバーイベントは onBoxOver イベント関数です。私がターゲットにしているオブジェクトは、ロールオーバーまたはアルファ変更を取得するだけです。しかし、すべて近くにある同様の色のロールオーバーを作成する方法を知る必要があります。
The code which i wrote is below for your reference.
フラッシュ AS3::
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class playGame extends MovieClip
{
public static var totalRowBoxes:Number = 13;
public static var totalColumnBoxes:Number = 12;
public static var rowGap:Number = 30;
public static var columnGap:Number = 30;
public static var totalColorBoxes:Number = 8;
public static var boxCollection:Array = new Array();
public static var boxCollection1:Array = new Array();
public function playGame(theGame:main)
{
// constructor code
addBoxOnStage();
}
private function addBoxOnStage():void
{
var borderCont:Banner = new Banner();
var scoreclipCont:scoreclip = new scoreclip();
addChild(borderCont);
addChild(scoreclipCont);
scoreclipCont.x = 0;
scoreclipCont.y = 0;
createLevel(1);
for (var i:Number = 0; i<totalRowBoxes; i++)
{
boxCollection[i] = new Array(i);
for (var j:Number = 0; j<totalColumnBoxes; j++)
{
var squareCont:square = new square();
squareCont.x = 30 + (i * rowGap);
squareCont.y = 30 + (j * columnGap);
squareCont.name = i + "_" + j;
var boxCollection1:Array = new Array();
boxCollection1[0] = Math.round(Math.random() * 8);
boxCollection1[1] = squareCont;
var boxColour:Number = new Number();
boxColour = boxCollection1[0];
boxCollection[i][j] = boxCollection1[1];
addChild(squareCont);
squareCont.gotoAndStop(boxCollection1[0]);
squareCont.addEventListener(MouseEvent.MOUSE_OVER, onBoxOver); squareCont.addEventListener(MouseEvent.MOUSE_OUT, onBoxOut);
squareCont.addEventListener(MouseEvent.CLICK, onBoxClick);
}
}
}
private function onBoxClick(eve:MouseEvent):void
{
}
private function onBoxOver(eve:MouseEvent):void
{
for (var i:Number=0; i< totalRowBoxes; i++)
{
for (var j:Number=0; j<totalColumnBoxes; j++)
{
eve.target.alpha = 0.3;
// trace(boxCollection[i][j].currentFrame)
trace(eve.target);
}
}
}
private function onBoxOut(eve:MouseEvent):void
{
eve.target.alpha = 1;
}
private function createLevel(lvl):void
{
}
}
}
![My Game screenshot here colourbox][1]
Thanks in Advance. Greatly Appreciable for the reply.
こんにちは、これは私のプロジェクトの画像またはスクリーンショットです。その画像には、ランダムに配置された 8 つの色があります。任意のボックスでマウスの位置またはロールオーバーを行うたびに、条件は、ロールオーバーを作成しているボックス (上、下、左、右) の周りに同じ色が発生するかどうかを確認する必要があります。1.カーソルを指しているボックスの上部に同じ色が発生した場合、上部のボックスと指しているボックスの両方のアルファが少なくなり、そうでない場合は、ポインティングボックスのみのアルファが少なくなります。これが私のコンセプトフレンズです。画像を確認して、疑問がある場合はお知らせください。