wren - Wren 类没有实现字段
问题描述
我正在尝试学习如何使用Dome和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()
由于我是 Wren 的新手,所以我不太明白这意味着什么,就像您在下面查看我的鸟类一样,我应该实施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
}
}
解决方案
推荐阅读
- python - 按索引然后按列对数据框进行排序
- java - 为什么删除 .m2 目录会导致 maven 编译错误?
- function - 从特定残基获取原子坐标并计算距离
- python - 小部件不显示
- snowflake-cloud-data-platform - 雪管问题 - Azure 数据湖存储
- flutter - 集成 flutter_riverpod 会导致 BottomNavigationBar 出现问题
- amazon-web-services - 有没有办法从 S3 中的所有现有图像中删除图像元数据?
- swift - 参数不能在 Objective C 中表示
- c# - 我可以利用 ASP.NET Core MVC 框架来验证视图模型,以便在最初查看表单以及提交时显示验证摘要吗?
- javascript - Push 方法不适用于这个 Promise