私は、それぞれ 3,2,1 のヘルスを持つ赤、緑、青の 3 つの円を作成するゲームに取り組んでいます。ヘルスが 0 に達するとステージから削除され、クリックごとに 1 ずつ減少します。使用しています。 Main.mxml ファイル、Target.as ファイル、RedTarget.as、GreenTarget.as、および BlueTarget.as があります。私の質問は、Target.as ファイルにすべてを設定してからプッシュしたいということです。色、健康状態、それらが死んでいるかどうかなどの詳細は、それらの関数を介して. Target.as で何が必要になるのか、そしてそれぞれに何をコーディングする必要があるのか がわからないため、それを行うのに苦労しています.色付きのターゲット ファイルの.ここに私の Target.as ファイルがあります:
package com.multiClicker {
//import the needed classes
import flash.display.Shape;
import flash.events.MouseEvent;
import spark.components.Image;
public class Target extends Image {
public function Target() {
//add event listeners
this.addEventListener(MouseEvent.CLICK, onClick);
}
//sets the hp of the target
public function hp():Number {
return hp;
}
//get function that returns false if alpha is <= 0
public function dead():Boolean {
if(alpha <= 0){
return false;
}
return true;
}
//subtracts one from targets HP when clicked
public function onClick(e:MouseEvent = null):void {
//subtracts one from hp each click
hp --;
if(hp <=0) {
this.addEventListener(onEnterFrame);
}
}
//subtracts .1 from the classes alpha
public function onEnterFrame():void{
this.alpha =- .1;
}
//draws the target
public function drawTarget(color):void {
var circle:Shape = new Shape();
circle.graphics.beginFill(color);
circle.graphics.drawCircle(0,0,30);
}
}
}
そして、RedTarget.as ファイルは、変数でそのようにラベル付けされていることを除いて、青と緑と同じです。
package com.multiClicker {
import flash.events.MouseEvent;
public class RedTarget extends Target{
private var redHP:Number = 3;
private var redDead:Boolean = false;
private var redColor:String = "red";
public function RedTarget()
{
redHP = hp;
redDead = dead;
redColor = color;
//include the super function
super();
}
//subtracts one from targets HP when clicked
override public function onClick(e:MouseEvent=null):void {
super.onClick(e);
//push all to super
}
}
}
この問題に関するヘルプは素晴らしいでしょう。私は一日中それを理解しようとしていますが、それを理解していません。