วันพฤหัสบดีที่ 20 ตุลาคม พ.ศ. 2559

สร้างเกมส์ ox ด้วย kivy pt.2

        จากที่ได้ clone มาจาก bitbucket ซึ่งรับงานจากเพื่อนมาทำต่อ ก็ได้ศึกษา โค้ดที่เพื่อนได้เขียน และใส่สิ่งต่างๆ เพิ่มไป
        โดยในขณะที่ได้เขียน บล็อกอยู่นี้ ก็ได้เริ่มทำงานไประยะนึง แล้ว นี่คือหน้าตาของเกมในตอนนี้





        โดย จากแนวคิดที่เพื่อนได้ทำมา ก็คือการนำโค้ด xo ตัวเก่ามาดัดแปลงให้เข้ากับ kivy โดยเจ้าตัวเลข 1-9 ที่ผู้อ่านได้เห็นนั้น ก็คือ ลำดับของช่องตาราง ถามว่านำไปแปะไว้ทำไม คำตอบก็คือ เมื่อทำการกดที่ปุ่มใดๆ จะทำการส่งค่า text ในปุ่มนั้นๆที่กดโดนไปให้คำนวณเป็นตัวในตาราง

        โดยภาพด้านล่างจะเป็น ไฟล์ kivy ซึ่งแต่ละปุ่มจะมี text เรียงเลขไป จาก 1-9



        โดยในเงื่อนไขด้านล่างนี้หาก กดโดนที่จุดใด จะทำการเรียกใช้ method enter_pos ซึ่งจะส่งค่า text ตัวเลขไปยัง method นั้น


        โดยใน method ดังกล่าวจะมีการคำนวณ โดยนำค่าที่รับได้มา cast เป็น int เพื่อใช้ในการคำนวณ แถว และ หลัก ใน array ที่เก็บ ค่าตัว X,O โดย แถว จะนำไป ลบ 1 แล้วหาร ด้วย 3 หลักจะนำไป % กับ 3 และ ลบ ด้วย 1 ก็จะได้หลัก กับ แถวที่ต้องการมาแล้ว



        โดยจากที่ทำมาสักพักก็สังเกตเห็นได้ว่า ส่วนที่มีการเกี่ยวกับกับทาง gui นั้นก็คือ ส่วนที่จะต้องมีปฏิสัมพันธ์กับ user ซึ่งในที่นี้ก็คือ การเล่น หรือ การกดใส่ค่า x หรือ o และ การแสดงผลต่างๆ ซึ่งจากแต่ก่อนที่แสดงใน terminal เราก็เปลี่ยนมาใช้เป็นแบบ แสดงทางหน้าจอเลย โดยใช้ Label ในส่วนการรับค่า หลักและแถว เราก็ใช้แนวคิดเดียว กับการใส่ input แบบ 1-9 ลงในตาราง เพียงแต่เปลี่ยนจากการที่พิมพ์ตัวเลข ใส่ใน terminal เราก็หันมาใช้ ในส่วนของ collide_point ว่ากดโดยที่ตัวใด แล้ว text ตัวเลขของมันนั้นเลขอะไร จากนั้นส่งค่าไปให้ method เดิม อันเดียวกับตอนที่เล่น ใน terminal
       ซึ่งในตอนนี้เราก็ได้ใส่เงื่อนไข ให้มันเล่นได้ เหลือแต่การเก็บตก สิ่งเล็กๆน้อย เช่น ทำให้เลข 1-9 นั้นมองไม่เห็น ฯลฯ




ไม่มีความคิดเห็น:

แสดงความคิดเห็น