• Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
AnonyViet
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
No Result
View All Result
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
No Result
View All Result
AnonyViet
No Result
View All Result

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level

DeathGM by DeathGM
29/11/2021
in Godot
Reading Time: 4 mins read
A A
1

Mục lục bài viết

  1. Menu khi hết level
    1. Copy Scene
    2. Script
  2. Tổng Kết

Trong phần này, mình sẽ hướng dẫn bạn cách để tạo menu khi ban chơi xong một level và nó sẽ có thể di chuyển sang level kế tiếp, chơi lại và quay về menu Level Map.

 

Các bài viết liên quan

Có nên dùng Unity để lập trình game không? 59

Có nên dùng Unity để lập trình game không?

07/04/2022
godot lap trinh game

Có nên học Godot Engine để lập trình Game không?

15/03/2022 - Updated on 17/03/2022
hoc lap trinh game de khong

Học lập trình Game dễ không? Tiềm năng của ngành lập trình game?

09/03/2022
Có nên dùng Game Maker Studio để làm Game trong năm không? 60

Có nên dùng Game Maker Studio để làm Game trong năm không?

03/03/2022

Menu khi hết level

Copy Scene

Thì thay vì phải tạo lại từ đầu, bạn có thể duplicate 1 scene mới từ scene pause menu.

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level

Bạn tìm pause menu ở filesystem chuột phải nhấn duplicate

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 46

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 47

 

Mình sẽ rename nó lại là EndLevelMenu
[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 48

 

Rồi bạn xoá mấy node kia và chừa lại như hình, mình đổi tên luôn NutTepTuc thành LevelKeTiep

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 49

 

Chỉnh lại text ở TieuDe
[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 50

Bạn sẽ clear cái script cũ đi bằng cách nhấn nút có cái tờ giấy mà có dấu x[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 51 [Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 52

Sau đó tạo cái mới.[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 53

Rồi 3 cái nút thì bạn disconnect đi vì nó đang kết nối với script cũ.

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 54

Rồi connect lại 3 cái mới.

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 55

Rồi Instance EndLevelMenu vào Map.

Rồi các bạn nhớ là hide cái EndLevelMenu mà thuộc loại Control Node đi ấy.

Script

extends CanvasLayer



onready var level = get_parent().get_node("KhuVucDiChuyen")

func _on_NutLevelKeTiep_pressed():
    get_tree().paused = false
    get_tree().change_scene(level.LevelKeTiep)
    pass # Replace with function body.

func _on_NutChoiLai_pressed():
    get_tree().paused = false
    get_tree().reload_current_scene()
    print("choi lai")
    pass # Replace with function body.


func _on_NutVeMenu_pressed():
    get_tree().paused = false
    get_tree().change_scene("res://Scences/Map/LevelMap.tscn")
    pass # Replace with function body.

Đây là đoạn code của script EndLevelMenu.

2 tín hiệu của nút chơi lại và về menu mình sẽ giữ nguyên.

Đối vơi LevelKeTiep để tiết kiệm thời gian thay vì mình phải tự setup coi nó di chuyển đến level nào kế tiếp thì mình sẽ lấy nó luôn. Ở node KhuVucDiChuyen mình đã có tạo 1 biến là LevelKeTiep và nó mang dữ liệu của scene kế tiếp nên là mình sẽ gọi cái biến đó thay vì làm thủ công.

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 56

onready var level = get_parent().get_node("KhuVucDiChuyen"): là mình khai báo xong gán nó bằng nút parent của EndLevelMenu ( như trên ảnh) và từ nút parent đó mình có thể truy cập vào node KhuVucDiChuyen để lấy dữ liệu của biến LevelKeTiep.

extends Area2D


export (String,FILE) var LevelKeTiep
onready var endlevelmenu = get_parent().get_node("EndLevelMenu")

func _on_KhuVucDiChuyen_body_entered(body):
    if body.name == "Player":
#		get_tree().change_scene(LevelKeTiep)
        endlevelmenu.get_node("EndLevelMenu").show()
        get_tree().paused = true

Ở phần script của KhuVucDIChuyen mình có đổi lại 1 xíu.

Ở đây, thay vì là di chuyển sang level kế tiếp như thường lệ thì mình sẽ cho nó hiển thị cái EndLevelMenu lên và sau đó thì dừng tree lại như ở pausemenu.

Nếu bạn nào thắc mắc tại sao mình lại get_node() 2 cái EndLevelMenu thì hãy nhìn vào như hình dưới.[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 57

Mình gọi 2 cái EndLevelMenu là vì mình có 2 node đó :).

[Tạo 2D Platformer Game với Godot] Phần 25: Tạo Menu khi hết Level 58

Và đây là kết quả của mình

Tổng Kết

Trong phần tiếp, mình sẽ hướng dẫn bạn cách để thống kê điểm số sau khi thu thập đồng xu và khi ra ngoài LevelMap bạn sẽ có được số sao tương ứng với số điểm.

 

 

 

 

Tags: Godotlập trình gamethiết kế game
Previous Post

9 ứng dụng hay giúp điện thoại Android của bạn tối ưu hơn

Next Post

Rootkit là gì? Bạn có thể bảo vệ thiết bị của mình bằng cách nào?

DeathGM

DeathGM

Related Posts

godot lap trinh game
Godot

Có nên học Godot Engine để lập trình Game không?

15/03/2022 - Updated on 17/03/2022
[Tạo 2D Platformer Game với Godot] Phần 29: Lưu và load dữ liệu game 61
Godot

[Tạo 2D Platformer Game với Godot] Phần 29: Lưu và load dữ liệu game

09/12/2021
[Tạo 2D Platformer Game với Godot] Phần 28: Thêm âm thanh giao diện 62
Godot

[Tạo 2D Platformer Game với Godot] Phần 28: Thêm âm thanh giao diện

08/12/2021
[Tạo 2D Platformer Game với Godot] Phần 27: Mở khoá level 63
Godot

[Tạo 2D Platformer Game với Godot] Phần 27: Mở khoá level

07/12/2021
[Tạo 2D Platformer Game với Godot] Phần 26: Thêm điểm số khi hết game 64
Godot

[Tạo 2D Platformer Game với Godot] Phần 26: Thêm điểm số khi hết game

30/11/2021
[Tạo 2D Platformer Game với Godot] Phần 24: Tạo Pause Menu 65
Godot

[Tạo 2D Platformer Game với Godot] Phần 24: Tạo Pause Menu

28/11/2021
Next Post
rootkit la gi

Rootkit là gì? Bạn có thể bảo vệ thiết bị của mình bằng cách nào?

guest
guest

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.

1 Comment
oldest
newest
Inline Feedbacks
View all comments
ifon
ifon
7 months ago

lm ve boss di anh

Reply
wpdiscuz   wpDiscuz

Liên hệ Quảng Cáo

Lien he AnonyViet

Đối tác —

Fshare

Các bài mới

API Security 101: Injection 66

API Security 101: Injection

02/07/2022
DDosify - Công cụ kiểm tra sức chịu tải DDoS của Website 67

DDosify – Công cụ kiểm tra sức chịu tải DDoS của Website

01/07/2022
Danh sách các lệnh Linux bạn cần phải biết 68

Danh sách các lệnh Linux bạn cần phải biết

30/06/2022
Cách ẩn Code HTML không cho người khác View Source 69

Cách ẩn Code HTML không cho người khác View Source

29/06/2022
Cách cài Windows 11 không cần tài khoản Microsoft bằng Rufus 70

Cách cài Windows 11 không cần tài khoản Microsoft bằng Rufus

28/06/2022

Ads

Giới thiệu

AnonyViet

AnonyViet

Nơi chia sẻ những kiến thức mà bạn chưa từng được học trên ghế nhà trường!

Chúng tôi sẵn sàng đón những ý kiến đóng góp, cũng như bài viết của các bạn gửi đến AnonyViet.

Hãy cùng AnonyViet xây dựng một cộng đồng CNTT lớn mạnh nhất!

Giới thiệu

AnonyViet là Website chia sẻ miễn phí tất cả các kiến thức về công nghệ thông tin. AnonyViet cung cấp mọi giải pháp về mạng máy tính, phần mềm, đồ họa và MMO.

Liên hệ

Email: anonyviet.com[@]gmail.com

1409 Hill Street #01-01A
Old Hill Street Police Station
Singapore 179369

 

Bản quyền: DMCA.com Protection Status

Bài viết mới

  • API Security 101: Injection
  • DDosify – Công cụ kiểm tra sức chịu tải DDoS của Website
  • Danh sách các lệnh Linux bạn cần phải biết
  • Cách ẩn Code HTML không cho người khác View Source
  • Cách cài Windows 11 không cần tài khoản Microsoft bằng Rufus
  • Cách xem lại mật khẩu Wifi trên Andorid, iPhone và máy tính

©2022 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về Công nghệ. Google iwin888 Bing tải game iwin Github tải iwin apk Github tải win456 Youtube ku fun wikipedia 88vin reddit twin 92lottery sun86 stackoverflow tool tài xỉu 68 club 68 game bài

No Result
View All Result
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC

©2022 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về Công nghệ. Google iwin888 Bing tải game iwin Github tải iwin apk Github tải win456 Youtube ku fun wikipedia 88vin reddit twin 92lottery sun86 stackoverflow tool tài xỉu 68 club 68 game bài

wpDiscuz
pixel