جدول المحتويات:
- الخطوة 1: قم بإنشاء المشغل الخاص بك
- الخطوة 2: رمز غرفة جديد
- الخطوة 3: إنشاء ارتباط من متغير
- الخطوة 4: الاختبار
- الخطوة 5: أضف قائمة الغرف
- الخطوة 6: حذف الغرف
- الخطوة 7: الاختبار
- الخطوة 8: الشذوذ مع مكعبات السكر والأشياء
- الخطوة 9: وظيفة Clone ()
- الخطوة 10: هذا كل شيء الآن
فيديو: روابط من المتغيرات في البرمة مع مكعبات السكر: 10 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:37
أنا سعيد للغاية لأنك انضممت إلي مرة أخرى! هذا يعني أن Wumpus لم يأكلك بعد. حسن!
بالنسبة لأولئك الذين ليسوا مألوفين منكم ، هذه مجموعة من البرامج التعليمية التي أقوم بتقديمها لمساعدة ابنة عمي الرائعة في مشروعها الأول. تهدف هذه البرامج التعليمية إلى أن تكون مرجعًا لما يمكنك القيام به باستخدام بعض ميزات البرمجة في Twine و Sugarcube. إذا كنت ترغب في المتابعة ، يمكنك العثور على البرنامج التعليمي الأول هنا.
في البرنامج التعليمي الأخير ، قمت ببناء مجموعة صغيرة من الغرف التي يمكن للاعب استكشافها. أضفت كائن Wumpus ، وقمت بعمل رمز عام للغرفة لتغيير ما تم عرضه في كل غرفة اعتمادًا على مكان Wumpus.
الخطوة 1: قم بإنشاء المشغل الخاص بك
هذه الخطوة بسيطة للغاية. في الأساس ، أنا فقط أستخدم نفس الكود مثل wumpus $ الخاص بي ، ولكن مع متغير $ player بدلاً من ذلك.
الخطوة 2: رمز غرفة جديد
تم تغيير رمز الغرفة العام بحيث تكون قيمة $ player هي الغرفة الحالية. ثم قارن بين $ wumpus و $ player بدلاً من الغرفة الحالية.
هذا تغيير بسيط ، وليس ضروريًا تمامًا ، لكني أحب أن أبقي الكود منظمًا.
الخطوة 3: إنشاء ارتباط من متغير
أخيرًا ، أريد استبدال الرابط الموجود في غرفة البداية بواحد يتغير بناءً على قيمة $ player. يمكن عمل ذلك باستخدام الوظيفة "" في Sugarcube. يمكنك قراءة المزيد عن ذلك في صفحة وثائق Sugarcube.
السلسلة الأولى بعد أمرنا هي العبارة التي ستظهر في مقطعنا. والثاني هو اسم المقطع الذي نريد الارتباط به. أنا أستخدم "Hunt the Wumpus!" كعبارة ، ولكن يمكننا استخدام متغيرنا هناك بدلاً من ذلك إذا أردنا أن يعرف اللاعب إلى أين يتجه مسبقًا ، مثل هذا:
الخطوة 4: الاختبار
عند اختبار الكود الخاص بك ، يجب أن تجد أنه تم استبدال الرابط الخاص بك بأي عبارة كتبتها من قبل. يؤدي النقر فوقه إلى نقلك إلى غرفة عشوائية في لعبتك.
لسوء الحظ ، يمكن أن يأخذك هذا مباشرة إلى غرفة Wumpus! لا يهم هذا كثيرًا في الوقت الحالي ، ولكن في لعبة حقيقية قد تنتهي اللعبة على الفور. نحن بحاجة إلى إصلاح ذلك.
الخطوة 5: أضف قائمة الغرف
أولاً ، سننشئ قائمة غرف ، لتسهيل إدارة الغرف. بالتصريح عن هذه المصفوفة ، يمكننا استخدامها لتعيين قيم $ player و $ wumpus دون تكرار الكود. كما أن لديها ميزة أخرى سنستكشفها بعد ذلك.
يجب أن يتصرف الاختبار باستخدام هذا الرمز تمامًا كما كان من قبل.
الخطوة 6: حذف الغرف
لقد أضفت سطرًا واحدًا من التعليمات البرمجية إلى الشفرة من قبل (مظلل).
تحتوي المصفوفات في Sugarcube على وظيفة مضمنة تتيح لك حذف العناصر منها بالاسم. في هذه الحالة ، بمجرد تخصيص غرفة لـ $ wumpus ، يمكننا حذف هذه الغرفة من قائمة الغرف الخاصة بنا. هذه الوظيفة صعبة ، مع ذلك. لن يعمل ما لم يتم تعيين ناتج الوظيفة أو استخدامه بطريقة ما. للعناية بذلك ، قمت بإنشاء المتغير المؤقت _temp.
في Sugarcube ، تبدأ المتغيرات المؤقتة بشرطة سفلية (_) بدلاً من دولار ($). إنها مفيدة لأنه يتم حذفها بمجرد تشغيل المقطع ، لذلك لا داعي للقلق بشأن تداخل أسماء المتغيرات.
أنا أحذف غرفة اللاعب $ من قائمة الغرفة $ أيضًا ، فقط بالطبع.
الخطوة 7: الاختبار
بينما يمكننا تشغيل الكود كما هو الآن ، لن يكون ذلك اختبارًا شاملاً للغاية. إذا قمنا بتشغيل الكود ووجدنا أن $ player و $ wumpus مخصصان لغرف مختلفة ، فإننا لا نعرف ما إذا كان ذلك بسبب عمل الكود أم أنه مجرد صدفة. بالتأكيد ، يمكننا تشغيل الكود عدة مرات ، ونفترض أنه إذا لم يخصص لهما نفس الغرفة أبدًا ، فلن يحدث ذلك أبدًا ، لكن هذا سيستغرق إلى الأبد ولا يزال غير مضمون بنسبة 100٪ أنه لن يحدث أبدًا.
بدلاً من ذلك ، نحن بحاجة إلى طريقة للتحقق.
لقد أضفت ثلاثة أسطر إلى الجزء العلوي من مقطع المقدمة لدينا والتي ستتيح لنا رؤية قيم المتغيرات $ wumpus و $ player و $ roomlist. نظرًا للطريقة التي أعددنا بها الكود الخاص بنا ، فإننا نعلم أنه يجب حذف غرفة Wumpus $ وغرفة اللاعب $ من قائمة الغرفة $.
عندما نقوم بتشغيل هذا الرمز ، يمكننا التحقق للتأكد من أن هذا هو الحال.
الخطوة 8: الشذوذ مع مكعبات السكر والأشياء
كائنات مكعبات السكر غريبة بعض الشيء. اسمحوا لي أن أوضح هذا.
أثناء قيامي ببناء هذا المشروع في الأصل ، أردت حفظ قائمة غرفتي $ في متغير حفظ $ قبل أن أبدأ في حذف الغرف منه. كنت أحسب أنه سيكون مفيدًا لاحقًا.
عندما حصلت على سلوك غريب من هذا الرمز ، أضفت سطرًا آخر إلى صفحة المقدمة للسماح لي بإلقاء نظرة على متغير Saveroom الخاص بي (الصورة الثانية).
لقد صدمت عندما اكتشفت أن العناصر التي قمت بحذفها من قائمة الغرف $ قد تم حذفها أيضًا من القائمة المحفوظة! يمكنك أن ترى هذا في العمل في الصورة الثالثة.
هذا لأنه عندما تنسخ مصفوفة مثل هذه ، فأنت لا تخبر Twine فعليًا بنسخ المصفوفة ، فأنت تخبر Twine أن هذين المتغيرين هما نفس المصفوفة. عندما تفعل شيئًا للمصفوفة باستخدام متغير واحد ، فإنه يغير نفس المصفوفة التي يبحث عنها المتغير الآخر!
يمكننا إصلاح هذا باستخدام وظيفة clone ().
الخطوة 9: وظيفة Clone ()
يمكنك أن تقرأ عن وظيفة clone () في صفحة توثيق Sugarcube.
النسخة "السطحية" هي ما كنا نفعله من قبل. بدلاً من عمل نسخة كاملة من المصفوفة بأكملها ، يفترض فقط أن المتغير الخاص بك يعمل مع نفس المصفوفة. بدلاً من نسخة ضحلة ، يقوم clone () بعمل نسخة "عميقة" ، والتي تتصرف كما تتوقع. يتم نسخ كل عنصر من عناصر المصفوفة إلى مصفوفة جديدة ، وهو منفصل تمامًا عن الأصل.
إذا اختبرنا هذا الرمز الجديد ، فسنجد أنه يعمل كما هو متوقع.
بالطبع ، لا يهم ما إذا كنت تحتفظ بقائمة غرف $ أم لا. لأغراض مشروعي ، لن أفعل ذلك. كان هذا فقط لإظهار النسخ العميقة مقابل النسخ الضحلة.
الخطوة 10: هذا كل شيء الآن
لقد أضفنا رمزًا يسمح للاعبنا بالبدء في غرفة عشوائية. بالإضافة إلى ذلك ، فقد أزلنا الخلل حيث سيبدأ اللاعب في نفس الغرفة مثل Wumpus.
لقد تعلمنا كيفية إنشاء روابط من المتغيرات ، وكيف يتم معالجة نسخ المصفوفة بواسطة Sugarcube.
الأمور آخذة في الازدياد ، لكننا ما زلنا في البداية!
صيد سعيد!
موصى به:
مزرعة قصب السكر الأوتوماتيكية Minecraft: 10 خطوات
مزرعة قصب السكر الأوتوماتيكية Minecraft: فيما يلي إرشادات خطوة بخطوة حول كيفية إنشاء مزرعة قصب السكر الآلية ذات المظهر الأنيق
غرف عامة في خيوط مع مكعبات السكر: 11 خطوة
Generic Rooms in Twine With Sugarcube: مرحبًا ومرحبًا بكم في البرنامج التعليمي الخاص بي حول بناء Wumpus Hunt في Twine مع Sugarcube! Twine هي أداة بسيطة للغاية ، مصممة لإنشاء ألعاب مغامرات نصية! اختارت ابنة عمي الصغيرة المفضلة أن تصنع لعبة مع Twine لمشروعها الأول ،
مزرعة قصب السكر الأوتوماتيكية: 9 خطوات
مزرعة قصب السكر الأوتوماتيكية: هذه مزرعة تلقائية لقصب السكر ، لذا لن تضطر إلى الحصاد مرة أخرى
إنشاء روابط الإحالة (الإحالة) من Banggood أسهل من أي وقت مضى: 4 خطوات
إنشاء روابط Banggood Affiliate (الإحالة) أسهل من أي وقت مضى: يمكن العثور على نسخة مكثفة من هذا التوجيه في مدونتي الشخصية تعد مبيعات الشركات التابعة مصدرًا رائعًا للدخل الإضافي لمنشئي المحتوى ، ويستخدمها العديد من الأشخاص الذين يستخدمون التعليمات. البرنامج التابع هو Ban
أداة تعرية الأسلاك الدقيقة - روابط فيديو جديدة: 3 خطوات
أداة تعرية الأسلاك الدقيقة - روابط فيديو جديدة: أداة تعرية الأسلاك الدوارة اليدوية من قلم Bic ومفك البراغي وشفرة الحلاقة لقد اشتريت مؤخرًا بكرة من سلك التفلون 30AWG. اعتقدت أنه سيكون رائعًا للنماذج الأولية ، لأن مكواة اللحام الساخنة لن تذوب العزل. حسنًا ، إنه نوع من عدم