ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - Printable Version +- irpg Community (https://irpg.in.th) +-- Forum: irpg Fabella Game Maker Academia (https://irpg.in.th/forum-29.html) +--- Forum: Game Maker Engine School (https://irpg.in.th/forum-30.html) +--- Thread: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ (/thread-2108.html) Pages:
1
2
|
ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - shogun - 09-30-2014 สวัสดีครับ ผมกลับมาอีกแล้วก็เพราะเกมส์ที่ผมทำอยู่ ซึ่งเป็นเกมส์ตอบปัญหาอาเซียน (ใช้ลงแข่ง) มีเรื่องหลายเรื่องที่ผมไม่ค่อยเข้าใจสักเท่าไหร่ อยากจะวอนผู้รู้ใครก็ได้สักคนมาตอบแก้ไขปัญหานี้ที ขออธิบายรูปแบบเกมส์ก่อนน่ะครับ เป็นเกมส์ตอบปัญหาง่ายๆเกี่ยวกับอาเซียนดูคล้ายเกมส์แฟล็ต (ขออภัยที่ไม่มีรูป) โดยมีสี่ตัวเลือก หากเลือกถูกก็ได้หนึ่งคะแนน และจะไปยังข้อต่อไป ซึ่งเราจะสลับถามกันคนล่ะข้อ พอครบสิบข้อใครมีคะแนนสูงสุด จะเป็นผู้ชนะไป อ้อ มีปุ่มให้ข้ามคำถามด้วย แต่เราจะเสียเทิร์นที่ตอบคำถามไป ไปให้อีกฝ่ายตอบแทน เล่นได้สองคน 1.ผมอยากจะให้มันสุ่มคำถามได้น่ะครับ แต่กลัวมันสุ่มแล้วจะเอาอันเดิมกลับมาด้วยเนี่ยสิ 2.คะแนน ผมอยากให้มันแสดงคะแนนของสองผู้เล่น แล้ววิธีเซตคะแนนทำยังไงบ้าง 3.พอครบสิบข้อ ก็มีการเช็กว่าใครคะแนนเยอะสุดก็เป็นฝ่ายชนะไปน่ะครับ อยากรู้ว่าให้โปรแกรมเช็กคะแนนต้องใช้ตัวไหน 4.สุดท้าย ขอวิธีใช้เครื่องมือในเกมส์เมกเกอร์อย่างละเอียดหน่อยครับ จะได้ประยุกต์ใช้ได้ มีบางอันที่ยังโง่อยู่ใช้ไม่เป็นครับ ขอขอบคุณล่วงหน้าสำหรับคนที่ตอบคำถามของผมได้น่ะครับ RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - arkman - 10-01-2014 ขอตอบข้อที่ผมนึกออกก่อนนะครับ 2. สร้างตัวแปร(Set viable)ขึ้นมา2ตัว คือ global.pscore1=0 และ global.pscore2=0 ประกาศค่าที่หน้าไตเติ้ลเกมนะครับ ใน event : Create แสดงค่าโดยสร้างออบเจกต์ที่ใช้บอกคะแนน ใส่ใน event : Draw action : Draw text ว่า "Player1score:"+string(global.pscore1) และ "Player2score:"+string(global.pscore2) ส่วนพิกัด XY ของข้อความแล้วแต่คุณกำหนดเลยครับ ถ้าใครตอบถูกก็ให้ค่าตัวแปรนั้น+1 เช่นผู้เล่นคนแรกตอบถูก ก็ให้ตั้งค่า(Set viable)เป็น global.pscore1 =+1 โดยคลิกตรง Relative เพื่อให้ค่าตัวเลขเพิ่มขึ้นครับ 3. ที่หน้าเช็คคะแนน สร้างออบเจกต์เช็คคะแนน แล้วไปที่ Event : Create action: Test expression ช่อง expression ให้ใส่ global.pscore1>global.pscore2 ก็ให้ขึ้นข้อความ(หรือรูปภาพอื่นๆ)ว่าผู้เล่นที่1ชนะ แล้วใส่ action: Test expression อีกอันให้เป็น global.pscore2>global.pscore1 ก็ให้ขึ้นข้อความ (หรือรูปภาพอื่นๆ)ว่าผู้เล่นที่2ชนะ 4. รายละเอียดมีใน helpครับ แต่ยังไม่มีคนแปลเป็นภาษาไทยสักที RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - shogun - 10-01-2014 อืม ทำไมผมลองทำแล้วเออร์เรอ ไม่รู้ครับ มันบอกว่าไม่รู้จัก score1 และ score2 แบบนี้อ่ะครับ ERROR in action number 1 of Mouse Event for Left Button for object ตอบ 1.1: Error in code at line 1: global.pscore1 += 1 ^ at position 1: Unknown variable pscore1 ทั้งๆที่ผมพิมพ์ตามที่ท่านอาร์คแมนบอกไปทุกอย่างแล้ว RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - arkman - 10-01-2014 ต้องเอาไปประกาศค่าตัวแปรที่หน้าแรกก่อนครับ มันงงเพราะมันยังไม่รู้จักตัวนี้ RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - Nayru - 10-01-2014 ข้อ 1. ผมไกด์ให้คร่าวๆว่า ควรจะมี array คอยเก็บค่าครับว่าเคยออกเลขอะไรไปแล้วบ้าง ถ้าสุ่มแล้วตรงกับเลขใดเลขหนึ่งใน array ก็สุ่มใหม่ ถ้าไม่ตรงกับเลขใดใน array ก็นำคำถามนั้นมาใช้และเพิ่มเลขนั้นไปใน array ทำแบบนี้คำถามที่เคยสุ่มออกไปแล้วจะได้ไม่ออกมาอีกในข้อถัดๆมาครับผม RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - shogun - 10-01-2014 (10-01-2014, 11:48 AM)Nayru Wrote: ข้อ 1. ผมไกด์ให้คร่าวๆว่า ควรจะมี array คอยเก็บค่าครับว่าเคยออกเลขอะไรไปแล้วบ้าง เอ๊ะ เกมเมกเกอร์มีใช้อาเรย์ด้วยเหรอครับ แล้วอาเรย์นี้ใช้ยังไงกัน เคยได้ยินมาเท่านั้นเอง RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - shogun - 10-01-2014 (10-01-2014, 11:23 AM)arkman Wrote: ต้องเอาไปประกาศค่าตัวแปรที่หน้าแรกก่อนครับ มันงงเพราะมันยังไม่รู้จักตัวนี้ ประกาศตัวแปรนี่ใช่ set vari... อะไรนั้นหรือเปล่าครับ ผมก็เชตในออบเจ็คส์แรกไปแล้ว มันก็ยังขึ้นเหมือนเดิม หรือว่าต้องเอาออบเจ็คส์ไปใส่ในรูมไตเติ้ลด้วย RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - jin - 10-02-2014 (10-01-2014, 10:31 PM)shogun Wrote:(10-01-2014, 11:23 AM)arkman Wrote: ต้องเอาไปประกาศค่าตัวแปรที่หน้าแรกก่อนครับ มันงงเพราะมันยังไม่รู้จักตัวนี้ ต้องนำ obj_score ให้แสดงผลในรูมครับโดยใช้คำสั่ง 1-ขั้นแรก สร้าง obj_ ขึ้นมา1ตัวเป็นobj เปล่า แล้วตั้งชื่อว่าอะไรก็ได้ แต่อย่าซ้ำกับคำต้องห้าม 2-เลือก Draw event 3-เลือก Draw the value score ตามในรูป 4-เซ็ตค่า ที่ต้องการให้แสดงในส่วนไหนของ จอภาพ เช่น ข้างบน ข้างล่าง ด้านข้าง (เช่น x-200 , y-100 มันก็จะไปแสดงในตำแหน่งที่เราเซ็ตครับ ถ้าไม่่แน่ใจ ลอง ย้ายจุดดูหลายๆทีก็ได้ เอาตำแหน่งที่อยากได้ แต่ถ้า เซ็ตว่า x,y มันจะไปอยู่ที่มุมบนซ้ายสุดของroom นั่นคือจุด 0ม0) 5- เอาobjนั้น ไปวางใน room ตามรูป 6-เซ็ต ที่ตัว obj ศัตรู เมื่อ ศัตรูตาย ให้ + score โดยใช้ ในส่วนของ event obj_destroy 7-8-9 เซ็ตตามรูป ในรูป ผมใช้ว่า เมื่อศัตรูตาย ศัตรู จะเปลี่ยนตัวเองเป็น obj_die และจะ+คะแนนให้กับทาง player 100 ผลออกมา score จะแสดงผลในตำแหน่งที่เราเซ็ตไว้ อย่างของผมคือ จุดกึ่งกลางของห้อง (ซึ่ง ขนาดของroom ผมเซ็ตไว้ที่ 1280*768 ที่จุดกึ่งกลางคือ 640 แต่ผมเพื่อการเหลือมของตัวเลขไว้ เลยสั่งให้แสดงที่จุด x +600 และ y+30 แทนครับ ) เสร็จทั้งหมดแล้ว ทดลอง Run ดูครับ ลองดูว่า ตำแหน่ง score ที่แสดง ตรงกับที่ต้องการไหม พอศัตรูตายแล้วคะแนน+ให้รึเปล่า อนึ่ง วิธีที่ผมใช้ มันปนกันมั่วซั่ว ทั้ง drag&drop และ code ไม่แนะนำให้ทำตาม เพราะจะลำบากมากเวลาที่ไปถามคำถามกับคนอื่น เพราะการเอาทั้ง2อย่างมารวมกันมันจะปวดหัวมากๆ ถ้าเราไม่เข้าใจวิธีการทั้ง2อย่าง แนะนำให้หัดจนถนัดวิธีใดวิธีหนึ่งไปเลยจะดีกว่า RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - shogun - 10-02-2014 มีวิธีไหนที่ทำให้ออบเจ็คส์ที่อยู่อันดับอื่นๆกลายเป็นออบเจ็คส์แรกมีบ้างไหมครับ ผมลองสร้างออบเจ็คส์เปล่าแล้วทำดูมันไม่ขึ้นคะแนน ลองย้ายขึ้นไปบนสุดแล้วก็ยังไม่ได้ แต่พอลองสร้างอีกเกมส์หนึ่งโดยให้ออบเจ็คส์แรกเป็นออบเจ็คส์เปล่ากำหนดคะแนนดันขึ้นเฉย RE: ปัญหาการสร้างเกมส์ตอบปัญหากับเรื่องเซตสกอร์ - shogun - 10-02-2014 ได้แล้วครับ โง่ตั้งนาน แต่ว่าทำยังไงให้มันแยกออกจากกันล่ะครับ คะแนน1 กับ คะแนน2 ดันขึ้นพร้อมกันตอนตอบถูก แถมตัวกำหนดค่า set score มันก็ไม่มีกำหนดด้วยว่าจะให้ขึ้นตัวไหน ปล.ผมใช้วิธี draw score น่ะครับ |