كجزء من تدريبي العملي، قمت بتطوير لعبة لوحية تعتمد على البطاقات باستخدام لغة Kotlin. اللعبة مصممة للاعبين اثنين، وتبدأ بواجهة بسيطة يقوم فيها كل لاعب بإدخال اسمه. بعد بدء اللعبة، يتناوب اللاعبان عبر الضغط على زر "Start Turn". خلال دوره، يمكن للاعب إما سحب بطاقة من الرزمة (Deck) أو لعب بطاقة صالحة من يده وفقًا لقواعد اللعبة.
تتضمن القواعد إجراءات مختلفة مثل تخطي دور الخصم، تبديل البطاقات، أو إنهاء الدور حسب الاستراتيجية والبطاقات المتاحة. تستمر اللعبة ضمن نظام أدوار (Turn-Based Loop)، حيث يتم تحديث الواجهة ديناميكيًا بعد كل حركة لضمان تفاعل سلس وتجربة استخدام واضحة. وعند نفاد بطاقات أحد اللاعبين، يتم إعلان فوزه في شاشة نهاية مستقلة.
في هذا المشروع، ركزت بشكل أساسي على تنفيذ منطق اللعبة والوظائف الأساسية أكثر من التركيز على التصميم. وقد كانت فرصة ممتازة لتعزيز خبرتي في آليات اللعب القائمة على الأدوار، وإدارة الحالة (State Management)، وبناء تفاعل مستخدم ديناميكي باستخدام Kotlin. توضح الصور المرفقة شاشة البداية وشاشة مباراة جارية أثناء اللعب.