Skip to content

Instantly share code, notes, and snippets.

View alcidesjunior's full-sized avatar
💻
Codando...

Alcides Junior alcidesjunior

💻
Codando...
View GitHub Profile
extension GameScene: SKPhysicsContactDelegate{
func didBegin(_ contact: SKPhysicsContact) {
if (contact.bodyA.node?.name == "ball" && contact.bodyB.node?.name == "snareND") || (contact.bodyA.node?.name == "snareND" && contact.bodyB.node?.name == "ball"){
//quando a bola entra em contato com o bloco um som é tocado.
run(snareSound)
}
}
}
//criando corpo 2 que é em formato de retângulo
let element = SKShapeNode(rectOf: CGSize(width: 100, height: 40))
element.position = CGPoint(x: 100 ,y: 100)
element.fillColor = .green
element.physicsBody = SKPhysicsBody(rectangleOf: CGSize(width: 100, height: 40))
//diz que esse objeto não é movido pela simulação, ele fica parado.
element.physicsBody?.isDynamic = false
//setando as configurações de colisão
element.physicsBody?.categoryBitMask = 1
element.physicsBody?.collisionBitMask = 2
//criando o corpo 1 que é em formato de circulo.
let element = SKShapeNode(circleOfRadius: 10)
element.position = CGPoint(x: 100 ,y: 140)
element.fillColor = .yellow
element.physicsBody = SKPhysicsBody(circleOfRadius: 10)
//setando configurações de colisão
element.physicsBody?.restitution = 1
element.physicsBody?.categoryBitMask = 2
element.physicsBody?.collisionBitMask = 1
override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
for touch in touches{
if objTouched != nil{
//reaproveitando a variavel utilizada em touchesBegan
if touch as UITouch == objTouched!{
let location = touch.location(in: self)
var touchedNode = nodes(at: location)
touchedNode.first?.position = location
}
}
//vamos declarar
var objTouched: UITouch?
...
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
for touch in touches{
let touchlocation = touch.location(in: self)
//armazenamos o objeto que foi tocado
//carregando os sons
var snareSound = SKAction.playSoundFileNamed("snare.mp3", waitForCompletion: false)
var kikSound = SKAction.playSoundFileNamed("kik.mp3", waitForCompletion: false)
var hihatSound = SKAction.playSoundFileNamed("hihat.mp3", waitForCompletion: false)
...
//executando o som
run(hihatSound)
run(kikSound)
element.fillColor = .yellow
element.position = CGPoint(x: 100 ,y: 100)
//criando um retângulo
let element = SKShapeNode(rectOf: CGSize(width: 100, height: 40))