﻿1
00:00:04,170 --> 00:00:04,650
‫يا.

2
00:00:04,650 --> 00:00:05,610
‫مرحبًا بعودتك.

3
00:00:05,640 --> 00:00:11,010
‫الآن لدينا مقذوفتنا ، ونعلم أنها تولد أحداثًا مصابة ، لذلك نحتاج إلى القيام

4
00:00:11,010 --> 00:00:14,250
‫بشيء ما عندما تصيب المقذوفة هدفنا بالفعل.

5
00:00:14,280 --> 00:00:19,200
‫الآن ، سيتضمن ذلك إحداث ضرر ، مما يعني أننا بحاجة إلى طريقة لتتبع الصحة.

6
00:00:19,200 --> 00:00:24,840
‫لذلك سننشئ فصلًا للتعامل مع الصحة والأضرار يسمى مكون الصحة.

7
00:00:24,930 --> 00:00:30,720
‫والسبب في حصول هذه الوظيفة على فئتها الخاصة هو أنه يمكننا إعادة استخدامها لفئات

8
00:00:30,720 --> 00:00:32,690
‫مختلفة مثل الخزان والبرج.

9
00:00:32,700 --> 00:00:35,250
‫لذلك دعونا نناقش هذا المكون الصحي.

10
00:00:35,640 --> 00:00:38,900
‫نحن الآن على دراية بفئة مكون مشهد الاستخدام.

11
00:00:38,910 --> 00:00:43,390
‫حسنًا ، هذه الفئة مشتقة من فئة تسمى مكون الممثل.

12
00:00:43,410 --> 00:00:47,220
‫في الواقع ، إليك توثيق مكون مشهد الاستخدام.

13
00:00:47,220 --> 00:00:53,100
‫وفي التسلسل الهرمي للميراث ، يمكنك أن ترى أن الأب هو مكونك الفاعل.

14
00:00:53,130 --> 00:00:57,330
‫الآن أنت تقوم بدور مكون هو أكثر أساسية من المكون الذي رأيته.

15
00:00:57,420 --> 00:00:59,070
‫ليس له أي تحول.

16
00:00:59,070 --> 00:01:05,020
‫لذا فإن الموقع والدوران والمقياس ليس شيئًا يمتلكه مكونك الفاعل.

17
00:01:05,040 --> 00:01:06,930
‫لا يدعم التعلق.

18
00:01:06,930 --> 00:01:12,660
‫لا يمكنك إرفاق مكون نشط ، على سبيل المثال ، مكون شبكة ثابتة أو مكون كبسولة.

19
00:01:12,660 --> 00:01:15,180
‫إنه مجرد شيء ينتمي إلى الممثل.

20
00:01:15,180 --> 00:01:20,910
‫ونظرًا لعدم وجود تمثيل أو تحويل مرئي ، لا نحتاج إلى إرفاقه بأي شيء.

21
00:01:21,000 --> 00:01:27,060
‫قارن هذا بمكوِّن مشهد الاستخدام ، الذي يحتوي بالفعل على تحويل وقدرة

22
00:01:27,060 --> 00:01:31,640
‫على ربط نفسه بمكونات أخرى أو ربط مكونات أخرى به.

23
00:01:31,650 --> 00:01:36,450
‫لذلك لتتبع الصحة والعناية بالضرر ، لسنا بحاجة إلى أي من هذه الأشياء.

24
00:01:36,450 --> 00:01:39,990
‫إذن أنت تتصرف ، سيكون المكون مثاليًا لهذا.

25
00:01:40,170 --> 00:01:44,880
‫لذلك دعونا نعود إلى المحرر ونجعل فعلنا الجديد فئة مكونة.

26
00:01:44,880 --> 00:01:48,690
‫لذلك سننتقل إلى الأدوات وفئة C ++ الجديدة.

27
00:01:48,690 --> 00:01:51,890
‫وإذا قمت بالتمرير لأسفل ، يمكنني رؤية مكون الممثل.

28
00:01:51,900 --> 00:01:53,730
‫هذا ما سنختاره.

29
00:01:53,760 --> 00:01:54,630
‫الآن كن حذرا.

30
00:01:54,630 --> 00:01:56,400
‫لا تختار الممثل.

31
00:01:56,400 --> 00:01:57,750
‫هذه فئة مختلفة.

32
00:01:57,750 --> 00:02:02,610
‫إنها في الواقع فئة أكبر ولديها أشياء أكثر بكثير من المكون الممثل.

33
00:02:02,610 --> 00:02:07,560
‫نحتاج إلى مكون الممثل على وجه التحديد ، لذا حدده ، وانقر فوق التالي.

34
00:02:07,560 --> 00:02:11,490
‫وهذا يمكننا أن نسميه ببساطة مكون الصحة.

35
00:02:11,880 --> 00:02:13,740
‫دعنا ننقر فوق إنشاء فصل دراسي.

36
00:02:14,190 --> 00:02:21,420
‫الآن لدينا هنا مكونات الصحة الجديدة وملفات CP ويمكنك أن ترى هنا أن مكون الصحة الخاص بك

37
00:02:21,420 --> 00:02:25,980
‫، الفئة التي أنشأناها للتو مشتق من أنك تقوم بدور مكون.

38
00:02:25,980 --> 00:02:30,390
‫لذا تأكد من حصولك على النوع الصحيح هنا وسترى أنه يحتوي على حرف U.

39
00:02:30,390 --> 00:02:31,710
‫فئة الماكرو.

40
00:02:31,740 --> 00:02:36,360
‫تحدد هذه التعريفات المكان الذي تقول فيه مخططات تفرخ مكون الجدول.

41
00:02:36,360 --> 00:02:41,790
‫هذا ما سيسمح لنا بإضافة هذا المكون مباشرة في المخططات ، وهو ما

42
00:02:41,790 --> 00:02:43,050
‫سنفعله الآن.

43
00:02:43,050 --> 00:02:48,960
‫سيهتم المكون الصحي الجديد بالصحة ، مما يعني أننا بحاجة إلى متغيرين.

44
00:02:48,960 --> 00:02:52,380
‫دعنا نمضي قدمًا ونضيفها وسأجعلها خاصة.

45
00:02:52,380 --> 00:02:58,500
‫لذلك دعونا نمضي قدمًا ونضيف قسمًا خاصًا أسفل القسم المحمي مباشرةً ، ويمكننا إضافة

46
00:02:58,500 --> 00:02:59,700
‫متغيرين للصحة.

47
00:02:59,700 --> 00:03:04,290
‫الآن ، ستكون هذه عوامات وسأسمي أول واحد Max Health.

48
00:03:04,320 --> 00:03:10,440
‫سيكون هذا هو الحد الأقصى لمقدار الصحة الذي يمكننا الحصول عليه ويمكننا تعيين هذا على قيمة

49
00:03:10,440 --> 00:03:12,180
‫افتراضية مثل 100 F.

50
00:03:12,180 --> 00:03:18,000
‫الآن ، بالإضافة إلى Max health ، سيكون لدينا قيمة صحية والتي ستكون هي الصحة الحالية وستكون هذه

51
00:03:18,000 --> 00:03:20,850
‫هي التغييرات التي تحدث عندما نتعرض للضرر.

52
00:03:20,850 --> 00:03:24,720
‫لذلك دعونا نجعل عوامة أخرى ونسمي هذا ببساطة الصحة.

53
00:03:24,720 --> 00:03:30,900
‫الآن يمكننا تهيئة الصحة إلى صفر F ثم ضبط قيمتها والبدء في اللعب.

54
00:03:30,900 --> 00:03:37,380
‫والسبب في قيامنا بذلك هو أن Max Health ستمتلك خاصية خاصة بك تسمح لنا بتعيينها

55
00:03:37,380 --> 00:03:39,690
‫من داخل لوحة التفاصيل.

56
00:03:39,690 --> 00:03:43,470
‫لذلك دعونا نعطي هذه الخاصية U ونجعلها تعدل في أي مكان.

57
00:03:43,680 --> 00:03:46,500
‫بهذه الطريقة يمكننا تغييرها أثناء تطويرنا.

58
00:03:46,500 --> 00:03:53,700
‫ثم في المكونات الصحية CP هنا والبدء في اللعب ، يمكننا ببساطة تعيين الصحة مساوية لقيمة الصحة

59
00:03:53,700 --> 00:03:54,600
‫القصوى.

60
00:03:54,600 --> 00:04:00,390
‫وبهذه الطريقة عندما تبدأ اللعبة ، سيكون للصحة قيمة الصحة القصوى حتى بعد تغييرها

61
00:04:00,390 --> 00:04:01,860
‫في لوحة التفاصيل.

62
00:04:02,040 --> 00:04:09,420
‫حسنًا ، لنجمع هذا ونعيده هنا في المحرر ، سأقوم بفتح BP - tank وفتح محرر المخطط

63
00:04:09,420 --> 00:04:10,920
‫الكامل.

64
00:04:10,920 --> 00:04:16,200
‫والآن يمكنني إضافة هذا المكون الصحي هنا في لوحة المكونات.

65
00:04:16,290 --> 00:04:20,130
‫لذلك سأقوم بالنقر فوق إضافة والبحث عن الصحة.

66
00:04:20,370 --> 00:04:22,350
‫وهنا نرى الصحة.

67
00:04:22,530 --> 00:04:25,860
‫الآن ، أطلقنا عليه اسم مكون الصحة في C ++.

68
00:04:25,860 --> 00:04:29,670
‫وفي الحقيقة ، تظهر النافذة المنبثقة أنها تسمى مكون الصحة.

69
00:04:29,670 --> 00:04:33,420
‫لذلك فهو يزيل هذا الجزء المكون عند عرضه هنا.

70
00:04:33,420 --> 00:04:38,220
‫وربما لاحظت أنه عندما تبحث عن مكونات شبكية ثابتة أو مكونات كبسولة ، فإنك

71
00:04:38,220 --> 00:04:40,890
‫لا ترى مكون الكلمات هنا أيضًا لهؤلاء.

72
00:04:40,890 --> 00:04:48,270
‫لذا انقر فوق "صحة" والآن لدينا مكون الصحة الخاص بنا وسترى أنه في إطار مكون الصحة

73
00:04:48,270 --> 00:04:55,080
‫لدينا أقصى صحة وتم تعيينه على 100 ولا نرى صحة لأننا لم نكشف هذا المتغير.

74
00:04:55,170 --> 00:05:02,430
‫حتى الآن BP - tank يحتوي على مكون صحي ويقال أن الخزان يمتلك هذا المكون الصحي ،

75
00:05:02,430 --> 00:05:03,390
‫BP - tank.

76
00:05:03,860 --> 00:05:06,590
‫هو صاحب هذا المكون الصحي.

77
00:05:06,620 --> 00:05:13,760
‫دعونا نقوم بتجميع وحفظ وإغلاق وفتح برج بيدق BP وفتح محرر المخطط الكامل ويمكننا إضافة

78
00:05:13,760 --> 00:05:16,930
‫مكون صحي إلى برج البركة أيضًا.

79
00:05:16,940 --> 00:05:21,620
‫لذلك دعونا ننقر فوق إضافة مكونات ، والبحث عن الصحة واختيار الصحة.

80
00:05:21,620 --> 00:05:25,490
‫والآن لدينا عنصر صحي على البرج أيضًا.

81
00:05:25,670 --> 00:05:30,560
‫لذلك سأقوم بتجميع هذه وحفظها وإغلاقها وحفظها جميعًا.

82
00:05:30,590 --> 00:05:36,650
‫لذلك لدينا الآن مكون صحي وقد ذكرنا أننا نرغب في الحصول على مكون صحي حتى نتمكن من إعادة

83
00:05:36,650 --> 00:05:38,740
‫استخدامه مع فئات مختلفة.

84
00:05:38,750 --> 00:05:44,330
‫لذلك إذا كان لدينا بيدق في العالم ، على سبيل المثال ، برجنا ، فسيكون له مكون الصحة الخاص به ومن

85
00:05:44,330 --> 00:05:47,040
‫ثم يمكن أن يكون لخزاننا مكون الصحة الخاص به.

86
00:05:47,060 --> 00:05:52,340
‫الآن ، عندما تتفاعل مقذوفتنا مع أيٍّ من هذين ، على سبيل المثال ، عندما تولد حدثًا

87
00:05:52,340 --> 00:05:57,680
‫ناجحًا ، عند الاصطدام بأحد هذه الأشياء ، يمكن لبيادقنا تشغيل بعض الوظائف في

88
00:05:57,680 --> 00:06:00,830
‫المكون الصحي وتغيير تلك القيم الصحية.

89
00:06:00,830 --> 00:06:07,820
‫إن وضع وظائفنا الصحية في مكون ثم إضافة هذا المكون إلى فئة له بعض المزايا عن البديل

90
00:06:07,820 --> 00:06:13,760
‫، والذي سيكون ببساطة وضع الوظيفة الصحية في فئة البيدق الأساسية ، على

91
00:06:13,760 --> 00:06:17,520
‫سبيل المثال ، ووراثة ذلك في الخزان والبرج.

92
00:06:17,540 --> 00:06:25,280
‫كما ترى ، يسمح لنا هذا بالحفاظ على فئتي الخزانات والبرج صغيرة والتعامل فقط مع الوظائف المحددة

93
00:06:25,280 --> 00:06:26,420
‫لتلك الفئات.

94
00:06:26,420 --> 00:06:32,840
‫بينما يمكن إضافة المكون الصحي إلى أي فاعل آخر ، مثل الأشياء التي لا تعمل مثل الدبابات

95
00:06:32,840 --> 00:06:33,800
‫أو الأبراج.

96
00:06:33,800 --> 00:06:39,290
‫يمكننا أن نصنع جدارًا قابلًا للتدمير ، على سبيل المثال ، يمكن تدميره بمجرد أن يحدث ضررًا

97
00:06:39,290 --> 00:06:39,950
‫كافيًا.

98
00:06:39,950 --> 00:06:43,910
‫لذلك دعونا نتحدث قليلاً عن كيفية تحقيق ذلك الآن.

99
00:06:43,910 --> 00:06:50,810
‫لقد بنى Unreal Engine وظائف التلف ونظامه التالف معقد للغاية في الواقع.

100
00:06:50,810 --> 00:06:58,490
‫يرث أي لاعب في لعبتنا عددًا من أحداث الضرر ، أحدها يسمى تلقي أي ضرر.

101
00:06:58,490 --> 00:07:03,440
‫هذا مفوض متعدد البث ، تمامًا كما هو الحال في ضرب المكون.

102
00:07:03,470 --> 00:07:08,360
‫سنقوم الآن بإضافة مكونات صحية إلى بيادقنا وستستند هذه المكونات إلى الولايات المتحدة.

103
00:07:08,360 --> 00:07:09,860
‫فئة المكون الصحي.

104
00:07:09,860 --> 00:07:16,550
‫لذلك بما أننا نعلم أن بيادقنا سترث هذا عند أخذ أي مفوض للضرر ، فعندئذ إذا أنشأنا وظيفتنا

105
00:07:16,550 --> 00:07:22,640
‫المخصصة في فئة مكون الصحة ، فيمكننا استخدام هذه الوظيفة باعتبارها رد اتصال

106
00:07:22,640 --> 00:07:25,940
‫وربطها بـ on اتخاذ أي ضرر مندوب.

107
00:07:25,940 --> 00:07:33,200
‫لذلك عندما يتم إنشاء حدث ضرر ، يمكن للمفوض إرسال أي وظائف مرتبطة

108
00:07:33,200 --> 00:07:37,460
‫به في قائمة الاستدعاء الخاصة به.

109
00:07:37,460 --> 00:07:42,320
‫لذا فإن السؤال التالي هو كيف نجعل ذلك المندوب يبث؟

110
00:07:42,320 --> 00:07:45,080
‫نحن بحاجة إلى طريقة لتوليد حدث الضرر.

111
00:07:45,080 --> 00:07:52,070
‫حسنًا ، هناك وظيفة في إحصائيات اللعب الخاصة بك ستفعل ذلك بالضبط وتسمى تطبيق الضرر.

112
00:07:52,070 --> 00:07:58,550
‫إذا استخدمنا هذه الوظيفة الثابتة من إحصائيات اللعب الخاصة بك لتطبيق الضرر ، فإن تطبيق الضرر يأخذ

113
00:07:58,550 --> 00:08:02,180
‫عددًا من المعلمات ، بما في ذلك الممثل الذي تعرض للتلف.

114
00:08:02,180 --> 00:08:09,620
‫لذلك إذا استدعينا تطبيق الضرر ، فسيتم إطلاق المفوضين عند اتخاذ أي ضرر وسيتم استدعاء وظيفة رد الاتصال

115
00:08:09,620 --> 00:08:11,720
‫هذه استجابةً لذلك.

116
00:08:11,720 --> 00:08:15,830
‫لذا فإن تطبيق الضرر هو ما يولد حدث الضرر.

117
00:08:15,830 --> 00:08:19,520
‫لإعداد كل هذا ، لدينا ثلاث خطوات.

118
00:08:19,520 --> 00:08:25,760
‫أولاً ، قم بإنشاء وظيفة رد الاتصال وبما أن هذا سيكون ملزمًا عند حدوث أي ضرر ، فيجب أن

119
00:08:25,760 --> 00:08:31,550
‫تحتوي على معلمات الإدخال الصحيحة حتى يتم استدعاء أي ضرر وتمرير جميع المعلومات

120
00:08:31,550 --> 00:08:33,950
‫المرتبطة به حول حدث الضرر.

121
00:08:34,130 --> 00:08:37,970
‫الخطوة الثانية هي ربط رد الاتصال هذا بالمفوض.

122
00:08:38,000 --> 00:08:43,850
‫لقد رأينا كيفية القيام بذلك مع المفوض عند المكون باستخدام الوظيفة الديناميكية الإضافية.

123
00:08:43,850 --> 00:08:45,530
‫سنفعل نفس الشيء هنا.

124
00:08:45,530 --> 00:08:52,000
‫والخطوة الثالثة هي إنشاء حدث الضرر عن طريق استدعاء الوظيفة الثابتة التي تلعبها اللعبة ، والضرر

125
00:08:52,010 --> 00:08:52,670
‫المطبق.

126
00:08:52,670 --> 00:08:56,210
‫لذا دعنا نعود إلى الكود ونبدأ في إعداد هذا.

127
00:08:56,600 --> 00:08:56,880
‫تمام.

128
00:08:56,960 --> 00:09:01,910
‫لذلك نحن هنا في مكون الصحة وسنضيف دالة رد نداء.

129
00:09:01,910 --> 00:09:05,810
‫الآن ، يمكن أن يكون هذا باطلاً ويمكننا تسميته بأي شيء نحب.

130
00:09:05,960 --> 00:09:08,450
‫سأسمي هذا الضرر الحاصل.

131
00:09:08,450 --> 00:09:14,870
‫ونظرًا لأننا نلزم هذا المفوض ، يجب أن يكون لديه معلمات الإدخال الصحيحة المناسبة

132
00:09:14,870 --> 00:09:16,280
‫لذلك المفوض.

133
00:09:16,310 --> 00:09:23,240
‫الآن بالنسبة للوظائف المرتبطة بـ on take أي مفوض ضرر ، يجب أن تكون قائمة معلمات الإدخال على النحو التالي.

134
00:09:23,240 --> 00:09:30,830
‫الأول عبارة عن مؤشر ممثل يسمى الممثل التالف ، وهذا ما يبدو عليه.

135
00:09:30,830 --> 00:09:33,320
‫إنه الممثل الذي يتضرر.

136
00:09:33,350 --> 00:09:38,480
‫التالي هو تعويم يسمى الضرر وهذا هو مقدار الضرر الفعلي.

137
00:09:38,510 --> 00:09:45,950
‫الآن ، بعد ذلك ، لدينا تكلفة مؤشر نوع الضرر يسمى نوع الضرر.

138
00:09:46,220 --> 00:09:52,430
‫والسبب في وجود معلمة الإدخال هذه هو أن Unreal Engine لديه مفهوم أنواع الضرر.

139
00:09:52,430 --> 00:09:59,090
‫يمكنك إنشاء أنواع أضرار مخصصة تحتوي على بيانات إضافية يمكنها إخبارك بالقيام بأشياء مختلفة اعتمادًا

140
00:09:59,090 --> 00:10:01,100
‫على نوع الضرر الذي قد تتعرض له.

141
00:10:01,100 --> 00:10:02,000
‫الخسائر الناجمة عن الحرائق.

142
00:10:02,000 --> 00:10:03,260
‫ضرر السم.

143
00:10:03,320 --> 00:10:05,570
‫أضرار المتفجرات وما إلى ذلك.

144
00:10:05,570 --> 00:10:11,330
‫وإذا كنت ترغب في تنفيذ وظيفة مخصصة لكل نوع من أنواع الضرر ، فيمكنك تنفيذ ذلك في

145
00:10:11,330 --> 00:10:13,430
‫نوع الضرر المخصص الخاص بك.

146
00:10:13,460 --> 00:10:19,040
‫نحن الآن لا ننشئ نوع الضرر المخصص الخاص بنا ، ولكن نظرًا لأننا نربط هذه الوظيفة

147
00:10:19,040 --> 00:10:22,940
‫بمندوب الضرر ، يجب أن يكون لديها معلمات الإدخال هذه.

148
00:10:22,940 --> 00:10:24,380
‫لذلك قمنا بتضمينها هنا.

149
00:10:24,410 --> 00:10:32,090
‫الآن المعلمة التالية هي مؤشر تحكم وهذا يسمى المحرض ونظام تلف المحرك غير

150
00:10:32,090 --> 00:10:33,330
‫الواقعي.

151
00:10:33,350 --> 00:10:38,050
‫المحرض هو المتحكم المسؤول عن الضرر.

152
00:10:38,060 --> 00:10:45,110
‫لذلك إذا كان الضرر ناتجًا في النهاية عن سيطرة لاعب على بيدق ، فإن المحرض هو المتحكم الذي

153
00:10:45,110 --> 00:10:46,820
‫يمتلك هذا البيدق.

154
00:10:46,850 --> 00:10:49,600
‫الآن ، لا داعي دائمًا لأن يكون محرضًا.

155
00:10:49,610 --> 00:10:52,580
‫إذا لم يكن هناك شيء ، فسيكون هذا ببساطة فارغًا.

156
00:10:52,580 --> 00:10:59,510
‫والآن أحصل على التمايل الحمراء حتى أتمكن من إعادة الإعلان عن فئة وحدة التحكم A هنا بين أقواس

157
00:10:59,510 --> 00:11:00,410
‫الدالة.

158
00:11:00,440 --> 00:11:06,980
‫الآن المعلمة الأخيرة هي مؤشر ممثل وهذا واحد يسمى الضرر السبب.

159
00:11:07,010 --> 00:11:10,370
‫هذا هو الفاعل الفعلي الذي تسبب في الضرر.

160
00:11:10,370 --> 00:11:13,220
‫سيكون هذا هو القذيفة نفسها.

161
00:11:13,310 --> 00:11:20,670
‫لذلك أعلنا أن هذا الضرر قد أخذ وظيفة رد الاتصال تمامًا مثل وظيفة رد الاتصال الأخرى الخاصة بنا على hit.

162
00:11:20,690 --> 00:11:22,970
‫هذا يجب أن يكون دالة u.

163
00:11:22,970 --> 00:11:28,550
‫لذلك سنقوم بإعطائها وظيفة الماكرو فقط للتأكد من أنها تعمل بمجرد ربطها

164
00:11:28,550 --> 00:11:30,620
‫بـ on take أي مفوض ضرر.

165
00:11:30,950 --> 00:11:35,680
‫والآن بعد أن أعلناها ، نحن على استعداد لتعريفها في ملف CPP.

166
00:11:35,690 --> 00:11:38,540
‫حتى هنا في المكونات الصحية ، CPP.

167
00:11:38,630 --> 00:11:45,530
‫في الأسفل ، سأقوم بإعطاء هذه الدالة جسمًا وظيفيًا وأقوم بتأهيل الوظيفة بالكامل

168
00:11:45,530 --> 00:11:46,970
‫باسم الفئة.

169
00:11:46,970 --> 00:11:49,400
‫والآن لدينا رد اتصال.

170
00:11:49,400 --> 00:11:52,400
‫لذا علينا الآن ربط هذا بالمندوب.

171
00:11:52,400 --> 00:11:59,180
‫لكن المندوب غير موجود في المكون الصحي ، فهو موجود في الجهات الفاعلة على وجه التحديد.

172
00:11:59,180 --> 00:12:05,970
‫نريد ربط هذا بـ on take أي مندوب ضرر في البيدق الذي يمتلك هذا المكون.

173
00:12:05,990 --> 00:12:11,570
‫فكيف نصل إلى مالك هذا المكون حتى نتمكن من الارتباط بأحد مندوبيها؟

174
00:12:11,570 --> 00:12:17,270
‫حسنًا ، سنفعل هذا ونبدأ اللعب والطريقة التي يمكننا بها الوصول إلى مالك المكون

175
00:12:17,270 --> 00:12:19,460
‫هي من خلال وظيفة git owner.

176
00:12:19,460 --> 00:12:23,530
‫إذا قمت بالمرور فوق هذا ، فسترى أنه يقوم بإرجاع مؤشر ممثل.

177
00:12:23,540 --> 00:12:27,620
‫هذا هو المؤشر إلى الممثل الذي يمتلك مكونًا.

178
00:12:27,620 --> 00:12:32,990
‫يمكن أن تكون المكونات مملوكة لبيادق ، ويمكن أن يمتلكها ممثلون ، لذلك

179
00:12:32,990 --> 00:12:35,630
‫ستعيد المالك في شكل مؤشر ممثل.

180
00:12:35,810 --> 00:12:42,890
‫إذن لدينا وظيفة رد الاتصال وخطوتنا الثانية هي ربطها بالمندوب عند أخذ أي ضرر موجود

181
00:12:42,890 --> 00:12:46,640
‫على البيدق الذي يمتلك المكون الصحي.

182
00:12:46,790 --> 00:12:53,870
‫لذلك نظرًا لأن لديك خبرة في عمليات رد الاتصال الملزمة للمندوبين ، فسيكون هذا هو التحدي الذي تواجهه في

183
00:12:53,870 --> 00:12:55,100
‫فئة مكون الصحة.

184
00:12:55,100 --> 00:13:02,420
‫في Begin Play ، ستقوم بربط الضرر الذي تم التعرض له بأخذ أي مفوض ضرر موجود

185
00:13:02,420 --> 00:13:04,190
‫على مالك المكون.

186
00:13:04,190 --> 00:13:08,090
‫لذلك ستصل إلى هذا المفوض من خلال وظيفة الحصول على المالك.

187
00:13:08,090 --> 00:13:13,640
‫بعبارة أخرى ، ستتصل بالحصول على مالك ومن ثم ستصل إليه لتتلقى أي ضرر.

188
00:13:13,640 --> 00:13:20,660
‫ثم من هناك تعرف كيفية ربط عمليات الاسترجاعات بالمفوضين باستخدام إضافة ديناميكية إذا

189
00:13:20,660 --> 00:13:28,250
‫واجهتك مشكلة ، انظر كيف قمنا بربط رد الاتصال على مكون ضرب المفوض بإيقاف الفيديو مؤقتًا وربط

190
00:13:28,250 --> 00:13:31,790
‫الضرر المأخوذ بـ on ، خذ أي مفوض ضرر الآن.

191
00:13:35,000 --> 00:13:35,360
‫تمام.

192
00:13:35,360 --> 00:13:40,610
‫لذا عدنا هنا في مكون الصحة ونحن على استعداد للقيام بربط وظيفة رد الاتصال الخاصة بنا.

193
00:13:40,610 --> 00:13:47,390
‫لذا هنا ونبدأ اللعب ، سنصل إلى المالك باستخدام وظيفة git owner ومن هناك سنستخدم

194
00:13:47,390 --> 00:13:54,770
‫مشغل السهم للوصول إلى هذا المندوب الذي تم الاتصال به ، وأخذ أي ضرر وعند تلقي أي ضرر له خاصية

195
00:13:54,770 --> 00:14:01,520
‫الإضافة الديناميكية وظيفة وهي ببساطة تأخذ كائن مستخدم واسم وظيفة.

196
00:14:01,520 --> 00:14:05,240
‫الآن كائن المستخدم هو الكائن الذي نربط الوظيفة من أجله.

197
00:14:05,240 --> 00:14:10,130
‫إنه الفصل الذي يحتوي على وظيفة رد الاتصال وسيكون هذا هو هذا.

198
00:14:10,190 --> 00:14:14,420
‫وأخيرًا لدينا وظيفة رد الاتصال الخاصة بنا ، والتي ستكون أنت.

199
00:14:14,420 --> 00:14:16,790
‫تم أخذ تلف مكون الصحة.

200
00:14:16,790 --> 00:14:23,690
‫نحتاج الآن إلى تذكر عنوان المشغل لأن هذا في الواقع يأخذ عنوان الوظيفة.

201
00:14:23,690 --> 00:14:31,460
‫لذا فإن الضرر الذي تم الحصول عليه الآن لا بد أن يأخذ أي ضرر ويتم إضافته إلى قائمة استدعاء ذلك المندوب.

202
00:14:31,460 --> 00:14:37,790
‫لذلك عندما نولد أحداثًا ضررًا ، سنحصل على بث من هذا المندوب مما سيؤدي

203
00:14:37,790 --> 00:14:40,970
‫إلى استدعاء وظيفة تلقي الضرر.

204
00:14:41,570 --> 00:14:48,320
‫باختصار ، لقد أنشأنا مكونًا صحيًا خاصًا بنا وأضفنا أحد هذه العناصر إلى كل من مخطط

205
00:14:48,320 --> 00:14:50,540
‫الخزان ومخطط البرج.

206
00:14:50,660 --> 00:14:58,130
‫أنشأنا وظيفة رد استدعاء تسمى الضرر الذي تم الحصول عليه وقمنا بتقييدها بمندوب on take أي ضرر.

207
00:14:58,130 --> 00:15:05,150
‫تتمثل الخطوة التالية في إنشاء حدث ضرر والذي سينتج عنه بث "on take" أي مندوب

208
00:15:05,150 --> 00:15:10,640
‫تلف حتى يتم استدعاء تلف وظيفة رد الاتصال عند الاستجابة.

209
00:15:10,640 --> 00:15:13,520
‫وسنقوم بإعداد ذلك في الفيديو التالي.

210
00:15:14,240 --> 00:15:15,140
‫سأراك قريبا.

