Share [Tạo 2D Platformer Game với Godot] Phần 23: Chọn Level

huynhsteph

New member
ICS ** Cách tạo nút Lựa chọn cấp độ trong động cơ Godot **

Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách tạo một nút để chọn cấp độ trong động cơ Godot.Chúng tôi sẽ tạo một nút trông giống như một cấp độ trong bản đồ và sau đó khi bạn nhấp vào nó, nó sẽ tải cảnh tương ứng.

### Bước 1: Tạo một cảnh mới

Đầu tiên, chúng ta cần tạo một cảnh mới.Để làm điều này, hãy chuyển đến menu ** tệp ** và chọn ** Mới **.Sau đó, chọn loại ** ** Loại và nhấp vào ** Tạo **.

### Bước 2: Thêm kết cấu và 3 hình chữ nhật

Tiếp theo, chúng ta cần thêm một kết cấu và 3 hình chữ nhật vào hiện trường.Để thực hiện việc này, nhấp vào nút ** Thêm nút ** và chọn ** TextureButton **.Sau đó, kéo và thả kết cấu vào hiện trường.

Tiếp theo, chúng ta cần thêm 3 hình chữ nhật vào hiện trường.Để thực hiện việc này, nhấp vào nút ** Thêm nút ** và chọn ** hình chữ nhật **.Sau đó, kéo và thả hình chữ nhật vào hiện trường.

### Bước 3: Thay đổi kích thước kết cấu và hình chữ nhật

Bây giờ, chúng ta cần thay đổi kích thước kết cấu và hình chữ nhật.Để thực hiện việc này, chọn TextureButton và ReforangLetextures và sử dụng công cụ ** tỷ lệ ** để thay đổi kích thước chúng.

### Bước 4: Định vị lại kết cấu và hình chữ nhật

Bây giờ, chúng ta cần định vị lại kết cấu và hình chữ nhật.Để thực hiện việc này, chọn TextureButton và ReforangLetextures và sử dụng công cụ ** Move ** để định vị lại chúng.

### Bước 5: Thêm nhãn để hiển thị cấp độ

Tiếp theo, chúng ta cần thêm một nhãn để hiển thị cấp độ.Để thực hiện việc này, nhấp vào nút ** Thêm nút ** và chọn nhãn ** **.Sau đó, kéo và thả nhãn vào hiện trường.

### Bước 6: Kết nối các tín hiệu

Bây giờ, chúng ta cần kết nối các tín hiệu.Để thực hiện việc này, chọn TextureButton và nhấp vào nút ** Kết nối **.Sau đó, chọn tín hiệu ** đã nhấn ** và kết nối nó với chức năng ** _ on_hinhtron_pression **.

### Bước 7: Viết tập lệnh

Bây giờ, chúng ta cần viết kịch bản.Để thực hiện việc này, hãy mở tab ** script ** và dán mã sau:

`` `
mở rộng kiểm soát

xuất (chuỗi) var MapName
xuất cảnh (chuỗi, tệp) var
Xuất (Chuỗi) Cấp độ var

OnReady var Ngoisaovang = preload ("res: // tài sản/levelMap/3 ui/star1.png")
var sodiem = 0

func _Ready ():
$ Solevel.text = Level

func _process (delta):
Nếu sodiem> = 1 và sodiem <= 30:
$ NGOISAO1.Texture = NGOISAOVANG
Elif Sodiem> = 30 và Sodiem <= 95:
$ NGOISAO1.Texture = NGOISAOVANG
$ NGOISAO22.Texture = NGOISAOVANG
Elif Sodiem> = 95:
$ NGOISAO1.Texture = NGOISAOVANG
$ NGOISAO22.Texture = NGOISAOVANG
$ NGOISAO33.Texture = NGOISAOVANG

func _on_hinhtron_pression ():
get_tree (). Change_scene (cảnh)
`` `

### Bước 8: Lưu cảnh

Bây giờ, chúng ta cần lưu cảnh.Để thực hiện việc này, nhấp vào menu ** Tệp ** và chọn ** Lưu **.

### Bước 9: Chạy trò chơi

Bây giờ, chúng ta có thể chạy trò chơi.Để làm điều này, nhấp vào nút ** chạy **.

### Kết quả

Khi bạn chạy trò chơi, bạn sẽ thấy kết quả sau:

[! [Kết quả] ( )] ( )

Như bạn có thể thấy, chúng tôi đã tạo thành công một
=======================================
ics **How to create a level selection button in Godot Engine**

In this tutorial, I will show you how to create a button to select the level in Godot Engine. We will create a button that looks like a level in the map and then when you click on it, it will load the corresponding scene.

### Step 1: Create a new scene

First, we need to create a new scene. To do this, go to the **File** menu and select **New**. Then, select the **Scene** type and click **Create**.

### Step 2: Add a TextureButton and 3 RectangleTextures

Next, we need to add a TextureButton and 3 RectangleTextures to the scene. To do this, click on the **Add Node** button and select **TextureButton**. Then, drag and drop the TextureButton onto the scene.

Next, we need to add 3 RectangleTextures to the scene. To do this, click on the **Add Node** button and select **RectangleTexture**. Then, drag and drop the RectangleTextures onto the scene.

### Step 3: Resize the TextureButton and RectangleTextures

Now, we need to resize the TextureButton and RectangleTextures. To do this, select the TextureButton and RectangleTextures and use the **Scale** tool to resize them.

### Step 4: Reposition the TextureButton and RectangleTextures

Now, we need to reposition the TextureButton and RectangleTextures. To do this, select the TextureButton and RectangleTextures and use the **Move** tool to reposition them.

### Step 5: Add a label to display the level

Next, we need to add a label to display the level. To do this, click on the **Add Node** button and select **Label**. Then, drag and drop the Label onto the scene.

### Step 6: Connect the signals

Now, we need to connect the signals. To do this, select the TextureButton and click on the **Connect** button. Then, select the **pressed** signal and connect it to the **_on_hinhtron_pressed** function.

### Step 7: Write the script

Now, we need to write the script. To do this, open the **Script** tab and paste the following code:

```
extends Control

export (String) var Mapname
export (String, File) var Scene
export (String) var Level

onready var Ngoisaovang = preload("res://Assets/Levelmap/3 UI/Star1.png")
var sodiem = 0

func _ready():
$Solevel.text = level

func _process(delta):
if sodiem >= 1 and sodiem <= 30:
$Ngoisao1.texture = ngoisaovang
elif sodiem >= 30 and sodiem <= 95:
$Ngoisao1.texture = ngoisaovang
$Ngoisao2.texture = ngoisaovang
elif sodiem >= 95:
$Ngoisao1.texture = ngoisaovang
$Ngoisao2.texture = ngoisaovang
$Ngoisao3.texture = ngoisaovang

func _on_hinhtron_pressed():
get_tree().change_scene(scene)
```

### Step 8: Save the scene

Now, we need to save the scene. To do this, click on the **File** menu and select **Save**.

### Step 9: Run the game

Now, we can run the game. To do this, click on the **Run** button.

### Result

When you run the game, you will see the following result:

[![Result](https://i.imgur.com/993584f.png)](https://i.imgur.com/993584f.png)

As you can see, we have successfully created a
 
Join Telegram ToolsKiemTrieuDoGroup
Back
Top