gol-a-khung   10-18-2013, 10:32 AM
#1
GML Functions: Random Functions
ภาษาเกมส์มาร์คเกอร์ : ฟังก์ชั่นการสุ่มค่า

บทความนี้จะมาเรียนรู้การสุ่มค่าตัวเลขที่นำไปใช้บ่อย
random(x) คือ ฟังก์ชั่นนี้จะทำการสุ่มค่าระหว่าง 0 ถึง x (มีเลขทศนิยม)
x คือ ค่าที่กำหนดสูงสุด
เช่น random(5) หมายความว่า จะสุ่มค่าระหว่าง 0 ถึง 5 ค่าที่ได้จะประมาณนี้ 0.35, 1.25, 3.56, 4.00, 4.99, 5.00

random_range(x1,x2) คือ ฟังก์ชั่นนี้จะทำการสุ่มค่าระหว่าง x1 ถึง x2 (มีเลขทศนิยม)
x1 คือ ค่ากำหนดเริ่มต้น
x2 คือ ค่ากำหนดสิ้นสุด
เช่น random_range(2,5) หมายความว่า จะสุ่มค่าระหว่าง 2 ถึง 5 ค่าที่ได้จะประมาณนี้ 2.25, 3.19, 4.49, 5.00

การกำหนดให้สุ่มค่าเป็นเลขจำนวนเต็ม(ไม่มีทศนิยม) โดยใช้ [ i ] เพิ่มไปหน้าฟังก์ชั่นดังนี้
irandom(x)
irandom_range(x1,x2)


ตัวอย่างการเขียนคำสั่ง
instance_create(random(150),random(200),obj_enemy)
หมายความว่า สร้างศัตรูที่ตำแหน่ง x ระหว่าง 0 ถึง 150, ที่ตำแหน่ง y ระหว่าง 0 ถึง 200

ขอบคุณที่เข้ามาชมครับ ผิดพลาดประการใดช่วยบอกด้วยนะครับจะได้รีบแก้ไข

======================================================
update 001
คำสั่ง Choose คือคำสั่งที่ใช้สุ่มค่าโดยการกำหนดค่าแบบตายตัว อาร์กิวเมนต์ที่ใช้ในการแทนค่าจะได้ 16 ตัวเท่านั้น
Code:
choose(val0, val1, val2... val15);

ตัวอย่างเช่น :
การสุ่มตัวเลข
Code:
hp = choose(5, 8, 15, 32, 40);
อธิบายโค้ด : ต้องการ hp มีการสุ่มค่าดังนี้ 5, 8, 15, 32, 40

การสุ่มอักษรหรือคำ
Code:
name = choose("John", "Steven", "Graham", "Jack", "Emily", "Tina", "Jill", "Helen");
อธิบายโค้ด : ต้องการ name มีการสุ่มค่าดังนี้ John, Steven, Graham, Jack, Emily, Tina

การสุ่มภาพ
Code:
sprite_index = choose(spr_Cactus, spr_Flower, spr_Tree, spr_Shrub);
อธิบายโค้ด : ต้องการแสดงภาพ (sprite) โดยมีการสุ่มดังนี้ กระบองเพชร, ดอกไม้, ต้นไม้

อ้างอิง : GML
=====================================================
Example:
Code:
a = random(12.4);
b = random_range(23, 192);
c = irandom(32);
d = irandom_range(43, 993);
e = choose("one", "two", "three", "four", "five");
This post was last modified: 06-29-2015, 01:34 PM by gol-a-khung.
  
Users browsing this thread: 1 Guest(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.