2016-06-16 27 views
0

Ich baue ein Spiel in Spritekit Swift, ich habe eine DidBeginContact Erkennungsfunktion zwischen drei Knoten und dem Boden, muss ich eine Variable hinzufügen, die ich den Kontakt Ort in der Ansicht verwenden kann, aber ich don Ich weiß nicht, wie ich das machen soll. Ich hoffe, dass ich in der touchesBegan FunktionSo finden Sie den Kollisionsort

let location = touch.locationInNode (Selbst-)

jede Hilfe würde geschätzt fand eine Variable ähnlich wie man verwenden kann.

Antwort

0

Möchten Sie die genaue Position des Kontakts auf dem Sprite selbst ermitteln? Ich denke, das ist nicht möglich.

Wenn Sie nur die allgemeine Position, wo der Kontakt passiert, nur die Position Eigenschaft des Knotens im Kontakt erhalten wollen.

Ich nehme an, Ihre Kontaktfunktion sieht in etwa so aus (was sie sollte).

Ordnen Sie einfach die Position des gewünschten Sprites Ihrer Eigenschaft zu, die Sie in den entsprechenden if-Anweisungen benötigen.

if (firstBody.categoryBitMask == GROUND CATEGORY) && (secondBody.categoryBitMask == OBJECT CATEGORY) { 

     if let objectNode = secondBody.node { // safely unwrap 
       yourLocationProperty = objectNode.position 
     } 
    } 

hoffe, das hilft

+0

Das hat geklappt! Danke noch einmal. :) – Xcoder555

+0

Gern geschehen. Glückliche Kodierung. – crashoverride777

Verwandte Themen