‫Xin chào và chào mừng.
‫Trong bài giảng này, chúng ta sẽ bắt đầu thêm nhiều chức năng hơn nữa vào cây hành vi của mình bằng cách
‫thêm một tác vụ tùy chỉnh, giá trị bảng đen rõ ràng này, chúng ta sẽ làm cho điều đó hoàn toàn tùy chỉnh
‫trong C ++.
‫Hãy đi sâu vào và xem làm thế nào để làm điều đó.
‫Được chứ.
‫Vì vậy, tôi muốn mở rộng hành vi của cây hành vi này để chúng ta có thể điều tra.
‫Và khi chúng tôi điều tra xong, chúng tôi sẽ tiếp tục trở về nhà.
‫Vì vậy, tôi sẽ thêm một chút chuyển sang nhiệm vụ ở đây sau đó, điều này chỉ đưa chúng ta trở lại vị trí bắt đầu.
‫Và những gì chúng ta cần làm để đến được đó là có một số khái niệm về việc chúng ta đã đến địa điểm chơi
‫được biết gần đây nhất hay chưa.
‫Và cách tôi sẽ làm điều đó về cơ bản là đặt vị trí người chơi được biết cuối cùng sau khi chúng tôi đã điều
‫tra xong, nếu hiện tại chúng tôi không có cách nào để thực hiện điều đó.
‫Nhưng trước hết, hãy tạo trình trang trí.
‫Vì vậy, hãy thêm một người trang trí để điều tra Bảng đen sẽ đi và đổi tên nó thành đã điều tra
‫như vậy và điều này sẽ kiểm tra xem vị trí đã biết cuối cùng đã được đặt chưa.
‫Và điều đó có nghĩa là chúng ta cần có một số loại nút cho phép chúng ta bỏ đặt khóa bảng đen.
‫Bây giờ điều đó không thực sự tồn tại.
‫Bạn chỉ nghĩ rằng nó có, nhưng nó không.
‫Vì vậy, đây là một cơ hội tuyệt vời để tôi chỉ cho bạn cách chúng tôi có thể tạo một tác vụ tùy chỉnh.
‫Bây giờ, bạn có thể làm điều đó rất dễ dàng bằng cách sử dụng Blueprint, hoặc tôi sẽ chỉ cho bạn cách khó hơn một chút, nhưng cách
‫cung cấp cho bạn rất nhiều sức mạnh, đó là thực hiện điều đó thông qua C ++.
‫Vì vậy, chúng ta sẽ chuyển sang trình duyệt nội dung chính của mình, thêm mới và chuyển đến lớp C ++ mới và chúng ta sẽ
‫muốn hiển thị hộp kiểm tất cả các lớp.
‫Và sau đó chúng tôi đang tìm kiếm Beat Task và có rất nhiều tùy chọn ở đây.
‫Bạn có thể thấy rất nhiều trong số chúng thực sự là những tác vụ được tích hợp sẵn như tạo tiếng ồn hoặc có sự di chuyển đến
‫đây hoặc chờ đợi.
‫Bây giờ bạn có thể đi và xem C ++ để xem chúng được triển khai như thế nào.
‫Điều đó luôn hữu ích, nhưng điều chúng tôi quan tâm là chúng tôi nên kế thừa từ cái gì?
‫Chúng ta nên sử dụng cái gì làm cơ sở cho nút của chính mình?
‫Bây giờ có một số tùy chọn ở đây.
‫Bạn có thể chọn lấy một nút tác vụ làm cơ sở của mình hoặc bạn có thể sử dụng đế bảng đen.
‫Bây giờ sự khác biệt giữa hai là gì?
‫Chúng ta hãy có một cái nhìn nhanh.
‫Vì vậy, hãy chuyển sang thực sự sử dụng đế bảng đen.
‫Và điều đó có nghĩa là nó có trình đơn thả xuống phím bảng đen này cho phép chúng ta chọn một phím bảng đen
‫để làm việc.
‫Điều đó có nghĩa là chúng ta không cần phải viết mã cho tác vụ của mình các phím trên bảng đen mà chúng ta đang làm việc, điều này
‫thật tuyệt vì nó cho phép chúng ta sử dụng lại các tác vụ đó trong các tình huống khác nhau.
‫Vì vậy, nếu bạn cần một phím bảng đen, thì đế bảng đen là một thứ tuyệt vời để đi cùng, nếu không bạn
‫sử dụng cái khác.
‫Vì vậy, chúng ta hãy thêm mới, thêm một lớp C ++ mới một lần nữa, hiển thị tất cả các lớp và chúng tôi đang tìm
‫kiếm nhiệm vụ đánh bại một lần nữa và chúng tôi sẽ chọn lần truy cập Blackboard Base tiếp theo.
‫Bây giờ tôi sẽ đổi tên nó thành Beat Task, Underscore Clear Blackboard Value và chúng ta sẽ tiếp tục
‫tạo lớp đó ở đây.
‫Bây giờ, ban đầu, điều này sẽ thất bại.
‫Vì vậy, hãy nhấp vào có và xem thông báo lỗi ở đây là gì.
‫Nó đang nói điều gì đó về Liên kết, viết tắt của Liên kết, biểu tượng bên ngoài chưa được giải quyết, blah, blah,
‫blah.
‫Thông thường, khi bạn gặp phải loại lỗi này từ trình liên kết, điều này nói rằng bạn có thứ gì
‫đó trong các tệp tiêu đề không có trong C ++ của bạn hoặc trong trường hợp này, điều đó có nghĩa là không có mô-đun nào được đưa
‫vào mà chúng tôi đang dựa vào.
‫Và dựa trên các loại biểu tượng mà nó đang tìm kiếm, tôi có thể thấy đây là giao diện chủ sở hữu tác vụ trò
‫chơi AI.
‫Có vẻ như nó đang tìm kiếm thứ gì đó để làm với các nhiệm vụ trong trò chơi và trên thực tế đó là một mô-đun.
‫Vì vậy, nếu chúng ta xem qua mã Visual Studio của mình và chỉ mở trình duyệt tệp, nó sẽ chỉ cuộn lên
‫dự án của tôi.
‫Sau đó, dưới nguồn game bắn súng đơn giản.
‫Nên có một bản build X game bắn súng đơn giản hoặc bất kể tên dự án của bạn là gì, hãy xây dựng.
‫Và ở đây, nếu tôi cho chúng tôi thêm một chút không gian, bạn có thể thấy rằng chúng
‫tôi có các phụ thuộc công khai này, tên mô-đun và tên mô-đun ở đây mà chúng tôi muốn thêm vào danh sách này sẽ là trò chơi.
‫Nhiệm vụ với một S và nếu chúng ta tiếp tục thêm nó và quay lại và biên dịch ngay bây giờ, hy vọng mọi thứ sẽ
‫biên dịch thành công vì bất kỳ lý do gì.
‫Điều này không tự động được thêm vào khi bạn ghi đè cho một tác vụ khởi động.
‫Bây giờ khi đã hoàn tất, chúng ta hãy xem những gì đã được tạo ra ở đây.
‫Chúng tôi nên có một lớp mới, đó là nhiệm vụ beta của chúng tôi, gạch dưới giá trị bảng đen rõ ràng và nó khá
‫trống vào lúc này.
‫Bây giờ những gì tôi muốn làm là nếu chúng tôi thêm nó vào cây hành vi của chúng tôi vào lúc này, nó sẽ có
‫một cái tên xấu xí.
‫Vì vậy, chúng tôi muốn một cái tên đẹp cho con người có thể đọc được cho nhiệm vụ này.
‫Và cách chúng ta sẽ làm điều này là thêm một hàm tạo và thiết lập một thuộc tính.
‫Vì vậy, hãy tạo một hàm tạo công khai ở đây.
‫Hàm tạo luôn có cùng tên với lớp để chúng ta có thể sao chép nó.
‫Không cần sử dụng bất kỳ đối số nào dấu chấm phẩy ở cuối và sau đó chúng ta hãy tạo quá
‫trình triển khai trong C ++.
‫Và việc thực hiện chỉ cần đặt một biến gọi là tên nút.
‫Vì vậy, nếu bạn đặt tên nút và sau đó bạn sử dụng một chuỗi, thì chuỗi mà chúng ta đặt sẽ là tên nút.
‫Vì vậy, nó sẽ là bảng đen rõ ràng.
‫Giá trị chỉ với khoảng trắng và viết hoa chính xác sẽ đẹp và dễ dàng.
‫Bây giờ, một điều mà tôi đã quên làm tại thời điểm ghi là bao quanh nó bởi macro văn bản.
‫Bây giờ bạn nên tiếp tục và làm điều đó trong mã của mình, nhưng bạn sẽ thấy điều đó trong mã của tôi.
‫Nó sẽ tồn tại mãi mãi như thế này, và chúng ta có thể bắt đầu biên dịch nó ngay bây giờ.
‫Tuyệt vời mà đã biên dịch thành công.
‫Vì vậy, tôi thách thức bạn thêm nút mới này.
‫Vì vậy, hãy thêm nó vào cuối hành vi điều tra và chỉ cần kiểm tra xem nó đã hoàn thành hay chưa.
‫Về cơ bản, nó sẽ tự động hoàn thành mà không cần làm gì cả.
‫Nhưng hãy kiểm tra xem tên đó có chính xác không.
‫Kiểm tra để đảm bảo rằng bạn có thể thêm nó và chúng ta sẽ xem xét việc thêm hành vi trong bài giảng tiếp theo.
‫Vì vậy, hãy tạm dừng video và bắt đầu.
‫Được chứ.
‫Chào mừng trở lại.
‫Vì vậy, chúng ta hãy đi đến kẻ thù A của chúng ta. TÔI. và thêm vào khi kết thúc hành vi điều tra.
‫Chúng tôi sẽ thêm vào giá trị bảng đen rõ ràng của chúng tôi.
‫Bạn có thể thấy nó có một cái tên đẹp ở đó.
‫Và bạn cũng có thể thấy rằng nếu bạn chuyển đến ngăn chi tiết, bạn có thể chọn một phím bảng đen.
‫Chúng tôi sẽ chọn vị trí người chơi đã biết cuối cùng.
‫Mặc dù điều đó chưa thực hiện được gì, nhưng bạn có thể thấy rằng chúng tôi có chức năng đó vì
‫chúng tôi đã kế thừa từ Blackboard Base và hãy kiểm tra xem nó có tự động hoàn thành hay không.
‫Nó nên làm và sau đó nó sẽ tiếp tục.
‫Hãy chuyển nó sang một nhiệm vụ trọng lượng sau đó để chúng ta có thể thấy rằng chỉ cần thực hiện thẳng hoặc hoàn thành một
‫cách tự động.
‫Vì vậy, tôi sẽ chơi. Tôi sẽ đi và ẩn mình vào một góc hết mức có thể, và sau đó tôi sẽ đi xem xét quá
‫trình điều tra đã trải qua và thực sự là anh ấy đã nhìn thấy tôi.
‫Vì vậy, chúng ta hãy đi và ẩn một lần nữa.
‫Đi và trốn quanh góc nếu tôi có thể.
‫Tôi sẽ đi và sau đó tôi sẽ đi đến.
‫Của bạn đây.
‫Nó đi đúng qua giá trị bảng đen rõ ràng, điều đó có nghĩa là nó đã thành công, bởi vì
‫chúng ta biết rằng nếu nó là một chuỗi và nó thất bại, nó phải có nó sẽ dừng lại và không chuyển sang
‫trọng lượng.
‫Vì vậy, đó là hoạt động chính xác.
‫Giá trị thế giới đen rõ ràng chỉ là trả lại thành công ngay lập tức và tiếp tục chờ đợi bài giảng tiếp theo, chúng
‫ta sẽ xem xét cách chúng ta thực sự có thể thêm vào chức năng.
‫Tôi sẽ gặp bạn ở đó.