﻿1
00:00:04,370 --> 00:00:05,330
‫أهلا ومرحبا.

2
00:00:05,330 --> 00:00:10,250
‫في هذه المحاضرة ، سنجعل محركنا يقوم ببعض الحركة عن طريق تحديد خانة اختيار.

3
00:00:10,250 --> 00:00:14,780
‫سنمكِّنه من التحرك والتحرك بسرعة ثابتة.

4
00:00:14,780 --> 00:00:19,460
‫وسنقوم بذلك باستخدام بعض وظائف المكتبة هذه المرة من الداخل.

5
00:00:19,460 --> 00:00:20,150
‫غير حقيقي.

6
00:00:20,150 --> 00:00:24,920
‫لذلك سيضع كل ما لدينا من معلومات حول ملفات الرأس ويتضمنها للاختبار.

7
00:00:24,920 --> 00:00:26,780
‫دعونا نتعمق ونرى كيف يعمل.

8
00:00:27,380 --> 00:00:34,670
‫لذا فإن الطريقة التي أريد أن يعمل بها هذا المحرك هي أنني أريده أن ينتقل بسلاسة من حيث بدأ إلى

9
00:00:34,670 --> 00:00:38,540
‫تعويض الهدف خلال فترة عدد معين من الثواني.

10
00:00:38,540 --> 00:00:43,640
‫لذا فإن الطريقة التي سنحتاجها لتهيئة هذا هي إضافة بعض الخصائص الجديدة إلى ملف الرأس.

11
00:00:43,640 --> 00:00:49,010
‫لذا لنبدأ بإضافة قسم خاص إلى رأس الملف ثم سنضيف

12
00:00:49,010 --> 00:00:59,060
‫خاصية جديدة سيتم تحريرها في أي مكان ، والتي ستحدد الإزاحة ، إزاحة النقل.

13
00:00:59,060 --> 00:01:03,650
‫إذن إلى أي مدى يجب أن يتحرك هذا المحرك عند تنشيطه.

14
00:01:03,710 --> 00:01:09,560
‫لذا فإن الطريقة التي سنقوم بها هي استخدام متجه F وسنطلق عليه إزاحة الحركة مثل

15
00:01:09,560 --> 00:01:11,960
‫لذلك لن أعطيها قيمة افتراضية.

16
00:01:11,990 --> 00:01:13,610
‫سنفعل ذلك في المحرر.

17
00:01:13,880 --> 00:01:19,370
‫ثم سأقوم بإنشاء خاصية جديدة أخرى والتي سيتم تعديلها مرة أخرى في أي مكان

18
00:01:19,370 --> 00:01:24,050
‫، والتي ستكون مقدار الوقت المستغرق للانتقال إلى الهدف.

19
00:01:24,050 --> 00:01:31,790
‫لذلك سيكون لدينا هذا النوع من التعويم ، وهو وقت الحركة وسأقوم بتعيين ذلك على قيمة افتراضية

20
00:01:31,790 --> 00:01:33,410
‫، لنقل ، 4 ثوانٍ.

21
00:01:33,440 --> 00:01:39,740
‫الآن ، هناك شيء آخر أود وضعه هنا ، وهو منطقي فقط في الوقت الحالي ، والذي سيسمح

22
00:01:39,740 --> 00:01:47,060
‫لنا بتنشيط المحرك بحيث يتحرك لأسفل عندما نقوم بتنشيط هذه القيمة المنطقية.

23
00:01:47,060 --> 00:01:49,790
‫لذلك دعونا ننشئ خاصية U أخرى مرة أخرى.

24
00:01:49,790 --> 00:01:57,560
‫قم بالتحرير في أي مكان حتى نتمكن من تعديله حتى أثناء اللعب ، وسيكون مثلًا منطقيًا يجب نقله

25
00:01:57,740 --> 00:02:01,100
‫، وسيتم تعيينه افتراضيًا على "خطأ".

26
00:02:01,100 --> 00:02:07,700
‫لذلك عندما نتحقق من هذا في المحرر ، عندما نلعب ، سوف يذهب وينتقل إلى إزاحة الحركة

27
00:02:07,700 --> 00:02:08,750
‫المستهدفة.

28
00:02:08,750 --> 00:02:13,340
‫الآن في السابق عندما كان لدينا مكون متحرك ، قمنا بجميع الخطوات يدويًا.

29
00:02:13,340 --> 00:02:17,600
‫لكني أريد أن أوضح لكم أن هناك بالفعل بعض الوظائف المضمنة للقيام بالعديد من العمليات الحسابية التي

30
00:02:17,600 --> 00:02:18,050
‫نحتاجها.

31
00:02:18,050 --> 00:02:24,830
‫إنه مدمج في Unreal وهناك وظيفة تسمى V تفسير ثابت أيضًا.

32
00:02:24,830 --> 00:02:28,460
‫وما هو مثير للاهتمام حول ذلك ، دعونا نلقي نظرة على الملاحظات.

33
00:02:28,460 --> 00:02:36,740
‫لذا أقحم متجهًا من متجه حالي إلى متجه مستهدف باستخدام خطوة ثابتة.

34
00:02:36,740 --> 00:02:43,940
‫وهذا يعني أنه بمرور الوقت سننتقل من التيار إلى الهدف بسرعة معينة ، وسوف يفعل ذلك باستمرار

35
00:02:43,940 --> 00:02:47,330
‫، والذي يبدو تمامًا كما نريد.

36
00:02:47,330 --> 00:02:52,430
‫نريد الانتقال من موقعنا الحالي إلى موقع تعويض الهدف بسرعة ثابتة.

37
00:02:52,640 --> 00:02:58,700
‫الآن ، يمكنك معرفة ما إذا كنت قد ألقيت نظرة على بناء الجملة لهذه الوظيفة ، يمكنك أن ترى أن لها نوع

38
00:02:58,700 --> 00:02:59,990
‫إرجاع من متجه F.

39
00:02:59,990 --> 00:03:03,590
‫إذن هذا هو الموقع الجديد الذي يستكمله.

40
00:03:03,770 --> 00:03:06,620
‫ثم لديها اثنين من المدخلات.

41
00:03:06,620 --> 00:03:14,360
‫لدينا متجه F حالي ولا تقلق بشأن الرموز الأخرى حول هذا التأثير في الوقت الحالي

42
00:03:14,360 --> 00:03:21,950
‫، الشيء المهم هو أنه متجه حالي ثم الهدف الذي نريده أن يصل إليه في النهاية.

43
00:03:22,190 --> 00:03:25,220
‫ثم حان وقت دلتا.

44
00:03:25,220 --> 00:03:32,180
‫لذلك يستخدم هذا لجعل معدل إطار الحركة مستقلاً وفي سرعة الاستيفاء.

45
00:03:32,180 --> 00:03:37,220
‫إذن ما السرعة التي يجب أن نتحرك بها من موقعنا الحالي إلى الهدف؟

46
00:03:37,220 --> 00:03:45,530
‫ستلاحظ الآن أنه هنا في التوثيق ، يحتوي بالفعل على قسم يقول تضمين وهذا يخبرك بسطر التضمين

47
00:03:45,530 --> 00:03:52,280
‫الذي ستحتاجه في ملف C ++ الخاص بك حتى تتمكن من استخدام هذه الوظيفة.

48
00:03:52,280 --> 00:04:00,860
‫وكما رأينا في الفيديو السابق ، يسمح لنا سطر التضمين بنسخ التعريفات من هذا الملف

49
00:04:00,860 --> 00:04:02,390
‫المحدد.

50
00:04:02,390 --> 00:04:05,990
‫وأحد التعريفات هو تعريف هذه الوظيفة.

51
00:04:05,990 --> 00:04:13,250
‫لذلك ، يسمح لنا باستخدام هذا الثابت تفسير V حتى الآن يعني V أمام هذه الوظيفة أنه يقوم بالاستيفاء

52
00:04:13,250 --> 00:04:15,170
‫على المتجهات.

53
00:04:15,170 --> 00:04:20,870
‫لهذا السبب يطلق عليه تفسير V بدلاً من وظائف الاستيفاء الأخرى المتوفرة أيضًا

54
00:04:20,870 --> 00:04:22,430
‫في ملف المكتبة هذا.

55
00:04:22,430 --> 00:04:24,140
‫لذلك دعونا نلقي نظرة على كيفية استخدامها.

56
00:04:24,140 --> 00:04:29,900
‫بادئ ذي بدء ، سنقوم بنسخ سطر التضمين من الوثائق وسننتقل إلى

57
00:04:29,900 --> 00:04:34,580
‫نقل CP حيث نريد تنفيذ ذلك في جسم مكون التجزئة.

58
00:04:34,580 --> 00:04:38,660
‫لكنها تشمل أننا لا ندرج داخل جسم مكون القراد.

59
00:04:38,660 --> 00:04:41,900
‫يتعين علينا إجراء عمليات التضمين كلها في أعلى الملف.

60
00:04:42,050 --> 00:04:47,660
‫هذا هو المكان الذي سأضع فيه خاصتي وسأضع خاصتي بعد تضمين المحرك H.

61
00:04:47,660 --> 00:04:53,240
‫لذلك سنقوم بوضع وإدراج للرياضيات ، والشرطة المائلة للأمام ، والمرافق غير الواقعية للرياضيات.

62
00:04:53,660 --> 00:04:59,930
‫H الآن ما يمكننا فعله هو أنه يمكننا بالفعل استخدام الوظيفة داخل مكون التجزئة الخاص بنا.

63
00:04:59,930 --> 00:05:03,550
‫دعنا فقط نتخلص من الكود الذي أدخلناه بالفعل.

64
00:05:03,560 --> 00:05:03,800
‫إحصاء - عد.

65
00:05:04,020 --> 00:05:09,300
‫لأننا كنا نستخدم ذلك لفهم كيفية استدعاء الوظائف للجهات الفاعلة الأخرى.

66
00:05:10,140 --> 00:05:17,190
‫وما يتعين علينا القيام به هو إذا قمت بالتمرير لأعلى ، يمكنك أن ترى طريقة تسميتها هي F Mass Colon ، و Colon V Intercept

67
00:05:17,190 --> 00:05:18,770
‫، وثابت اثنين.

68
00:05:18,780 --> 00:05:27,630
‫لذلك نقوم نوعًا ما بعمل عامل القولون القولون الذي ينظر داخل فصل الرياضيات F ، والذي ينظم معًا

69
00:05:27,630 --> 00:05:30,180
‫كل أدوات الرياضيات هذه.

70
00:05:30,180 --> 00:05:33,300
‫لذلك سنقوم بحساب F.

71
00:05:33,330 --> 00:05:34,500
‫القولون.

72
00:05:35,340 --> 00:05:41,460
‫وهنا يمكنك أن ترى مجموعة من الإكمال التلقائي تظهر لوظائف رياضية مختلفة مدرجة في ملف الرأس

73
00:05:41,460 --> 00:05:44,760
‫هذا الذي قمنا بتضمينه للتو في هذا الملف.

74
00:05:44,760 --> 00:05:48,900
‫لذا يمكنك إلقاء نظرة من خلالها ، ورؤية أي من الأشياء المثيرة للاهتمام هنا

75
00:05:48,900 --> 00:05:56,580
‫، يمكنني رؤية مجموعة من الاستيفاء ، الاستيفاء الدائري ، إلخ. لكننا أردنا أن يفسر V ثابتًا لـ ويمكننا الضغط

76
00:05:56,580 --> 00:06:04,080
‫على علامة التبويب لإكمال ذلك ثم نفتح بعض الأقواس ويمكننا أن نرى الحجج التي نحتاجها

77
00:06:04,080 --> 00:06:09,180
‫لتمرير التيار ووقت دلتا الهدف وسرعة التقاطع.

78
00:06:09,180 --> 00:06:13,920
‫لنبدأ إذن في إنشاء بعض المتغيرات للاحتفاظ ببعض هذه المتغيرات.

79
00:06:14,250 --> 00:06:22,020
‫لذا أولاً وقبل كل شيء ، نحتاج إلى متجه F والذي سيكون موقعنا الحالي ولن نضبط ذلك

80
00:06:22,020 --> 00:06:23,370
‫حتى الآن.

81
00:06:23,370 --> 00:06:32,340
‫ثم سيكون لدينا متجه F للموقع المستهدف ، ثم نحصل على تعويم للسرعة.

82
00:06:33,090 --> 00:06:38,130
‫وسيتعين علينا حساب كل منها على حدة لمعرفة كيف يمكننا جعل هذه الحركة

83
00:06:38,130 --> 00:06:38,640
‫تحدث.

84
00:06:38,640 --> 00:06:42,450
‫لذلك سيكون الموقع الحالي مباشرًا نسبيًا.

85
00:06:42,450 --> 00:06:46,440
‫نحتاج إلى الحصول على الموقع الحالي للممثل المالك.

86
00:06:46,440 --> 00:06:47,190
‫فكيف لنا أن نفعل ذلك؟

87
00:06:47,190 --> 00:06:50,370
‫لنستبدل هذه الفاصلة المنقوطة بعلامة يساوي.

88
00:06:50,400 --> 00:06:54,750
‫ثم سنقوم بالحصول على زوج من الأقواس للمالك.

89
00:06:54,930 --> 00:06:56,370
‫ثم سنقوم بعمل سهم.

90
00:06:56,370 --> 00:07:05,580
‫لذلك سنقوم باستدعاء دالة على الممثل المالك ، وسنحصل على موقع الممثل ثم زوج من الأقواس

91
00:07:05,700 --> 00:07:08,520
‫وفاصلة منقوطة لإنهائها.

92
00:07:08,520 --> 00:07:12,570
‫وبذلك نحصل على الموقع الحالي للممثل المالك.

93
00:07:12,750 --> 00:07:15,000
‫الآن ، ماذا عن موقعنا المستهدف؟

94
00:07:15,000 --> 00:07:21,000
‫حسنًا ، نعلم أن لدينا خاصية تسمى إزاحة الحركة ، لذا سنشاركها هنا.

95
00:07:21,000 --> 00:07:26,640
‫لكننا نحتاج إلى إضافة الموقع الأصلي إلى إزاحة النقل هذه.

96
00:07:26,820 --> 00:07:32,820
‫لذلك ، نحتاج إلى التقاط الموقع الأصلي في Biggin play.

97
00:07:32,820 --> 00:07:34,860
‫لذلك نحن بحاجة إلى متغير لتخزينه.

98
00:07:34,860 --> 00:07:38,820
‫لذا دعنا ننتقل إلى المحرك H ولن يكون تعديلًا في أي مكان.

99
00:07:38,820 --> 00:07:40,460
‫بمجرد أن أضعه تحت U.

100
00:07:40,470 --> 00:07:46,590
‫الخصائص ، ستكون متجه F يسمى الموقع الأصلي.

101
00:07:47,220 --> 00:07:49,020
‫لن نضعه على أي شيء هنا.

102
00:07:49,020 --> 00:07:54,480
‫ثم سننتقل إلى محرك CP الخاص بنا لبدء اللعب ، وإزالة

103
00:07:54,480 --> 00:08:06,180
‫سطر التعليق هذا ووضع الكود الخاص بنا ، والذي سيكون أن الموقع الأصلي يساوي الحصول على أقواس المالك للحصول على

104
00:08:06,180 --> 00:08:08,790
‫موقع الممثل مثل ذلك.

105
00:08:08,790 --> 00:08:13,260
‫والآن بعد أن تم التقاط موقعنا الأصلي وبدء اللعب ، يمكننا استخدامه في TTIC.

106
00:08:13,260 --> 00:08:21,870
‫لذلك ننتقل إلى Tick وقمنا بتعيين موقعنا المستهدف مساويًا للموقع الأصلي بالإضافة إلى إزاحة الحركة.

107
00:08:21,870 --> 00:08:25,560
‫إذن هذا هو موقعنا المستهدف وأخيرًا سرعتنا.

108
00:08:25,560 --> 00:08:32,040
‫حسنًا ، هذه هي المسافة التي نحتاج إلى قطعها مقسومة على الوقت الذي نحتاج إلى الانتقال

109
00:08:32,070 --> 00:08:32,610
‫إليه.

110
00:08:32,610 --> 00:08:38,820
‫لذا إذا كان لدينا موقع مستهدف وكان لدينا موقع أصلي ، فسنحتاج إلى إيجاد المسافة

111
00:08:38,820 --> 00:08:45,270
‫بين هذين ، وهو ما يمكننا فعله باستخدام متجه F ، ونقطتين ، ونقطتين.

112
00:08:45,270 --> 00:08:54,750
‫ثم نمرر إلى الأقواس والموقع الأصلي والموقع المستهدف.

113
00:08:54,930 --> 00:08:58,260
‫هذا يعطينا المسافة بين هذين المتجهين.

114
00:08:58,260 --> 00:09:05,400
‫وبعد ذلك سنقسم ذلك على ما لدينا مرارًا وتكرارًا يسمى وقت الانتقال.

115
00:09:05,730 --> 00:09:08,970
‫وهذا يعطينا السرعة التي يجب أن نتحرك بها.

116
00:09:09,210 --> 00:09:13,920
‫والآن يمكننا استخدام هذه كوسيطات للحصول على ثابت التقاطع V أيضًا.

117
00:09:13,920 --> 00:09:20,730
‫لذلك لدينا أولاً وقبل كل شيء ، نحتاج إلى تحديد الموقع الحالي ثم الموقع المستهدف.

118
00:09:21,150 --> 00:09:27,210
‫ثم سنخبرها بوقت دلتا ، والذي هو بالفعل معلمة في مكون التجزئة.

119
00:09:27,220 --> 00:09:31,890
‫لذا نحتاج فقط إلى تمرير ذلك ومن ثم حصلنا على سرعة التقاطع.

120
00:09:31,890 --> 00:09:38,970
‫سنقوم فقط بالمرور بسرعة مثل وضع فاصلة منقوطة في نهاية هذا السطر وهذا هو الموقع الجديد

121
00:09:38,970 --> 00:09:40,410
‫بشكل أساسي.

122
00:09:40,410 --> 00:09:50,130
‫لذلك دعونا نخزن ذلك في متجه F متغير جديد يسمى الموقع الجديد يساوي هذا الرائع.

123
00:09:50,430 --> 00:09:54,300
‫الآن نحن بحاجة إلى القيام بشيء مع هذا الموقع الجديد لأنه ليس من الجيد مجرد

124
00:09:54,330 --> 00:09:57,960
‫حسابه ، فنحن في الواقع بحاجة إلى نقل الممثل إلى الموقع الجديد.

125
00:09:58,290 --> 00:09:59,370
‫لذلك هذا ما سنفعله.

126
00:09:59,400 --> 00:10:02,280
‫سوف نسميها عند الحصول على المالك.

127
00:10:02,280 --> 00:10:03,740
‫لذلك نحن نمتلك.

128
00:10:04,730 --> 00:10:06,640
‫الأقواس Arrow.

129
00:10:06,650 --> 00:10:15,680
‫وبعد ذلك سنقوم بتحديد موقع ممثل محدد وسنمر في الموقع الجديد مثل ذلك ولدينا فاصلة منقوطة

130
00:10:15,680 --> 00:10:17,780
‫في نهاية السطر.

131
00:10:17,960 --> 00:10:20,990
‫لذلك دعونا نمضي قدمًا ونجمع هذا ونرى ما إذا كان يعمل.

132
00:10:20,990 --> 00:10:25,280
‫لذا إذا انتقلنا إلى الزنزانة ، وحدد الجدار الذي نريد

133
00:10:25,280 --> 00:10:32,990
‫تحريكه ، يمكنك الآن أن ترى أن عنصر المحرك قد حصل على تعويض الحركة ، وهو ما سأفعله في الاتجاه Z

134
00:10:32,990 --> 00:10:35,480
‫، وأعتقد أنني سأفعل -600.

135
00:10:35,960 --> 00:10:38,930
‫ثم وقت التحرك ، يجب أن يكون 4 ثوانٍ على ما يرام.

136
00:10:38,930 --> 00:10:44,060
‫لذلك دعونا نحفظ ذلك ثم نضغط تشغيل ونرى ما إذا كان يتحرك حتى لا يتحرك.

137
00:10:44,060 --> 00:10:50,030
‫وهناك خطأ في سجل الإخراج يقول أن حركة الممثل قد تم ضبطها على ثابت ، وهذا هو سبب عدم قدرتها

138
00:10:50,030 --> 00:10:51,350
‫على الحركة.

139
00:10:51,350 --> 00:10:59,780
‫لذلك إذا حددنا الممثل مرة أخرى ونظرنا إلى إعدادات التنقل الخاصة به ، يمكنك أن ترى في الواقع إعدادات التنقل لمكون

140
00:10:59,780 --> 00:11:01,370
‫الشبكة الثابتة.

141
00:11:01,370 --> 00:11:03,920
‫لذا حدد مكون الشبكة الثابتة ، ثم انظر إلى التنقل.

142
00:11:03,920 --> 00:11:06,740
‫يمكنك أن ترى أنه تم ضبطه على ثابت ، مما يعني بشكل أساسي أنه غير مسموح له بالتحرك.

143
00:11:06,890 --> 00:11:11,900
‫دعنا نحول ذلك إلى متحرك لأننا نريده أن يتحرك ثم دعنا نمضي قدمًا ونضرب التشغيل.

144
00:11:11,930 --> 00:11:18,200
‫الآن يمكنك أن ترى في الظلام أن الجدار كان ينهار ، وهذا مثالي.

145
00:11:18,200 --> 00:11:23,540
‫أعتقد أن لدينا محركًا في مكان آخر في مشهدنا على هذا العمود هنا يحاول أيضًا التحرك.

146
00:11:23,540 --> 00:11:24,680
‫لذلك دعونا لا نفعل ذلك.

147
00:11:24,680 --> 00:11:31,520
‫دعنا نحذف مكون المحرك الذي أضفناه هناك فقط للاختبار ويجب ألا يعطينا أي أخطاء في سجل

148
00:11:31,520 --> 00:11:32,510
‫الإخراج.

149
00:11:32,510 --> 00:11:38,450
‫إذا مضينا قدمًا وضربنا التشغيل الآن ، فيجب أن نجعل هذا الجدار ينزل إلى موقعه المستهدف.

150
00:11:38,450 --> 00:11:42,890
‫لذلك دعونا نتحداك لجعلها تتحرك مع منطقية أنشأناها التي تمتلكها.

151
00:11:42,890 --> 00:11:48,770
‫لذلك ستقوم بلف الكود بعبارة if المناسبة والتعليمات البرمجية المناسبة بحيث لا يتحرك

152
00:11:48,770 --> 00:11:52,730
‫النظام الأساسي إلا عندما يكون هذا Boolean صحيحًا.

153
00:11:53,000 --> 00:11:58,520
‫وبعد ذلك ستقوم بإعادة ترجمة الكود واللعب والإخراج باستخدام F8 ثم تغيير منطقية

154
00:11:58,520 --> 00:12:02,420
‫ومراقبة ما إذا كان يتحرك عند التحقق من ذلك المنطقي.

155
00:12:02,420 --> 00:12:04,400
‫لذا أوقف الفيديو مؤقتًا واذهب.

156
00:12:07,410 --> 00:12:07,740
‫تمام.

157
00:12:07,770 --> 00:12:08,510
‫مرحبًا بعودتك.

158
00:12:08,520 --> 00:12:15,390
‫لذلك دعنا نذهب ونلف عناصر مكون التجزئة هذه في عبارة if ، ليست فائقة ، ولكن كل شيء آخر سنفعله.

159
00:12:15,390 --> 00:12:24,450
‫إذا كان يجب أن يتحرك ، فافتح بعض الأقواس وحرك كل هذا الرمز في التذكر لوضع مسافة بادئة له في مستوى واحد لأننا داخل

160
00:12:24,450 --> 00:12:29,220
‫الأقواس ونريد أن نظهر أن هذا لن يتم تنفيذه إلا داخل تعليمة

161
00:12:29,220 --> 00:12:29,610
‫if.

162
00:12:29,610 --> 00:12:37,230
‫اجعل الأمر سهلاً بالنسبة لنا لقراءة التحكم في كل f 11 لتجميعها ، ومن ثم يجب أن نكون قادرين على الذهاب

163
00:12:37,230 --> 00:12:42,300
‫والضغط على زر التشغيل F ثمانية لإخراجها إذا تم أسر الماوس لدينا.

164
00:12:42,660 --> 00:12:49,680
‫وبعد ذلك سنذهب لإلقاء نظرة على العناصر الخارجية لدينا ، سنحاول العثور على الجدار أو يمكننا

165
00:12:49,680 --> 00:12:56,340
‫فقط النقر فوق المشهد ثم سنقوم باختيار نقل أحد المكونات والتحقق مما ينبغي يتحرك ويذهب

166
00:12:56,340 --> 00:13:00,540
‫، ويبدأ الجدار في التحرك عندما يحدث ذلك.

167
00:13:00,570 --> 00:13:01,350
‫أشياء عظيمة.

168
00:13:01,350 --> 00:13:03,570
‫سأراك في المحاضرة القادمة.

