﻿1
00:00:04,360 --> 00:00:05,440
‫Xin chào và chào mừng.

2
00:00:05,440 --> 00:00:09,970
‫Trong bài giảng này, chúng tôi sẽ giới thiệu đoạn mã này ở đây, phạm vi tác nhân RT

3
00:00:09,970 --> 00:00:15,010
‫và xem cách nó cho phép chúng ta lặp lại trên tất cả các tác nhân trong một cấp độ nhất định.

4
00:00:15,010 --> 00:00:16,810
‫Hãy đi sâu vào và xem nó hoạt động như thế nào.

5
00:00:17,410 --> 00:00:24,760
‫Vì vậy, tại thời điểm hiện tại trong chế độ chơi bị giết bởi giết tất cả của chúng ta, trò chơi chúng ta đang gọi là trò chơi đã kết thúc trên bộ điều khiển người chơi nhưng trên thực

6
00:00:24,760 --> 00:00:31,750
‫tế, trò chơi đã kết thúc là một chức năng trên tất cả bộ điều khiển ở đó A. Tôi hoặc bộ điều khiển người chơi và chúng tôi có lẽ

7
00:00:31,750 --> 00:00:38,620
‫nên thông báo cho bộ điều khiển AI rằng trò chơi đã kết thúc và điều đó chắc chắn sẽ xảy ra hoặc điều đó

8
00:00:38,620 --> 00:00:43,210
‫sẽ giúp dễ dàng hơn để thực hiện điều kiện thắng vì chúng tôi sẽ không

9
00:00:43,210 --> 00:00:46,240
‫nhất thiết phải có người chơi cầm đồ đến đây.

10
00:00:46,870 --> 00:00:50,140
‫Vì vậy, làm thế nào để chúng ta tiếp tục và làm điều này?

11
00:00:50,140 --> 00:00:57,160
‫Chà, tôi sẽ tạo một chức năng mới trong chế độ trò chơi KML, một chức năng riêng có tên là End Game, sẽ

12
00:00:57,160 --> 00:00:59,500
‫chịu trách nhiệm về hành động này.

13
00:00:59,500 --> 00:01:02,710
‫Vì vậy, kết thúc trò chơi và nó sẽ cần một số thông tin.

14
00:01:02,710 --> 00:01:04,780
‫Nó sẽ cần phải biết ai đã chiến thắng.

15
00:01:04,780 --> 00:01:06,730
‫Đó là người chơi hay đã là A. TÔI.?

16
00:01:06,760 --> 00:01:11,800
‫Vì vậy, tôi sẽ tạo ra một bool ở đây được gọi là B là người chiến thắng.

17
00:01:12,160 --> 00:01:18,970
‫Và đó sẽ là những gì cho chúng ta biết liệu chúng ta có nên nói với AI rằng nó đã thắng hay nói với người chơi rằng

18
00:01:18,970 --> 00:01:19,930
‫nó đã thắng.

19
00:01:19,930 --> 00:01:22,660
‫Bởi vì hãy nhớ ở đây trò chơi của chúng ta đã kết thúc.

20
00:01:22,660 --> 00:01:26,740
‫Đưa boolean cho người điều khiển biết liệu nó có phải là một trong những người chiến thắng hay không.

21
00:01:27,490 --> 00:01:31,960
‫Vì vậy, những gì chúng ta sẽ phải làm là tìm ra, trước hết, hãy tiếp tục và tạo ra việc triển khai.

22
00:01:31,960 --> 00:01:35,380
‫Vì vậy, tôi sẽ thực hiện thay đổi điều khiển P và sau đó tạo quá trình thực thi.

23
00:01:35,950 --> 00:01:41,650
‫Và sau đó chúng ta sẽ phải tìm ra cách chúng ta có thể tìm thấy tất cả các bộ điều khiển trong cảnh của chúng tôi

24
00:01:41,650 --> 00:01:45,580
‫để chúng ta có thể gọi trò chơi đã kết thúc trên các bộ điều khiển đó.

25
00:01:46,390 --> 00:01:51,880
‫Bây giờ, cách chúng ta sẽ làm điều này là sử dụng một cuộc gọi công cụ trợ giúp.

26
00:01:51,880 --> 00:01:57,570
‫Vì vậy, nếu chúng ta chuyển sang hash include, trước hết chúng ta sẽ sử dụng engine utils.

27
00:01:57,570 --> 00:02:05,620
‫Và điều đó sẽ đưa vào phạm vi trình trợ giúp mà tôi muốn và trình trợ giúp được gọi là Phạm vi tác nhân T và phạm

28
00:02:05,620 --> 00:02:08,260
‫vi tác nhân T là một điều mẫu.

29
00:02:08,260 --> 00:02:11,500
‫Vì vậy, chúng ta có thể thực hiện các dấu ngoặc nhọn ở đây.

30
00:02:11,590 --> 00:02:18,760
‫Sau đó, chúng ta có thể đặt một bộ điều khiển và sau đó là dấu ngoặc đơn và nhận được thế giới.

31
00:02:18,760 --> 00:02:20,050
‫Bây giờ điều này sẽ làm gì?

32
00:02:20,080 --> 00:02:27,520
‫Nó sẽ trả về cho chúng ta một đối tượng phạm vi, về cơ bản giống như một danh sách bao gồm tất cả

33
00:02:27,520 --> 00:02:28,840
‫các bộ điều khiển.

34
00:02:28,840 --> 00:02:35,800
‫Đó là lý do tại sao chúng ta có tham số bộ điều khiển đó trên thế giới a. k. một mức và chúng ta có thể sử dụng mức

35
00:02:35,800 --> 00:02:37,240
‫này trong vòng lặp for.

36
00:02:37,240 --> 00:02:39,610
‫Vì vậy, hãy để tôi bắt đầu gói điều này trong một vòng lặp for.

37
00:02:39,610 --> 00:02:44,200
‫Vì vậy, chúng tôi sẽ làm một bộ điều khiển trên A.

38
00:02:44,200 --> 00:02:49,270
‫Vì vậy, biến mà chúng ta sẽ xem xét sẽ là một con trỏ bộ điều khiển A, mà

39
00:02:49,270 --> 00:02:51,190
‫tôi sẽ gọi là bộ điều khiển.

40
00:02:52,180 --> 00:02:56,140
‫Và sau đó chúng ta sử dụng dấu hai chấm cho những gì chúng ta sẽ đề cập đến.

41
00:02:56,140 --> 00:02:58,240
‫Nó sẽ là phạm vi hoạt động T này.

42
00:02:58,450 --> 00:03:03,160
‫Và sau đó chúng ta có thể đặt dấu ngoặc đóng và dấu ngoặc nhọn của chúng ta.

43
00:03:03,160 --> 00:03:04,900
‫Vậy câu nói này là gì?

44
00:03:04,900 --> 00:03:11,950
‫Nó nói rằng chúng ta sẽ thực hiện bốn vòng lặp trên mọi bộ điều khiển trên thế giới và nó sẽ nằm trong

45
00:03:11,950 --> 00:03:14,380
‫biến này được gọi là bộ điều khiển.

46
00:03:15,120 --> 00:03:17,700
‫Và bây giờ có một vài điều mà bạn có thể cần biết.

47
00:03:17,700 --> 00:03:22,050
‫Vì vậy, một điều là chúng ta có thể truy vấn bộ điều khiển xem đó có phải là bộ điều khiển người chơi hay không mà không

48
00:03:22,050 --> 00:03:22,530
‫cần phải truyền.

49
00:03:22,530 --> 00:03:28,380
‫Chúng tôi thực sự chỉ có thể làm mũi tên điều khiển và sau đó tôi nghĩ rằng tôi sẽ thực sự cần phải đưa bộ điều khiển của mình vào

50
00:03:28,380 --> 00:03:28,620
‫đây.

51
00:03:28,620 --> 00:03:37,080
‫Vì vậy, bao gồm băm ở trên cùng, chúng tôi sẽ thực hiện một bộ điều khiển gạch chéo H trong khuôn khổ trò chơi và bây giờ Tự động hoàn thành có

52
00:03:37,080 --> 00:03:38,400
‫thể sẽ hoạt động.

53
00:03:38,400 --> 00:03:39,030
‫Vâng, nó có.

54
00:03:39,030 --> 00:03:41,790
‫Vì vậy, những gì chúng ta có thể làm rõ ràng là chúng ta có thể gọi là trò chơi đã kết thúc.

55
00:03:41,790 --> 00:03:46,530
‫Đó là những gì tự động hoàn thành đầu tiên của tôi ở đây nhưng chúng tôi cũng có thể nói là bộ điều khiển trình phát.

56
00:03:46,530 --> 00:03:52,140
‫Về cơ bản nó sẽ nói là điều này trong thế giới của trình điều khiển người chơi và

57
00:03:52,140 --> 00:03:58,410
‫điều đó sẽ cho phép chúng tôi quyết định xem chúng tôi nên chuyển đúng hay sai cho trò chơi đã kết thúc.

58
00:03:58,410 --> 00:04:04,890
‫Vì vậy, thách thức của tôi đối với bạn là điền vào vòng lặp for này bằng cách gọi trò chơi đã kết thúc với tham số

59
00:04:04,890 --> 00:04:05,880
‫boolean chính xác.

60
00:04:06,240 --> 00:04:12,570
‫Vì vậy, chúng tôi sẽ làm điều này để về cơ bản nó sẽ đúng nếu bộ điều khiển mà chúng tôi đang

61
00:04:12,570 --> 00:04:18,990
‫nói chuyện với bộ điều khiển hiện đang ở trong vòng lặp for là bộ điều khiển trình phát và boolean mà chúng tôi

62
00:04:18,990 --> 00:04:23,700
‫đã chuyển vào nói rằng bộ điều khiển trình phát là người chiến thắng cũng nên đúng.

63
00:04:23,700 --> 00:04:31,290
‫Nếu đó không phải là người điều khiển người chơi và không phải người chơi, về cơ bản người chơi là người chiến thắng nếu nói đây là đồng minh và

64
00:04:31,290 --> 00:04:38,190
‫tôi là người chiến thắng sai nếu người điều khiển người chơi nhưng người chơi không phải là người chiến thắng và sai nếu không phải người điều khiển

65
00:04:38,190 --> 00:04:40,890
‫người chơi , nhưng người chơi là người chiến thắng.

66
00:04:40,890 --> 00:04:43,530
‫Hy vọng rằng bạn sẽ thấy điều này sẽ đi đến đâu.

67
00:04:43,530 --> 00:04:46,680
‫Vì vậy, hãy tạm dừng video và bắt đầu triển khai nó như thế này.

68
00:04:46,680 --> 00:04:47,940
‫Bạn có thể sử dụng câu lệnh if.

69
00:04:47,940 --> 00:04:53,820
‫Bạn có thể sử dụng một số logic khác để cho phép bạn tính toán video tạm dừng boolean này và bắt đầu.

70
00:04:54,930 --> 00:04:55,380
‫Được chứ.

71
00:04:55,380 --> 00:04:55,950
‫Chào mừng trở lại.

72
00:04:55,950 --> 00:04:57,930
‫Vì vậy, bạn có thể làm điều này theo một số cách.

73
00:04:57,930 --> 00:05:05,250
‫Một cách có thể nói nếu con ong là người chơi, hãy kiểm soát người chiến thắng và sau đó chúng ta sẽ đưa ra

74
00:05:05,250 --> 00:05:14,430
‫điều gì đó trong câu lệnh này nếu chúng ta có thể thực hiện một bool ở đây để quyết định rằng về cơ bản B là người điều khiển người chơi.

75
00:05:15,210 --> 00:05:18,990
‫Điều mà chúng tôi sẽ tiết kiệm từ thực tế là chúng tôi làm một bộ điều khiển.

76
00:05:19,840 --> 00:05:23,740
‫Mũi tên là bộ điều khiển người chơi như vậy.

77
00:05:24,130 --> 00:05:28,310
‫Và sau đó chúng tôi có thể nói, được rồi, chúng tôi muốn gọi người điều khiển.

78
00:05:28,330 --> 00:05:31,060
‫Trò chơi mũi tên đã kết thúc.

79
00:05:31,210 --> 00:05:33,280
‫Bây giờ chúng ta sẽ vượt qua con trỏ null.

80
00:05:33,280 --> 00:05:40,690
‫Và sau đó chúng tôi sẽ nói, tốt, nếu đó là một người chơi là người chiến thắng và chúng tôi là người kiểm soát người chơi, thì

81
00:05:40,690 --> 00:05:43,300
‫vâng, về cơ bản đi theo giá trị đó.

82
00:05:43,300 --> 00:05:44,980
‫Vì vậy, hãy chơi một bộ điều khiển.

83
00:05:45,010 --> 00:05:48,100
‫Ngược lại, nếu nó không phải là bộ điều khiển máy nghe nhạc, nó sẽ bị mất.

84
00:05:48,100 --> 00:05:55,360
‫Và chúng ta chỉ có thể phủ định điều này để có thể nói khác ở đó chúng ta sẽ gọi trò chơi điều khiển đã kết thúc

85
00:05:55,360 --> 00:06:02,710
‫với không phải là người chơi điều khiển về cơ bản bởi vì chúng ta đang nói người chơi không phải là người chiến thắng, con mắt là

86
00:06:02,710 --> 00:06:04,900
‫người chiến thắng trong tuyên bố này .

87
00:06:04,900 --> 00:06:11,710
‫Và những gì chúng tôi muốn làm là nói rằng điều phụ thuộc về cơ bản là đối lập với việc liệu người chơi

88
00:06:11,710 --> 00:06:14,380
‫có thắng hay không, nghĩa là mắt đã thắng.

89
00:06:14,680 --> 00:06:17,370
‫Vì vậy, đó là một cách để làm điều đó chắc chắn.

90
00:06:17,380 --> 00:06:22,990
‫Nhưng có một cách khác và đơn giản hơn, nói một cách đơn giản, chúng ta có phải là người chiến thắng?

91
00:06:22,990 --> 00:06:26,020
‫Vì vậy, hãy là người chiến thắng.

92
00:06:26,530 --> 00:06:36,790
‫Và điều này có thể nói một cách đơn giản rằng bạn có phải là người điều khiển người chơi hay không thì người chơi sẽ là người chiến thắng.

93
00:06:36,970 --> 00:06:43,000
‫Bây giờ chúng ta hãy nghĩ về điều này nhiều hơn một chút và tôi sẽ chỉ hoàn thành điều này một cách đầy đủ và sau đó chúng ta sẽ nói về nó.

94
00:06:43,000 --> 00:06:52,060
‫Vì vậy, chúng tôi sẽ nói rằng trò chơi điều khiển đã kết thúc sẽ trở thành con trỏ rỗng với kết quả là người chiến thắng được

95
00:06:52,060 --> 00:06:53,050
‫chuyển vào đây.

96
00:06:53,950 --> 00:06:56,630
‫Bây giờ, tại sao câu lệnh này hoạt động?

97
00:06:56,650 --> 00:06:58,630
‫Vâng, chúng ta hãy nghĩ về các trường hợp, phải không?

98
00:06:58,630 --> 00:07:04,300
‫Vì vậy, chúng tôi có một bộ điều khiển người chơi ở đây và người chơi là người chiến thắng, sau đó?

99
00:07:04,300 --> 00:07:06,730
‫Vâng, chúng tôi là người chiến thắng và họ bình đẳng.

100
00:07:06,730 --> 00:07:07,720
‫Đúng và đúng.

101
00:07:08,290 --> 00:07:13,660
‫Còn nếu đây không phải là bộ điều khiển trình phát và người chơi không phải là người chiến thắng?

102
00:07:13,690 --> 00:07:15,370
‫Vâng, sau đó điều này là sai.

103
00:07:15,370 --> 00:07:21,570
‫Và điều này đằng này cũng sai để hai người bằng nhau và kết quả là người chiến thắng.

104
00:07:21,580 --> 00:07:22,100
‫Có đúng như vậy không?

105
00:07:22,120 --> 00:07:27,370
‫Đúng, bởi vì nếu chúng ta là AI và AI là người chiến thắng, thì chúng ta nên là người chiến thắng.

106
00:07:27,880 --> 00:07:33,370
‫Ngược lại, nếu hai điều này không bằng nhau, i. e. rằng chúng ta có bộ điều khiển AI, nhưng

107
00:07:33,370 --> 00:07:39,190
‫người chơi là người chiến thắng hoặc chúng ta có bộ điều khiển người chơi và AI là người chiến thắng, thì chúng ta sẽ có

108
00:07:39,190 --> 00:07:40,960
‫đúng và sai hoặc sai và đúng.

109
00:07:41,170 --> 00:07:45,280
‫Hai thứ này sẽ không bằng nhau và boolean sẽ đánh giá thành false.

110
00:07:45,280 --> 00:07:50,980
‫Vì vậy, bạn có thể thấy rằng trong mỗi trường hợp và tôi đã xem qua tất cả các trường hợp ở đó, điều này kết thúc với câu

111
00:07:50,980 --> 00:07:51,730
‫trả lời đúng.

112
00:07:51,730 --> 00:07:53,740
‫Vì vậy, chúng tôi biết rằng đây là câu trả lời đúng.

113
00:07:53,740 --> 00:07:58,390
‫Đây là điều tuyệt vời về Booleans là bạn thường có thể đánh giá tất cả các trường hợp bởi vì bạn có thể

114
00:07:58,390 --> 00:08:00,400
‫nói, được, tốt, đó là những trường hợp nào?

115
00:08:00,400 --> 00:08:01,870
‫Nó sẽ đúng và đúng sự thật.

116
00:08:01,870 --> 00:08:02,980
‫Nó sẽ đúng và sai.

117
00:08:02,980 --> 00:08:03,970
‫Nó sẽ là sai và đúng.

118
00:08:03,970 --> 00:08:05,280
‫Nó sẽ là sai và sai.

119
00:08:05,290 --> 00:08:06,940
‫Bạn có thể đánh giá tất cả các trường hợp đó.

120
00:08:06,940 --> 00:08:12,610
‫Nếu tất cả các trường hợp đó đều đúng, thì bạn biết rằng bạn đã có một câu lệnh Boolean đúng.

121
00:08:13,090 --> 00:08:13,600
‫Mát mẻ.

122
00:08:13,600 --> 00:08:15,880
‫Vì vậy, đó là cách chúng ta sẽ tính toán B là người chiến thắng.

123
00:08:15,880 --> 00:08:18,460
‫Cuối cùng, chúng ta chỉ cần gọi chế độ kết thúc trò chơi của mình.

124
00:08:18,460 --> 00:08:24,280
‫Hiện tại, chúng tôi đang thực hiện một cuộc gọi trực tiếp đến trò chơi điều khiển trò chơi đã kết thúc và

125
00:08:24,280 --> 00:08:31,630
‫những gì tôi thực sự muốn làm ở đây là tiếp tục và gọi trò chơi kết thúc và chúng tôi muốn chuyển sai vì đây là tình huống mà

126
00:08:31,630 --> 00:08:36,630
‫người chơi thực sự đã thua và về cơ bản đó là những gì chúng tôi muốn đạt được.

127
00:08:36,640 --> 00:08:42,340
‫Bây giờ, một điều nữa cần lưu ý ở đây là con trỏ rỗng này mà chúng ta đã đi

128
00:08:42,400 --> 00:08:50,590
‫qua sẽ dẫn chúng ta đến các vấn đề trên đường, bởi vì nếu người chơi đã thực sự thắng, nó sẽ cố gắng lấy đi sự tập trung

129
00:08:50,590 --> 00:08:52,900
‫khỏi người chơi của chúng ta cầm đồ.

130
00:08:52,900 --> 00:09:01,270
‫Vì vậy, những gì chúng tôi muốn chuyển ở đây chỉ đơn giản là trọng tâm nên tập trung vào bộ điều khiển, dot get pawn.

131
00:09:01,660 --> 00:09:08,920
‫Và về cơ bản, điều đó nói lên rằng bạn nên đặt trọng tâm của bộ điều khiển trình phát của riêng mình, về cơ bản thì máy ảnh

132
00:09:08,920 --> 00:09:10,630
‫của bạn nên hướng vào đâu?

133
00:09:10,630 --> 00:09:12,550
‫Nó vẫn sẽ được chỉ trên con tốt của bạn.

134
00:09:12,970 --> 00:09:17,170
‫Tại sao điều quan trọng là chúng tôi phải làm điều này và tại sao lại có tùy chọn này ở đây ngay từ đầu?

135
00:09:17,170 --> 00:09:23,890
‫Vâng, trong rất nhiều trò chơi, bạn thường hoặc nhiều trò chơi theo phong cách đối đầu, bạn có thể nói rằng

136
00:09:23,890 --> 00:09:27,400
‫nếu trò chơi kết thúc, bạn muốn đi theo con tốt.

137
00:09:27,400 --> 00:09:28,300
‫Đó là người chiến thắng.

138
00:09:28,300 --> 00:09:34,300
‫Vì vậy, hãy tưởng tượng giống như một kịch bản trong Fortnite, bạn thường đi và theo dõi kẻ đã giết bạn.

139
00:09:34,330 --> 00:09:36,430
‫Đây là cơ chế để làm điều này.

140
00:09:36,430 --> 00:09:40,470
‫Về cơ bản, bạn vượt qua con tốt của kẻ đã giết người.

141
00:09:40,480 --> 00:09:41,800
‫Đó không phải là những gì chúng tôi đang làm trong trò chơi của mình.

142
00:09:41,800 --> 00:09:45,460
‫Chúng tôi sẽ tiếp tục xem xét Apple và liệu chúng tôi sẽ thắng hay chúng tôi chết.

143
00:09:45,460 --> 00:09:46,990
‫Vì vậy, đó là khá nhiều cho bài giảng.

144
00:09:46,990 --> 00:09:50,110
‫Hãy chỉ biên dịch và xem liệu nó có hoạt động hay không.

145
00:09:50,110 --> 00:09:53,440
‫Hãy đi sâu vào Unreal và chơi.

146
00:09:53,470 --> 00:09:56,110
‫Hãy đi và tự giết mình.

147
00:09:56,110 --> 00:09:56,980
‫Của bạn đây.

148
00:09:56,980 --> 00:09:58,750
‫Mọi thứ vẫn hoạt động như trước đây.

149
00:09:58,750 --> 00:10:03,220
‫Chúng tôi vẫn nhận được cuộc gọi đó đến bộ điều khiển trình phát và sau đó chúng tôi khởi động lại.

150
00:10:03,220 --> 00:10:03,790
‫Công cụ tuyệt vời.

151
00:10:03,790 --> 00:10:06,460
‫Vì vậy, trong bài giảng này, chỉ để tóm tắt lại, chúng ta đã thấy những gì?

152
00:10:06,460 --> 00:10:14,260
‫Chà, chúng tôi đã thấy cách chúng tôi có thể lặp lại các tác nhân trong cấp độ để thực hiện một cái gì đó như

153
00:10:14,260 --> 00:10:16,930
‫gọi một hàm trên mỗi tác nhân đó.

154
00:10:16,930 --> 00:10:23,110
‫Bài giảng tiếp theo chúng ta sẽ sử dụng lại phạm vi tác nhân T, lần này để tính xem người chơi có thắng

155
00:10:23,110 --> 00:10:23,680
‫hay không.

156
00:10:23,680 --> 00:10:24,400
‫Hẹn gặp bạn ở đó.

