AS3: hitTestObject vs hitTestPoint für Kugel vs Feind

Habe ich nach der Diskussion der hitTestObject vs hitTestPoint vs custom hitTest seit geraumer Zeit. Oft bin ich nach unten gegangen die route von Punkt -, angesichts der option Form.

Allerdings - ich bin jetzt versuchen zu tun, ein hit-test wird eine Kugel trifft eine kreisförmige Feind. Was ich bin derzeit mit unter:

AS3: hitTestObject vs hitTestPoint für Kugel vs Feind

for (var i:int = 0; i<levelHolder.enemyArray.length; i++){
            if(levelHolder.enemyArray[i]){
                if(this.hitTestObject(levelHolder.enemyArray[i].hit) && hit == false && distanceTravel <= range){
                    trace("You hit a baddie "+i)
                    hit = true
                    this.parent.removeChild(this)
                    var gotShot:gotshot = new gotshot() //move to sound
                    gotShot.play()                      //move to sound
                    levelHolder.damageEnemy(i, damage)
                } 
            }   
        }

Nun, offensichtlich dadurch verursacht wird, dass die Kugel zu stoppen, in den alpha-Bereichen rund um das hit und zählt es als Treffer.

Hab ich davon ausgehen, dass ich in der Lage wäre einfach den folgenden, doch es funktioniert nicht:

if(this.hitTestPoint(levelHolder.enemyArray[i].x, levelHolder.enemyArray[i].y, true) && hit == false && distanceTravel <= range)
...

Bewirkt dies einen sehr, sehr begrenzt Treffer Palette wie arbeiten wir mit den einzelnen X-und Y-position.

Meine Frage ist: Wie kann ich das mit mehr Sorgfalt?

  • Ich sollte erwähnen, dass diese hitTest ist innerhalb bullet1.als
Schreibe einen Kommentar