2013-02-07 2 views
0

나는 건강이 각각 3,2,1 인 세 개의 원 "빨강, 녹색 및 파랑을 만드는 게임을하고 있습니다. 건강 상태가 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 
} 

} 
} 

문제에 어떤 도움도 좋은 것입니다. 나는 하루 종일 그것을 알아 내려고 노력했지만 그것을 알아 내지 못했다.

+0

여기에 답변을 게시 됨 : 클래스를 사용할 때 어떻게 그래픽을 만들려면? AS3] (http://stackoverflow.com/questions/14756596/how-to-create-graphics-when-using-classes-as3) – khailcs

답변

2

대상 개체를 만들 때 변수를 전달하는 방법을 묻는 중입니까?

public class Target extends Image { 

    public function Target(hp:Number, dead:Boolean, color:String) { 

     this.hp = hp; 
     this.dead = dead; 
     this.color = color; 

    } 

} 

그런 다음이 같은 각 대상의 인스턴스 :

var redTarget:Target = new Target(3, false, "red"); 
var greenTarget:Target = new Target(2, false, "green"); 

등 ...

관련 문제