Tip:
Highlight text to annotate it
X
>> ZAMYLA CHAN: สวัสดีและยินดีต้อนรับ ให้คำแนะนำแบบ Scratch
ชื่อของฉันคือ Zamyla และฉันจะนำ walkthroughs สำหรับคุณในปีนี้
ใน CS50, ชุดทุกปัญหา พร้อมด้วยคำแนะนำ
ในระหว่าง walkthroughs เหล่านี้ฉันจะไปกว่า ชุดปัญหาในสัปดาห์อธิบาย
แนวความคิดและต้องเลิก ปัญหาการตั้งค่าเข้าไปกัดจัดการ
>> สำหรับครั้งแรก p-set ใน CS50 เราจริง จะไม่ได้รับในการพิมพ์และการ
สิ่งที่รหัสเครื่องมากยัง
แต่เรากำลังจะใช้รอยขีดข่วน, โปรแกรมที่ช่วยให้เราสามารถที่จะสำรวจ
แนวคิดการเขียนโปรแกรมใน ทางภาพและความคิดสร้างสรรค์
คำแนะนำแบบนี้จะสำรวจ แนวคิดพื้นฐานที่เราจะใช้
ตลอด CS50 เช่นเดียวกับการให้บริการ กวดวิชาที่เป็นรอยขีดข่วน
ในคำแนะนำทุกครั้งที่ผมจะแสดงชุด ของเครื่องมือที่คุณสามารถใช้สำหรับ
ชุดปัญหา
จากแนวความคิดที่มีขนาดใหญ่แน่นอนที่เกิดขึ้นจริง ฟังก์ชั่นมันเป็นที่ดีและเป็นประโยชน์ในการ
รู้สิ่งที่คุณมีการติดตั้งก่อนที่จะ การแก้ปัญหาชุดปัญหา
>> อันดับแรกให้พูดคุยเกี่ยวกับสไปรท์
สไปรท์เป็นหัวใจสำคัญที่จะทำให้ โครงการใน Scratch
ทุกวัตถุหรือตัวละครทุกตัว, ไม่ว่าจะเป็นแมว, สุนัขหรือ
ลูกจะเรียกว่าผีสาง
ถ้าต้องการพูด, แมวสองตัวในโครงการของฉัน ฉันจะต้องทำสอง
สไปรท์ที่แยกต่างหากใน Scratch แม้ ถ้าพวกเขาเหมือนกันอย่างแน่นอน
>> ผีแต่ละคนมีสคริปต์ที่เกี่ยวข้อง กับผีสางเฉพาะที่
สคริปต์เป็นสิ่งที่คุณกำลังจะ จะถูกสร้างโดยการลาก
และวางบล็อก
สคริปต์เป็นคำสั่งที่ ตรวจสอบและกำหนด
วิธีการทำงานของสคริปต์
>> ตอนนี้ไปรท์ไม่เพียง แต่ภาพ
เครื่องแต่งกายผีกำหนด ผีที่มีลักษณะเช่นเดียวกับสิ่ง
ผีสางใด ๆ ให้สามารถมี มากกว่าหนึ่งเครื่องแต่งกาย
บิตต่อมาในระหว่างการแนะนำแบบนี้ฉันจะ แสดงวิธีที่คุณสามารถมีของคุณ
เครื่องแต่งกายเปลี่ยนแปลงผีสาง ในระหว่างโปรแกรมของคุณ
>> เพื่อสร้างผีใน Scratch คุณสามารถ ทั้งเลือกเครื่องแต่งกายสำหรับการเริ่มต้น
ห้องสมุดรอยขีดข่วนของวาดของคุณเองใน รอยขีดข่วนของตัวในการแก้ไขสี
อัปโหลดภาพของคุณเองหรือถ่ายภาพ ด้วยกล้องของคอมพิวเตอร์ของคุณ
ทั้งหมดของสไปรท์ที่มีอยู่ เมื่อสิ่งที่เราเรียกขั้นตอน
เวทีเป็นเหมือนผ้าใบของเราที่ สไปรท์สามารถย้ายไปรอบ ๆ
>> ถึงแม้ว่าเราจะสามารถมีผีหลาย, มีเพียงสามารถเป็นหนึ่งในเวที
มิฉะนั้นขั้นตอนและสไปรท์จะค่อนข้าง ที่คล้ายกันในเวทีที่สามารถ
นอกจากนี้ยังมีสคริปต์
สคริปต์บนเวทีที่มีประโยชน์มาก เมื่อคุณไม่ได้มีสคริปต์ที่
ไม่จำเป็นต้องเกี่ยวข้องกับ หนึ่งผีสางที่เฉพาะเจาะจง
บางทีมันอาจจะเกี่ยวข้องกับหลาย ๆ ลายเส้นหรือไม่มีเลย
>> มันเป็นเรื่องการออกแบบที่ดีโดยทั่วไปที่จะวางของคุณ สคริปต์บนเวทีถ้าพวกเขาอยู่
เพียงพอทั่วไปและไม่เกี่ยวข้อง ไปรท์ที่เฉพาะเจาะจง
และเช่นเดียวกับสไปรท์มีเครื่องแต่งกาย, ขั้นตอนที่มีฉากหลังที่สามารถเปลี่ยน
มากกว่าหลักสูตรของโปรแกรมของคุณ
และคุณสามารถวาดของคุณเองอัปโหลด ภาพถ่ายภาพหรือใช้
ห้องสมุดรอยขีดข่วนจากฉากหลัง
ทั้งสองเวทีและสไปรท์ยังสามารถเล่น เสียงจากห้องสมุด Scratch ของหรือ
คุณสามารถอัปโหลดและบันทึกของคุณเอง
>> เพื่อเริ่มต้นโปรแกรม Scratch ของคุณคุณจะ ต้องคลิกที่ธงสีเขียวที่
มุมบนขวาของหน้าต่างเวที
แต่ถ้าคุณไม่ได้เชื่อมต่ออะไรที่จะ บล็อกที่นี่นี้แล้วอะไร
จริงที่จะเกิดขึ้นเพราะคุณ สไปรท์และขั้นตอนจะต้องมีการบอกว่า
เพื่อตอบสนองต่อเหตุการณ์ ธงสีเขียวถูกคลิก
ดังนั้นคุณจะต้องแนบบล็อก ร่องที่ด้านล่างของสีเขียว
ธงและจากนั้นโปรแกรมจะดำเนินการ การกระทำเหล่านั้นเมื่อคุณเริ่มต้น
โปรแกรมของคุณ
>> ดีขึ้นหลังจากที่ว่าสิ่งที่?
กันรอยขีดข่วนมีจำนวนมากของบล็อก สำหรับคุณที่จะใช้และคุณสามารถ
แม้จะทำด้วยตัวเอง
คุณจะเห็นสามแท็บ, คริ, เครื่องแต่งกายและเสียง
ภายใต้แท็กสคริปต์ที่มีหมวดหมู่ใด ของงบ
งบมีสิ่งอำนวยความสะดวก จัดโดยสี
คุณมีการกระทำที่เกี่ยวข้องกับการเคลื่อนไหว เสียงรูปลักษณ์และอื่น ๆ
แม้ว่าคุณจะมีบล็อกอื่น ๆ ที่ถูกสร้างขึ้น รอบงบของคุณก็
งบที่จะช่วยให้สไปรท์หรือ ขั้นตอนที่จะทำบางสิ่งบางอย่างในขณะที่
บล็อกอื่น ๆ จะช่วยตรวจสอบ เมื่อจะทำพวกเขา
>> สมมติว่าคุณกำลังสร้างของคุณมาก โครงการแรกและคุณเพียงต้องการ
แมวเหมียวภายใต้บาง พฤติการณ์
ในการดำเนินการนี้เราสามารถใช้ ประโยชน์ของบูลีน
เหล่านี้เป็นนิพจน์ที่ประเมิน จะจริงหรือเท็จ
ใน Scratch เหล่านี้จะมีการระบุโดย มุมในตอนท้ายของบล็อก
คุณจะมีความหลากหลายของประเภทที่แตกต่างกัน ของบูลีนเช่นเมาส์คือ
ถูกกดลง 2 บวก 2, ไม่ได้ถือเอา ถึง 5 ผู้ใช้จะได้หรือกดปุ่ม
ที่สำคัญบางอย่างลงบนแป้นพิมพ์?
>> ตอนนี้คุณสามารถไม่เพียง แต่ใช้ เหล่านี้บูลีนเพียงอย่างเดียว
คุณจะต้องรวมพวกเขาด้วย สิ่งที่เราเรียกเงื่อนไข
บล็อกสภาพสามารถพบได้ใน งบการควบคุมสีส้ม
เงื่อนไขสะดวกมีน้อย ตัวยึดที่แสดงให้เห็นถึงรูปร่างของ
บล็อกที่คุณต้องการ ไปใส่ลงในนั้น
ดังนั้นขึ้นอยู่กับบริบทของ สถานการณ์ที่คุณสามารถเลือกแบบบูล
และวางไว้ในสภาพของคุณ
และใส่กันคุณมี คำสั่งเงื่อนไข
เมื่อคุณใส่งบภายในว่า ป้องกันคุณมีโครงสร้างการตั้งค่า
ซึ่งครั้งหนึ่งเคยเป็นเงื่อนไขบางอย่าง จะพบคุณแล้วรันเหล่านั้น
งบ
>> หนึ่งในข้อดีของคอมพิวเตอร์เป็น พลังงานมากมายและความเร็วที่พวกเขา
สามารถดำเนินการกระบวนการซ้ำ
แทนการพูด, การทำซ้ำ การเรียนการสอนซ้ำแล้วซ้ำแล้วซ้ำอีก
อีกครั้งและที่จริงการพิมพ์ที่ออกหรือ ในกรณีนี้การลากและวาง
และลากและวางสิ่งที่เรา สามารถทำได้คือแค็ปซูลในวง
>> ลูปสามารถใช้ในการดำเนินการอย่างใดอย่างหนึ่ง สิ่งที่ไม่มีที่สิ้นสุดกับวงตลอด
หรือจำนวนครั้งที่กำหนด
ยกตัวอย่างเช่นการทำซ้ำคำพูด hi, 10 ครั้งหรืออาจจะจนบาง
สภาพที่เป็นจริง
และด้วยการทำซ้ำนี้จนกว่าจะปิดกั้นคุณ ดูรอยขีดข่วนที่มีนัยว่า
คุณจะต้องวางบูลีนเป็น ทำซ้ำจนกว่าจะถึงบล็อกที่จะทำให้
คำสั่งเงื่อนไข
>> ตอนนี้เรารู้ว่าเราสามารถแค็ปซูล ตอนที่ซ้ำซ้อนภายในของลูป,
เพื่อให้คุณสามารถดูว่าทำไมบางสิ่งบางอย่างเช่น นี้อาจจะไม่เหมาะ
ก็สุดยาวก็แค่ไม่ สิ่งเดียวกันกว่าและมากกว่า
อีกครั้ง 10 ครั้งในความเป็นจริง
มันเคลื่อนไป 10 ขั้นตอนกล่าวว่าสวัสดี ย้าย 10 ขั้นตอนกล่าวว่าสวัสดี
แต่ด้วยความช่วยเหลือของลูปที่เรา ระเบียบนี้สามารถขึ้นเล็กน้อย
ดูวิธีการนี้จะดีกว่ามาก
มันสั้นมันมีขนาดเล็กและ มันเสร็จสมบูรณ์ในสิ่งเดียวกัน
>> จะย้ายไปยังตัวแปร
ตัวแปรจะเป็นหลัก ภาชนะสำหรับค่า
ในเกาประเภทที่ของค่าสามารถ ทั้งเป็นคำหรือพวกเขาสามารถ
ตัวเลขค่าที่เรา สามารถควบคุมได้
ในบล็อกแรกนี้เรามี ตัวแปรข้อความที่มี
ค่า Hello World,
ในตัวอย่างที่สองก็สันนิษฐานว่า เรามีอยู่แล้วชื่อตัวแปร
เคาน์เตอร์และเรากำลัง incrementing โดยสาม
และแล้วในตัวอย่างที่ผ่านมาเราจะเห็น ตัวอย่างของตัวแปรที่ถูกนำมาใช้
ภายในเงื่อนไข
ในบล็อกนี้เราขอให้ถ้าตัวแปร เคาน์เตอร์มีค่าน้อยกว่าศูนย์
>> ตอนนี้เมื่อคุณสร้างตัวแปรที่คุณมี ที่จะตัดสินใจว่าคุณทำ
ตัวแปรที่มีอยู่ทั้งหมดของสไปรท์ ในโปรแกรม Scratch ของคุณหรือ
เพียง แต่สำหรับสไปรท์ที่เฉพาะเจาะจงที่เลือก เมื่อคุณทำตัวแปร
และนี่คือสิ่งที่สำคัญมาก การตัดสินใจที่จะทำ
มันลงมากับสิ่งที่ขอบเขตคุณ ต้องการตัวแปรที่จะมี
>> ตัวอย่างของขอบเขตท้องถิ่นจะเป็น ตัวแปรเพียงผีสางที่เฉพาะเจาะจงอย่างใดอย่างหนึ่ง
ซึ่งหมายความว่ามีเพียงผีสางที่จะ จะสามารถดูหรือแก้ไขมัน
ถ้าคุณตรวจสอบกับตัวแปรทั่วโลก โดยเลือกขอบเขตสำหรับทุก
สไปรท์แล้วว่าหมายความว่าเวที เช่นเดียวกับของสไปรท์,
จะสามารถที่จะดู, แก้ไข, การเข้าถึงและการที่
ตัวแปรที่คุณได้สร้าง
และในแง่ของดีไซน์ดีที่สุดที่จะ เลือกขอบเขตท้องถิ่นเมื่อใดก็ตามที่คุณสามารถ
เพียงเพื่อให้ส่วนที่เหลือของสไปรท์ และขั้นตอนที่ไม่จำเป็นต้องกังวลเกี่ยวกับ
การติดตามตัวแปรที่
>> จริงๆคุณสามารถมีสองตัวแปร ชื่อเดียวกันสำหรับสไปรท์ที่แตกต่างกัน
ตราบใดที่เป็นตัวแปรท้องถิ่น
สไปรท์หนึ่งแมวจะมีตัวแปร เคาน์เตอร์ชื่อและผีสางสอง, สุนัข,
ยังสามารถมีชื่อตัวแปร ตอบโต้ตราบเท่าที่เหล่านี้
ทั้งสองตัวแปรท้องถิ่นเป็น
เพราะขอบเขตของตัวแปร ไม่ได้ขยายไปยังส่วนที่เหลือของ
โปรแกรมและไม่มีใครไปรท์อื่น ๆ หรือขั้นตอนที่จะได้รับสับสน
>> ก่อนหน้านี้ผมกล่าวถึงจุดเริ่มต้น, เมื่อธงสีเขียวคลิกบล็อก
และบล็อกที่ประกอบ งบเป็นหลักบอก
สไปรท์หรือเวทีของคุณตกลงเมื่อ ธงสีเขียวที่มีการคลิกนี้
สิ่งที่คุณควรจะทำอย่างไร
แต่ที่ไม่ได้เป็นเหตุการณ์เดียวที่ สไปรท์และเวทีสามารถตอบสนองต่อ
เรามีตัวอย่างเช่นเหตุการณ์สำหรับ เมื่อคีย์แป้นพิมพ์ถูกกด
จริงๆคุณสามารถเลือกตัวอักษร ถึง Z ศูนย์ถึงเก้าหรือ
ปุ่มลูกศร
>> มีเหตุการณ์อื่น ๆ เกินไปเช่น เช่นเดียวกับเมื่อผีสางของคุณมีการคลิก
เมื่อคุณเริ่มต้นกับบล็อกเหตุการณ์เช่น เหล่านี้คุณจะสังเกตเห็นแนวโน้ม
พวกเขาทั้งหมดมีกลุ่มเดียว ด้านล่างและด้านบนเรียบซึ่ง
แสดงให้เห็นว่าไม่มีอะไรไปกว่านั้น ยึดติดกับบล็อกที่
คุณสร้างภายใต้เหตุการณ์เหล่านั้น บล็อกและสร้างลง
>> ตอนนี้เกิดอะไรขึ้นถ้าเราต้องการให้เหตุการณ์บางอย่างในสิ่งที่ ที่จะเกิดขึ้นว่าเมื่อแมวคือ
สัมผัสบางส่วน ของเวที?
จริงเราไม่ได้มีในตัว เหตุการณ์เพื่อบ่งชี้ว่าดังนั้นสิ่งที่เราจะ
ต้องทำคือการสร้างเหตุการณ์ของเราเอง
และที่เรียกว่ากระจายเสียง
>> ดังนั้นเมื่อคุณต้องการที่จะส่งสัญญาณว่า เหตุการณ์บางอย่างที่เกิดขึ้นแล้วคุณ
ใช้ออกอากาศเรียกว่าสีดำซึ่ง ถูกพบในส่วนแท็บ Control
มีคุณจะพิมพ์ในชื่อของ เหตุการณ์ที่คุณต้องการที่จะออกอากาศและ
แล้วผีสางใดหรือ ขั้นตอนที่สามารถตอบสนองต่อการที่
ออกอากาศถ้าต้องการ
บล็อกเมื่อฉันได้รับการบอก สไปรท์จะทำอย่างไรเมื่อพวกเขากำลัง
ได้รับแจ้งว่าที่คุณกำหนดเอง เหตุการณ์ที่เกิดขึ้น
ดังนั้นจำไว้ว่าเมื่อใดก็ตามที่คุณออกอากาศ เหตุการณ์ก็มี
ความเข้าใจที่ว่าคนใดคนหนึ่งของ สไปรท์หรือเวทีเป็นไป
กรณีที่ได้รับและตอบสนองต่อมัน
>> ตอนนี้แนวความคิดสุดท้ายก่อนที่เราได้รับ เพื่อเป็นตัวอย่างที่เกิดขึ้นจริงจากรอยขีดข่วน
โปรแกรมเป็นแนวคิดของหัวข้อ
นั่นคือเมื่อคอมพิวเตอร์ของคุณเป็น ดำเนินการพร้อมกัน
กระบวนการในเวลาเดียวกัน
และฉันแน่ใจว่าเราได้ดำเนินการทั้งหมด ประโยชน์จากการนี้
เช่นท่องเว็บในขณะที่ การฟังเพลง
คอมพิวเตอร์สามารถดำเนินการหลาย สิ่งในเวลาเดียวกัน
>> ในตัวอย่างนี้ที่นี่ทั้งสอง สคริปต์ที่สามารถใช้สำหรับ
ผีสางเดียวกันแน่นอน
บล็อกจุดเริ่มต้นเมื่อธงสีเขียว คลิกที่ถูกนำมาใช้หลายครั้ง แต่
พวกเขาเป็นสองสคริปต์แยก
ที่จริงที่ธงสีเขียวคลิกบล็อก อาจจะมากที่สุดแห่งหนึ่ง
บล็อกที่เป็นที่นิยมในโปรแกรมของคุณ
ที่นี่เราเห็นว่าเมื่อธงสีเขียวคือ คลิกมีกระบวนการหนึ่งไปว่า
เมื่อเช่นเดียวกับที่อื่น
ดังนั้น Scratch จริงจะทำงานเหล่านี้ สองในเวลาเดียวกันแน่นอน
และรู้จริงที่คุณสามารถมี จุดเริ่มต้นมากกว่าหนึ่งแม้ว่า
มันเป็นจุดเริ่มต้นที่เดียวกันเป็นไป จะมีประโยชน์มากถ้าคุณต้องการที่จะ
งานที่แตกต่างกันแยก จากอีกคนหนึ่ง
>> ทั้งหมดขวา
ดังนั้นขณะนี้ที่เราได้ครอบคลุมทั้งหมดเหล่านี้ แนวความคิดให้ดูที่ตัวอย่าง
ผมได้ทำชุดของโปรแกรม Scratch, จึงพยายามที่จะทำตามที่เรา
ทำให้เกมเล็ก ๆ น้อย ๆ
ขอเริ่มต้นด้วยการเปิด หิวศูนย์ Dino
>> ให้คลิกที่ธงสีเขียวที่จะเริ่มต้น และดูสิ่งที่มันไม่
เรามีผีสางข้อผิดพลาดที่ย้ายสำหรับ ไม่กี่ขั้นตอนการตั้งค่าที่สูงบางส่วนและ
แล้วทำตามขั้นตอนกลับ
แล้วเรามี Dino ผีสาง
โดยการกดปุ่มลูกศร, ฉันย้าย ผีสาง Dino รอบทำให้มันเปิด
และหมุน
ที่สามารถเป็นชนิดสนุก แต่ มีไม่มากมาก
สคริปต์ในโปรแกรมนี้
แน่นอนเราสามารถเพิ่มนี้
>> ตัวอย่างเช่นเมื่อ Dino มีการเคลื่อนไหวมัน จริงจะได้รับออกจากหน้าจอและ
เกือบจะหายไปจากเว็บไซต์
เราต้องการที่จะเปลี่ยนที่เพราะเรา ไม่ต้องการ Dino ที่จะหลบหนี
ดังนั้นขอหยุดสคริปต์ของเราด้วยสีแดง ธงแล้วแก้ไขสคริปต์ Dino
ขอให้สังเกตว่าสคริปต์นี้โดยเฉพาะอย่างยิ่งมี ห่วงตลอดไปซึ่งจบลงด้วยการ
ตรงขอบ
แต่ไม่ได้มีร่องใด ที่ด้านล่าง
และสิ่งนี้ทำให้ความรู้สึกจาก ชื่อวงตลอดไป
มันดำเนินการบางสิ่งบางอย่างไม่มีที่สิ้นสุด และจะไม่จบ
ดังนั้นนี่คือโอกาสที่ดี ที่จะแนะนำครับ
>> ทั้งหมดขวา
ดังนั้นขอเพิ่มสคริปต์อื่น
ฉันจะเริ่มต้นด้วยรายการนี้ จุดเมื่อธงสีเขียวคลิก
และฉันต้องการที่จะตรวจสอบอย่างต่อเนื่อง ไม่ว่าจะเป็น Dino เป็นไปได้
สัมผัสขอบ
ภายใต้การเคลื่อนไหวมีบล็อกเล็ก ๆ น้อย ๆ เรียบร้อยของ ที่บอกว่าถ้าเมื่อตีกลับขอบ
และเพื่อให้เราต้องการอย่างต่อเนื่อง การดำเนินการนี้
>> สิ่งที่คำสั่งนี้จะตรวจสอบคือถ้า ผีสางอยู่บนขอบของ
เวทีและตีกลับหลังถ้ามันเป็น
และเนื่องจากผู้ใช้สามารถย้าย Dino เราต้องการที่จะหาชนิดของบางอย่าง
ห่วงที่ช่วยให้เราอย่างต่อเนื่อง รันคำสั่งนี้
การค้นหาภายใต้การควบคุมเราจะ เลือกวงตลอดกาล
ดังนั้นขอลากที่เป็น สคริปต์ Dino แล้ว
เพิ่มเมื่อวันที่ถ้าตีกลับขอบ
และจากนั้นให้ทดสอบโปรแกรมของเรา
>> ดังนั้นข้อผิดพลาดที่มีการเคลื่อนไหวตามปกติและ แล้วถ้าเราทดสอบสคริปต์ใหม่ของเราโดย
การเคลื่อนย้ายของเรา Dino ไปที่ขอบ, เราจะเห็นว่ามันไม่สามารถ
หนีเวทีอีกต่อไป
มันเด้งกลับมา
ตอนนี้คุณอาจสงสัยว่าทำไม Dino ตีกลับ แต่ไม่ได้ข้อผิดพลาด
ดีที่เพราะเราเขียนใหม่ล่าสุดของเรา สคริปต์ภายในสคริปต์ Dino
และข้อบกพร่องไม่ได้
ดังนั้นข้อผิดพลาดจะไม่ฟัง เราให้คำแนะนำ Dino
>> ทั้งหมดขวา
ดังนั้นขอเพิ่มสิ่งใหม่ ๆ ในขณะนี้
หากคุณไปที่แท็บเครื่องแต่งกายที่คุณจะเห็น เครื่องแต่งกายที่แตกต่างกันว่า
มาโหลดไว้กับผีสางที่คุณเลือก ถ้าคุณเลือกที่หนึ่งจาก
ห้องสมุด Scratch
มีนี้น้อยน่ารัก Dino chomp อะไร เครื่องแต่งกายจึงขอใช้ Dino
เคี้ยวเมื่อเรากด, พูดปุ่ม Space
>> กลับไปที่สคริปต์ Dino
ในสคริปต์นี้ที่นี่ผมแล้ว การตรวจสอบในวงตลอดไปไม่ว่าจะเป็น
ปุ่มลูกศรบางอย่างที่ถูกกด และการย้าย Dino ตาม
ถ้าพวกเขาลูกศรซ้ายถูกกด Dino หมุนทวนเข็มนาฬิกา
ถ้าลูกศรขวาถูกกด Dino หมุนตามเข็มนาฬิกา
ดังนั้นหากลูกศรขึ้นกดแล้ว Dino ดำเนินไปข้างหน้า
เราก็สามารถเพิ่มสคริปต์แทน เพิ่มหนึ่งที่แยกจากกันเพราะ
การตรวจสอบที่มีอยู่แล้วในรูปแบบของ คีย์ที่ถูกกด
>> ขอเพิ่มอีกหนึ่งที่จะตรวจสอบ ปุ่ม Space ถูกกด
บล็อกเหล่านี้ที่นี่กำลังตรวจสอบ สำหรับคีย์ถูกกด
พวกเขากำลังทั้งหมดในสีฟ้าที่สดใสดังนั้น ให้ไปตรวจจับสีฟ้าสดใส
งบและมองไปรอบ ๆ
ที่นี่บล็อกกดปุ่มเมาอะไร
ดังนั้นสิ่งที่เราต้องการจะทำคือมี Dino สลับไปสับลงเครื่องแต่งกาย
ถ้าและเพียงถ้าอวกาศ ที่สำคัญถูกกด
>> ดังนั้นขอเลียนแบบโครงสร้างที่นี่
ตอนนี้เปลี่ยนชุดได้จะทำอย่างไรกับ วิธี Dino ที่มีลักษณะดังนั้นเราจะไป
ดูคำสั่ง
และตรวจสอบว่าพอเรามีสวิทช์ เครื่องแต่งกายเพื่อ Dino Chomp
ตอนนี้เมื่อ chomp เราลงเราไม่ต้องการ Dino ที่จะเคี้ยวลงตลอด
เพื่อขอเพิ่มงบบอก มันจะเปลี่ยนกลับ
มันจะสลับเครื่องแต่งกายทุกชนิดได้อย่างรวดเร็ว แต่เนื่องจากในงบ Scratch
จะดำเนินการกลับไปกลับจริงๆ ได้อย่างรวดเร็วเกือบจะทันที
ดังนั้นขอไปที่การควบคุมและแล้วทำให้ หยุด Dino เพียงเล็กน้อยโดยรอ
คนที่สองหลังจากที่มัน chomps ลง
>> ตอนนี้ขอแก้ไขข้อผิดพลาดผีสาง
ผีสางข้อผิดพลาดที่ขั้นตอนที่ไปข้างหน้าห้า ขั้นตอนทั้งหมดห้าครั้งหลังจาก
หยุดอยู่ครู่
ในบล็อกด้านบนข้อผิดพลาดที่นี่ สถานที่ที่ตัวเองที่บาง
ค่า x ที่ประสานงาน
เพื่อหาพิกัดที่จะทำได้จริง เมาส์หน้าจอและ
แล้วในมุมด้านล่างของเวที พิกัดของหน้าต่างจะมีการปรับปรุงเพื่อให้
คุณสามารถใช้ประโยชน์จากการนี้มีประโยชน์นี้ มีการใช้พิกัด
ที่คุณต้องการ
และในคำสั่งนี้ที่นี่เราสอน ข้อผิดพลาดในการเริ่มต้นในเวลาเดียวกันได
ค่า x ทุกครั้ง แต่จะเลือกแบบสุ่ม ความสูงสำหรับข้อผิดพลาดที่ยังคง
การเข้าพักในข้อ จำกัด ของเวที
>> ดูที่นี่ว่าฉันใช้ประโยชน์จาก แพร่ภาพเหตุการณ์ที่เกิดขึ้นใน Scratch
ตัวจัดการเหตุการณ์นี้เรียกว่าใหม่ Bug1
ดังนั้นเมื่อใดก็ตามที่ได้รับข้อผิดพลาด ใหม่ Bug1 เหตุการณ์
มันจะรันคำสั่ง
ดังนั้นหลังจากที่มันเคลื่อนไปข้างหน้าของชุด จำนวนครั้งก็จริง
ออกอากาศเหตุการณ์ใหม่ Bug1
>> แต่วิธีการเกี่ยวกับเราเปลี่ยน สคริปต์นี้เพียงเล็กน้อย
ตอนนี้เรามีข้อผิดพลาด ย้ายห้าขั้นตอน
ที่ไม่มากรวม จากห้าครั้ง
เราไม่ทราบจริงๆว่ากี่ครั้งที่จะ มีความจำเป็นจนกว่าจะถึงข้อผิดพลาด,
กล่าวในตอนท้ายของหน้าจอจึงขอ ทำ แต่ถึงจุดสิ้นสุดของ
หน้าจอ แต่ใช้บางชนิด จากการก่อสร้างอื่น ๆ
>> ฉันจะแยกนี้ออกมาเพราะ เรากำลังจะมีการเปลี่ยนแปลงเล็ก ๆ น้อย ๆ
ในการลบบล็อกจากรอยขีดข่วน คุณลากบล็อคเพื่อ
ซ้ายแล้วปล่อย
และมันได้รับการลบ
ถ้าคุณตัดสินใจว่าคุณไม่ได้ ต้องการลบแล้วคุณสามารถ
ไปแก้ไขและยกเลิกการลบ
แต่เราไม่ต้องการได้รับ กำจัดของบล็อกที่
>> สิ่งที่เราต้องการที่จะทำในขณะนี้คือย้ายการพูด, 50 ขั้นตอนและหยุดหนึ่งสองและ
ทำซ้ำนี้จนกว่าเราจะสัมผัส ในตอนท้ายของหน้าจอ
เพื่อขอใช้วงที่ช่วยให้เรา ทำซ้ำขั้นตอนจนกว่าจะมีบางอย่าง
สภาพจะพบเหมาะเจาะ ชื่อซ้ำจนถึงวันที่
>> ไปภายในเงื่อนไขอะไร ของทำซ้ำจนกว่าจะถึง?
บางสิ่งบางอย่างที่จะบอกให้เราทราบว่า ข้อผิดพลาดสัมผัสขอบของ
หน้าจอซึ่งเป็นไปได้ภายใต้ งบการตรวจวัด
ที่นี่บูลีนนี้ของ, สัมผัส
และคุณสามารถเลือกสิ่งที่นี่ คุณต้องการที่จะตรวจสอบ
ดังนั้นเราจะเลือกใช้บริการ EDGE สัมผัสและเพิ่ม คำสั่งนี้มีเงื่อนไขกลับมา
>> ดังนั้นตอนนี้ถ้าเราดูข้อผิดพลาดของเราก็จะ ย้ายกลับมาอีกครั้งทันทีที่มันสัมผัส
ขอบของเวที
ยิ่งใหญ่
เรากำลังจบด้วยหิว Dino ศูนย์ เพื่อขอเปิดหิว Dino หนึ่ง
ชนิดเช่นการแสดงการปรุงอาหาร, ฉันได้เพิ่ม คุณสมบัตินิด ๆ หน่อย ๆ
ตัวอย่างเช่นคุณจะเห็นว่าข้อผิดพลาด ร่อนเป็นจริงค่อนข้างง่ายในขณะนี้
เมื่อเทียบกับก่อนที่จะ
ภายใต้การเคลื่อนไหวที่มีแบบนี้ งบร่อน
ตอนนี้ปัญหาที่ติดทนนาน 70 หน่วย สิทธิของการแสดงออกในปัจจุบัน แต่
อยู่ที่ตำแหน่ง y เดียวกันที่นี่
และตอนนี้เราสามารถมี Dino เคี้ยว ในขณะที่เราดำเนินการก่อนที่จะ
>> แต่โปรแกรมนี้ไม่ได้เรียกว่าหิว ดิออนเพื่ออะไรเพื่อให้มี
Dino กินแมลง
วิธีที่เราอาจจะบอกข้อผิดพลาดหรือบอก Dino ที่จะได้สับลง?
วิธีที่เราอาจจะสื่อสารเหตุการณ์นี้?
ดีที่เรารู้ว่าเมื่อเราสลับ เครื่องแต่งกายสำหรับ Dino เพื่อ Dino chomp
ที่เราได้ chomped ลง
และบอกว่าเราต้องการข้อผิดพลาดจะหายไป เมื่อมีการกิน
ดีเราจะต้องตรวจสอบว่า ข้อผิดพลาดที่ได้รับการ chomped และ
สื่อสารกับข้อผิดพลาดที่มันจะมี เพื่อซ่อนหรือหายไปจากหน้าจอ
เมื่อมีการรับ chomped ลง
>> ดังนั้นสิ่งที่ชนิดของแนวคิดสิ่งที่ชนิดของ เครื่องมือที่เราสามารถใช้เพื่อมี Dino
สื่อสารกับข้อผิดพลาดที่ มันได้ chomped ลง?
บรอดคาสติ้ง
ดังนั้นให้เราไปหากิจกรรมและเพิ่ม เหตุการณ์ที่จะออกอากาศ
Chomp
ตกลง
แต่จำไว้ว่าเมื่อเราออกอากาศ สิ่งที่เรายังต้อง
ได้รับเหตุการณ์นี้
เพื่อที่ผีจะออกอากาศ chomp?
ดีขอมี Dino ทำอย่างนั้น เมื่อปุ่ม Space ถูกกด
>> ลองเพิ่มบล็อกที่จะได้รับ chomp
ตอนนี้เมื่อ Dino ลงมาเพียง พื้นที่ว่างเปล่าเราไม่ต้องการให้ข้อผิดพลาด
เพื่อตอบสนองต่อการที่ที่ทุกคนเฉพาะในกรณีที่ Dino ถูกสัมผัส แต่ในเวลา
จาก chomp ที่เราทำจริง ทำอะไรบางอย่าง
ดังนั้นเราจะใช้สภาพเพราะถ้า เรากำลังตรวจเช็คว่ามีอะไรบางอย่าง
จริงหรือไม่
>> ตอนนี้ถ้าเรากลับไปที่การตรวจวัดแล้ว เราสามารถใช้สัมผัสนี้
ปิดกั้นและเลือก Dino
จากนั้นภายใต้รูปลักษณ์ที่เราพบนี้ซ่อน บล็อกที่พื้นจะทำให้ข้อผิดพลาด
หายไปจากเวที
>> เราจะทำให้มันซ่อน แต่ที่เราทำ ต้องการข้อผิดพลาดอีกใช่มั้ย?
ของเรา Dino หิว
ดังนั้นเราจึงต้องการที่จะให้มันอีก ข้อผิดพลาดในการไล่ล่า
ดังนั้นขอยังออกอากาศ เหตุการณ์ Bug1 ใหม่
ยกเว้นเราต้องการให้รอสักครู่ ก่อนที่ข้อผิดพลาดอื่นจะปรากฏขึ้นเพื่อให้
ยังรอคนที่สอง
>> ทั้งหมดขวา
เพื่อขอตรวจสอบนี้ออก
เรา chomped ลง แต่หายไป อีกคนหนึ่งปรากฏขึ้นและ chomp เราลง
กับมันอีกครั้ง
นี้จะมองเช่นสวย เกมที่สนุก แต่ทุกเกม
จำเป็นต้องที่จะทำคะแนนขวา?
ดังนั้นสิ่งที่เราสามารถใช้ในการติดตาม วิธีการหลายข้อบกพร่อง Dino ได้กิน?
ตัวแปร
ดังนั้นขอเพิ่มคะแนนเรียกว่าตัวแปร
>> และตอนนี้เราจะต้องตัดสินใจว่า ขอบเขตตัวแปรนี้มี
ดังนั้นขอคิด
ในขณะที่เราอาจต้องการ แต่จะเพิ่ม คะแนนถ้ามันรับ
กินประสบความสำเร็จและขั้นตอนอาจจะ มีสิ่งที่จะทำอย่างไรกับ
คะแนนเช่นกันจึงขอกำหนด ตัวแปรทั้งหมดนี้สไปรท์
>> เราต้องการที่จะเพิ่มคะแนนถ้าและ เฉพาะในกรณีที่ข้อผิดพลาดได้รับการกิน
และเราได้เขียนแล้วสคริปต์ที่ ข้อเสนอที่มีข้อผิดพลาดการกินดังนั้น
ขอเพิ่มงบ ในการเปลี่ยนคะแนนโดยหนึ่ง
นั่นหมายความว่าเมื่อคุณกิน ข้อผิดพลาดที่คะแนนเพิ่มขึ้น
>> ลองเล่นสำหรับบิตและกิน, ผมไม่ทราบว่าสามข้อบกพร่อง
เพื่อให้คุณได้รับเบื่อของเกมที่ดี คุณจะกดหยุดสีแดง
ลงชื่อที่จะหยุดเกม
และเมื่อคุณต้องการที่จะกลับมาคุณจะ กดธงสีเขียวอีกครั้ง
แต่คะแนนยังคงเป็นสามแม้ แม้ว่าฉันเล่นเกมใหม่
เราไม่ต้องการให้ผู้ใช้หัว เริ่มต้นดังนั้นเราจะต้องตั้งค่า
คะแนนทุกครั้งที่พวกเขา เริ่มต้นเกมใหม่
ดังนั้นขอเพิ่มงบไปยังขั้นตอนของ สคริปต์จุดเริ่มต้นในการตั้งค่า
คะแนนตัวแปรให้เป็นศูนย์
ดังนั้นตอนนี้เมื่อใดก็ตามที่คุณเริ่มเกม, คะแนนจะเริ่มต้นที่ศูนย์
>> ตอนนี้ขอเปิดหิว Dino ที่ 2 ฉันได้เพิ่มสิ่งต่างๆมากขึ้นไม่กี่
ผมคลิกขวาผีสางข้อผิดพลาดในการ ที่ซ้ำกันผีสางซึ่งทำให้
ผีสางเหมือนหนึ่งก่อนหน้าของฉัน
Bug พิษเป็นหลักเหมือนกับ Bug1 แต่ผมเลือกเครื่องแต่งกายใหม่เพราะ
ฉันคิดว่ามันดูดี ชนิดของพิษ
แทนการเพิ่มคะแนนเมื่อ ข้อผิดพลาดพิษกินฉันจริง
ลดลงคะแนนโดยการเปลี่ยน คะแนนโดยการลบหนึ่ง
>> แล้วฉันทำเครื่องแต่งกายอีก ของเรา Dino โดยใช้โปรแกรมแก้ไขสีไป
ทำให้ผู้ป่วยมอง Dino และตั้งชื่อว่า Dino ป่วย
แต่เราไม่ได้ใช้เครื่องแต่งกายของเรานี้ โปรแกรมยังจึงขอเพิ่มบาง
งบและบล็อกที่จะเปลี่ยน เครื่องแต่งกายของ Dino ไปสีเขียวป่วย
เครื่องแต่งกายเมื่อใดก็ตามที่มันกิน ข้อผิดพลาดวางยาพิษ
>> ตอนนี้ตั้งแต่ที่เราซ้ำผีสางข้อผิดพลาด, ข้อผิดพลาดวางยาพิษมีทั้งหมดของ
สคริปต์ว่า ข้อผิดพลาดเดิมไม่
หากคุณต้องการที่จะคัดลอกไปสคริปต์จาก สไปรท์อื่น ๆ ที่คุณสามารถลาก
สคริปต์ที่ด้านบนของผีสาง ที่คุณต้องการคัดลอกไป
แต่เราไม่จำเป็นต้องทำที่นี่ เพราะข้อผิดพลาดแล้วมีพิษ
สคริปต์ที่จะตรวจสอบว่าปัญหา ได้รับการ chomped ลงบน
และเราสามารถใช้ประโยชน์จากนี้ไป สื่อสารกับ Dino ที่ว่ามันกิน
ข้อผิดพลาดที่เป็นพิษ
และเราติดต่อสื่อสารระหว่าง สไปรท์โดยกระจายเสียง
ดังนั้นขอออกอากาศใหม่ เหตุการณ์ที่เรียกว่า Dino ป่วย
>> และเรารู้ว่าเรามีเครื่องแต่งกายให้ Dino จะเปลี่ยนไป แต่เรายัง
รู้จากก่อนหน้านี้ว่ามันเป็น ที่ดีที่สุดที่จะเพิ่มในการหยุด
ระหว่างการเปลี่ยนแปลงเครื่องแต่งกาย
ดังนั้นเมื่อผมได้รับ Dino ป่วยฉันจะ ที่จะเปลี่ยนเครื่องแต่งกายเพื่อ Dino ป่วยรอ
คนที่สองแล้วเปลี่ยน กลับไปยัง Dino หิว
ทั้งหมดขวา
ลองเล่นเกมของเราและกิน ข้อผิดพลาดและด้วง
และคะแนนจะลดลงโดยหนึ่ง
>> ตอนนี้บางครั้งคุณอาจพบว่า ตัวแปรที่อาจไม่ปรากฏบน
มุมซ้ายมือของหน้าจอ
หากคุณนำทางไปยังส่วนของข้อมูลภายใต้ สคริปต์คุณจะเห็นเครื่องหมายนี้
ข้างตัวแปรที่คุณสร้าง
และซ่อนนี้หรือ unhides ตัวแปรจากหน้าจอ
แต่คุณยังสามารถใช้คำสั่ง ที่เรียกว่าการแสดงหรือ
ซ่อนตัวแปรเฉพาะ
เพื่อขอใช้คะแนนตัวแปรแสดงถึง ตรวจสอบให้แน่ใจว่าทุกครั้งที่เราเริ่มต้น
เกมเป็นตัวแปรที่แสดง
ยิ่งใหญ่
>> ดังนั้นขอเรียกใช้เกมและกิน ข้อผิดพลาดพิษทันที
ตอนนี้มันเป็นเพียงเล็กน้อยแปลกที่จะมีการเล่นเกม ที่จะมีการลบจุดขวา?
ดังนั้นขอแนะนำอีกประการหนึ่ง
ถ้า Dino กินมากเกินไปเป็นพิษ ข้อบกพร่องแล้วจะได้รับเกินไปป่วยและ
เกมที่มีมากกว่า
ดังนั้นในการดำเนินการนี้เราจะออกอากาศ อีกเหตุการณ์เกมกว่า
เราไม่ทราบเมื่อมีการดำเนินการอย่างไร เกมออกอากาศกว่านี้?
>> ดีที่เราสามารถทำได้หลายวิธีนี้
เราสามารถมีสคริปต์ในขั้นตอนที่ อย่างต่อเนื่องไม่ว่าจะเป็นคะแนนสอบ
เป็นลบหรือไม่และออกอากาศ จบเกมเมื่อ
คะแนนจะกลายเป็นเชิงลบ
หรือเราสามารถใช้ประโยชน์จากความเป็นจริง ว่าวิธีเดียวที่จะได้คะแนนที่เคย
เป็นเชิงลบคือเมื่อเป็นพิษ ข้อผิดพลาดถูกกัดกิน
เพราะเมื่อคุณกินอาหารอื่น ๆ ข้อผิดพลาดคะแนนเพิ่มขึ้น
มีการใช้งานในการตรวจสอบไม่ได้ไม่ว่าจะเป็น ควรจะจบเกมหรือไม่เมื่อคุณ
กินแมลงที่กินได้
>> ดังนั้นเราจึงสามารถจริงเพียงเพิ่ม สคริปต์ที่ได้รับ Dino ป่วย
ออกอากาศเหตุการณ์
เราต้องการที่จะสั่ง Dino ดังนี้
ถ้าคะแนนน้อยกว่าศูนย์ ออกอากาศจบเกม
ดังนั้นเราจะสร้างคะแนนน้อยกว่าศูนย์ สภาพการใช้บล็อกจาก
ส่วนการดำเนินการและการลาก ในความคิดเห็นของเราไปยังบล็อกที่
และดูที่นี่คุณก็สามารถลาก คะแนนตัวแปรและใส่น้อยกว่าศูนย์
และเรากำลังจะออกอากาศ เหตุการณ์ใหม่เกมกว่า
>> แต่ถ้าคะแนนไม่ได้ไปด้านล่าง ศูนย์เราต้องการ Dino ไป
เกมต่อ
ดังนั้นแทนที่จะใช้ถ้าที่นี่ให้ ถ้าใช้อื่นสร้าง
ถ้าคนอื่นสร้างบอกเรา Dino ไป ทำสิ่งหนึ่งถ้าเงื่อนไขเป็นจริง
และสิ่งอื่นถ้า เงื่อนไขเป็นเท็จ
ร่างกายครั้งแรกถ้าเราสามารถเข้า ถ้าที่อื่นจึงขอลากเข้าที่
แต่ถ้าคะแนนไม่น้อยกว่าศูนย์ แล้วให้เปลี่ยนกลับไป
หิวเครื่องแต่งกาย Dino
เราไม่ต้องการที่จะทำอย่างนั้น preemptively
ยิ่งใหญ่
>> แต่ตั้งแต่ที่เราออกอากาศจบเกม, เรายังคงต้องให้
บล็อกรับเหตุการณ์
มีจริงหยุดคำสั่งทั้งหมด ในการควบคุมเพื่อให้การเชื่อมต่อนี้ไป
เมื่อผมได้รับเกมกว่า
แต่เรายังต้องการข้อผิดพลาดที่จะหยุดดังนั้น ให้ลากสคริปต์นี้เมื่อทั้งหมดของ
สไปรท์ข้อผิดพลาดเช่นเดียวกับขั้นตอน
ลองนี้ออกมา
>> กินแมลงที่เป็นพิษทันที โปรแกรมจะหยุดการตามที่คาดไว้
ไม่มีการย้ายข้อบกพร่องอื่น ๆ และไม่ ไม่ Dino ถ้าคุณกด
ลงปุ่มลูกศร
แต่ขอบอกว่าเราไม่ต้องการที่จะเตือน ผู้ใช้ของคะแนนที่เป็นลบของพวกเขาดังนั้น
ให้ซ่อนความคิดเห็นของตัวแปรจาก เวทีเมื่อใดก็ตามที่เกม
เหตุการณ์กว่าจะได้รับ
ทั้งหมดขวา
>> ดังนั้นนี่คือเกมที่ดีงาม
กับเวลาที่คุณสามารถเพิ่ม สไปรท์และสคริปต์อื่น ๆ
บางทีข้อบกพร่องที่สามารถเคลื่อนย้าย ด้วยความเร็วที่แตกต่างกัน
คุณสามารถเพิ่มพื้นหลังใหม่ ไปยังเวที -
เกมกว่าฉากหลัง -
ดังกล่าวว่าเมื่อขั้นตอนการได้รับ จบเกมการแข่งขันก็สามารถสลับไปยัง
เกมกว่าฉากหลังและ ของสไปรท์ซ่อน
จำนวนมากปรับแต่งขนาดเล็กสามารถทำเพื่อให้ เกมของคุณเล็ก ๆ น้อย ๆ ขัด
>> และนี่เป็นเพียงตัวอย่างหนึ่งของ โครงการที่คุณสามารถในการ Scratch
โดยใช้เครื่องมือทั้งหมดที่ เราได้พูดถึงก่อนหน้านี้ -
สไปรท์เครื่องแต่งกาย, ขั้นตอน, ฉากหลัง, เงื่อนไขตัวแปร,
เหตุการณ์กระจายเสียงและหัวข้อ
หิว Dino ไม่ได้ใช้เสียงใด ๆ ผลกระทบ แต่คุณสามารถเพิ่มของคุณ
ของตัวเองโดยการนำไปที่แท็บเสียงและ สำรวจงบเสียง
รอยขีดข่วนเป็นแนะนำที่ดีในการ แนวคิดการเขียนโปรแกรมเพื่อให้มีความคิดสร้างสรรค์
และที่สำคัญที่สุดมีความสนุกสนาน
ชื่อของฉันคือ Zamyla และนี่คือ CS50