Sử dụng instance variable để lưu trữ và hiển thị đoạn hội thoại

Có một cách đơn giản để hiện thị các văn bản khác nhau là sử dụng instance variable (nếu các bạn chưa biết instance variable là gì thì có thể tham khảo qua các cuốn ebook mình đã dịch). Trong ví dụ này, NPC object có 1 instance variable được gọi là Dialogue. Đó là 1 string variable, chính vì vậy mà ta có thể lưu trữ văn bản vào và sử dụng chúng sau này.

Để đoạn hội thoại hiển thị chỉ cần 1 sự kiện. Về cơ bản, nếu đạt được 1 điều kiện nào đó thì hiển thị hội thoại của NPC. Để đạt được điều kiện nói trên, trong ví dụ này ta sẽ dùng điều kiện is overlapping. Điều này nghĩa nó chỉ nên sử dụng instance variable liên quan khi NPC và Player bị xếp chồng. Do đó:

ĐIỀU KIỆN:

Player > is overlapping NPC

HÀNH ĐỘNG:

Text > Set text to NPC.Dialogue

Sau đó, nếu bạn muốn đoạn hội thoại biến mất khi bạn không giao tiếp với NPC, bạn có thể sử dụng Else:

ĐIỀU KIỆN:

System > Else

HÀNH ĐỘNG:

Text > Set text to “”

Điều này sẽ cài đặt văn bản thành rỗng, vì vậy đoạn hội thoại sẽ không hiển thị gì cả (giống như bị ẩn đi) cho đến khi bạn xếp chồng lên NPC khác. Và đó là tất cả cho phương pháp này. Nếu bạn chỉ cần một vài đối tượng hiển thị văn bản độc nhất, hoặc nếu bạn có nhiều bản sao của 1 đối tượng cần hiển thị cùng 1 văn bản, phương pháp này sẽ hữu ích cho bạn.

Demo Project

here

Nguồn: here – Người dịch: Hà Hoàng Giang

Trả lời