Common

ฟังก์ชันอรรถประโยชน์ที่ใช้ได้ทั้ง Client และ Server ผ่าน `ESX.*` เช่น config, labels, random และ timeout

Common (ESX.*)

หน้านี้รวบรวมฟังก์ชัน utility ใน namespace ESX.*

ฟังก์ชันกลุ่มนี้ใช้ได้ทั้ง Client-side และ Server-side

ก่อนเริ่ม (แนะนำ)

  • ตั้งค่าการเรียกใช้ Framework ให้ถูกต้องตาม Framework Usage

  • ใช้ฟังก์ชันให้ตรงกับบริบทของฝั่งที่เรียกใช้งาน

circle-info

ฟังก์ชันส่วนใหญ่เป็น utility ทั่วไป และไม่ขึ้นกับ state ของผู้เล่น

แนวทางที่แนะนำ

  • ฟังก์ชัน Count* ใช้ได้ทั้ง Client และ Server

  • ใช้ Count* สำหรับแสดงผลหรือสรุปข้อมูล (เช่น HUD/เมนู/Log)

  • หลีกเลี่ยงการเรียกฟังก์ชันเดิมซ้ำ ๆ ใน loop ถี่ ๆ โดยไม่จำเป็น

  • ใช้ DumpTable เฉพาะตอน debug และปิด/ลบ log ก่อนขึ้นโปรดักชัน

  • เก็บ timeout id จาก SetTimeout เสมอ หากต้องยกเลิกภายหลัง


ESX.GetConfig

ดึงตาราง config ของ Framework ทั้งหมด

รูปแบบการใช้งาน (Syntax)

ค่าที่ส่งคืน (Returns)

Type
Description

table

ตาราง config ทั้งหมดของ Framework

ตัวอย่างการใช้งาน (Example)


ESX.GetWeaponList

ดึงรายการอาวุธทั้งหมดจาก config

รูปแบบการใช้งาน (Syntax)

ค่าที่ส่งคืน (Returns)

Type
Description

table

รายการข้อมูลอาวุธทั้งหมด (array)

ตัวอย่างการใช้งาน (Example)


ESX.GetAccountLabel

ดึงชื่อแสดงผล (label) ของบัญชีเงินที่ระบุ

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

name

string

ชื่อบัญชี (เช่น 'money', 'bank')

ค่าที่ส่งคืน (Returns)

Type
Description

string

label ของบัญชี หรือ nil หากไม่พบ/ไม่ถูกต้อง

ตัวอย่างการใช้งาน (Example)


ESX.GetItemLabel

ดึงชื่อแสดงผล (label) ของ Item ที่ระบุ

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

name

string

ชื่อ Item (เช่น 'bread')

ค่าที่ส่งคืน (Returns)

Type
Description

string

label ของ Item หรือ nil หากไม่พบ/ไม่ถูกต้อง

ตัวอย่างการใช้งาน (Example)


ESX.CountOnline

นับจำนวนผู้เล่นออนไลน์ทั้งหมด

รูปแบบการใช้งาน (Syntax)

ค่าที่ส่งคืน (Returns)

Type
Description

number

จำนวนผู้เล่นออนไลน์ทั้งหมด

circle-info

เรียกใช้งานได้ทั้ง Client และ Server หากนำไปใช้เป็นเงื่อนไขสำคัญ (เช่น permission/สิทธิ์/กันโกง) แนะนำให้ยืนยันผลฝั่ง Server

ตัวอย่างการใช้งาน (Example)


ESX.CountGroup

นับจำนวนผู้เล่นออนไลน์ใน permission group ที่ระบุ

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

name

string

ชื่อกลุ่ม (เช่น 'admin', 'mod')

ค่าที่ส่งคืน (Returns)

Type
Description

number

จำนวนผู้เล่นออนไลน์ใน group นั้น

circle-info

เรียกใช้งานได้ทั้ง Client และ Server หากนำไปใช้เป็นเงื่อนไขสำคัญ แนะนำให้ยืนยันผลฝั่ง Server

ตัวอย่างการใช้งาน (Example)


ESX.CountJob

นับจำนวนผู้เล่นออนไลน์ตาม job ที่ระบุ

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

name

string

ชื่อ job (เช่น 'police', 'ambulance')

ค่าที่ส่งคืน (Returns)

Type
Description

number

จำนวนผู้เล่นออนไลน์ใน job นั้น

circle-info

เรียกใช้งานได้ทั้ง Client และ Server หากนำไปใช้เป็นเงื่อนไขสำคัญ แนะนำให้ยืนยันผลฝั่ง Server

ตัวอย่างการใช้งาน (Example)


ESX.HashString

แปลง string เป็นรูปแบบ GTA input hash สำหรับใช้กับข้อความในเกม

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

str

string

string ที่ต้องการแปลง

ค่าที่ส่งคืน (Returns)

Type
Description

string

string ที่อยู่ในรูป ~INPUT_XXXXXX~

ตัวอย่างการใช้งาน (Example)


ESX.GetRandomString

สุ่มสตริงแบบ alphanumeric ตามความยาวที่กำหนด

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

length

number

ความยาวของสตริงที่ต้องการสุ่ม

ค่าที่ส่งคืน (Returns)

Type
Description

string

สตริงที่สุ่มได้

ตัวอย่างการใช้งาน (Example)


ESX.GetRandomCoords

สุ่มพิกัดภายในรัศมีจากจุดศูนย์กลางที่กำหนด

ค่า z จะถูกยึดตามพิกัดศูนย์กลาง

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

center

vector3

พิกัดศูนย์กลาง

radius

number

รัศมีสูงสุด

ค่าที่ส่งคืน (Returns)

Type
Description

vector3

พิกัดที่สุ่มได้ภายในรัศมี

ตัวอย่างการใช้งาน (Example)


ESX.DumpTable

แปลง table เป็น string ที่อ่านง่าย เพื่อใช้ debug

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

tbl

table

table ที่ต้องการ dump

indentLevel

number

(ไม่บังคับ) ระดับการเยื้องเริ่มต้น (ค่าเริ่มต้น: 0)

ค่าที่ส่งคืน (Returns)

Type
Description

string

string ที่จัดรูปแบบแล้ว

ตัวอย่างการใช้งาน (Example)


ESX.SetTimeout

ตั้งเวลาเรียก callback ภายหลัง และยกเลิกได้

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

msec

number

เวลาหน่วง (ms)

cb

function

ฟังก์ชันที่จะถูกเรียกเมื่อครบเวลา

ค่าที่ส่งคืน (Returns)

Type
Description

number

timeout id (ใช้ร่วมกับ ClearTimeout)

ตัวอย่างการใช้งาน (Example)

circle-info

หากสร้าง timeout ไว้หลายจุด แนะนำให้เก็บ id ไว้ในตัวแปร/ตาราง เพื่อยกเลิกให้ถูกตัว


ESX.ClearTimeout

ยกเลิก timeout ที่ตั้งไว้ด้วย ESX.SetTimeout

รูปแบบการใช้งาน (Syntax)

พารามิเตอร์ (Parameters)

Name
Type
Description

id

number

timeout id ที่ได้จาก SetTimeout

ตัวอย่างการใช้งาน (Example)

Last updated