‫Chào mừng trở lại.
‫Trong video này, chúng tôi sẽ tạo đồng hồ đếm ngược để người chơi biết họ phải đợi bao
‫lâu trước khi có thể bắt đầu di chuyển xe tăng của mình và thổi tung đồ đạc.
‫Vì vậy, chúng tôi sẽ hiển thị thời gian còn lại trong đồng hồ đếm ngược cho đến khi trò chơi bắt đầu.
‫Vì vậy, chúng ta hãy nhảy vào trình soạn thảo và bắt đầu thực hiện việc này.
‫Bây giờ tôi đang ở đây trong Bản thiết kế widget, Tiện ích trò chơi BP Start của chúng tôi, và đây là trình chỉnh sửa tiện ích như chúng ta
‫đã thấy.
‫Nhưng bạn có thể nhận thấy ở trên cùng bên phải, có hai tab ở đây, một tab cho biết nhà thiết kế.
‫Đó là những gì chúng ta đang ở ngay bây giờ và một trong đó nói lên đồ thị.
‫Và nếu bạn nhấp vào biểu đồ, nó trông giống một biểu đồ sự kiện kế hoạch chi tiết hơn với các nút sự kiện và tab kế hoạch chi
‫tiết của tôi ở đây với nhiều phần khác nhau.
‫Và đây là nơi chúng ta có thể thực hiện logic kế hoạch chi tiết.
‫Bây giờ chúng ta có ba nút ở đây.
‫Chúng tôi có cấu trúc trước sự kiện.
‫Điều này tương tự như một hàm tạo trong C ++ và sau đó chúng ta có một cấu trúc sự kiện tương tự như bắt đầu chơi.
‫Vì vậy, đây là nơi thích hợp hơn để làm những việc ở đầu trò chơi vì tất cả các lớp
‫liên quan được xây dựng tại thời điểm này và sau đó chúng ta có đánh dấu sự kiện.
‫Và cũng giống như chức năng đánh dấu trong C ++, chúng ta có quyền truy cập vào thời gian Delta ở đây.
‫Bây giờ chúng tôi sẽ không sử dụng hai nút đầu tiên, vì vậy tôi sẽ đánh dấu chúng và xóa chúng và
‫chúng tôi sẽ sử dụng công nghệ sự kiện.
‫Bây giờ, mục tiêu của chúng tôi cho video này là hiển thị thời gian còn lại và chúng tôi có đồng hồ
‫đếm ngược ba giây trong C ++.
‫Chúng tôi đã tạo một tay cầm hẹn giờ và chúng tôi sử dụng trình quản lý hẹn giờ thế giới để bắt đầu hẹn giờ.
‫Mọi thứ chúng tôi làm ở đây trong bản thiết kế đều độc lập với điều đó.
‫Chúng tôi đang tạo ra một hệ thống logic hoàn toàn khác ở đây và nó sẽ trùng với bộ đếm thời gian mà chúng
‫tôi đã đặt trong C ++.
‫Vì vậy, tất cả điều này là khác nhau và độc lập với phía C ++.
‫Bây giờ ở đây trong tiện ích bắt đầu trò chơi WB, chúng ta có thể thêm các biến giống như chúng ta có thể thêm các biến trong C ++ ngay tại
‫đây.
‫Trong bản thiết kế của mình, tôi có thể nhấp vào thêm và chọn biến và bây giờ tôi có một biến được gọi là new
‫var underscore zero.
‫Và dưới đây trong bảng chi tiết, khó hiểu ở phía bên trái, bây giờ chúng ta có tên
‫biến và loại biến.
‫Bây giờ nó được đánh dấu theo mặc định vì bạn chỉ cần đổi tên các biến của mình ngay sau
‫khi bạn tạo chúng.
‫Vì vậy, chúng tôi không cần tên mặc định này.
‫Chúng tôi sẽ gọi đây là tên riêng của chúng tôi.
‫Tôi sẽ gọi nó là Đếm ngược.
‫Và Countdown sẽ là một biến float Y vì nó sẽ theo dõi lượng thời gian chúng ta
‫còn lại.
‫Tôi sẽ bắt đầu nó ở 3 giây và mỗi khung hình, tôi sẽ trừ đi lượng thời gian đã trôi qua
‫kể từ khung hình trước đó.
‫Vì vậy, chúng tôi nhận được một đếm ngược đi từ ba trở xuống.
‫Bây giờ tôi sẽ nhấp vào Biên dịch.
‫Bây giờ, ngay sau khi tôi nhấp vào biên dịch, tôi có thể đặt giá trị này mặc định bằng cách cuộn xuống phần chi tiết.
‫Bảng điều khiển, nó được đặt thành 0 theo mặc định.
‫Tôi sẽ đặt nó thành ba theo mặc định vì chúng tôi có đếm ngược ba giây.
‫Hiện tại là thời điểm hiện tại, đây chỉ là một phao đếm ngược có giá trị là ba.
‫Chúng tôi chưa thực sự thay đổi nó, nhưng mỗi khung hình của trò chơi, tôi muốn trừ đi thời gian
‫Delta, là lượng thời gian đã trôi qua kể từ khung trước đó.
‫Và bằng cách đó, Đếm ngược sẽ liên tục cập nhật sự giảm dần theo thời gian Delta để chúng tôi có số lượng
‫thời gian chạy.
‫Bây giờ, đây là cách chúng tôi có thể làm điều đó.
‫Tôi sẽ đếm ngược từ tab Kế hoạch chi tiết của tôi, nhấp và kéo nó vào đây vào biểu đồ sự kiện và
‫phát hành.
‫Bây giờ, ngay sau khi tôi phát hành, tôi có hai lựa chọn.
‫Nhận Đếm ngược và đặt đếm ngược.
‫Nếu tôi nhấp vào Nhận Đếm ngược, bây giờ tôi có ghi chú đếm ngược và nếu tôi nhấp và kéo ra khỏi đầu ra của nó,
‫điều này cho phép tôi truy cập vào giá trị của Đếm ngược.
‫Bây giờ tôi cũng có thể nhấp vào Đếm ngược, kéo vào và nhấp vào Đặt Đếm ngược và chúng ta có một nút đã đặt.
‫Chúng tôi đã thấy cả hai điều này trước đây.
‫Trong các video trước đó, chân đầu vào cho bộ định tuyến cho phép chúng ta cắm giá trị float và sau đó bộ đếm ngược
‫sẽ được đặt thành giá trị đó.
‫Vậy làm cách nào để chúng ta thực sự trừ thời gian Delta ra khỏi Đếm ngược và sau đó đặt nó thành giá trị đếm ngược?
‫Chà, chúng ta có thể lấy nút đếm ngược của mình ở đây và tôi có thể nhấp và kéo nó ra và gõ biểu
‫tượng dấu trừ trên bàn phím của mình và chọn nút Trừ.
‫Nếu tôi chọn nó, thì bây giờ tôi có một nút float trừ float hoặc một nút trừ.
‫Bạn sẽ thấy nó nói Target là Thư viện Toán học Kismet.
‫Điều đó cho bạn biết rằng Thư viện Toán học Kismet làm nền tảng cho nút này.
‫Tất cả các nút đều có mã C ++ ở lõi của chúng.
‫Vì vậy, những gì nút này làm là nó có hai đầu vào.
‫Nó cần một đầu vào float.
‫Và nó cần một đầu vào float thứ hai.
‫Bây giờ, nó sẽ không thay đổi bất kỳ biến nào mà chúng ta đang chuyển vào.
‫Nó chỉ đơn giản là thực hiện một phép tính và trả về giá trị đó là kết quả của phép trừ.
‫Bây giờ tôi muốn đếm ngược và trừ thời gian Delta khỏi nó để tôi có thể lấy chân đầu ra được gọi
‫trong thời gian Delta từ nút đánh dấu sự kiện và cắm thẳng nó vào đầu vào thứ hai trong nút trừ của
‫tôi.
‫Vì vậy, những gì tôi đang làm là tôi đang đếm ngược trừ đi thời gian delta và sau đó điều này nhận được kết quả.
‫Bây giờ đếm ngược ban đầu là 3 giây và thời gian delta là một giá trị rất nhỏ.
‫Đó là lượng thời gian tính bằng giây đã trôi qua kể từ khung hình cuối cùng.
‫Vì vậy, đây sẽ là một số tiền nhỏ.
‫Vì vậy, kết quả lần đầu tiên điều này được thực thi là ba trừ đi một lượng nhỏ.
‫Và những gì tôi muốn làm là đặt giá trị đếm ngược bằng với kết quả đó, mỗi khung hình.
‫Vì vậy, mỗi khung đếm ngược đang được trừ đi từng chút một.
‫Và bằng cách đó, nó sẽ giữ cho bộ đếm ngược từ 3 giây đi xuống.
‫Vì vậy, tôi sẽ lấy kết quả trả về từ nút trừ này và cắm nó vào đầu vào cho
‫nút đếm ngược đã đặt.
‫Bây giờ, điều này sẽ không thực hiện được gì nếu tôi không kết nối dây thực thi từ sự kiện, đánh dấu vào
‫chân thực thi với chân đầu vào để đặt bộ đếm ngược.
‫Vì vậy, bây giờ điều này đang làm là mỗi khung hình trừ thời gian Delta khỏi Đếm ngược, lấy
‫kết quả đó và đặt đếm ngược thành giá trị mới đó.
‫Bây giờ chúng ta có thể thấy điều này hoạt động như thế nào với một nút chuỗi in.
‫Vì vậy, tôi sẽ kéo chuỗi in loại setter ra và lấy một nút chuỗi in.
‫Và sau đó, tôi muốn in giá trị đếm ngược để tôi có thể lấy giá trị trả về từ bộ cài đặt, giá trị
‫này sẽ cung cấp cho chúng tôi giá trị mới của bộ đếm ngược mỗi khung và cắm nó vào nút trong chuỗi.
‫Và lưu ý rằng tôi thấy một chuyển đổi float thành chuỗi và nếu tôi phát hành ngay bây giờ, tôi sẽ nhận được một nút chuyển đổi sẽ lấy
‫float của tôi, chuyển đổi nó thành một chuỗi và bây giờ chúng ta có thể in nó ra màn hình.
‫Bây giờ chúng ta hãy xem điều gì sẽ xảy ra nếu tôi nhấn play.
‫Kiểm tra đó ra.
‫Chúng tôi thấy rằng số lượng đó được ghi lại từng khung hình và chúng tôi đang gửi thư rác vào màn hình với giá trị đếm ngược và
‫nó ngày càng trở nên tiêu cực hơn.
‫Vì vậy, đây là bước đầu tiên để đồng hồ đếm ngược của chúng tôi hoạt động.
‫Tôi sẽ đóng nó ngay bây giờ.
‫Chúng tôi thấy rằng chúng tôi đang in một giá trị float có một loạt các dấu thập phân.
‫Và một khi chúng tôi in giá trị ra màn hình, chúng tôi không thực sự muốn dấu thập phân, chúng tôi muốn một số nguyên.
‫Vì vậy, tôi muốn xem số giây còn lại mà không có các chữ số ở cuối bên phải của dấu thập
‫phân.
‫Vì vậy, những gì tôi cần là một số nguyên.
‫Vâng, những gì tôi có thể làm là tôi sẽ xóa nút chuyển đổi này và
‫tôi sẽ lấy kết quả của bộ đếm ngược và tôi sẽ nhập C E Tôi sẽ niêm phong, viết tắt của từ niêm phong.
‫Hoạt động niêm phong sẽ lấy một giá trị float và làm tròn nó đến số nguyên gần nhất.
‫Vì vậy, nếu chúng ta đang ở tuổi ba, tốt, không cần phải làm tròn.
‫Nó sẽ trả về một số nguyên có giá trị là ba.
‫Nhưng nếu chúng ta đang ở tuổi 2. 9, chẳng hạn, sau đó nút con dấu sẽ làm tròn nó lên đến ba.
‫Và khi giá trị đó giảm xuống, nó sẽ tiếp tục trả về ba cho đến khi chúng tôi giảm xuống còn hai.
‫Vì vậy, chúng tôi sẽ luôn nhận được một số nguyên.
‫Bây giờ tôi có thể cắm cái này vào chuỗi in và bạn sẽ thấy nó nói Chuyển đổi số nguyên thành chuỗi.
‫Vì vậy, bây giờ nút niêm phong đang lấy một số float, làm tròn nó đến số nguyên gần nhất và trả về giá trị số
‫nguyên đó.
‫Vì vậy, bây giờ nếu tôi nhấn play, chúng tôi sẽ thấy rằng chúng tôi nhận được 3: 1 và không.
‫Và tất nhiên nó tiếp tục đi xuống bởi vì chúng tôi không bao giờ nói điều này thực sự dừng lại.
‫Nhưng đây là một khởi đầu tuyệt vời vì bây giờ chúng ta có quyền truy cập vào số giây còn lại và chúng ta
‫có thể in thứ gì đó ra màn hình để đáp ứng.
‫Vậy làm cách nào để in thông báo chính xác ra màn hình?
‫Điều tôi muốn làm là khi chúng ta còn 3 giây nữa, tôi muốn tiện ích nói rằng, Hãy sẵn sàng.
‫Khi chúng ta còn 2 giây nữa, tôi muốn bạn chỉ số hai.
‫Khi chúng ta còn một giây, tôi muốn thể hiện số một.
‫Và khi chúng ta còn 0 giây, tôi muốn tin nhắn là Bắt đầu.
‫Chúng ta có thể làm điều này với một nút chuyển đổi Các nút chuyển đổi có thể chuyển đổi trên một số loại khác nhau, bao gồm cả
‫INT.
‫Bây giờ cách mà một công tắc trên nút int hoạt động là nó có một số trường hợp cho một số giá trị.
‫Và dựa trên giá trị mà chúng ta truyền vào nút chuyển đổi này, nó sẽ thực hiện một trong số những việc.
‫Ví dụ, nếu chúng ta chuyển vào giá trị số nguyên ba, thì chúng ta nhận được trường hợp ba sẽ dẫn
‫đến điều thứ ba được thực hiện.
‫Vì vậy, nút chuyển trên nút kết thúc có nhiều dòng thực thi và nó sẽ chỉ thực thi một trong số chúng dựa trên.
‫Đầu vào.
‫Bây giờ chúng ta có thể sử dụng một công tắc trên nút int và chuyển vào một số nguyên, chẳng hạn như kết quả của nút dấu của chúng ta.
‫Vì vậy, tôi sẽ loại bỏ chuỗi in và tôi sẽ kéo nút đếm ngược và gõ công
‫tắc vào INT và chọn công tắc trên int.
‫Bây giờ lưu ý rằng nó nhận một đầu vào kiểu số nguyên.
‫Tôi sẽ chuyển giá trị trả về từ nút niêm phong và cũng lưu ý rằng chúng tôi có tùy chọn thêm ghim.
‫Nếu chúng tôi nhấp vào đó, bạn sẽ thấy rằng chúng tôi nhận được một ghim mặc định ngoài đầu ra cho biết số không.
‫Điều này nói lên điều này là nếu chúng ta nối một số logic kế hoạch chi tiết từ chân thực thi số không, thì logic đó
‫sẽ được thực thi.
‫Nếu giá trị đầu vào được chuyển vào bằng 0 và nếu nó không tốt, thì nó sẽ mặc định là chân thực thi
‫này.
‫Bây giờ chúng tôi có thể nhấp vào thêm ghim một lần nữa và bây giờ chúng tôi không có và một.
‫Vì vậy, chúng ta có thể có hai dòng thực thi, một cho 0 và một cho một.
‫Và sau đó nếu đầu vào không phải là 0 hoặc một, thì bất kỳ thứ gì được nối với mặc định sẽ được thực thi.
‫Tôi sẽ nhấp vào dấu cộng thêm hai lần nữa.
‫Vì vậy, chúng tôi có các trường hợp từ 0 đến 3 và một trường hợp mặc định.
‫Vì vậy, bây giờ tùy thuộc vào chúng tôi để loại bỏ điều này và thêm một số logic kế hoạch chi tiết mà chúng tôi muốn thực thi
‫dựa trên giá trị được truyền vào mà chúng tôi nhận được từ nút SEAL này.
‫Và đó là những gì tôi muốn bạn làm cho thử thách của bạn.
‫Tôi muốn bạn in các thông báo khác nhau cho từng trường hợp bằng cách sử dụng nút chuỗi in cho giá trị ba mà bạn
‫có thể in sẵn sàng bằng cách sử dụng nút chuỗi in.
‫Đối với trường hợp hai, bạn có thể chỉ cần in giá trị hai cho trường hợp một, bạn có thể in một
‫và đối với trường hợp 0, bạn có thể in ngay bây giờ cho trường hợp mặc định, chỉ cần in bắt đầu trò chơi với nút chuỗi in của
‫chúng tôi.
‫Tạm dừng video và thêm toàn bộ các nút chuỗi in trong biểu đồ sự kiện ngay bây giờ.
‫Được chứ.
‫Vì vậy, tôi muốn tiếp tục và sử dụng nút chuỗi in và tôi sẽ bắt đầu ở đây ở phía dưới
‫cho trường hợp mặc định và tôi sẽ nhập chuỗi in.
‫Và chuỗi tôi muốn in là bắt đầu trò chơi.
‫Bây giờ, đây là một phím tắt.
‫Nếu bạn không biết với nút chuỗi in được chọn, tôi có thể di chuột đến nơi khác trong
‫biểu đồ sự kiện và nhấn điều khiển dx và điều đó sẽ sao chép nút mà tôi đã chọn.
‫Tôi sẽ nối ba trường hợp với nút chuỗi in này và tôi sẽ nhập chuẩn bị sẵn sàng.
‫Vì vậy, khi đầu vào cho công tắc là ba, chúng ta sẽ thấy.
‫Chuẩn bị sẵn sàng, được in ra màn hình.
‫Bây giờ tôi sẽ điều khiển DX một lần nữa và nối nó với hai trường hợp và đối với hai trường hợp, tôi chỉ đơn giản là
‫sẽ in hai. Bây giờ tôi sẽ sao chép nút chuỗi in và đối với một, tôi sẽ in giá trị một.
‫Và cuối cùng, một nút chuỗi in cuối cùng ở đây sẽ được kết nối với trường hợp 0 và điều
‫này sẽ nói lên đi.
‫Được chứ.
‫Vì vậy, hãy tiếp tục và biên dịch cái này và tôi sẽ bắt đầu chơi và bây giờ tôi đã sẵn sàng, hai, một
‫và bắt đầu.
‫Và tất nhiên chúng ta sẽ thấy trò chơi bắt đầu sau khi hết thời gian.
‫Vì vậy, chúng tôi biết rằng giá trị đang giảm và ngày càng trở nên tiêu cực hơn, nhưng đó là trường hợp mặc định cho công tắc
‫của chúng tôi và đó là lúc chúng tôi biết mình thực sự có thể bắt đầu trò chơi.
‫Vì vậy, đây là bước đầu tiên để hiển thị đồng hồ đếm ngược trong tiện ích của chúng tôi.
‫Chúng tôi không hoàn toàn thay đổi văn bản cho biết Hãy sẵn sàng, nhưng chúng tôi sẽ sớm thực hiện điều đó.
‫Vì vậy, trong video này, chúng tôi đã tạo Logic đếm ngược và thêm nó vào bản thiết kế widget của chúng tôi.
‫Chúng tôi đã sử dụng chuỗi in để hiển thị các giá trị đếm ngược của chúng tôi và in một thông báo khác.
‫Dựa trên các giá trị đếm ngược của chúng tôi.
‫Chúng tôi vẫn cần đặt văn bản trong tiện ích và chúng tôi sẽ thực hiện điều đó trong video tiếp theo.
‫Tôi sẽ gặp bạn sớm.