สารบัญ:

วิธีสร้าง Platformer บน Scratch: 6 ขั้นตอน (พร้อมรูปภาพ)
วิธีสร้าง Platformer บน Scratch: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีสร้าง Platformer บน Scratch: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีสร้าง Platformer บน Scratch: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Scratch Platformer Game | 9. Collectables, Keys & Doors 2024, พฤศจิกายน
Anonim
วิธีสร้าง Platformer บน Scratch
วิธีสร้าง Platformer บน Scratch

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

เสบียง

สิ่งเดียวที่คุณจะต้องมีคือโทรศัพท์หรือคอมพิวเตอร์และเบราว์เซอร์ที่สามารถขีดข่วนได้

ขั้นตอนที่ 1: สร้างสไปรท์

สร้างสไปรท์
สร้างสไปรท์

เริ่มต้นด้วยการเข้าสู่ระบบเพื่อเริ่มต้น สิ่งนี้จำเป็น ดังนั้นหากคุณต้องการเผยแพร่หรือกลับมาที่เกม จากนั้นคลิกที่สร้างและจะนำคุณไปที่ตัวแก้ไขโครงการ นี่คือสิ่งที่เราจะทำโครงการของเรา

ที่ด้านซ้ายบน คุณจะพบปุ่มเครื่องแต่งกาย คลิกหากคุณต้องการเปลี่ยนเครื่องเล่นของคุณ เปลี่ยนชื่อ "สไปรท์" เป็น "ผู้เล่น"

จากนั้นสร้างแพลตฟอร์มของคุณด้วยการสร้างสไปรท์ใหม่ เปลี่ยนชื่อสไปรท์นั้นว่า "กราวด์"

เปลี่ยนชื่อเกมของคุณเป็นสิ่งที่คุณต้องการ

ขั้นตอนที่ 2: แรงโน้มถ่วง

แรงโน้มถ่วง
แรงโน้มถ่วง

เพิ่ม "เมื่อคลิกธงสีเขียว" จากนั้นวางบล็อก "กำหนดตำแหน่ง" และวางพิกัดในตำแหน่งที่คุณต้องการให้ผู้เล่นวางไข่ รับลูป "ตลอดไป" และลูป "ทำซ้ำจนกระทั่ง" วางลูป "ตลอดไป" ใต้บล็อก "ตำแหน่งที่กำหนด"

สร้างตัวแปร นี้จะทำหน้าที่เป็นแรงโน้มถ่วงของเรา ฉันชื่อ "y vel" (ย่อมาจาก y velocity) ใต้บล็อก "กำหนดตำแหน่ง" วาง "ตัวแปรการตั้งค่าเป็น _" เปลี่ยนตัวแปรเป็นสิ่งที่คุณตั้งชื่อตัวแปรของคุณ (ฉันจะเรียกมันว่า y vel ตอนนี้) และเปลี่ยนตัวเลขเป็นศูนย์ ถัดไปเพิ่ม "เปลี่ยน y โดย _, " และใส่ "y vel" ลงไป ใส่สิ่งนั้นใน "วนซ้ำตลอดไป" ด้านล่างนั้นเพิ่ม "เปลี่ยน 'yvel' โดย '-1'"

สร้างบล็อกที่เรียกว่า Touch ground ตรวจสอบให้แน่ใจว่าเมื่อทำเช่นนี้ คุณคลิกวิ่งโดยไม่ต้องรีเฟรชหน้าจอ

ใส่ลูป "ทำซ้ำจนกระทั่ง" ใต้ "พื้นสัมผัส" เพิ่ม "ไม่" ในบูลีนและใน "ไม่" ให้เพิ่ม "แตะ 'กราวด์'" ในนั้นให้ใส่ "เปลี่ยน y ด้วย '1'" ด้านล่างซึ่งวาง "ตั้งค่า 'y vel' เป็น '0 '"

หากคุณทำตามทั้งหมดนั้น รหัสของคุณควรมีลักษณะเหมือนภาพด้านบน

ขั้นตอนที่ 3: การเคลื่อนไหว

ความเคลื่อนไหว
ความเคลื่อนไหว

ใต้ "เมื่อคลิกธงสีเขียว" ให้ใส่ "กำหนดรูปแบบการหมุน 'ซ้าย-ขวา'"

ภายในลูป "forever" เพิ่มสอง "ถ้าแล้วบล็อก" ในบูลีนเพิ่ม "คีย์ _ ที่กด" สองอัน ตั้งค่าเป็นคีย์ที่คุณต้องการไปทางซ้ายและขวา

สร้างบล็อกที่เรียกว่า "การตรวจจับ x" (จะช่วยในขั้นตอนต่อไป) คลิกเรียกใช้โดยไม่รีเฟรชหน้าจอ เพิ่มอินพุตเรียกว่า "ความเร็ว"

ในทิศทางที่ถูกต้อง ให้ใส่ "การตรวจจับ x '5 (คุณต้องการให้สไปรท์เคลื่อนที่เร็วแค่ไหน), '" (ความเร็วขึ้นอยู่กับสิ่งที่คุณต้องการ) และ "ชี้ไปในทิศทาง '90'" ทำเช่นเดียวกันกับทางซ้าย แต่ คูณจำนวนทั้งหมดด้วยลบหนึ่ง

สร้างบล็อกที่เรียกว่ากระโดด ใส่ไว้ในลูป "ตลอดไป"

สร้างตัวแปรใหม่ที่เรียกว่า "การล้ม" ใต้ "พื้นสัมผัส" ให้วาง "เปลี่ยน 'ล้ม' โดย '1'" ใต้นั้น ในลูป "ทำซ้ำจนกระทั่ง" วาง "ตั้งค่า 'ล้ม' เป็น 'ศูนย์'"

กำหนดกระโดด เพิ่มบล็อก "ถ้าแล้ว" ในบูลีนให้ใส่ "_ และ _" ในบูลีนหนึ่ง ให้ใส่ "คีย์ 'สิ่งที่คีย์กระโดดของคุณจะถูก' " จากนั้นเพิ่ม "ถ้า '5' มากกว่า 'ล้ม'" ในบล็อก "ถ้าเป็นเช่นนั้น" ให้ใส่ "ตั้งค่า 'y vel' เป็น ' 12 (กระโดดสูง.'"

คุณอาจสังเกตเห็นว่าเครื่องเล่นของคุณไม่ได้สัมผัสพื้นเสมอไป ทำชุดใหม่ให้เล็กลงทุกด้าน ภายในวง "ตลอดไป" ใส่ใน "เปลี่ยนชุดเป็น 'costume2 (ชุดใหม่)'" ด้านล่างนั้นใส่ "เปลี่ยนชุดเป็น 'costume1 (ชุดเดิม)'"

หากคุณทำอย่างถูกต้อง สิ่งนี้ควรมีลักษณะเหมือนภาพด้านบน

ขั้นตอนที่ 4: การตรวจจับการชนกันในแนวนอน

การตรวจจับการชนกันในแนวนอน
การตรวจจับการชนกันในแนวนอน

สร้างตัวแปรใหม่ที่เรียกว่าความชัน ใต้ "เปลี่ยน x ด้วย 'ความเร็ว'" ให้เพิ่ม "ตั้งค่าความชันเป็น '0'"

เพิ่มการทำซ้ำจนกว่าจะมีบล็อกด้านล่าง ใส่ "'สัมผัส 'พื้นดิน' หรือ 'ความชัน' เท่ากับ '8'" ในนั้นเพิ่ม "เปลี่ยน y โดย '1, '" และ "เปลี่ยนความชันโดย '1'" ใต้วง "ทำซ้ำจนถึง" ให้เพิ่ม a "ถ้า 'ความชัน' เท่ากับ '9' แล้ว " วนซ้ำ ในนั้นให้เพิ่ม "เปลี่ยน x โดย '0' ลบ 'ความเร็ว '" จากนั้นเพิ่ม "เปลี่ยน y โดย '0' ลบ 'ความชัน'"

หากคุณทำตามขั้นตอนนี้ถูกต้อง โค้ดของคุณควรมีลักษณะเหมือนภาพด้านบน

ขั้นตอนที่ 5: การตรวจจับการชนกันในแนวตั้ง

การตรวจจับการชนกันในแนวตั้ง
การตรวจจับการชนกันในแนวตั้ง

แก้ไขบล็อก "พื้นสัมผัส" เพิ่มบูลีนเรียกว่า "เพดาน" ใน "พื้นผิวสัมผัส" ของเราในลูป "ตลอดไป" ให้เพิ่ม "'y vel' มากกว่า '0"

นำทุกอย่างออกจากลูป "ทำซ้ำจนกระทั่ง" ใส่ลูป "ถ้าเป็นเช่นนั้น" ในลูป "ทำซ้ำจนถึง" และเพิ่ม "เพดาน" ในบูลีน ในส่วน "ถ้าเป็นเช่นนั้น" ให้เพิ่ม "เปลี่ยน y โดย '-1'" ในส่วน "อื่น" ให้เพิ่ม "เปลี่ยน y โดย '1, '" และ "ตั้งค่าลดลง '0'"

ใต้ลูป "ถ้าเป็นเช่นนั้น" ให้เพิ่ม "set 'y vel' เป็น '0'"

หากปฏิบัติตามคำแนะนำควรมีลักษณะเหมือนภาพด้านบน

ขั้นตอนที่ 6: พิเศษ

พิเศษ
พิเศษ

สร้างสไปรท์ใหม่ นี้จะมีส่วนเสริม

ในลูปตลอดกาล รับลูป "ถ้า 'แตะสีแดง (คุณต้องได้สีที่แน่นอน)' แล้ว" ในนั้นให้ใส่บล็อก "กำหนดตำแหน่ง" ป้อนพิกัดที่ผู้เล่นของคุณวางไข่ รับลูป "ถ้า 'แตะสีน้ำเงิน' แล้ว" ในนั้นให้ใส่บล็อก "กำหนดตำแหน่ง" ป้อนพิกัดที่ผู้เล่นของคุณวางไข่ ในนั้นก็ออกอากาศ "message1"

ทั้งในกราวด์และส่วนเสริม รับ "เมื่อได้รับ 'message1, '" และใส่ "ชุดถัดไป"

ตอนนี้คุณมีทักษะในการสร้าง platformer พื้นฐานแล้ว เพิ่มไป

หากต้องการความช่วยเหลือเพิ่มเติม โปรดคลิกลิงก์ เขาทำทุกอย่างที่พูดถึง นี่คือรหัสของเขา

scratch.mit.edu/projects/68924432/

แนะนำ: