ผลต่างระหว่างรุ่นของ "01204223/รายละเอียดเกี่ยวกับงานบอร์ด"
Jittat (คุย | มีส่วนร่วม) (→b2) |
Jittat (คุย | มีส่วนร่วม) (→คลาส) |
||
แถว 9: | แถว 9: | ||
* คลาส Board จะเป็นคลาสหลักที่เก็บเบี้ย (GamePiece) ในเกมทั้งหมด และรับผิดชอบการแสดงผลตารางเกม | * คลาส Board จะเป็นคลาสหลักที่เก็บเบี้ย (GamePiece) ในเกมทั้งหมด และรับผิดชอบการแสดงผลตารางเกม | ||
* คลาส GamePiece จะเป็นคลาสฐานของเบี้ยในเกม เบี้ยจะทราบตำแหน่งของตัวเอง และสามารถบอกกับ board ได้ว่าจะให้แสดงผลเป็นอะไร | * คลาส GamePiece จะเป็นคลาสฐานของเบี้ยในเกม เบี้ยจะทราบตำแหน่งของตัวเอง และสามารถบอกกับ board ได้ว่าจะให้แสดงผลเป็นอะไร | ||
− | * คลาส Player และ Robot จะ inherit มาจากคลาส GamePiece โดยมีการแสดงผลเป็น | + | * คลาส Player และ Robot จะ inherit มาจากคลาส GamePiece โดยมีการแสดงผลเป็น * สำหรับ player และ @ สำหรับ Robot |
== เป้าหมายของงานย่อยต่าง ๆ == | == เป้าหมายของงานย่อยต่าง ๆ == |
รุ่นแก้ไขเมื่อ 04:14, 1 กรกฎาคม 2556
ในส่วนแบบฝึกหัด b1 - b7 เราจะพัฒนาโปรแกรมสำหรับเกมหนีหุ่น ซึ่งมีรายละเอียดของเกมเป็นดังนี้
เกมหนีหุ่น Robots เป็นเกมคลาสสิก ทดลองเล่นบน browser ได้จาก[1] ในเกมนี้ ผู้เล่นจะเดินหนีหุ่น โดยที่หุ่นจะเคลื่อนที่ไปในทิศต่าง ๆ ที่จะเข้าใกล้ผู้เล่นให้ได้มากที่สุด ถ้าเคลื่อนที่ชนกันหุ่นก็จะตายไป
คลาส
คลาสที่เราจะเขียนคือคลาส Board, GamePiece, Player และ Robot
- คลาส Board จะเป็นคลาสหลักที่เก็บเบี้ย (GamePiece) ในเกมทั้งหมด และรับผิดชอบการแสดงผลตารางเกม
- คลาส GamePiece จะเป็นคลาสฐานของเบี้ยในเกม เบี้ยจะทราบตำแหน่งของตัวเอง และสามารถบอกกับ board ได้ว่าจะให้แสดงผลเป็นอะไร
- คลาส Player และ Robot จะ inherit มาจากคลาส GamePiece โดยมีการแสดงผลเป็น * สำหรับ player และ @ สำหรับ Robot
เป้าหมายของงานย่อยต่าง ๆ
รายละเอียดของ method ที่เขียนนั้น จะระบุใน doctest ของโจทย์แต่ละข้ออยู่แล้ว สำหรับหน้านี้จะอธิบายภาพรวมคร่าว ๆ เท่านั้น
b1
ในข้อนี้เราจะเขียนคลาส Board ที่เก็บขนาดของตาราง และแสดงตารางว่าง ๆ ตามขนาดที่กำหนดไว้ตอนเริ่มต้นนั้น
b2
ในส่วนนี้เราจะเขียนคลาส GamePiece ที่เก็บตำแหน่ง, คืนตำแหน่ง, และสามารถระบุอักขระที่ใช้สำหรับพิมพ์เบี้ยตนเองได้ โดยอักขระที่พิมพ์คือ 'X'
b3
b4
b5
b6
ตัวอย่างการเรียกใช้ __init__ จากคลาสที่เรา inherite มา
class Robot(GamePiece): def __init__(self,r,c,target): GamePiece.__init__(self,r,c) # ..... your other initialization code here