[手把手带你Godot游戏开发]FlappyBird:5.2 无尽水管子滚滚来(二)未完待续

在开始本部分之前,建议大家再重温一下原版游戏。在这个章节我们将实现以下功能

  • 自动销毁
    我们想办法把已经滚出屏幕的水管子自动销毁,它们对游戏已经没有意义了
  • 随机
    滚滚而来的水管子,应该是上下参差不齐的
  • 加分触发
    小鸟每通过一对水管子,要加一分,这是游戏的核心机制之一,虽然积分系统还没有实现,但是我们首先要能获取到这个事件

在这里插入图片描述

在这里插入图片描述

#Pipe.gd
extends Node2D

func _process(delta):
	position += Vector2.LEFT*200.0*delta
	if position.x < 0:
		queue_free()

#Pipe.gd
extends Node2D

func _ready():
	position.y += randf()*300-150

func _process(delta):
	position += Vector2.LEFT*200.0*delta
	if position.x < 0:
		queue_free()

#ScoreArea.gd

extends Area2D

func _ready():
	connect("body_exited",self,"_on_body_exited")
func _on_body_exited(body):
	if body.name == "Bird":
		print("得分!!!!")
发布了373 篇原创文章 · 获赞 998 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/hello_tute/article/details/104919515