قضبان زعماء ماينكرافت

يُوفر PaperMC أساسًا بسيطًا لتوسيع خادم Minecraft باستخدام إضافات صغيرة، دون الحاجة إلى تثبيت أي شيء من قِبل المستخدمين. عند تطوير الإضافات، يبرز التساؤل حول كيفية عرض المعلومات الديناميكية للاعب. يكمن الحل في ميزة أساسية غالبًا ما يتم تجاهلها في اللعبة الأصلية: شريط الزعيم . صُمم شريط الزعيم في الأصل للزعماء النهائيين، ولكن يُمكن إعادة استخدامه كواجهة مستخدم بسيطة.


بدلاً من شرح الأرقام، يمكنك استخدام حالات موجزة تُعبّر عن شعورٍ ما. غالبًا ما يكون لهذا تأثيرٌ أقوى من لوحة النتائج أو رسائل الدردشة. واجهة برمجة تطبيقات Bossbar قويةٌ بشكلٍ مُدهش: إذ يُمكن تغيير اللون والنمط والتقدم بشكلٍ ديناميكي. على عكس لوحات النتائج، يبقى Bossbar مُرتبًا في أعلى الشاشة.

BossBar bar = Bukkit.createBossBar("", BarColor.BLUE, BarStyle.SOLID);
bar.addPlayer(player);

مثال 1: عرض درجة الحرارة: يتم توحيد قيمة درجة الحرارة المئوية لتكون ضمن النطاق 0-1، ويتم اختيار اللون وفقًا لذلك: الأزرق للبرد، والأخضر للجو اللطيف، والأحمر للحر.:

bar.setTitle(String.format("🌡 %.0f°C", celsius));
bar.setProgress((celsius + 20) / 60.0);
bar.setColor(celsius < 10 ? BarColor.BLUE : celsius < 30 ? BarColor.GREEN : BarColor.RED);

المثال الثاني: الأكسجين تحت الماء: تُعد الشاشة المجزأة مناسبة تمامًا للقيم المنفصلة مثل عدد مرات التنفس. SEGMENTED_10 لديك عشر وحدات مرئية:

bar.setTitle("💨 Sauerstoff");
bar.setStyle(BarStyle.SEGMENTED_10);
bar.setProgress(player.getRemainingAir() / 300.0);

مثال 3: شريط الخوف النابض: تتسبب الموجة الجيبية في تذبذب التقدم بشكل إيقاعي. BukkitRunnable وهذا يخلق تأثيراً حيوياً.:

double pulse = 0.5 + 0.5 * Math.sin(phase);
bar.setProgress(fearLevel * pulse);
bar.setTitle(fearLevel > 0.7 ? "💀 GEFAHR" : "👁 Unruhe");

يمكنك تكديس ما يصل إلى خمسة أشرطة تقدم في وقت واحد، مما يتيح أنظمة عرض معلومات معقدة. لجعل شريط التقدم شبه غير مرئي، اضبط مستوى التقدم على... 0.0001 – يبقى العنوان ظاهرًا، لكن شريط التقدم يختفي. لذا، يُعدّ شريط التقدم أداةً قيّمةً في آليات اللعب، وإن كانت غير مُقدّرة حق قدرها. خاصةً في ألعاب الرعب أو البقاء، يُمكن استخدامه للتلميح إلى المواقف دون الكشف عن أرقامٍ مُحدّدة للاعب.

لتطبيق هذه الآليات بكفاءة، أنصح باستخدام قالبي البسيط الذي يحدد بنية الإضافة. بالإضافة إلى إعدادات Gradle، يحتوي المستودع أيضًا على نصوص بناء للبيئات المحلية والإنتاجية، فضلًا عن أمثلة لأسلحة وحزم موارد مخصصة. يتيح لك هذا تجربة أفكار جديدة لواجهة المستخدم بسرعة، إذ لن تضطر إلى التعامل مع تفاصيل التغليف وإعداد الخادم والنشر في كل مرة.

عودة