Omar Ahmed56 نشر 26 أبريل أرسل تقرير نشر 26 أبريل عندما أضيف خلفيات متعددة للمشروع كيف يمكنني تشغيل موسيقى لكل خلفية بشكل متكرر، بدون أن تتداخل الموسيقى مع الخلفيات الأخرى؟ 2 اقتباس
1 بلال زيادة نشر 26 أبريل أرسل تقرير نشر 26 أبريل لتشغيل موسيقى متكررة لكل خلفية بشكل منفصل دون تداخل في برنامج سكراتش (Scratch)، يمكنك استخدام الكائنات (Sprites)، القوائم (Lists)، أو المتغيرات للتحكم في تشغيل الموسيقى بناء على الخلفية المعروضة، أضف الخلفيات المختلفة إلى المسرح (Stage) في سكراتش، على سبيل المثال، خلفية1، خلفية2، خلفية3 ثم تأكد من تسمية الخلفيات بشكل واضح (مثل "Background1"، "Background2") لتسهيل الإشارة إليها، ثم قم بتحميل ملفات صوتية (موسيقى) إلى سكراتش لكل خلفية حيث يمكنك فعل ذلك من خلال علامة تبويب "الأصوات" (Sounds) في المسرح أو كائن معين ثم بتسمية الأصوات بشكل يربطها بالخلفيات، مثل "Music1" للخلفية1، "Music2" للخلفية2، وهكذا ومن ثم أنشئ متغيرًا يُسمى مثلاً "CurrentBackground" لتتبع الخلفية المعروضة حاليًا، عند تغيير الخلفية، قم بتحديث قيمة هذا المتغير لتعكس اسم الخلفية الحالية أو رقمها ثم في المسرح (Stage)، استخدم كتلة "عندما يتغير الخلفية إلى" (When backdrop switches to) للكشف عن تغيير الخلفية ثم أضف كتلة "إيقاف جميع الأصوات" (Stop all sounds) قبل تشغيل الموسيقى الجديدة لضمان عدم تداخل الأصوات ثم استخدم كتلة "تشغيل الصوت بشكل متكرر" (Play sound until done) أو "بدء الصوت" (Start sound) مع اختيار الصوت المرتبط بالخلفية الحالية ثم لجعل الموسيقى تتكرر، يمكنك إما استخدام ملف صوتي يحتوي على تكرار مدمج، أو إضافة كتلة "كرر باستمرار" (Forever loop) حول كتلة تشغيل الصوت. 1 اقتباس
0 Mustafa Suleiman نشر 26 أبريل أرسل تقرير نشر 26 أبريل من خلال إنشاء متغير وتحديد قيمة له للإشارة إلى رقم الخلفية الحالية وعند الإنتقال للخلفية التالية يتم تعديل قيمة ذلك المتغير، ثم تشغيل وإيقاف الأصوات بناءًا على حلقة تكرار دائمة وشرط if. لكن لو أضفت عدد خلفيات كبير فالأفضل استخدام الأحداث بمعنى إرسال حدث باسم الخلفية 2 مثلاً ثم تشغيل الصوت بناءًا على ذلك الحدث عند استقباله. 1 اقتباس
0 Omar Ahmed56 نشر 7 مايو الكاتب أرسل تقرير نشر 7 مايو بتاريخ On 26/4/2025 at 17:50 قال بلال زيادة: لتشغيل موسيقى متكررة لكل خلفية بشكل منفصل دون تداخل في برنامج سكراتش (Scratch)، يمكنك استخدام الكائنات (Sprites)، القوائم (Lists)، أو المتغيرات للتحكم في تشغيل الموسيقى بناء على الخلفية المعروضة، أضف الخلفيات المختلفة إلى المسرح (Stage) في سكراتش، على سبيل المثال، خلفية1، خلفية2، خلفية3 ثم تأكد من تسمية الخلفيات بشكل واضح (مثل "Background1"، "Background2") لتسهيل الإشارة إليها، ثم قم بتحميل ملفات صوتية (موسيقى) إلى سكراتش لكل خلفية حيث يمكنك فعل ذلك من خلال علامة تبويب "الأصوات" (Sounds) في المسرح أو كائن معين ثم بتسمية الأصوات بشكل يربطها بالخلفيات، مثل "Music1" للخلفية1، "Music2" للخلفية2، وهكذا ومن ثم أنشئ متغيرًا يُسمى مثلاً "CurrentBackground" لتتبع الخلفية المعروضة حاليًا، عند تغيير الخلفية، قم بتحديث قيمة هذا المتغير لتعكس اسم الخلفية الحالية أو رقمها ثم في المسرح (Stage)، استخدم كتلة "عندما يتغير الخلفية إلى" (When backdrop switches to) للكشف عن تغيير الخلفية ثم أضف كتلة "إيقاف جميع الأصوات" (Stop all sounds) قبل تشغيل الموسيقى الجديدة لضمان عدم تداخل الأصوات ثم استخدم كتلة "تشغيل الصوت بشكل متكرر" (Play sound until done) أو "بدء الصوت" (Start sound) مع اختيار الصوت المرتبط بالخلفية الحالية ثم لجعل الموسيقى تتكرر، يمكنك إما استخدام ملف صوتي يحتوي على تكرار مدمج، أو إضافة كتلة "كرر باستمرار" (Forever loop) حول كتلة تشغيل الصوت. السلام عليكم أخي بلال طبقت كلامك - على حد فهمي - لكن المشكلة أن الأصوات مازالت تتداخل هل التطبيق صحيح وإن لم يكن أرجو الإشارة إلى المشكلة 1 اقتباس
0 محمد_عاطف نشر 7 مايو أرسل تقرير نشر 7 مايو بتاريخ 2 ساعة قال Omar Ahmed56: السلام عليكم أخي بلال طبقت كلامك - على حد فهمي - لكن المشكلة أن الأصوات مازالت تتداخل هل التطبيق صحيح وإن لم يكن أرجو الإشارة إلى المشكلة وعليكم السلام ورحمة الله وبركاته. لاحظ المشكلة الرئيسية لديك هنا : هنا عندما يتم تغير الخلفية إلى Jungle يتم التحقق من قيمة الخلفية الحالية وسيجدها 1 ولهذا يتم تكرار تشغيل الصوت دائما . حتى عند تغير الخلفية إلى عشب سيتم إيقاف الأصوات . ولكن حلقة كرر بإستمرار السابقة الموجودة في الخلفية jungle تظل تعمل . ولهذا الحل الصحيح هو الإعتماد على المتغيرات دائما وليس الخلفية . أى قم بوضع التحقق في كرر بإستمرار لتصبح شئ كالتالي : إذا إستمرت المشكلة يمكنك إرفاق ملف البرنامج . 1 اقتباس
السؤال
Omar Ahmed56
عندما أضيف خلفيات متعددة للمشروع
كيف يمكنني تشغيل موسيقى لكل خلفية بشكل متكرر، بدون أن تتداخل الموسيقى مع الخلفيات الأخرى؟
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.