#wren
Вопрос:
Я пытаюсь научиться использовать Купола и Рена. Для этого я начал работать над простым клоном Flappy Bird.
Проблема, с которой я сталкиваюсь, заключается в том, что я получаю сообщение об ошибке
Bird does not implement bird_idle
Затем он указывает на строку 63 в моем основном классе, которая показана ниже:
class Main {
resources=(value){ _resources = value }
bird=(value){ _bird = value }
construct new() {
_resources = Resources.new()
_bird = Bird.new(_resources.birdIdle, _resources.birdFlap, _resources.obstacleTile.width * 2, _resources.obstacleTile.height * 4, 10, 4)
}
init() {}
update() {}
draw(alpha) {
Canvas.cls()
Canvas.draw(_bird.bird_idle, _bird.center.x, _bird.center.y) <-- this is line 63
}
}
var Game = Main.new()
Поскольку я новичок в Рен, я не совсем понимаю, что это значит, если вы посмотрите на мой класс птиц ниже, я должен реализовать bird_idle
. Так что же я делаю не так?
class Bird {
bird_idle=(value){ _bird_idle = value } <-- Right?
bird_flap=(value){ _bird_flap = value }
center=(value){ _center = value }
gravity=(value){ _gravity = value }
force=(value){ _force = value }
velocity=(value){ _velocity = value }
velocityLimit=(value){ _velocityLimit = value }
isGameRunning=(value){ _isGameRunning = value }
construct new(idle, flap, horizontalPosition, verticalPosition, drag, jumpForce) {
_bird_idle = idle
_bird_flap = flap
_center = Vector.new(horizontalPosition (idle.width * 0.5), verticalPosition (idle.height*0.5))
_gravity = drag
_force = jumpForce
_velocityLimit = 1000
_isGameRunning = true
}
jump() {
_velocity = -_force
}
isTouchingCeiling() {
var birdTop = _center.y - (_bird_idle.height * 0.5)
if(birdTop < 0) {
return true
}
return false
}
isTouchingGround() {
var birdBottom = _center.y (_bird_idle.height * 0.5)
if(birdBottom > height) {
return true
}
return false
}
}