Usage

Sebelum Menggunakaan di External Script.

kamu bisa menggunakan dua cara untuk menginisiasikan script fmid_poly. 1. via exports, pada script lua kamu, kamu bisa buat variable seperti berikut ini, poly = exports.fmid_poly:newpoly() 2. atau kamu juga bisa menggunakan sistem import, pada fxmanifest script kamu bisa menambahkan line berikut ini, (diatas inisiasi script client kamu), client_script '@fmid_poly/new_client.lua'

Create Zone

poly.create(id, tipe, data, dalam, luar)

Remove Zone

poly.remove(id)

Box Zone

menggunakan lib.zone.poly
menggunakan PolyZone

Pembuatan BoxZone

poly.create('testbox', 'box', {
    point = vec3(-377.0, -105.0, 39.0),
    length = 5,
    width = 5,
    data = {
        minZ = 32.0,
        maxZ = 42.0,
        debugPoly = true,
        meta = 'aiueo'
    }
}, function(data)
    print('didalam', data.meta) -- return value 'didalam aiueo'
end, function(data)
    print('diluar', data.meta) -- return value 'diluar aiueo'
end)

Tipe Data

id = string, sebagai key jadi tanpa spasi dan lowercase.

tipe = string, 'box' / 'circle' / 'poly'

data = table, (point: vec3 lokasi, length int, width int, data = minZ int/float (z terbawah), maxZ int/float (z teratas), debugPoly? boolean zone debug, meta? table any)

dalam = function, dengan parameter data yang di set yang ada minZ/maxZ/debugPoly/meta. fungsi ini akan terpanggil ketika player berada di dalam zona ini.

luar = function, dengan parameter data yang di set yang ada minZ/maxZ/debugPoly/meta. fungsi ini akan terpanggil ketika player keluar dari zona tersebut.

Circle Zone

menggunakan lib.zone.sphere
menggunakan PolyZone

Pembuatan CircleZone/SphereZone

poly.create('testcircle', 'circle', {
    point = vec3(-384.0, -110.0, 39.0),
    radius = 2.0,
    data = {
        debugPoly = true,
        meta = 'aiueo'
    }
}, function(data)
    print('dalam', data.meta)
end, function(data)
    print('luar', data.meta)
end)

Tipe Data

id = string, sebagai key jadi tanpa spasi dan lowercase.

tipe = string, 'box' / 'circle' / 'poly'

data = table, (point: vec3 lokasi, length int, width int, radius: float diameter/besaran dari suatu lingkaran data: debugPoly? boolean zone debug, meta? table any)

dalam = function, dengan parameter data yang di set yang ada debugPoly/meta. fungsi ini akan terpanggil ketika player berada di dalam zona ini.

luar = function, dengan parameter data yang di set yang ada debugPoly/meta. fungsi ini akan terpanggil ketika player keluar dari zona tersebut.

Poly Zone

menggunakan lib.zone.poly
menggunakan PolyZone

Pembuatan PolyZone

poly.create('testpoly', 'poly', {
    points = {
        vec2(-327.968506, -754.323853),
        vec2(-328.217621, -772.322876),
        vec2(-341.650238, -772.769043),
        vec2(-341.587158, -754.268921),
        vec2(-341.587158, -754.268921),
    },
    data = {
        minZ = 28,
        maxZ = 48,
        debugPoly = true,
        meta = 'aiueo'
    },
}, function(data)
    print('didalam', data.meta) -- return value 'didalam aiueo'
end, function(data)
    print('diluar', data.meta) -- return value 'diluar aiueo'
end)

Tipe Data

id = string, sebagai key jadi tanpa spasi dan lowercase.

tipe = string, 'box' / 'circle' / 'poly'

data = table, (points: table berisi kumpulan sudut vec2, data: minZ int/float (z terbawah), maxZ int/float (z teratas), debugPoly? boolean zone debug, meta? table any)

dalam = function, dengan parameter data yang di set yang ada minZ/maxZ/debugPoly/meta. fungsi ini akan terpanggil ketika player berada di dalam zona ini.

luar = function, dengan parameter data yang di set yang ada minZ/maxZ/debugPoly/meta. fungsi ini akan terpanggil ketika player keluar dari zona tersebut.

Last updated