อนุบาลงาน ActionSctipt

เริ่มโพสต์โดย ej_sing, 10 พ.ย. 2007, 00:44 น.

0 สมาชิก และ 1 บุคคลทั่วไป กำลังเปิดอ่านโพสต์นี้

คุณชาย ( 737 )

 ทำดีได้เท่านี้ครับ  :52:

สู่ความโดดเดี่ยว อันไกลโพ้น

ej_sing


ยุนเอ



:25: :25: จำตำแหน่งไว้นะครับ แล้วกะๆ เอา
เราจะต้องการอะไรมากมายไปกว่า อะไรมากมาย

Buob Marley

http://img3.f0nt.com/flash/66d37d0393ee1ab1e2e55182dfabf34e.swf

A Long Patience: Wish Us Luck (and Happy Anniversary)

หนึ่ง


คนตาบอดข้างเดียว

ในหมู่คนตาบอด คนตาบอดข้างเดียวได้เป็นราชา

蓝月 (lán yuè)

ที่สุดถ้ามันจะไม่คุ้ม
แต่มันก็ดีที่อย่างน้อยได้จดจำ
ว่าครั้งนึงเคยก้าวไป...

ej_sing

อ้างคำพูดจาก: น้องเดือน เมื่อ 15 ธ.ค. 2007, 05:30 น.
กี๊ซ :25:








:14: :14: :14: :14: มาอีกคนแล้วววววววว


คราวหน้าจะทำให้ยากๆ  :37:

poloh

 :12: สุดยอดเลยครับพี่
ก่อสร้างกับทำลาย เหมือนที่ลงมือ ต่างที่การกระทำ

ej_sing

random() , Math.random() , แรนด้อม , สุ่มค่า   :44:

มาแรนด้อมกันเถอะ  :33:

สคริปในการแรนด้อม มี แบบง่ายๆ กับแบบยุ่งยากแต่ใช้งานใด้กว้างกว่า

โดย

อ้างอิง
random(2) //จะสุ่มออกมา 2 ค่า คือ 0 และ 1 คือมันจะเริ่มจากค่า 0

อ้างอิง
random(5) //จะสุ่มออกมา 5 ค่า คือ 0 - 1 - 2 - 3 - 4

ถ้าอยากให้เริ่มสุ่มค่าจาก 1 ก็

อ้างอิง
random(5)+1 //จะสุ่มออกมา 5 ค่า คือ 1 - 2 - 3 - 4 - 5

ทดสอบง่ายๆโดย

- วาดปุ่มหนึ่งอัน ตั้งชื่อว่า _btn
เขียนสคริปที่เฟรม 1

อ้างอิง
_btn.onRelease=function(){ //สร้างฟังชั่นการกดปุ่มให้กับ _btn "เมื่อกดแล้วปล่อยปุ่มนี้"
   var n:Number = random(5)+1; // สุ่มค่าระหว่าง ( 0 - 4 ) แล้วบวกด้วย 1 จึงส่งค่าให้ n
   trace(n);                                 // output ดูผล
};

ลองกดดูครับ  :33:

ทีนี้มาแบบยุ่งยากกันแต่ใช้งานได้กว้างกว่า

การแรนด้อมอีกแบบที่ดูไฮโซโก้เก๋ เขียนแล้วทำให้ดูแมน เท่ห์มากๆ  :07:

อ้างอิง
Math.random()

Math.random() จะสุ่มค่าระหว่าง 0 <= n < 1 คือประมาณ 0 ถึง 1  ประมาณนั้น  :31:

อ้างอิง
//นี่คือค่าที่ลองสุ่มมาโต้งๆโดย  trace(Math.random())
0.0668929731473327
0.488828447181731
0.326484804507345
0.828786731231958
0.562446332536638
0.105749536305666
0.14902024064213
0.542757675983012
0.0336807980202138
0.854372425936162
0.229754942003638
0.696945054456592
0.994662169367075
0.524953804910183


ดูแล้วหลายๆท่านอาจจะถามว่า แล้วมันเอามาเหียกอะไรได้วะนั่น  :31: นั่นน่ะสิ
เลยลองไปเปิด help แล้วก้อปมาแปะให้ดู

อ้างอิง
function randRange(min:Number, max:Number):Number {
    var randomNum:Number = Math.floor(Math.random() * (max - min + 1)) + min;
    return randomNum;
}


:30: งงอ่ะดิ่ ผมยังงงเล้ยยยย
อีฟังก์ชั่นตัวอย่างนี้ เป็น "ฟังก์ชั่นสุ่มค่าระหว่าง" ลองดูวิธีใช้ง่ายๆ (ไม่อธิบายโค้ดตัวนี้นะลองเดาๆกัน :31: )

วิธีใช้คือ

อ้างอิง
var n:Number = randRange(4, 11)
    trace(n);


จากตัวอย่าง มันก็จะ output ออกมาระหว่าง  4 - 5 - 6 - 7 - 8 - 9 - 10 - 11
ก็ก้อปไว้ใช้เลยไม่หวงครับ  :22:

ทีนี้มาอธิบายวิธีใช้อี Math.random() กัน แบบง่ายๆนะ หนูก็ไม่ค่อยเชี่ยวอีตัวนี้เท่าไรนัก

ในเมื่อมันแรนดอมค่ามาเป็นทศนิยมหลายตำแหน่ง เราลองคูณมันสักหน่อยเพื่อให้ค่ามันมากขึ้นแล้วดูผล
อ้างอิง
trace(Math.random()*10);

1.40259014908224
9.36946127098054
4.92358196061105
0.599591666832566
2.37592985853553

อาาาาา ลองคูณด้วย 10 เราเห็นอะไรมากขึ้นแล้วววว แต่ยังมีทศนิยมยั้วเยี้ยอยู่

เราลองมาตัดเศษทศนิยมกันด้วย

อ้างอิงMath.floor()

รวบรัดล่ะนะ เวลาใช้จริงก็

อ้างอิง
Math.floor(Math.random()*10) // แบบนี้เราก็จะได้จำนวนเต็มล่ะครับ จะแรนดอมค่า 0 - 9

อ้าวเฮ้ย  :38: ก็เหมือนกับอันนี้น่ะสิ random(10)  ใช่ครับเหมือนกัน  :08:

(เท่าที่ความรู้ผมมีนะ)
จากตัวอย่างที่ผ่านมา จะเห็นใด้ชัดๆเลยล่ะว่า Math.random() ทำอะไรได้เยอะกว่า แรนดอมค่าเป็นทศนิยมได้
คือมันจะละเอียดกว่าครับ  :31: เอาง่ายๆแค่นี้ละกัน (จริงๆรู้ไม่ค่อยเยอะเกี่ยวกับตัวนี้เท่าไร ใครจะอธิบายเพิ่ม ช่วยหน่อยครับ)

แรกๆเราจะมาใช้ random() กันก่อนครับเอาง่ายๆ ไม่ต้องคิดมาก
ตัวอย่างแรนด้อมง่ายๆ

สร้างดวงดาวนับพันเพียงหนึ่งคลิก
- สร้าง mc จากต้นแบบ มา 1000 ตัว
- แรนด้อมพิกัด _x _y
- แรนด้อมสเกล

http://img2.f0nt.com/flash/0193d2dc3268a886aeca7c3815c86257.swf


ส่วนอันนี้ เพิ่มวิ่งๆแล้วจางหาย

http://img2.f0nt.com/flash/dff020ed4baa1b54566f5b34c548576b.swf

คราวหน้าเราจะทำแบบฝึกหัดกันครับ

iannnnn

:07c: โอ้ว ล้ำมากครับ++

ยุนเอ



ฟังก์ชั่น random มีข้อควรระวังสำหรับคนที่ต้องการ random จริงๆ นะครับ

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

ค่าที่ได้จะวนเมื่อถึงขนาดหนึ่ง

จึงมีการใส่ตัวเลข seed  ไว้เพื่อให้การ random นั้นเปลี่ยนไปเรื่อยๆ

เช่นถ้าเป็น web slot machine ของ casino ที่คิดเงินจริงๆ เค้าจะ seed ตัวเลขเป็นเวลาตามขณะนั้น แต่ก็ยังมีคนรู้และแฮค - -"

เป็นต้นครับ

เราจะต้องการอะไรมากมายไปกว่า อะไรมากมาย

iannnnn

อ้อ ถึงว่า สมัยตูเคยใช้ as เป็นแล้วเขียนเกมเป่ายิ้งฉุบ ก็เจอปัญหานี้แหละ
เลยเอาเลขเวลามาแก้เหมือนกัน แต่เดี๋ยวนี้ลืมหมดแล้วตั้งกะเป็นทหาร :52:

คนตาบอดข้างเดียว

โฮ่ เดี๋ยวมาเล่นด้วยๆ
ในหมู่คนตาบอด คนตาบอดข้างเดียวได้เป็นราชา

จักรี

เอาละเว้อยเฮ้ย  ผมจะเก่งเพราะน้าแอดนี่แหละ   :07: 




:12: :12: :12: :12:
ล้ำลึกคนึงหาในดวงจิต ใจเคยคิดตัดสวาทมิอาจสิ้น
ดั่งก้านบัวหักกลางชลาสินธุ์ ผิว่าสิ้นไร้เยื่อยังเหลือใย

SMF 2.1.7 © 2026, Simple Machines