สวัสดีเพื่อนๆนะครับ ในครั้งนี้ผมจะบอกวิธีการทำระบบเวลากัน
โดยมีตั้งแต่หน่วย วินาที ไปจนถึง หนึ่งปี กันไปเลย รวมไปถึงการทำให้มีกลางวันและกลางคืนด้วย
ผมจะอธิบายไปตามรูปภาพนะครับ จะได้สะดวกๆ เพื่อนๆสามารถทำตามกันไปได้เลย
เริ่มด้วยการสร้างเหตุการณ์ทั่วไปโดยตั้งเหตุการณ์เป็นแบบ Parallel และใช้สวิตช์สำหรับการเปิดระบบเวลานี้ โดยการตั้งเป็น Parallel นั้นเหตุการณ์จะดำเนินและวนไปเรื่อยๆ โดยไม่ทำให้ตัวเกมหยุดครับ
จากนั้นก็สร้างตัวแปรเลยครับ เริ่มต้นจากหน่วยวินาที ไล่ไปจนถึงหน่วยปี เลยครับ
เมื่อเรียบร้อย ให้เราใช้คำสั่งรอเวลา ครับ จากนั้นให้กำหนดตัวแปร หน่วยวินาที +1 ครับ
ดั่งในภาพจะหมายถึงเมื่อผ่านไป 60 เฟรม(ในโปรแกรม 60 เฟรมเท่ากับ 1 วินาทีจริง) ตัวแปรหน่วยวินาที +1 ทั้งนี้ก็ขึ้นอยู่กับเพื่อนๆ นะครับว่าต้องการให้ 60 เฟรม ผ่านไปกี่วินาที เช่น ผ่านไป 60 เฟรม ตัวแปรหน่วยวินาที +10 หรืออาจจะเปลี่ยนเป็น ผ่านไป 600 เฟรม(10 วินาทีจริง) ตัวแปรหน่วยนาที +10 ก็ได้เช่นกันครับ(เหมือนเกม Harvest Moon จำได้ว่า 10 วินาทีจริง = 10 นาที ในเกม)
เมื่อเสร็จให้เราตรวจเช็ตเงื่อนไขว่าตัวแปรหน่วยวินาที มากกว่าหรือเท่ากับ 60 (อันนี้กรณี ตัวแปรวินาที +1 ทุกๆวินาทีนะ ถ้าใช้แบบอื่นลองไปปรับใช้ดูนะครับ)
จากนั้นกำหนดตัวแปรหน่วยนาที +1 และกำหนดตัวแปรหน่วยวินาทีเท่ากับ 0 ก็หมายความว่า 1 นาที เท่ากับ 60 วินาที นั่นเองครับ
แล้วเราก็จะทำแบบเดียวกันกับหน่วยนาทีด้วยครับดั่งภาพเลย
ก็คือ 1 ชั่วโมง มี 60 นาที นั่นเองครับ
จากนั้นในหน่วยชั่วโมงให้เราเช็คเป็น 24 นะครับ(24 ชั่วโมงคือ 1 วัน) โดยเราสามารถทำลักษณะเดียวกันนี้ไปจนถึงหน่วยปีได้เลยครับแต่ ผมขอทำแค่หน่วยวันก็พอครับ แค่นี้เราก็ได้ตัวนับเวลาแล้วครับ โดยเราสามารถเริ่มระบบนี้ได้ทันทีเมื่อเปิดสวิตช์ที่เราตั้งไว้ครับ
ต่อไปจะเป็นการทำกลางวันและกลางคืนนะครับ
โดยให้เราสร้างเหตุการณ์ทั่วไปอีกอันเลยนะครับ แล้วกำหนดเป็น Parallel เช่นกัน ตั้งสวิตช์ตามต้องการ
ผมจะกำหนดเวลาตามนี้นะครับ
- เวลาที่สว่างคือ ตั้งแต่ 6 นาฬิกา ไปจนถึง 18 นาฬิกา
- เวลาที่มืดคือ ตั้งแต่ 19 นาฬิกา ไปจนถึง 5 นาฬิกา
โดยเราสามารถทำได้ดั่งนี้ครับ
ให้เราใช้คำสั่งปรับสีหน้าจอนะครับ ปรับสีให้ดูเป็นการคืน ตรงด้านระยะเวลาสามารถปรับได้ตามชอบ ถ้าใส่ไว้เยอะๆ สีหน้าจอจะค่อยๆเปลี่ยนครับ และให้กดติ๊กการรอ ออกไปด้วยนะครับ
ผมแนะนะให้สร้างสวิตช์ "กลางคืน" แล้วเปิดไว้ในช่วงเวลามืดด้วยครับ เดี๋ยวผมจะอธิบายว่าใช้ทำอะไร
เมื่อเสร็จก็จะทำให้มีกลางวันและกลางคืนเรียบร้อยครับ
เชื่อว่าเพื่อนๆถ้าเกิดคิดระบบนี้ขึ้นมา ก็คงอยากให้บางเหตุการณ์เกิดเฉพาะกลางวัน บางเหตุการณ์เกิดเฉพาะกลางคืน
ผมจึงให้เพื่อนๆสร้างสวิตช์"กลางคืน"ไว้นั่นเองครับ โดยเราแค่กำหนดเงื่อนไขของการเกิดเหตุการณ์ด้วยสวิตช์กลางคืนเท่านั้นเองครับ อย่างเช่น เจอ NPC ได้เฉพาะตอนกลางวันเท่านั้น หรือ ร้านค้าจะปิดในเวลากลางคืน เป็นต้น
แต่ระบบนี้อาจจะมีปัญหาเล็กน้อยอยู่ครับ
ถ้าหากเราเข้าไปในตัวบ้านหรือที่อื่นๆ ในเวลากลางคืน เมื่อเข้าไปสีภาพของจอจะเป็นสีเวลากลางคืนอยู่ครับ เราสามารถแก้ไขได้ดั่งนี้ครับ
เมื่อเราสร้างประตูหรือตำแหน่งทางเข้า ให้เราใส่คำสั่งปิดสวิตช์ที่ใช้กับเหตุการณ์ "กลางวัน/กลางคืน" ครับ เพื่อให้ไม่เกิดการเปลี่ยนสีหน้าจอภายในตัวบ้าน จากนั้นให้ปรับสีภาพตามต้องการครับ โดยควรเลือกระยะเวลา ให้น้อยๆนะครับ เพื่อที่จะเข้าไปในบ้านแล้วสีหน้าจอจะได้เปลี่ยนเลย
และที่ทางออก ให้สั่งเปิดสวิตช์และปรับสีภาพตามการเช็คสวิตช์ "กลางคืน" ครับ(ถ้าอยู่ในช่วงกลางคืนก็จะเปลี่ยนเป็นสีช่วงเวลากลางคืน)
ส่วนในการเช็คเวลาปัจจุบัน สำหรับอยากให้ผู้เล่นรู้เวลาตอนนั้นเราสามารถใช้คำสั่งแสดงข้อความครับ
แล้วใช้ \V[x] โดย x คือไอดีของตัวแปรนั้นๆ ข้อความก็จะแสดงออกมาเป็นค่าของตัวแปรนั้นครับ
เรียบร้อยครับเท่านี้ก็ได้ระบบเวลา ที่ผมคิดว่ามันง่ายแต่มีประสิทธิภาพครับ ซึ่งเพื่อนๆเองก็สามารถนำไปประยุกต์ใช้ ได้ในหลายๆแบบนะครับ ถ้าเพื่อนๆสงสัยตรงไหน ก็คอมเม้นถามกันได้เลยนะครับ ไว้ผมจะตอบข้อสงสัยให้
ยังไงก็ขอบคุณที่ติดตามครับ!!
ไม่มีความคิดเห็น:
แสดงความคิดเห็น