บททดสอบอนุบาล ขำๆ ตัวอย่างครับ
http://img2.f0nt.com/flash/86aa1646eb27b0afe35c1ed21702beba.swfจากตัวอย่าง
จะเห็นว่า ตัวสามเหลี่ยม จะหมุนอยู่ในวงกลม (กดหมุน ปล่อยหยุด แรนด้อมด้วยนะ
)
วงกลมจะหมุนอยู่ในสี่เหลี่ยม
พอลากสี่เหลี่ยม มันก็มากันทั้งหมดเลย ทั้งๆที่ยังหมุนอยู่
-เป็นการซ้อนมูวี่คลิป เข้าไปสามชั้น
สี่เหลี่ยม เป็นตัวหลัก มีวงกลมอยู่ข้างใน ข้างในวงกลม มี สามเหลี่ยมเก้าอัน
=========================================================
แบบทดสอบบทที่ 1 ทดสอบการอ้าง Path โดยไม่ใช้ _root นำหน้าชื่อ =========================================================
-
ให้สั่งหมุนตัวสามเหลี่ยมแบบแรนด้อม 3 ตัว ด้วยการกดปุ่ม ตามตัวอย่าง พอปล่อยปุ่มจึงหยุดหมุน ข้อบังคับ !!
- ห้ามมี _root หรือ level0 ,level ต่างๆ นำหน้าชื่อ mc ทุกตัว ให้ใช้ this ได้
- เขียนสคริปที่เฟรมแรก ของ Main Timeline เท่านั้นทำไฟลแบบทดสอบไว้ให้แล้วครับ
โหลดไฟล์ที่แนบมาด้วย ไปลองทำดูครับ ( ทุกอย่าง สร้างไว้ให้แล้ว แต่ไม่มีสคริป
)
ไฟลนี้ทำข้อสอบได้หลายบทเลยครับ
ใครว่างๆก็ลองดูนะครับ
//
ส่งงาน กรุณาแนบไฟลมาด้วยย จะเอามาตรวจ =========================================================
=========================================================
สาระเล็กๆ สำหรับคนใช้แฟลช ควรอ่านผิดตกบกพร่องประการใด ขออภัยไว้เลยนะครับ ผมก็มั่วๆตามประสบการณ์ กรุณาชี้แนะเพิ่มเติมด้วยครับ
หาก
ไม่มีการโหลดมูวี่ย่อย ที่มีสคริปในตัวเอง ไอ้ที่กำลังจะเขียนๆนี่ก็ไร้ประโยชน์ครับ
-
ทำไม บทนี้ ถึงไม่ให้ใส่ _root หน้าชื่อ (วะ) ก็มันเป็น Path แรกสุดที่จำเป็นเลยนี่ คำตอบคือ เป็น
การฝึกเล็กๆน้อยๆครับ อ่านตามช้าๆนะครับ มั่วใช้ได้
เพราะบางที บางงาน
มูวี่หลักที่ต้องโหลดมูวี่ย่อยๆเข้ามา _root ก็จะเป็น มูวี่หลักครับ
มูวี่ย่อยต่างๆที่มีสคริปที่อ้าง _root อยู่ในตัวอยู่แล้ว จะมีปัญหาแน่นอน จึงมีคำสั่งนี้ mc._lockroot = true
เพื่อมาล๊อค _root ให้เป็นของตัวเอง เพื่อให้สคริปตัวเอง อ้าง _root ของตัวเองได้
แล้ว _root มูวี่หลักก็จะไม่มีเพราะ ล๊อคมาให้มู่วี่ย่อยแล้ว (จำได้วาเป็นเช่นนั้น) แต่ที่แน่ๆคือ มีปัญหาแน่นอน
หาก มูวี่หลักมีการอ้าง _root. บลา บลา บลา รับรองยุ่งสุดๆเลย
เพราะเคยเจอ(บ่อยๆ) งานที่เป็น อนิเมชั่นเล็กๆ ผสมสคริปถึกๆ
มีการใช้ฟังชั่น อ้างถึงตัวแปรต่างๆ อยู่ใน มูวี่หลักเอง พอไปเฟรมหลังๆ การอ้างก็ต้อง _root.ฟังชั่น นั่นเป็นเรื่องปกติ
แต่พอเราโหลดมูวี่จากภายนอกเข้ามาแล้ว มูวี่ที่โหลดมา มันก็มีสคริป ที่ต้องอ้าง _root ของตัวเองด้วย
ทีนี้ก็ต้องเดือดร้อน ._lockroot = true กันให้วุ่น สคริปในมูวี่ย่อยถึงจะใช้ได้
ที่ซวยน่ะคือสคริปบนมูวี่หลัก อ้าง _root. ก็ไม่มาแล้วววว เพราะ ไปล๊อคอยู่ที่อีตัวโน้น บรรลัยแน่ๆ
---------------------------------------------------------------------------------
วิธีแก้ปัญหาแบบแอดว้านซ์ อย่างง่ายก็สร้าง _global ฟังชั่น และตัวแปร _global ซึ่งเรียกจากที่ไหนก็ได้ ไม่ต้อง _root
แหม่่ เทพจริงๆ แต่ บางทีเฉพาะที่เฉพาะทาง
มันก็ไม่เหมาะไม่ควร ยุ่งยากเปล่าๆเราก็แก้ด้วยวิธีง่ายๆโคตรๆ
การ
ไม่ต้องอ้าง _root ในมูวี่ย่อยๆ ไง
พยายามหาทางอ้าง path ให้มันทำงานในตัวมันเองให้ได้ โดยไม่มี _root. นำหน้า path
พอโหลดมามูวี่หลัก สคริปต่างๆมันก็ยังทำงานได้เพราะ มันไม่ต้องอ้าง _root ในตัวเอง
ทีนี้ก็สบาย ไม่ต้อง _lockroot กันให้ปวดกบาลแล้วครับ เฮ้อออววววว
อย่าลืมทำบททดสอบกันนะจ๊ะ