الألعاب :: GO :: SimpleBoard

تمثل لوحة الذهاب بسيطة
التحميل الان

الألعاب :: GO :: SimpleBoard الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • Perl Artistic License
  • السعر:
  • FREE
  • اسم الناشر:
  • Marc Lehmann
  • موقع ويب الناشر:
  • http://www.goof.com/pcg/marc/

الألعاب :: GO :: SimpleBoard العلامات


الألعاب :: GO :: SimpleBoard وصف

تمثل لوحة الذهاب بسيطة ألعاب :: GO :: SimpleBoard هي وحدة بيرل التي تمثل لوحة Go Project.Synopsis استخدم الألعاب :: Go :: SimpleBoard؛ أنواع القواعد المصدرة لكل موضع لوح (Ored معا): Mark_b # Stormal Stone Stone Mark_W # mark_grayed # جنبا إلى جنب مع mark_ ، جنب الحجر mark_small_b # حجر صغير، يستخدم لمراجعة أو وضع علامة مارك_small_w # حجر صغير، وتستخدم لتسجيل أو وضع علامة mark_small_grayed # جنبا إلى جنب مع mark_small_ ، grains الحجر mark_triangle # مثلث علامة Mark_Square # Square Mark Mark_Circle # Circle Mark Mark_cross # Cross Mark_Label # علامة نصية Mark_Hoshi # هذه نقطة هوشي (غير المستخدمة كثيرا) Mark_MOVE # هذه هي خطوة منتظمة Mark_KO # هذا هو موضع KO Mark_redraw # تجاهله، ويمكن استخدامه لأغراضك الخاصة colour_white # مضمونة لتكون 0 colour_black # مضمونة لتكون 1 move_handicap # المستخدمة ك "تنسيق X" للتحرك المعاقين move_pass # يمكن استخدامها ك "تنسيق X" لمرور movesmethodsmy $ = حجم $ يخلق لوحة فارغة جديدة من الحجم المحدد. $ مجلس -> {size} يخزن حجم اللوحة. لوحة $ -> {Max} يخزن الإحداثيات القصوى لوحات (Size-1). مجلس $ -> {يلتقط} يخزن عدد الأحجار القبض على اللون المحدد. $ Board -> {board} يخزن مجموعة ثنائية الأبعاد مع محتويات المجلس. تلميح $ = $ Board-> تحديث () كل هيكل التحديث نفسه هو أيضا صفيف - المرجع: # الخطوة السوداء، الإعداد الإعدادية # تمرير [] # أيضا تمرير (مهمل!) يغير اللوحة أو تنفيذ خطوة، من خلال مسح البتات المحددة أولا في CLR، ثم إعداد البتات المحددة في مجموعة $. إذا كانت مجموعة $ تتضمن mark_label، يجب إعطاء نص الملصق في تسمية $. إذا كانت مجموعة $ تحتوي على mark_move، فسيتم إزالة الحجارة المحاطة من اللوحة ويتم اكتشاف KOS (بسيطة) وتمييزها لرموز مربعة و Mark_ko، بعد إزالة رموز العلامات الأخرى. تتم إزالة العلامات أيضا مع بنية التحديث التالية التالية التي تستخدم Mark_MOVE، لذلك هذا العلم مناسب بشكل جيد للمناسبة، حسنا، يتحرك. لاحظ أنه يمكنك إجراء "تحركات" غير صالحة (مثل الانتحار) وتحديث سيحاول التعامل معها. يمكنك استخدام IS_VALID_MOVE لتجنب إجراء التحركات غير القانونية. بالنسبة إلى "التحركات" المعوقين "، يتم دعم أحجام الألواح فقط 9 و 13 و 19 فقط وقيم الإعاقة فقط من 2 إلى 9. يتبع الموضع قواعد IGS، إذا كنت تريد مواضعا أخرى، فعليك ضبطها بنفسك. تقوم هذه الوظيفة بتعديل عضو تلميح $ في الهيكل المحدد لتسريع توليد المجلس المتكرر وتحديثات مع نفس هياكل التحديث. إذا كان عضو التلميح هو مرجع، فسيتم تحديث Scalar المدبب حسب المرجع بدلا من ذلك. إذا كان كل هذا الشيء العضو في تلميح مربك، فهل تتجاهله وحدده كحدد أو تركه من الصفيف بالكامل. هل تأكد من الاحتفاظ بمركبات التحديث الخاصة بك طالما لا تتغير التحديثات السابقة، ومع ذلك، حيث أن تجديد موقف لوحة كاملة من هياكل التحديث الملحمة أسرع بكثير ثم إعادة إنشاءها من هياكل التحديث الطازج. مثال، وجعل اثنين من التحركات السخيفة: $ مجلس الإدارة> التحديث (، ])؛ $ board-> is_valid_move ($ اللون ، $ x، $ y يعود صحيحا إذا كانت خطوة اللون المحدد في الإحداثيات المعينة صالحة أم لا. تؤخذ KOs في الاعتبار طالما أنها تحمل علامة mark_ko. حالات الانتحار غير صالحة ما لم تكن مبيدات May_SuicyD (E.G. لقواعد نيوزيلندا): perl.


الألعاب :: GO :: SimpleBoard برامج ذات صلة

شجرة :: rb

تنفيذ بيرل للشجرة الحمراء / السوداء، وهو نوع من شجرة البحث الثنائية المتوازنة ...

150

تحميل