﻿1
00:00:04,340 --> 00:00:05,390
‫สวัสดีและยินดีต้อนรับ.

2
00:00:05,390 --> 00:00:09,320
‫ในการบรรยายนี้ เราจะสร้างความเสียหายให้กับนักแสดงที่นี่

3
00:00:09,320 --> 00:00:13,610
‫เราจะทำอย่างนั้นโดยแทนที่วิธีการเสมือนที่เรียกว่าสร้างความเสียหายให้กับนักแสดง

4
00:00:13,610 --> 00:00:18,380
‫และคุณสามารถเห็นได้ในบันทึกนี้ เรามีพลังชีวิตลดลงเมื่อฉันยิงตัวละครนี้จนเหลือศูนย์

5
00:00:18,380 --> 00:00:21,860
‫และหยุดที่ศูนย์ ไม่เป็นค่าลบ

6
00:00:21,860 --> 00:00:23,780
‫มาดูกันดีกว่าว่าทำอย่างไร

7
00:00:26,450 --> 00:00:33,050
‫ดังนั้นในขณะที่เราสามารถสร้างความเสียหายให้กับนักแสดงที่เราโจมตีที่นี่ได้ เช่น ผู้ชายคนนี้

8
00:00:33,380 --> 00:00:36,590
‫เราไม่ได้รับความเสียหายนั้นจริงๆ

9
00:00:36,590 --> 00:00:43,190
‫ดังนั้นนี่คือที่มาของวิธีการเสมือนของการบรรยายครั้งสุดท้ายเพราะเช่นเดียวกับการเริ่มต้น เล่นหรือแสดง

10
00:00:43,190 --> 00:00:46,080
‫เราต้องการได้รับความเสียหายกับนักแสดง

11
00:00:46,100 --> 00:00:53,160
‫ตอนนี้ โชคดี ถ้าคุณไปหานักแสดง H และดูที่นี่หน่อย คุณจะเห็นว่ามีวิธีเสมือนจริงในการรับความเสียหาย

12
00:00:53,180 --> 00:01:01,470
‫ตอนนี้สามารถทำได้ด้วยกิจกรรมและคุณอาจเคยเห็นมันทำแบบนั้นมาก่อนที่คุณลงทะเบียนสำหรับกิจกรรม

13
00:01:01,490 --> 00:01:09,680
‫ตอนนี้สิ่งที่ฉันจะทำคือการสร้างความเสียหายที่ต่างออกไป โดยที่จริง ๆ แล้วเรามีความเสียหายที่เก็บไว้กับนักแสดงมากกว่าที่จะเป็นส่วนประกอบ

14
00:01:10,160 --> 00:01:15,950
‫และวิธีง่ายๆ ในการรับความเสียหายนั้นคือการใช้วิธีเสมือนที่นี่

15
00:01:15,950 --> 00:01:18,620
‫และนี่คือวิธีการเสมือนที่เราจะแทนที่

16
00:01:18,620 --> 00:01:25,210
‫ดังนั้นฉันจะคัดลอกสิ่งนี้และไปที่นักแสดงของเราโดยเฉพาะซึ่งเป็นตัวละครที่ยิงได้เร็วกว่าเพื่อค้นหาตัวละครยิง

17
00:01:25,250 --> 00:01:31,340
‫dot H และสิ่งหนึ่งที่ฉันต้องการตรวจสอบคือที่ไหน นี้เข้ามา นักแสดง dot

18
00:01:31,340 --> 00:01:35,480
‫H.

19
00:01:35,720 --> 00:01:41,660
‫ดังนั้นหากเราเลื่อนขึ้น เราควรจะสามารถดูว่าเราอยู่ในส่วนใด

20
00:01:42,080 --> 00:01:51,200
‫ดังนั้นฉันจะเลื่อนขึ้นไปจนกว่าจะพบว่าสิ่งที่เราอยู่ในที่สาธารณะหรือสิ่งที่พวกเขาไป เราอยู่ในส่วนสาธารณะ

21
00:01:51,200 --> 00:01:54,530
‫ดังนั้นควรอยู่ในส่วนสาธารณะที่นี่เช่นกัน

22
00:01:54,530 --> 00:02:00,200
‫ดังนั้นฉันจะติดมันไว้ใต้เครื่องหมายของเราและตั้งค่าองค์ประกอบอินพุตของผู้เล่นในปืน

23
00:02:00,440 --> 00:02:09,650
‫H แล้วเราก็วางมันลงไป และอย่างที่ฉันพูดในการบรรยายครั้งที่แล้ว คุณสามารถใช้การแทนที่เพื่อให้แน่ใจว่าคุณอยู่จริง แทนที่เมธอดเสมือนจากพาเรนต์

24
00:02:09,650 --> 00:02:17,180
‫และไม่จำเป็นต้องมีเวอร์ชวลอยู่ข้างหน้าที่นี่ แต่เราจะเก็บมันไว้

25
00:02:17,180 --> 00:02:21,560
‫และที่นี่ คุณสามารถดูข้อมูลทั้งหมดที่เข้ามาเพื่อสร้างความเสียหายได้

26
00:02:21,560 --> 00:02:30,530
‫เรามีจำนวนความเสียหาย เหตุการณ์ความเสียหาย และผู้ควบคุมที่ก่อให้เกิดความเสียหาย ผู้ก่อเหตุ และสาเหตุของความเสียหาย

27
00:02:30,530 --> 00:02:34,250
‫ทุกสิ่งที่เราส่งผ่านจากปืนก็ถูกครอบตัดที่นี่เช่นกัน

28
00:02:34,250 --> 00:02:35,150
‫ดีมาก

29
00:02:35,150 --> 00:02:43,820
‫ตอนนี้ถ้าเราไปข้างหน้าและทำการควบคุมกะ P สร้างการนำไปใช้หรือคัดลอกและวาง จากนั้นเราสามารถดำเนินการเพื่อรับความเสียหายได้

30
00:02:43,820 --> 00:02:49,250
‫แต่สิ่งแรกที่ควรระวังคือเมื่อใดก็ตามที่เราเอาชนะบางสิ่ง เราต้องการคิดถึงการเรียก

31
00:02:49,250 --> 00:02:58,580
‫Take Damage เวอร์ชันพาเรนต์คลาส เพราะอาจมีการใช้งานบางอย่างในนั้นที่จำเป็นต้องเรียกใช้

32
00:02:58,940 --> 00:03:00,140
‫นั่นคือสิ่งที่เรากำลังจะทำ

33
00:03:00,170 --> 00:03:01,070
‫เราทำเช่นนี้เสมอ

34
00:03:01,070 --> 00:03:02,210
‫เราได้ทำมันด้วยเทคโนโลยี

35
00:03:02,210 --> 00:03:03,710
‫เราทำเสร็จแล้วด้วย Begin Play

36
00:03:03,710 --> 00:03:07,580
‫คุณจะเห็นว่าเรามีความเจ๋งมากในตอนเริ่มต้น และนั่นเป็นเพราะเมื่อเราแทนที่เมธอด

37
00:03:07,580 --> 00:03:09,200
‫เราจะลบล้างมันทั้งหมด

38
00:03:09,200 --> 00:03:11,120
‫เราลบพฤติกรรมนั้นโดยสิ้นเชิง

39
00:03:11,120 --> 00:03:17,630
‫ดังนั้น หากเราต้องการพฤติกรรมนั้น ซึ่งปกติแล้วเราจะทำ เราควรเริ่มจากความเท่ไปจนถึงสุดยอด

40
00:03:17,630 --> 00:03:20,000
‫ดังนั้นเราจะทำ Cool Take Damage

41
00:03:21,450 --> 00:03:23,580
‫ที่จะรับความเสียหายจำนวน

42
00:03:23,580 --> 00:03:25,760
‫นี่คือจุดที่น่าเบื่อเล็กน้อยน่าเศร้า

43
00:03:25,800 --> 00:03:27,870
‫เครื่องมือเติมข้อความอัตโนมัติของฉันไม่สามารถทำเช่นนี้ได้

44
00:03:27,870 --> 00:03:29,250
‫เหตุการณ์ความเสียหาย

45
00:03:30,560 --> 00:03:32,660
‫แล้วสิ่งต่อไปคืออะไร?

46
00:03:32,660 --> 00:03:34,970
‫เรามีการควบคุม

47
00:03:35,180 --> 00:03:37,550
‫ตัวกระตุ้นเหตุการณ์ เรามาคัดลอกกัน

48
00:03:37,820 --> 00:03:42,380
‫แล้วเราก็ได้ตัวผู้ก่อความเสียหาย ซึ่งก็คือตัวแสดง

49
00:03:43,160 --> 00:03:48,320
‫ดังนั้นทั้งหมดจึงถูกเรียกขึ้นสู่การนำพาพาเรนต์ของความเสียหาย

50
00:03:48,560 --> 00:03:52,220
‫และอีกสิ่งหนึ่งคือสิ่งนี้มีประเภทส่งคืน

51
00:03:52,220 --> 00:03:55,880
‫ดังนั้นความเสียหายที่เกิดขึ้นจริงเราจะทำลอย

52
00:03:56,750 --> 00:04:01,460
‫ความเสียหายที่เกิดขึ้นคือมูลค่าที่คืนจากการได้รับความเสียหาย

53
00:04:01,460 --> 00:04:05,000
‫ดังนั้นเราจะเก็บความเสียหายที่เกิดขึ้นไว้ที่นั่น

54
00:04:05,270 --> 00:04:14,690
‫และตามความเป็นจริง นั่นจะเท่ากับจำนวนความเสียหายในกรณีการใช้งานเฉพาะของเรา แต่ไม่จำเป็นว่าเราจะใช้ความเสียหายที่เกิดขึ้น

55
00:04:14,720 --> 00:04:21,000
‫สิ่งต่อไปที่เราต้องการทำคือเก็บข้อมูลเกี่ยวกับสุขภาพที่เรามีจริงๆ

56
00:04:21,020 --> 00:04:24,980
‫วิธีที่ผมจะทำคือมีสองตัวแปรตรงนี้

57
00:04:25,010 --> 00:04:30,260
‫อย่างแรกคือ ฉันจะสร้างคุณสมบัติใหม่ทั้งคู่ เพราะฉันต้องการทำให้สุขภาพปรากฏอยู่ในผู้ตรวจ

58
00:04:30,260 --> 00:04:32,090
‫อย่างน้อยก็ในตอนนี้

59
00:04:32,420 --> 00:04:37,220
‫และเราจะมีคุณสมบัติอย่างแรก คือ พลังชีวิตสูงสุด

60
00:04:37,220 --> 00:04:39,620
‫นั่นคือสิ่งที่เราเริ่มต้นสุขภาพในขั้นต้น

61
00:04:39,620 --> 00:04:48,170
‫ดังนั้นคุณพร็อพเพอร์ตี้ มันจะเป็นค่าเริ่มต้นในการแก้ไขเท่านั้น เพราะจะใช้ในการเริ่มเล่น

62
00:04:48,170 --> 00:04:53,120
‫ดังนั้นการเปลี่ยนค่าของพลังชีวิตสูงสุดหลังเอฟเฟกต์นั้น จะไม่ส่งผลกระทบใดๆ

63
00:04:53,120 --> 00:05:01,340
‫ดังนั้น Max health ผมจะตั้งค่า max health เป็น 100 แล้วเราจะมีคุณสมบัติอื่นที่นี่ ซึ่งอย่างที่บอกไป

64
00:05:01,340 --> 00:05:06,230
‫จะเป็นคุณสมบัติใหม่ที่เราสามารถทำได้ เพื่อตรวจสอบมัน

65
00:05:06,230 --> 00:05:09,770
‫และผมจะทำให้มองเห็นได้ทุกที่

66
00:05:10,690 --> 00:05:15,310
‫แต่ไม่สามารถแก้ไขได้เพราะเราไม่ต้องการที่จะเปลี่ยนแปลงสุขภาพนั้น อย่างน้อยก็ไม่ใช่ในตอนนี้

67
00:05:15,520 --> 00:05:18,950
‫คุณอาจต้องการสิ่งนั้นเพื่อจุดประสงค์ในการดีบัก แต่ฉันไม่ต้องการ

68
00:05:18,970 --> 00:05:23,080
‫ดังนั้นเราจะมีสุขภาพที่นี่และในการเล่น

69
00:05:23,260 --> 00:05:27,250
‫เราจะมาจัดกันเพื่อสุขภาพนั่นเองค่ะ

70
00:05:28,080 --> 00:05:31,060
‫มีค่าเท่ากับพลังชีวิตสูงสุด

71
00:05:31,080 --> 00:05:32,460
‫ดังนั้นเราจึงเริ่มต้นด้วยการวางไข่

72
00:05:32,460 --> 00:05:36,150
‫เรามีสุขภาพสูงสุดแล้วเราก็สามารถลดลงได้

73
00:05:36,780 --> 00:05:41,760
‫ถึงเวลาแล้วที่ความท้าทายสำหรับคุณในการลดสุขภาพของตัวละคร

74
00:05:41,760 --> 00:05:48,480
‫ดังนั้นคุณจะใช้ความเสียหายที่เกิดขึ้นที่นี่ แทนที่จะใช้ตัวเลือกอื่นที่นี่

75
00:05:48,480 --> 00:05:52,710
‫ดังนั้นเราจึงมีตัวละครนักกีฬาของเรา CP รับความเสียหาย

76
00:05:52,710 --> 00:05:57,450
‫เรามีจำนวนความเสียหาย แต่เราต้องการความเสียหายที่กลับมาจากการได้รับความเสียหาย

77
00:05:57,450 --> 00:06:02,100
‫เพราะนั่นอาจลดลงได้ด้วยกระบวนการบางอย่างในหลัก

78
00:06:02,550 --> 00:06:03,420
‫ดังนั้นเราจึงทำอย่างนั้น

79
00:06:03,420 --> 00:06:16,050
‫จากนั้นเราจะลดคุณค่าของสุขภาพและบันทึกผลลัพธ์เพียงเพื่อความเรียบง่ายเพื่อให้คุณสามารถตรวจสอบได้ว่าเมื่อคุณยิงไปที่ดวงตานั้นสุขภาพของเขาจะลดลงแล้วทดสอบออก

80
00:06:16,050 --> 00:06:17,820
‫หยุดวิดีโอชั่วคราวแล้วไปกันเลย

81
00:06:18,060 --> 00:06:19,200
‫โอเค ยินดีต้อนรับกลับ

82
00:06:19,200 --> 00:06:20,550
‫ลองให้มันยิง

83
00:06:20,550 --> 00:06:27,930
‫ดังนั้นสุขภาพโดยพื้นฐานแล้วเราต้องการลดความเสียหายที่เกิดขึ้น

84
00:06:29,260 --> 00:06:30,820
‫แต่นั่นจะเพียงพอหรือไม่?

85
00:06:30,850 --> 00:06:37,150
‫จะเกิดอะไรขึ้นถ้าความเสียหายของเรามากกว่าจำนวนสุขภาพที่เราเหลืออยู่?

86
00:06:37,330 --> 00:06:43,830
‫ในกรณีนั้น เราอาจต้องการให้ความเสียหายเป็นจำนวนสุขภาพนั้น

87
00:06:43,840 --> 00:06:47,860
‫วิธีที่เราสามารถทำได้คือเราสามารถพูดได้ว่าความเสียหายที่เกิดขึ้น

88
00:06:48,770 --> 00:06:54,620
‫ควรเท่ากับค่า f ทางคณิตศาสตร์ dot min ของสุขภาพ

89
00:06:55,610 --> 00:06:57,870
‫และความเสียหายที่เกิดขึ้น

90
00:06:57,890 --> 00:07:01,010
‫นี่คือความเสียหายที่เราต้องการนำไปใช้โดยพื้นฐาน

91
00:07:01,130 --> 00:07:06,260
‫ดังนั้นเราจะไปที่ จริงๆ แล้วฉันจะเปลี่ยนชื่อนั้นแทนที่จะเรียกมันว่าความเสียหาย

92
00:07:06,380 --> 00:07:10,040
‫ฉันจะเรียกมันว่าความเสียหายที่จะใช้

93
00:07:10,780 --> 00:07:13,480
‫ความเสียหายที่จะนำไปใช้

94
00:07:13,900 --> 00:07:18,490
‫ดังนั้นไปเปลี่ยนชื่อว่าตลอดที่นี่แล้วความเสียหายที่จะใช้

95
00:07:18,520 --> 00:07:21,450
‫เราจะมีสุขภาพลบด้วยความเสียหายที่จะใช้

96
00:07:21,460 --> 00:07:22,180
‫นั่นทำให้รู้สึก

97
00:07:22,180 --> 00:07:25,270
‫และที่แย่ที่สุดคือเรื่องสุขภาพ

98
00:07:25,270 --> 00:07:28,270
‫นั่นจะทำให้สุขภาพของเราลดลงเป็นศูนย์

99
00:07:28,840 --> 00:07:33,070
‫และจำไว้ว่าเราควรคืนความเสียหายที่เราใช้จริง

100
00:07:33,070 --> 00:07:41,530
‫ดังนั้นเราจะสร้างความเสียหายคืนเพื่อใช้ ซึ่งตอนนี้ได้นำไปใช้แล้ว และในที่สุดเราต้องการบันทึก UII ที่ส่วนท้ายที่นี่

101
00:07:41,530 --> 00:07:45,430
‫ซึ่งจะเป็นคำเตือนเพื่อให้เรามองเห็นได้

102
00:07:46,150 --> 00:07:54,310
‫และฉันต้องการให้นี่เป็นสุขภาพที่เหลืออยู่ และมันจะเป็นเปอร์เซ็นต์ F ถึงหรือเปอร์เซ็นต์ F ตัวพิมพ์เล็ก

103
00:07:54,310 --> 00:07:56,020
‫F เพื่อแสดงการลอยตัว

104
00:07:56,230 --> 00:08:03,070
‫จากนั้นเราก็สามารถเติมพลังได้ตรงนั้นและไปต่อที่บิลด์

105
00:08:04,890 --> 00:08:05,220
‫ตอนนี้.

106
00:08:05,250 --> 00:08:08,460
‫คอมไพล์ของฉันแล้วหลังจากแก้ไขอัฒภาคที่หายไป

107
00:08:08,460 --> 00:08:18,060
‫ที่นี่ ไปกันเถอะ และตรวจสอบให้แน่ใจว่าเรามีเครื่องมือสำหรับนักพัฒนาหน้าต่าง และเราต้องการบันทึกผลลัพธ์ที่นี่ เพื่อให้เราสามารถเห็นข้อความบันทึกนั้น

108
00:08:18,060 --> 00:08:25,710
‫และฉันจะไปข้างหน้าและตีเล่นและไปและลองยิงที่ตัวละครนี้ถ้าฉันยิงเขา

109
00:08:25,710 --> 00:08:26,170
‫ไปเลย

110
00:08:26,190 --> 00:08:30,210
‫สุขภาพเหลือปี 1976 บลา บลา บลา ไปจนถึงศูนย์

111
00:08:30,210 --> 00:08:35,490
‫และถ้าฉันยังคงยิงต่อไป เราจะไม่ลงไปต่ำกว่าศูนย์เพราะผลคณิตศาสตร์ดอท min

112
00:08:35,490 --> 00:08:38,370
‫นั่นแสดงว่าเราได้ตั้งค่าสุขภาพของเราอย่างถูกต้องแล้ว

113
00:08:38,370 --> 00:08:42,180
‫เป็นอีกวิธีหนึ่งในการทำแทนที่จะทำในส่วนประกอบ

114
00:08:42,180 --> 00:08:46,680
‫คุณสามารถทำมันได้ในตัวนักแสดง เช่นเดียวกับข้อดีและข้อเสียของวิธีการนั้น

115
00:08:46,710 --> 00:08:51,780
‫ในที่สุด คุณอาจต้องการแยกส่วนนี้ออกเป็นองค์ประกอบแยกต่างหาก เพื่อให้คุณสามารถใช้ซ้ำกับองค์ประกอบต่างๆ

116
00:08:51,780 --> 00:08:52,410
‫ได้

117
00:08:52,410 --> 00:09:00,120
‫แต่นี่เป็นอีกวิธีหนึ่ง อย่างที่ฉันพูดตอนนี้ เพราะตัวละครตัวนี้ไม่ได้ดูตายไปโดยเฉพาะอย่างยิ่งหลังจากที่เราทำให้เขาเสียเลือดเหลือศูนย์

118
00:09:00,120 --> 00:09:02,910
‫เราจำเป็นต้องแก้ไขแอนิเมชั่นเพื่อรองรับสิ่งนั้น

119
00:09:02,910 --> 00:09:06,180
‫แล้วพบกันใหม่ในบทเรียนหน้านะครับ แล้วพบกันครับ

