Thread Rating:
  • 2 Vote(s) - 3 Average
  • 1
  • 2
  • 3
  • 4
  • 5
คำสั่งหยุดเกมแบบง่ายๆ
#1
เมื่อเราต้องการให้ เกมหยุด เมื่อมีออบเจ็คใดออบเจ็คหนึ่งปรากฏออกมา เช่นกรอบคำพูด
ให้เราใช้คำสั่ง
screen_refresh()
keyboard_wait()
io_clear()
ตามนี้เลยครับ


วิธีการใช้ สมมุติว่า เราต้องการให้เกมส์หยุด เมื่อมีกรอบคำพูดขึ้นมา

1-สร้าง obj_Slost ขึ้นมาเป็น object ที่เราควบคุม หรือ ตัวผู้เล่นนั่นเอง (ท่านสามารถตั้งชื่ออื่นก็ได้เช่น obj_jnkillerqueen_goodman หรือ obj_demonking_gasmask ตามใจชอบได้เลยครับ)
2-สร้าง object ที่2 ขึ้นมา คือออบเจ็ค คู่สนทนาของเรา สมมุติว่าชื่อ obj_natsuki_zombie แล้วกันน่ะครับ
3-สร้างออบเจ็ก กรอบคำพูดขึ้นมา จะวาดเป็นกรอบตะโกน กรอบความคิด กรอบกระซิบ แบบในการ์ตูนแบบไหนก็ตามสบายเลยครับ ในที่นี้ผมสมมุติว่า obj_talk1 น่ะครับ
4- ตั้งค่า create ของ obj_talk1 ดังนี้ alarm[0] = 30

obj_talk1 - create = alarm[0] = 30
alarm[0] = screen_refresh()
keyboard_wait()
io_clear()

5-นำ obj_talk1 ไปยัดใส่ใน obj_natsuki_zombie ตั้งให้เมื่อ obj_natsuki_zombieเกิดมาแล้วแสดง obj_talk1
ทีนี้ เมื่อ obj_talk1 เกิดขึ้นมา ภายในเกมส์จะหยุดครับ จนกว่าเราจะกด ปุ่มใดปุ่มหนึ่งบนคีย์บอร์ดครับ



อธิบายยากครับ เอาตัวอย่างไปลองทดสอบดูดีกว่า นอกจากนี้ยังสามารถเปลี่ยนแปลงอะไรอีกหลายๆอย่างเพื่อเพิ่ลูกเล่นให้ตัวเกมส์ได้ด้วยครับ

ดาวโหลด ลิ้งตัวอย่าง http://www.mediafire.com/download/8wri8u...object.rar
https://www.facebook.com/guless.jn สมุดหนังหน้าสำหรับการตามข้อมูลรั่วๆ ที่หื่นบ้างอะไรบ้าง
[-] The following 5 users say Thank You to jin for this post:
  • arkman, gol-a-khung, Kuntana, slost, นิราจ
Reply
#2
เอาไปใช้กับปุ่มหยุดเกมได้เลยสินะครับ ได้สาระมากเลย

ปล.ตอนแรกตอบกระทู้ไม้ได้ เพราะหัวข้อกระทู้ยาวเกินไปครับ ตัดให้สั้นๆกระชับหน่อยนะครับ
Show ContentSpoiler:
[Image: Signature-Ralph.png]
Reply
#3
screen_refresh(); คำสั่งหยุดเกมส์

keyboard_wait(); ใช้ในการ รอรับค่าแป้นพิมพ์และเมาส์ เมื่อมีการกด

io_clear(); ใช้ในกรณีที่ต้องการยกเลิกคำสั่งปุ่มกดของแป้นพิมพ์และการกดเมาส์ เช่น ก่อนการหยุดเกมส์ เราได้กดแป้นพิมพ์ปุ่มใดปุ่มหนึ่งไว้ คำสั่งนี้จะทำการยกเลิกค่าการกดทั้งหมดนั้นเอง
ในทางกลับกัน ถ้าไม่มีคำสั่งนี้ค่าการกดแป้นพิมพ์หรือการกดเมาส์ จะถูกเก็บค่าไว้ทันที

ดังนั้นเราจึงเห็น 3 คำสั่งนี้ใช้อยู่ด้วยกันตลอด เปรียบเสมือนเพื่อนกันก็ว่าได้ครับ

ปล.ผมยังไม่ได้ลองดูนะครับ ไม่รู้ว่าอธิบายถูกหรือเปล่า ถ้าผิดบอกด้วยนะครับ ผมลองเกาะจากโค้ดของต่างชาติมาครับ

โค้ดตัวอย่างที่ใช้ดูครับ
scr_Pause code:

//There is Pause Code.
{
draw_set_font(font_Pause);
draw_set_color(c_blue);
draw_set_halign(fa_center);
draw_text(room_width/2,100, 'Game Paused. Press any key to continue');
screen_refresh();
keyboard_wait();
io_clear();
}

Happy Watching! Smile


EDIT!!!:

{
draw_set_font(ADD FONT HERE!);
draw_set_color(c_black);
draw_set_halign(fa_center);
draw_text(room_width/2,100,'Game Paused. Press P to continue.');
screen_refresh();
{ if keyboard_check_pressed(ord("P")) { io_clear(); } }
}

For better pause event!!!
เครดิตโค้ด : http://www.youtube.com/watch?v=Y9QM5iDi1ZU
[-] The following 3 users say Thank You to gol-a-khung for this post:
  • arkman, slost, นิราจ
Reply
#4
ผมบอกแล้วให้คุณเอ้ตั้ง สุดท้ายคุณเอ้ก็ต้องมาแก้ไขอยู่ดีคับ
https://www.facebook.com/guless.jn สมุดหนังหน้าสำหรับการตามข้อมูลรั่วๆ ที่หื่นบ้างอะไรบ้าง
Reply
#5
ทำไมต้องใช้ผมเป็นชื่อ object ด้วย /ohgod

 "กาก"
[Image: bujuroll.gif] แอดเพื่อน Steam จิ้มแรงๆเลย >>> [Image: AddFriend.png]
[Image: 76561198091389336.png]




Reply
#6
(11-22-2013, 01:45 PM)slost Wrote: ทำไมต้องใช้ผมเป็นชื่อ object ด้วย /ohgod


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

obj_slost คุยกับ obj_natsuki มันจะเห็นภาพง่ายกว่า
obj_natariodiovocalanino คุยกับ obj_natariodiovocalaninovelasimilano_the_Third
ไช่ไหมครับ
https://www.facebook.com/guless.jn สมุดหนังหน้าสำหรับการตามข้อมูลรั่วๆ ที่หื่นบ้างอะไรบ้าง
Reply
#7
อัพเดต ชุดคำสั่ง คำสั่ง

คำสั่ง
screen_refresh()
keyboard_wait()
io_clear()
สามารถใช้ได้แค่ gamemaker 8.1 เท่านั้น ซึ่งถ้าเป็นเวอชั่นที่สูงขึ้นไปเช่น Gamemaker studio
จะไม่สามารถ ใช้งานใด้ ใน Gamemaker studio นะครับ ทดลองแล้วกับตัวเอง
จะเกิดการเออเรอและไฟล์เกมส์ไม่สามารถรันได้

รบกวนผู้ที่มีความรู้ด้าน Gamemaker studio มาแนะนำทีครับว่า
ถ้าต้องการวิธีที่คล้ายๆกัน ต้องใช้คำสั่งใด ในการเขียนสคริป
https://www.facebook.com/guless.jn สมุดหนังหน้าสำหรับการตามข้อมูลรั่วๆ ที่หื่นบ้างอะไรบ้าง
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)