見出し画像

【WoofJS】逃がしたらアカンやつ


Play demo




サンプルコード

setBackdropURL("./docs/images/platformer-backdrop1.png")
setBackdropStyle("cover")

var spiderman = new Image()
spiderman.url = "./docs/images/spiderman.png"
spiderman.width = 75
spiderman.height = 85
spiderman.y = minY + 50

forever(() => {
  if (keysDown.includes('UP')) {
    spiderman.y +=10
  }
  if (keysDown.includes('DOWN')) {
    spiderman.y -=10
  }
  if (keysDown.includes('RIGHT')) {
    spiderman.x +=10
  }
  if (keysDown.includes('LEFT')) {
    spiderman.x -=10
  }
})


var tongue = new Line({
  color:"red",
  width:5,
  x:spiderman.x,
  y:spiderman.y,
  x1:spiderman.x,
  y1:spiderman.y,
})

tongue.sendToBack()

forever(() => {
  tongue.x = spiderman.x
  tongue.y = spiderman.y
  tongue.x1 = spiderman.x
  if (keysDown.includes('SPACE')) {
    tongue.y1 +=20  
  }
  else{
     tongue.y1 -=20
  }           
  if (tongue.y1 <= spiderman.y) {
    tongue.y1 = spiderman.y
  }
  if (tongue.y1 >= maxY) {
    tongue.y1 = spiderman.y
  }
})


var car = new Image()
car.url = "./docs/images/car.png"
car.width = 100
car.height = 32
car.x = minX -10

car.sendToBack()

var carSpeed =1

forever(() => {
  car.move(carSpeed)
})

every(5, 'second', () => {
  carSpeed++
})


var score = 0
var scoreText = new Text({
  text: () => "Cars:"+ score, 
  size: 20, 
  x:maxX-50,
  y: maxY-30,
  color:"white"
})


forever(() => {
  if (tongue.y1 >= car.y-10 &&
     tongue.x >=car.x -carSpeed*2 &&
     tongue.x <= car.x +carSpeed*2 &&
     !car.touching(spiderman)){
      score++
      car.y = random(minY+100,maxY-50)
      car.x = minX    
  }
})


var bomb = new Image()
bomb.url = "./docs/images/boss-bomb.png"
bomb.width = 50
bomb.height = 50
bomb.x = minX + 40

forever(() => {
  bomb.y -=5
  if (bomb.y <= minY) {
    bomb.y = maxY
    bomb.x = randomX()   
  }
})


var instructions = new Text({
  text:()=> "Press space to catch the car before it's gone!",
  size: 30,
  y: maxY-120,
  color:"white"
})

after(3, 'second', () => {
  instructions.hide()
  
})


forever(() => {
  if (car.x > maxX+40) {
    new Text({
      text:()=>"Bye bye car! Gameover",
      color:"red",
      size:40 
    })
    freeze()
  } else if(bomb.distanceTo(spiderman)< 80){
    new Text({
      text:()=> "Ay Caraba! Game Over",
      color:"red",
      size: 40 
    })
    freeze()
  }
})  
 

この記事が気に入ったらサポートをしてみませんか?