Final BrickBreaker
Kandif
python
2 years ago
1.1 kB
30
Indexable
extends Node2D var score = 0 var lives = 3 onready var player = $Player export var ball:PackedScene export var gameover:PackedScene export var next_level:PackedScene func _ready(): score = Global.score lives = Global.lives $GameLabel/Score.text = "SCORE: "+str(score) $GameLabel/Lives.text = "LIVES: "+str(lives) func _on_Area2D_body_entered(body): if body is RigidBody2D: lives -= 1 $GameLabel/Lives.text = "LIVES: "+str(lives) var ballx = ball.instance() ballx.connect("body_entered",self,"_on_Ball_body_entered") ballx.contact_monitor = true ballx.contacts_reported = 3 add_child(ballx) if player !=null: ballx.global_position = player.get_node("Sprite").global_position + Vector2(0,-30) body.queue_free() if lives==0: get_tree().change_scene_to(gameover) func _on_Ball_body_entered(body): if body.is_in_group("brick"): body.remove_brick() score += 5 $GameLabel/Score.text = "SCORE: "+str(score) if get_tree().get_nodes_in_group("brick").size() == 0: Global.score = score Global.lives = lives get_tree().change_scene_to(next_level)
Editor is loading...