ข้ามไปที่เนื้อหาหลัก

ออกแบบระบบให้คะแนนการแข่งขันบาสเกตบอล

basketball


หลังจากเริ่มแข่งขันบาสเกตบอล ฟรีสไตล์ 3 ต่อ 3 ก็ได้พบว่าการนับคะแนนนั้น ไม่ว่าจะจดกระดาษ หรือพลิกสกอร์บอร์ดก็ตาม ไม่สามารถเก็บสถิติของผู้เล่นแต่ละคนในการแข่งขันแต่ละครั้งได้

ทำไมผมถึงคิดถึงเรื่องไร้สาระนี้ขึ้นมา (ผมเรียกว่าไร้สาระเพราะโปรแกรมเมอร์ส่วนใหญ่ใช้เวลาในการเขียนโค้ดเพื่อให้ได้เงินมา เรื่องที่ต้องเสียเวลาแต่ไม่ได้อะไรเลยเขาคงไม่ทำกัน ^^") ก็เพราะว่า ผมอยากสร้างแรงจูงใจให้กับน้องๆที่มาเล่นบาสเกตบอลด้วยกันทุกเย็น ให้เกิดความกระตือรือร้นที่จะพัฒนาตัวเอง (เพราะช่วงหลังๆคนเริ่มเล่นน้อยลงไป ส่วนหนึ่งอาจจะเพราะติดสอบช่วงกลางภาค)



แล้วมันเกี่ยวอะไรกับระบบให้คะแนน?

เป็นคำถามที่ดีครับ (ฮ่าๆๆ ถามเองตอบเอง) เพราะการจะสร้างแรงจูงใจได้นั้น เราต้องทำให้เกิดเป้าหมายขึ้นให้ได้เสียก่อน ผมเคยเล่นเกมออนไลน์แนวเก็บเลเวลมาก่อน ถ้าใครเคยเล่นจะเห็นว่าตัวละครในเกม จะต้องพัฒนาทักษะ(skill) ด้านต่างๆของตัวเอง เพื่อเอาชนะศัตรูให้ได้

ก็เลยคิดว่า น่าจะสร้างเว็บไซต์เพื่อแสดงความสามารถของแต่ละคนออกมา กำหนดกฏพื้นฐานของท่าต่างๆ หากใครทำได้ก็เลื่อนสกิลให้ และการให้คะแนนก็คือการอัดคลิปของตัวเองมาให้แอดมินและผู้เล่นระดับหัวหน้าทีม และสมาชิกคนอื่นๆโหวตให้ ถ้าเกินที่กำหนดไว้ สกิลก็จะอัพทันที

แล้วเราจะได้อะไร?

อย่างแรกเลยได้ความสนุกสนานครับ ต่อมาก็คือถ้านำแสดงบนเว็บไซต์แบบสาธารณะ ก็มีโอกาสที่แมวมองอาจจะมาเจอเข้าโดยบังเอิญก็ได้ ก็จะเป็นการเพิ่มโอกาสให้น้องๆได้แข่งในระดับต่างๆที่มีคนสนใจชักชวนไปเล่นด้วย (ถ้ารูปร่างไม่ผ่านมาตรฐานคงไม่ได้ไปไกลระดับลีกประเทศหรอกนะ - -" #เศร้าแป๊บ)

มาดูกันเลยครับ หลักๆของระบบให้คะแนนมีอะไรบ้าง?

ส่วนที่ 1 นาฬิกาจับเวลา
ประกอบด้วย

  • ตัวเลขระบุ Quarter
  • นาฬิกาแสดงเวลาคงเหลือของแต่ละ Quarter
  • นาฬิกาแสดงเวลา ครองบอลของฝ่ายบุก (Short Clock)
  • นาฬิกาแสดงเวลา คงเหลือของการขอเวลานอก (Time Out)

clock


ส่วนที่ 2 การให้คะแนน และแสดงผล


  • ช่องแสดงผลคะแนนรวมของทีม
  • ช่องแสดงผลการทำฟาล์วรวมของทีม
  • รายชื่อผู้เล่นในสนามและปุ่มให้คะแนน (+1=ลูกโทษ, +2=ลูกทำคะแนนในกรอบ, +3=ลูกชู้ท นอกกรอบ 3 คะแนน)
  • ช่องแสดงจำนวนครั้งที่ฟาล์วของแต่ละคน เพื่อนับการ Fouls Out
change


ส่วนที่ 3 การเปลี่ยนตัว ขอเวลานอก และผู้เล่นสำรอง
  • ปุ่มสำหรับหยุดเวลาเพื่อเปลี่ยนตัว
  • ปุ่มหยุดเวลาเพื่อนับเวลาคงเหลือของการขอเวลานอก
  • ส่วนของรายชื่อผู้เล่นสำรองนั้นจะแสดงผลคะแนนและการฟาล์วเช่นเดียวกับผู้เล่นในสนาม เพียงแต่จะแยกออกมาเพื่อความง่ายในการให้คะแนน

score


หลังจากเคลียร์ภาระกิจหลักเสร็จเรียบร้อย งานอดิเรกชิ้นแรกที่จะทำคงจะเป็นระบบนี้อย่างแน่นอน ส่วนใครที่รอบทความเกี่ยวกับ PHP Builder คงต้องรอไปก่อนนะครับ ช่วงนี้กำลังสนุกอยู่กับบาสเกตบอล ^^




PHP CI MANIA PHP Code Generator 
โปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม

สนใจสั่งซื้อเพียง 4,500 บาท
http://fastcoding.phpcodemania.com/

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

แจกฟรี!! ระบบต่างๆที่พัฒนาด้วย PHP สำหรับนำไปใช้ในงานต่างๆ

       สำหรับหลายท่านที่ขอโค้ดเข้ามาทาง Inbox ของเฟซบุ๊กแฟนเพจ หรือถามถึงระบบต่างๆหลังไมค์มานั้น ส่วนใหญ่ก็มีแจกอยู่แล้วในเว็บบอร์ด ThaiCreate.Com นะครับ และด้านล่างนี้ก็เป็นระบบต่างๆที่แจกให้นำไปลองใช้ลองศึกษากันครับ

สร้างแบบฟอร์มล็อกอิน HTML + PHP

       ผมจะสร้างระบบตัวอย่างเพื่อแสดงให้เห็นการทำงานของสคริปต์ PHP ที่ใช้ในการล็อกอินอย่างง่ายๆ นะครับ โดยที่ผมจะสร้างโฟลเดอร์ใหม่ขึ้นในไดร์ฟที่เราได้กำหนดให้เป็น Directory Root สำหรับรันสคริปต์ PHP ซึ่งผมกำหนดเอาไว้ที่ D:\www ดังนั้นผมจะสร้างโฟลเดอร์ teacher_assistant ขึ้นมาใหม่จะได้พาธเป็น D:\www\teacher_assistant สำหรับการเข้าถึง จะใช้ URL ดังนี้ http://localhost/teacher_assistant หลังจากสร้างโฟลเดอร์เสร็จเรียบร้อยก็จะเริ่มกระบวนการเตรียมโครงสร้างโปรเจ็กต์ด้วยเครื่องมือช่วยเขียนโปรแกรมชื่อว่า eclipse ซึ่งดูวิธีการสร้างโปรเจ็กต์ได้จากบทความ เริ่มต้นสร้างโปรเจ็กต์ ด้วยโปรแกรม eclipse เครื่องมือเขียนโปรแกรม php ในบทความเป็นการสร้างโปรเจ็กต์ที่มีพาธเป็นโฟลเดอร์ login แต่ในที่นี้ต้องเป็นพาธให้ตรงกับโฟลเดอร์ใหม่ที่เราได้สร้างขึ้นด้วยนะครับ

PHP กับการคิดส่วนลดเป็นเปอร์เซ็น 5%, 10%, 20% ตามช่วงราคาที่กำหนด

<?php     $total_price = 1000;     $discount = 0;         if($total_price >= 500 && $total_price < 1001){         $discount = 5;     }elseif($total_price >= 1001 && $total_price <= 5000){         $discount = 10;     }elseif($total_price >= 5001){         $discount = 20;     }         $discount_bath = ($total_price*$discount)/100; ?> <pre> ซื้อสินค้าครบ 0 ถึง 499 บาท ไม่ได้ส่วนลด ซื้อสินค้าครบ 500 ถึง 1000 บาท ได้ส่วนลด 5% ซื้อสินค้าครบ 1001 ถึง 5000บาท ได้ส่วนลด 10% ซื้อสินค้าครบ 5001 บาทขึ้นไป ได้ส่วนลด 20% </pre> <h3>รวมราคาสินค้า = <?php echo number_format($total_price,2);?></h3> <h5>ส่วนลด = <?php echo $discount;?>%  (<?php echo $discount_bath;?> บาท)</h5> <h2>ราคาหลังส่วนลด = <?php echo number_format($total_price - $discount_bath,2);?>บาท</h2> "PHP ไม่ได้สร้างสุดยอดโปรแกรม แต่ PHP ช่วยให้งานคุณง่ายขึ้นต