@infernus/core 0.12.7 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.d.ts +3102 -2310
- package/dist/bundle.js +4 -4
- package/dist/bundle.mjs +4 -4
- package/package.json +3 -2
package/dist/bundle.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import Pi from"node:util";import Si from"iconv-lite";function ct(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}function Ei(e,t){const i={},a=Object.keys(e);for(let n=0;n<a.length;n++){const r=a[n],s=e[r];i[t(s,r,e)]=s}return i}function He(e){return e==="__proto__"}function Te(e,t){const i=Object.keys(t);for(let a=0;a<i.length;a++){const n=i[a];if(He(n))continue;const r=t[n],s=e[n];Array.isArray(r)?Array.isArray(s)?e[n]=Te(s,r):e[n]=Te([],r):ct(r)?ct(s)?e[n]=Te(s,r):e[n]=Te({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function yi(e,t){const i={...e};for(let a=0;a<t.length;a++){const n=t[a];delete i[n]}return i}const Ai=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function Ni(e){return Array.from(e.match(Ai)??[])}function Ye(e){return Ni(e).map(i=>i.toLowerCase()).join("_")}function Ci(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function _t(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function ht(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(ht).join(",");const t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}function Di(e){if(Array.isArray(e))return e.map(_t);if(typeof e=="symbol")return[e];e=ht(e);const t=[],i=e.length;if(i===0)return t;let a=0,n="",r="",s=!1;for(e.charCodeAt(0)===46&&(t.push(""),a++);a<i;){const l=e[a];r?l==="\\"&&a+1<i?(a++,n+=e[a]):l===r?r="":n+=l:s?l==='"'||l==="'"?r=l:l==="]"?(s=!1,t.push(n),n=""):n+=l:l==="["?(s=!0,n&&(t.push(n),n="")):l==="."?n&&(t.push(n),n=""):n+=l,a++}return n&&t.push(n),t}function ze(e,t,i){if(e==null)return i;switch(typeof t){case"string":{if(He(t))return i;const a=e[t];return a===void 0?Ci(t)?ze(e,Di(t),i):i:a}case"number":case"symbol":{typeof t=="number"&&(t=_t(t));const a=e[t];return a===void 0?i:a}default:{if(Array.isArray(t))return Ti(e,t,i);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),He(t))return i;const a=e[t];return a===void 0?i:a}}}function Ti(e,t,i){if(t.length===0)return i;let a=e;for(let n=0;n<t.length;n++){if(a==null||He(t[n]))return i;a=a[t[n]]}return a===void 0?i:a}const{encode:vi,decode:Li,encodingExists:wi}=Si;function Ri(e){return e instanceof Buffer}class A{constructor(t,i){this.defaultLocale=t,this.locales=i,this.defaultLocale=Ye(t),this.locales=A.snakeLocaleKeys(i)}addLocales=t=>{Te(this.locales,A.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=yi(this.locales,t)};$t=(t,i,a=this.defaultLocale)=>{const n=this.locales[Ye(a)],r=ze(this.locales[this.defaultLocale],t),s=ze(n,t,r);if(s===void 0)throw new Error(`[i18n]: cannot find ${a}["${t}"]`);if(typeof s!="string")return JSON.stringify(s);let l=s;return i&&i.length&&(l=Pi.format(l,...i)),l};static isValidate(t){if(!wi(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,i){return A.isValidate(i),[...vi(t,i),0]}static decodeFromBuf(t,i="utf8"){A.isValidate(i);const a=Ri(t)?t:Buffer.from(A.getValidStr(t));return Li(a,i)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return Ei(t,(i,a)=>Ye(a))}static convertSpecialChar(t){const i={\u00E0:"\x97",\u00E1:"\x98",\u00E2:"\x99",\u00E4:"\x9A",\u00C0:"\x80",\u00C1:"\x81",\u00C2:"\x82",\u00C4:"\x83",\u00E8:"\x9D",\u00E9:"\x9E",\u00EA:"\x9F",\u00EB:"\xA0",\u00C8:"\x86",\u00C9:"\x87",\u00CA:"\x88",\u00CB:"\x89",\u00EC:"\xA1",\u00ED:"\xA2",\u00EE:"\xA3",\u00EF:"\xA4",\u00CC:"\x8A",\u00CD:"\x8B",\u00CE:"\x8C",\u00CF:"\x8D",\u00F2:"\xA5",\u00F3:"\xA6",\u00F4:"\xA7",\u00F6:"\xA8",\u00D2:"\x8E",\u00D3:"\x8F",\u00D4:"\x90",\u00D6:"\x91",\u00F9:"\xA9",\u00FA:"\xAA",\u00FB:"\xAB",\u00FC:"\xAC",\u00D9:"\x92",\u00DA:"\x93",\u00DB:"\x94",\u00DC:"\x95",\u00F1:"\xAE",\u00D1:"\xAD","\xA1":"@","\xBF":"\xAF","`":"\xB1"};return t.split("").map(a=>a in i?i[a]:a).join("")}}var ut=(e=>(e[e.DOWNLOAD_REQUEST_EMPTY=0]="DOWNLOAD_REQUEST_EMPTY",e[e.DOWNLOAD_REQUEST_MODEL_FILE=1]="DOWNLOAD_REQUEST_MODEL_FILE",e[e.DOWNLOAD_REQUEST_TEXTURE_FILE=2]="DOWNLOAD_REQUEST_TEXTURE_FILE",e))(ut||{}),mt=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(mt||{}),$e=(e=>(e[e.MSGBOX=0]="MSGBOX",e[e.INPUT=1]="INPUT",e[e.LIST=2]="LIST",e[e.PASSWORD=3]="PASSWORD",e[e.TABLIST=4]="TABLIST",e[e.TABLIST_HEADERS=5]="TABLIST_HEADERS",e))($e||{}),pt=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(pt||{}),ft=(e=>(e[e.NO_ACTION=0]="NO_ACTION",e[e.DISCONNECT_ASAP=1]="DISCONNECT_ASAP",e[e.DISCONNECT_ASAP_SILENTLY=2]="DISCONNECT_ASAP_SILENTLY",e[e.DISCONNECT_ON_NO_ACK=3]="DISCONNECT_ON_NO_ACK",e[e.REQUESTED_CONNECTION=4]="REQUESTED_CONNECTION",e[e.HANDLING_CONNECTION_REQUEST=5]="HANDLING_CONNECTION_REQUEST",e[e.UNVERIFIED_SENDER=6]="UNVERIFIED_SENDER",e[e.SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET=7]="SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET",e[e.CONNECTED=8]="CONNECTED",e))(ft||{}),d=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_ID",e[e.NPC_ID=-1]="NPC_ID",e[e.PATH_ID=-1]="PATH_ID",e[e.NODE_ID=-1]="NODE_ID",e[e.RECORD_ID=-1]="RECORD_ID",e[e.VEHICLE_ID=65535]="VEHICLE_ID",e[e.ACTOR_ID=65535]="ACTOR_ID",e[e.OBJECT_ID=65535]="OBJECT_ID",e[e.MENU=-1]="MENU",e[e.TEXT_DRAW=65535]="TEXT_DRAW",e[e.PLAYER_TEXT_DRAW=65535]="PLAYER_TEXT_DRAW",e[e.GANG_ZONE=-1]="GANG_ZONE",e[e._3DTEXT_ID=65535]="_3DTEXT_ID",e[e.PLAYER_3DTEXT_ID=65535]="PLAYER_3DTEXT_ID",e))(d||{}),It=(e=>(e[e.NONE=0]="NONE",e[e.ACTION=1]="ACTION",e[e.CROUCH=2]="CROUCH",e[e.FIRE=4]="FIRE",e[e.SPRINT=8]="SPRINT",e[e.SECONDARY_ATTACK=16]="SECONDARY_ATTACK",e[e.JUMP=32]="JUMP",e[e.LOOK_RIGHT=64]="LOOK_RIGHT",e[e.HANDBRAKE=128]="HANDBRAKE",e[e.LOOK_LEFT=256]="LOOK_LEFT",e[e.SUBMISSION=512]="SUBMISSION",e[e.LOOK_BEHIND=512]="LOOK_BEHIND",e[e.WALK=1024]="WALK",e[e.ANALOG_UP=2048]="ANALOG_UP",e[e.ANALOG_DOWN=4096]="ANALOG_DOWN",e[e.ANALOG_LEFT=8192]="ANALOG_LEFT",e[e.ANALOG_RIGHT=16384]="ANALOG_RIGHT",e[e.YES=65536]="YES",e[e.NO=131072]="NO",e[e.CTRL_BACK=262144]="CTRL_BACK",e[e.KEY_UP=-128]="KEY_UP",e[e.KEY_DOWN=128]="KEY_DOWN",e[e.KEY_LEFT=-128]="KEY_LEFT",e[e.KEY_RIGHT=128]="KEY_RIGHT",e))(It||{}),B=(e=>(e[e.MAX_PLAYER_NAME=24]="MAX_PLAYER_NAME",e[e.MAX_PLAYERS=1e3]="MAX_PLAYERS",e[e.MAX_VEHICLES=2e3]="MAX_VEHICLES",e[e.MAX_ACTORS=1e3]="MAX_ACTORS",e[e.MAX_OBJECTS=1e3]="MAX_OBJECTS",e[e.MAX_GANG_ZONES=1024]="MAX_GANG_ZONES",e[e.MAX_TEXT_DRAWS=2048]="MAX_TEXT_DRAWS",e[e.MAX_PLAYER_TEXT_DRAWS=256]="MAX_PLAYER_TEXT_DRAWS",e[e.MAX_MENUS=128]="MAX_MENUS",e[e.MAX_MENU_ROW=12]="MAX_MENU_ROW",e[e.MAX_MENU_COL=2]="MAX_MENU_COL",e[e.MAX_3DTEXT_GLOBAL=1024]="MAX_3DTEXT_GLOBAL",e[e.MAX_3DTEXT_PLAYER=1024]="MAX_3DTEXT_PLAYER",e[e.MAX_PICKUPS=4096]="MAX_PICKUPS",e[e.MAX_PLAYER_ATTACHED_OBJECTS=10]="MAX_PLAYER_ATTACHED_OBJECTS",e[e.MAX_CHATBUBBLE_LENGTH=144]="MAX_CHATBUBBLE_LENGTH",e[e.NPC_MAX_NODES=64]="NPC_MAX_NODES",e[e.MAX_NPCS=1e3]="MAX_NPCS",e))(B||{}),gt=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(gt||{}),Pt=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(Pt||{}),St=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(St||{}),Ue=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.WALK=1]="WALK",e[e.JOG=2]="JOG",e[e.SPRINT=3]="SPRINT",e[e.DRIVE=4]="DRIVE",e[e.AUTO=5]="AUTO",e))(Ue||{}),ve=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.NPC=2]="NPC",e[e.ACTOR=4]="ACTOR",e[e.VEHICLE=8]="VEHICLE",e[e.OBJECT=16]="OBJECT",e[e.POBJECT_ORIG=32]="POBJECT_ORIG",e[e.POBJECT_TARG=64]="POBJECT_TARG",e[e.MAP=128]="MAP",e[e.ALL=255]="ALL",e))(ve||{}),fe=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(fe||{}),Et=(e=>(e[e._32x32=10]="_32x32",e[e._64x32=20]="_64x32",e[e._64x64=30]="_64x64",e[e._128x32=40]="_128x32",e[e._128x64=50]="_128x64",e[e._128x128=60]="_128x128",e[e._256x32=70]="_256x32",e[e._256x64=80]="_256x64",e[e._256x128=90]="_256x128",e[e._256x256=100]="_256x256",e[e._512x64=110]="_512x64",e[e._512x128=120]="_512x128",e[e._512x256=130]="_512x256",e[e._512x512=140]="_512x512",e))(Et||{}),yt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(yt||{}),At=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(At||{}),Nt=(e=>(e[e.NORMAL=0]="NORMAL",e[e.BOXING=1]="BOXING",e[e.KUNGFU=2]="KUNGFU",e[e.KNEEHEAD=3]="KNEEHEAD",e[e.GRABKICK=4]="GRABKICK",e[e.ELBOW=5]="ELBOW",e))(Nt||{}),Ct=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(Ct||{}),Le=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Le||{}),Dt=(e=>(e[e.BEHINDCAR=3]="BEHINDCAR",e[e.FOLLOWPED=4]="FOLLOWPED",e[e.SNIPER=7]="SNIPER",e[e.ROCKETLAUNCHER=8]="ROCKETLAUNCHER",e[e.FIXED=15]="FIXED",e[e._1STPERSON=16]="_1STPERSON",e[e.CAM_ON_A_STRING=18]="CAM_ON_A_STRING",e[e.BEHINDBOAT=22]="BEHINDBOAT",e[e.CAMERA=46]="CAMERA",e[e.ROCKETLAUNCHER_HS=51]="ROCKETLAUNCHER_HS",e[e.AIMWEAPON=53]="AIMWEAPON",e[e.AIMWEAPON_FROMCAR=55]="AIMWEAPON_FROMCAR",e[e.DW_HELI_CHASE=56]="DW_HELI_CHASE",e[e.DW_CAM_MAN=57]="DW_CAM_MAN",e[e.DW_BIRDY=58]="DW_BIRDY",e[e.DW_PLANE_SPOTTER=59]="DW_PLANE_SPOTTER",e[e.DW_PLANECAM1=62]="DW_PLANECAM1",e[e.DW_PLANECAM2=63]="DW_PLANECAM2",e[e.DW_PLANECAM3=64]="DW_PLANECAM3",e))(Dt||{}),We=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(We||{}),we=(e=>(e[e.NONE=0]="NONE",e[e.ONFOOT=1]="ONFOOT",e[e.DRIVER=2]="DRIVER",e[e.PASSENGER=3]="PASSENGER",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.ENTER_VEHICLE_DRIVER=5]="ENTER_VEHICLE_DRIVER",e[e.ENTER_VEHICLE_PASSENGER=6]="ENTER_VEHICLE_PASSENGER",e[e.WASTED=7]="WASTED",e[e.SPAWNED=8]="SPAWNED",e[e.SPECTATING=9]="SPECTATING",e))(we||{}),Tt=(e=>(e[e.TORSO=3]="TORSO",e[e.GROIN=4]="GROIN",e[e.LEFT_ARM=5]="LEFT_ARM",e[e.RIGHT_ARM=6]="RIGHT_ARM",e[e.LEFT_LEG=7]="LEFT_LEG",e[e.RIGHT_LEG=8]="RIGHT_LEG",e[e.HEAD=9]="HEAD",e))(Tt||{}),vt=(e=>(e[e.Spine=1]="Spine",e[e.Head=2]="Head",e[e.LeftUpperArm=3]="LeftUpperArm",e[e.RightUpperArm=4]="RightUpperArm",e[e.LeftHand=5]="LeftHand",e[e.RightHand=6]="RightHand",e[e.LeftThigh=7]="LeftThigh",e[e.RightThigh=8]="RightThigh",e[e.LeftFoot=9]="LeftFoot",e[e.RightFoot=10]="RightFoot",e[e.RightCalf=11]="RightCalf",e[e.LeftCalf=12]="LeftCalf",e[e.LeftForearm=13]="LeftForearm",e[e.RightForearm=14]="RightForearm",e[e.LeftClavicle=15]="LeftClavicle",e[e.RightClavicle=16]="RightClavicle",e[e.Neck=17]="Neck",e[e.Jaw=18]="Jaw",e))(vt||{}),Lt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Lt||{}),Je=(e=>(e[e.NONE=0]="NONE",e[e.DUCK=1]="DUCK",e[e.USEJETPACK=2]="USEJETPACK",e[e.ENTER_VEHICLE=3]="ENTER_VEHICLE",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.DANCE1=5]="DANCE1",e[e.DANCE2=6]="DANCE2",e[e.DANCE3=7]="DANCE3",e[e.DANCE4=8]="DANCE4",e[e.HANDSUP=10]="HANDSUP",e[e.USECELLPHONE=11]="USECELLPHONE",e[e.SITTING=12]="SITTING",e[e.STOPUSECELLPHONE=13]="STOPUSECELLPHONE",e[e.DRINK_BEER=20]="DRINK_BEER",e[e.SMOKE_CIGGY=21]="SMOKE_CIGGY",e[e.DRINK_WINE=22]="DRINK_WINE",e[e.DRINK_SPRUNK=23]="DRINK_SPRUNK",e[e.CUFFED=24]="CUFFED",e[e.CARRY=25]="CARRY",e[e.PISSING=68]="PISSING",e))(Je||{}),Re=(e=>(e[e.FONT_0=0]="FONT_0",e[e.FONT_1=1]="FONT_1",e[e.FONT_2=2]="FONT_2",e[e.FONT_3=3]="FONT_3",e[e.SPRITE_DRAW=4]="SPRITE_DRAW",e[e.MODEL_PREVIEW=5]="MODEL_PREVIEW",e[e.BANK=0]="BANK",e[e.STANDARD=1]="STANDARD",e[e.SPACEAGE=2]="SPACEAGE",e[e.HEADING=3]="HEADING",e[e.BECKETT_REGULAR=0]="BECKETT_REGULAR",e[e.AHARONI_BOLD=1]="AHARONI_BOLD",e[e.BANK_GOTHIC=2]="BANK_GOTHIC",e[e.PRICEDOWN=3]="PRICEDOWN",e[e.SPRITE=4]="SPRITE",e[e.PREVIEW=5]="PREVIEW",e))(Re||{}),wt=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(wt||{}),Rt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=-1]="NONE",e[e.SPOILER=0]="SPOILER",e[e.HOOD=1]="HOOD",e[e.ROOF=2]="ROOF",e[e.SIDESKIRT=3]="SIDESKIRT",e[e.LAMPS=4]="LAMPS",e[e.NITRO=5]="NITRO",e[e.EXHAUST=6]="EXHAUST",e[e.WHEELS=7]="WHEELS",e[e.STEREO=8]="STEREO",e[e.HYDRAULICS=9]="HYDRAULICS",e[e.FRONT_BUMPER=10]="FRONT_BUMPER",e[e.REAR_BUMPER=11]="REAR_BUMPER",e[e.VENT_RIGHT=12]="VENT_RIGHT",e[e.VENT_LEFT=13]="VENT_LEFT",e[e.FRONT_BULLBAR=14]="FRONT_BULLBAR",e[e.REAR_BULLBAR=15]="REAR_BULLBAR",e))(Rt||{}),bt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(bt||{}),Ot=(e=>(e[e.SIZE=1]="SIZE",e[e.FRONTSEAT=2]="FRONTSEAT",e[e.REARSEAT=3]="REARSEAT",e[e.PETROLCAP=4]="PETROLCAP",e[e.WHEELSFRONT=5]="WHEELSFRONT",e[e.WHEELSREAR=6]="WHEELSREAR",e[e.WHEELSMID=7]="WHEELSMID",e[e.FRONT_BUMPER_Z=8]="FRONT_BUMPER_Z",e[e.REAR_BUMPER_Z=9]="REAR_BUMPER_Z",e))(Ot||{}),Gt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.REASON_VEHICLE=49]="REASON_VEHICLE",e[e.REASON_DROWN=53]="REASON_DROWN",e[e.REASON_COLLISION=54]="REASON_COLLISION",e[e.REASON_SPLAT=54]="REASON_SPLAT",e[e.REASON_CONNECT=200]="REASON_CONNECT",e[e.REASON_DISCONNECT=200]="REASON_DISCONNECT",e[e.REASON_SUICIDE=255]="REASON_SUICIDE",e[e.FIST=0]="FIST",e[e.BRASSKNUCKLE=1]="BRASSKNUCKLE",e[e.GOLFCLUB=2]="GOLFCLUB",e[e.NIGHTSTICK=3]="NIGHTSTICK",e[e.KNIFE=4]="KNIFE",e[e.BAT=5]="BAT",e[e.SHOVEL=6]="SHOVEL",e[e.POOLSTICK=7]="POOLSTICK",e[e.KATANA=8]="KATANA",e[e.CHAINSAW=9]="CHAINSAW",e[e.DILDO=10]="DILDO",e[e.DILDO2=11]="DILDO2",e[e.VIBRATOR=12]="VIBRATOR",e[e.VIBRATOR2=13]="VIBRATOR2",e[e.FLOWER=14]="FLOWER",e[e.CANE=15]="CANE",e[e.GRENADE=16]="GRENADE",e[e.TEARGAS=17]="TEARGAS",e[e.MOLTOV=18]="MOLTOV",e[e.COLT45=22]="COLT45",e[e.SILENCED=23]="SILENCED",e[e.DEAGLE=24]="DEAGLE",e[e.SHOTGUN=25]="SHOTGUN",e[e.SAWEDOFF=26]="SAWEDOFF",e[e.SHOTGSPA=27]="SHOTGSPA",e[e.UZI=28]="UZI",e[e.MP5=29]="MP5",e[e.AK47=30]="AK47",e[e.M4=31]="M4",e[e.TEC9=32]="TEC9",e[e.RIFLE=33]="RIFLE",e[e.SNIPER=34]="SNIPER",e[e.ROCKETLAUNCHER=35]="ROCKETLAUNCHER",e[e.HEATSEEKER=36]="HEATSEEKER",e[e.FLAMETHROWER=37]="FLAMETHROWER",e[e.MINIGUN=38]="MINIGUN",e[e.SATCHEL=39]="SATCHEL",e[e.BOMB=40]="BOMB",e[e.SPRAYCAN=41]="SPRAYCAN",e[e.FIREEXTINGUISHER=42]="FIREEXTINGUISHER",e[e.CAMERA=43]="CAMERA",e[e.NIGHT_VISION_GOGGLES=44]="NIGHT_VISION_GOGGLES",e[e.THERMAL_GOGGLES=45]="THERMAL_GOGGLES",e[e.PARACHUTE=46]="PARACHUTE",e))(Gt||{}),Ft=(e=>(e[e.PISTOL=0]="PISTOL",e[e.PISTOL_SILENCED=1]="PISTOL_SILENCED",e[e.DESERT_EAGLE=2]="DESERT_EAGLE",e[e.SHOTGUN=3]="SHOTGUN",e[e.SAWNOFF_SHOTGUN=4]="SAWNOFF_SHOTGUN",e[e.SPAS12_SHOTGUN=5]="SPAS12_SHOTGUN",e[e.MICRO_UZI=6]="MICRO_UZI",e[e.MP5=7]="MP5",e[e.AK47=8]="AK47",e[e.M4=9]="M4",e[e.SNIPERRIFLE=10]="SNIPERRIFLE",e))(Ft||{}),Bt=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.VEHICLE=2]="VEHICLE",e[e.OBJECT=3]="OBJECT",e[e.PLAYER_OBJECT=4]="PLAYER_OBJECT",e))(Bt||{}),xt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NO_BULLETS=0]="NO_BULLETS",e[e.LAST_BULLET=1]="LAST_BULLET",e[e.MORE_BULLETS=2]="MORE_BULLETS",e[e.RELOADING=3]="RELOADING",e))(xt||{}),Qe=(e=>(e[e.VEHICLE=49]="VEHICLE",e[e.HELICOPTERBLADES=50]="HELICOPTERBLADES",e[e.EXPLOSION=51]="EXPLOSION",e[e.DROWN=53]="DROWN",e[e.COLLISION=54]="COLLISION",e[e.CONNECT=200]="CONNECT",e[e.DISCONNECT=201]="DISCONNECT",e[e.SUICIDE=255]="SUICIDE",e))(Qe||{}),Vt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Vt||{}),Mt=(e=>(e[e.CIRCLE=0]="CIRCLE",e[e.CYLINDER=1]="CYLINDER",e[e.SPHERE=2]="SPHERE",e[e.RECTANGLE=3]="RECTANGLE",e[e.CUBOID=4]="CUBOID",e[e.POLYGON=5]="POLYGON",e))(Mt||{}),v=(e=>(e[e.OBJECT_SD=300]="OBJECT_SD",e[e.OBJECT_DD=0]="OBJECT_DD",e[e.PICKUP_SD=200]="PICKUP_SD",e[e.CP_SD=200]="CP_SD",e[e.RACE_CP_SD=200]="RACE_CP_SD",e[e.MAP_ICON_SD=200]="MAP_ICON_SD",e[e.TEXT_3D_LABEL_SD=200]="TEXT_3D_LABEL_SD",e[e.ACTOR_SD=200]="ACTOR_SD",e))(v||{}),E=(e=>(e[e.OBJECT=0]="OBJECT",e[e.PICKUP=1]="PICKUP",e[e.CP=2]="CP",e[e.RACE_CP=3]="RACE_CP",e[e.MAP_ICON=4]="MAP_ICON",e[e.TEXT_3D_LABEL=5]="TEXT_3D_LABEL",e[e.AREA=6]="AREA",e[e.ACTOR=7]="ACTOR",e))(E||{}),m=(e=>(e[e.MAX_TYPES=8]="MAX_TYPES",e[e.MAX_AREA_TYPES=5]="MAX_AREA_TYPES",e[e.MAX_OBJECT_TYPES=3]="MAX_OBJECT_TYPES",e[e.INVALID_ID=0]="INVALID_ID",e))(m||{}),je=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(je||{}),K=(e=>(e[e.AREA_ID=0]="AREA_ID",e[e.ATTACHED_OBJECT=1]="ATTACHED_OBJECT",e[e.ATTACHED_PLAYER=2]="ATTACHED_PLAYER",e[e.ATTACHED_VEHICLE=3]="ATTACHED_VEHICLE",e[e.ATTACH_OFFSET_X=4]="ATTACH_OFFSET_X",e[e.ATTACH_OFFSET_Y=5]="ATTACH_OFFSET_Y",e[e.ATTACH_OFFSET_Z=6]="ATTACH_OFFSET_Z",e[e.ATTACH_R_X=7]="ATTACH_R_X",e[e.ATTACH_R_Y=8]="ATTACH_R_Y",e[e.ATTACH_R_Z=9]="ATTACH_R_Z",e[e.ATTACH_X=10]="ATTACH_X",e[e.ATTACH_Y=11]="ATTACH_Y",e[e.ATTACH_Z=12]="ATTACH_Z",e[e.COLOR=13]="COLOR",e[e.DRAW_DISTANCE=14]="DRAW_DISTANCE",e[e.EXTRA_ID=15]="EXTRA_ID",e[e.HEALTH=16]="HEALTH",e[e.INTERIOR_ID=17]="INTERIOR_ID",e[e.INVULNERABLE=18]="INVULNERABLE",e[e.MAX_X=19]="MAX_X",e[e.MAX_Y=20]="MAX_Y",e[e.MAX_Z=21]="MAX_Z",e[e.MIN_X=22]="MIN_X",e[e.MIN_Y=23]="MIN_Y",e[e.MIN_Z=24]="MIN_Z",e[e.MODEL_ID=25]="MODEL_ID",e[e.MOVE_R_X=26]="MOVE_R_X",e[e.MOVE_R_Y=27]="MOVE_R_Y",e[e.MOVE_R_Z=28]="MOVE_R_Z",e[e.MOVE_SPEED=29]="MOVE_SPEED",e[e.MOVE_X=30]="MOVE_X",e[e.MOVE_Y=31]="MOVE_Y",e[e.MOVE_Z=32]="MOVE_Z",e[e.NEXT_X=33]="NEXT_X",e[e.NEXT_Y=34]="NEXT_Y",e[e.NEXT_Z=35]="NEXT_Z",e[e.PLAYER_ID=36]="PLAYER_ID",e[e.PRIORITY=37]="PRIORITY",e[e.ROTATION=38]="ROTATION",e[e.R_X=39]="R_X",e[e.R_Y=40]="R_Y",e[e.R_Z=41]="R_Z",e[e.SIZE=42]="SIZE",e[e.STREAM_DISTANCE=43]="STREAM_DISTANCE",e[e.STYLE=44]="STYLE",e[e.SYNC_ROTATION=45]="SYNC_ROTATION",e[e.TEST_LOS=46]="TEST_LOS",e[e.TYPE=47]="TYPE",e[e.WORLD_ID=48]="WORLD_ID",e[e.X=49]="X",e[e.Y=50]="Y",e[e.Z=51]="Z",e))(K||{}),kt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(kt||{}),qe=(e=>(e[e.SIZE_32x32=10]="SIZE_32x32",e[e.SIZE_64x32=20]="SIZE_64x32",e[e.SIZE_64x64=30]="SIZE_64x64",e[e.SIZE_128x32=40]="SIZE_128x32",e[e.SIZE_128x64=50]="SIZE_128x64",e[e.SIZE_128x128=60]="SIZE_128x128",e[e.SIZE_256x32=70]="SIZE_256x32",e[e.SIZE_256x64=80]="SIZE_256x64",e[e.SIZE_256x128=90]="SIZE_256x128",e[e.SIZE_256x256=100]="SIZE_256x256",e[e.SIZE_512x64=110]="SIZE_512x64",e[e.SIZE_512x128=120]="SIZE_512x128",e[e.SIZE_512x256=130]="SIZE_512x256",e[e.SIZE_512x512=140]="SIZE_512x512",e))(qe||{});const Ht=-1,bi=-1,Oi=-1,Gi=-1,Fi=0,Bi=-1e3,xi=-1e3,Vi=-1e3,Mi=0,Ut=32,ki=300,Hi=!0,Ke=1,Ui=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),Wi=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),ji=(e,t,i,a,n,r=!0,s=100,l=0,o=-1,c=-1,_=v.ACTOR_SD,u=-1,I=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,i,a,n,r,s,l,o,c,_,u,I),Ki=e=>samp.callNative("DestroyDynamicActor","i",e),Xi=e=>!!samp.callNative("IsValidDynamicActor","i",e),Zi=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),Yi=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),zi=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),$i=(e,t,i,a,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,i,a,n,r,s,l,o),Ji=e=>samp.callNative("ClearDynamicActorAnimations","i",e),Qi=e=>{const[t,i]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:i}},qi=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),ea=e=>{const[t,i,a,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},ta=(e,t,i,a)=>samp.callNative("SetDynamicActorPos","ifff",e,t,i,a),ia=e=>{const[t,i]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:i}},aa=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),na=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),ra=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),sa=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),la=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),oa=e=>{const[t,i,a=0,n=0,r=0,s=0,l=0,o=0,c]=samp.callNative("GetDynamicActorAnimation","iSSFIIIIIii",e,32,32);return{animLib:t,animName:i,fDelta:a,loop:n,lockX:r,lockY:s,freeze:l,time:o,ret:c}},da=(e,t,i,a=-1,n=-1,r=-1,s=0)=>samp.callNative("CreateDynamicCircle","fffiiii",e,t,i,a,n,r,s),ca=(e,t,i,a,n,r=-1,s=-1,l=-1,o=0)=>samp.callNative("CreateDynamicCylinder","fffffiiii",e,t,i,a,n,r,s,l,o),_a=(e,t,i,a,n=-1,r=-1,s=-1,l=0)=>samp.callNative("CreateDynamicSphere","ffffiiii",e,t,i,a,n,r,s,l),ha=(e,t,i,a,n=-1,r=-1,s=-1,l=0)=>samp.callNative("CreateDynamicRectangle","ffffiiii",e,t,i,a,n,r,s,l),ua=(e,t,i,a,n,r,s=-1,l=-1,o=-1,c=0)=>samp.callNative("CreateDynamicCuboid","ffffffiiii",e,t,i,a,n,r,s,l,o,c),ma=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=-1,n=-1,r=-1,s=0)=>samp.callNative("CreateDynamicPolygon","affiiiii",e,t,i,e.length,a,n,r,s),pa=e=>samp.callNative("DestroyDynamicArea","i",e),fa=e=>!!samp.callNative("IsValidDynamicArea","i",e),Ia=e=>samp.callNative("GetDynamicAreaType","i",e),ga=e=>{const[t,i]=samp.callNative("GetDynamicPolygonPoints","iAi",e,Wt(e));return{points:t,ret:i}},Wt=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),Pa=(e,t,i=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,i),Sa=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),Ea=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),ya=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),Aa=e=>{const[t,i]=samp.callNative("GetPlayerDynamicAreas","iAi",e,jt(e));return{areas:t,ret:i}},jt=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),Na=(e,t,i,a)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,i,a),Ca=(e,t,i)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,i),Da=(e,t,i,a,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,i,a,n,r,s),Ta=(e,t,i,a,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,i,a,n,r),va=(e,t,i)=>{const[a,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,i,Kt(e,t,i));return{areas:a,ret:n}},Kt=(e,t,i)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,i),La=(e,t,i,a,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,i,a,n,r,Xt(e,t,i,a,n,r));return{areas:s,ret:l}},Xt=(e,t,i,a,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,i,a,n,r),wa=(e,t,i=je.DYNAMIC,a=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,i,a,n,r,s),Ra=(e,t,i=0,a=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,i,a,n),ba=(e,t,i=0,a=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,i,a,n),Oa=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),Ga=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),Fa=(e,t,i,a,n=-1,r=-1,s=-1,l=v.CP_SD,o=-1,c=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,i,a,n,r,s,l,o,c),Ba=e=>samp.callNative("DestroyDynamicCP","i",e),Zt=e=>!!samp.callNative("IsValidDynamicCP","i",e),xa=(e,t,i)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,i),Va=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),Ma=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),ka=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),Ha=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,i);return{val:a,ret:n}},Ua=(e,t,i,a)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,i,a),Wa=(e,t,i)=>samp.callNative("Streamer_GetIntData","iii",e,t,i),ja=(e,t,i,a)=>samp.callNative("Streamer_SetIntData","iiii",e,t,i,a),Ka=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,i,Yt(e,t,i));return{arrayData:a,ret:n}},Xa=(e,t,i,a)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,i,a,a.length),Za=(e,t,i,a)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,i,a),Ya=(e,t,i,a)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,i,a),za=(e,t,i,a)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,i,a),Yt=(e,t,i)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,i),$a=e=>samp.callNative("Streamer_GetUpperBound","i",e);var Xe=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(Xe||{});const Ja=(e,t,i,a,n,r=-1,s=-1,l=-1,o=v.MAP_ICON_SD,c=0,_=-1,u=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,i,a,n,r,s,l,o,c,_,u),Qa=e=>samp.callNative("DestroyDynamicMapIcon","i",e),qa=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),en=(e,t,i,a,n,r,s,l=v.OBJECT_SD,o=v.OBJECT_DD,c=[-1],_=[-1],u=[-1],I=[-1],P=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,i,a,n,r,s,l,o,c,_,u,I,P,c.length,_.length,u.length,I.length),tn=(e,t,i,a,n,r=v.PICKUP_SD,s=[-1],l=[-1],o=[-1],c=[-1],_=0)=>samp.callNative("CreateDynamicPickupEx","iiffffaaaaiiiii",e,t,i,a,n,r,s,l,o,c,_,s.length,l.length,o.length,c.length),an=(e,t,i,a,n=v.CP_SD,r=[-1],s=[-1],l=[-1],o=[-1],c=0)=>samp.callNative("CreateDynamicCPEx","fffffaaaaiiiii",e,t,i,a,n,r,s,l,o,c,r.length,s.length,l.length,o.length),nn=(e,t,i,a,n,r,s,l,o=v.RACE_CP_SD,c=[-1],_=[-1],u=[-1],I=[-1],P=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,i,a,n,r,s,l,o,c,_,u,I,P,c.length,_.length,u.length,I.length),rn=(e,t,i,a,n,r=Xe.LOCAL,s=v.MAP_ICON_SD,l=[-1],o=[-1],c=[-1],_=[-1],u=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,i,a,n,r,s,l,o,c,_,u,l.length,o.length,c.length,_.length),sn=(e,t,i,a=[-1],n=[-1],r=[-1],s=0)=>samp.callNative("CreateDynamicCircleEx","fffaaaiiii",e,t,i,a,n,r,a.length,n.length,r.length,s),ln=(e,t,i,a,n,r=[-1],s=[-1],l=[-1],o=0)=>samp.callNative("CreateDynamicCylinderEx","fffffaaaiiii",e,t,i,a,n,r,s,l,r.length,s.length,l.length,o),on=(e,t,i,a,n=[-1],r=[-1],s=[-1],l=0)=>samp.callNative("CreateDynamicSphereEx","ffffaaaiiii",e,t,i,a,n,r,s,n.length,r.length,s.length,l),dn=(e,t,i,a,n=[-1],r=[-1],s=[-1],l=0)=>samp.callNative("CreateDynamicRectangleEx","ffffaaaiiii",e,t,i,a,n,r,s,n.length,r.length,s.length,l),cn=(e,t,i,a,n,r,s=[-1],l=[-1],o=[-1],c=0)=>samp.callNative("CreateDynamicCuboidEx","ffffffaaaiiii",e,t,i,a,n,r,s,l,o,s.length,l.length,o.length,c),_n=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=[-1],n=[-1],r=[-1],s=0)=>samp.callNative("CreateDynamicPolygonEx","affiaaaiiii",e,t,i,e.length,a,n,r,a.length,n.length,r.length,s),hn=(e,t,i,a,n,r=!0,s=100,l=v.ACTOR_SD,o=[0],c=[-1],_=[-1],u=[-1],I=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,i,a,n,r,s,l,o,c,_,u,I,o.length,c.length,_.length,u.length),un=(e,t,i,a,n,r=3)=>{const[s,l]=samp.callNative("Streamer_GetDistanceToItem","fffiiFi",e,t,i,a,n,r);return{distance:s,ret:l}},mn=(e,t,i,a)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,i,a),pn=(e,t,i)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,i),fn=(e,t,i,a=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,i,a,a.length),In=(e,t,i)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,i),gn=(e,t,i)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,i),Pn=(e,t,i)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,i),Sn=(e,t,i=Ke)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,i),En=(e,t,i=Ke)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,i),yn=(e,t=Ke)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),An=(e,t=Ke)=>samp.callNative("Streamer_CountItems","ii",e,t),Nn=(e,t,i,a,n=Ut,r=ki,s=Ht)=>{const[l=[],o=0]=samp.callNative("Streamer_GetNearbyItems","fffiAifi",e,t,i,a,n,r,s);return l.slice(0,o)},Cn=(e,t,i=Ut)=>{const[a=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,i);return a.slice(0,n)},Dn=(e,t)=>{const[i,a,n,r]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},Tn=(e,t,i,a,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,i,a,n),vn=(e,t)=>{const[i,a,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},Ln=(e,t,i,a,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,i,a,n),wn=(e,t,i,a,n,r,s,l=Ht,o=bi,c=Oi,_=v.OBJECT_SD,u=v.OBJECT_DD,I=Gi,P=Fi)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,i,a,n,r,s,l,o,c,_,u,I,P),Rn=e=>samp.callNative("DestroyDynamicObject","i",e),bn=e=>!!samp.callNative("IsValidDynamicObject","i",e),On=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},Gn=(e,t,i,a)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,i,a),Fn=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:i,rz:a,ret:n}},Bn=(e,t,i,a)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,i,a),xn=(e,t,i,a,n,r=Bi,s=xi,l=Vi)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,i,a,n,r,s,l),Vn=e=>samp.callNative("StopDynamicObject","i",e),Mn=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),kn=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),Hn=(e,t,i,a,n,r,s,l,o=Hi)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,i,a,n,r,s,l,o),Un=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,i,a,n,r,s,l),Wn=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,i,a,n,r,s,l),jn=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),Kn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),Xn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),Zn=(e,t,i,a,n,r=Mi)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,i,a,n,r),Yn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),zn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),$n=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),Jn=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),Qn=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),qn=(e,t,i,a,n,r=-1,s=-1,l=-1,o=v.PICKUP_SD,c=-1,_=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,i,a,n,r,s,l,o,c,_),er=e=>!!samp.callNative("DestroyDynamicPickup","i",e),tr=e=>!!samp.callNative("IsValidDynamicPickup","i",e),ir=(e,t,i,a,n,r,s,l,o=-1,c=-1,_=-1,u=v.RACE_CP_SD,I=-1,P=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,i,a,n,r,s,l,o,c,_,u,I,P),ar=e=>samp.callNative("DestroyDynamicRaceCP","i",e),nr=(e,t,i)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,i),rr=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),sr=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),lr=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),or=()=>samp.callNative("Streamer_GetTickRate",""),dr=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),cr=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),_r=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),hr=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),ur=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),zt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),$t=(e,t,i=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,i),mr=e=>samp.callNative("Streamer_GetChunkSize","i",e),pr=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),fr=e=>samp.callNative("Streamer_GetMaxItems","i",e),Ir=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),Jt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),Qt=(e,t,i=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,i),qt=(e,t=-1)=>{const[i,a]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:i,ret:a}},ei=(e,t,i=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,i),gr=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",m.MAX_TYPES);return{priority:e,ret:t}},Pr=e=>samp.callNative("Streamer_SetTypePriority","ai",e,m.MAX_TYPES),Sr=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},Er=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),yr=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},Ar=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Nr=(e,t,i)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,i),Cr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Dr=(e,t,i)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,i),Tr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),vr=(e,t,i)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,i),Lr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),wr=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Rr=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),br=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),Or=()=>samp.callNative("Streamer_ProcessActiveItems",""),Gr=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Fr=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),Br=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),xr=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),Vr=(e,t,i)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,i),Mr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),kr=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},Hr=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),Ur=(e,t,i,a,n=-1,r=-1,s=-1,l=-1,o=!0)=>samp.callNative("Streamer_UpdateEx","ifffiiiii",e,t,i,a,n,r,s,l,o),x=new Map,ti=new Map;function Wr(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function ii(e,t,...i){const{defaultValue:a=!0,name:n,beforeEach:r,afterEach:s,throwOnError:l=!1}=e,o=x.get(n);if(!o||!o.length)return+a;const c=r?r(...i):{},_=[];let u=t;const I=P=>{if(u++,u<o.length){try{P&&Object.assign(c,P);const g={next:I,defaultValue:a,...c},y=o[u](g);return y instanceof Promise?(_.push(y),a):y}catch(g){const y=`executing event [name:${n},index:${u}] error:
|
|
2
|
-
${g}`;if(l)throw{error:g,message:y};console.log(y)}return a}return s&&(_.length?Promise.allSettled(_).then(()=>s(c)):s(c)),a};return Wr(I(),a)}function p(e){const{name:t,identifier:i,isNative:a=!0}=e;if(x.has(t)){const l=`event [name:${t}] error: already defined.`;throw new Error(l)}function n(...l){if(l.length===1&&typeof l[0]=="object"&&l[0].__trigger__){const o=l[0];let c=-1;if(o.skipToNext){const _=x.get(t);if(_&&_.length){const u=_.indexOf(o.skipToNext);u>-1&&(c=u)}}return ii(e,c,...o.args)}return ii(e,-1,...l)}function r(l,o=!1){x.has(t)||x.set(t,[]);const c=x.get(t),_=(o?c.unshift(l):c.push(l))-1;return()=>{const u=x.get(t);if(!u)return;const I=u.length-1,P=I<_?I:_;for(let g=P;g>=0;g--)if(u[g]===l){u.splice(g,1);break}return u.length===0&&x.delete(t),u.length}}const s=[r,n];return a&&(typeof i<"u"&&samp.registerEvent(t,i),samp.on(t,n)),ti.set(t,n),s}function jr(e){return ti.get(e)}function Kr(e){return Object.assign(e,{__trigger__:!0})}const Xr=e=>!!samp.callNative("IsValidNickName","s",e),Zr=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Yr=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),zr=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),$r=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),Jr=e=>!!samp.callNative("IsValidServerRule","s",e),Qr=e=>!!samp.callNative("RemoveServerRule","s",e),qr=e=>{samp.callNative("AllowAdminTeleport","i",e)},es=()=>!!samp.callNative("IsAdminTeleportAllowed",""),ts=e=>{samp.callNative("AllowInteriorWeapons","i",e)},is=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),as=()=>!!samp.callNative("AreAllAnimationsEnabled",""),ns=e=>{samp.callNative("EnableAllAnimations","i",e)},rs=e=>{const[t,i]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:i}},ss=e=>samp.callNative("GetConsoleVarAsInt","s",e),ls=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),os=()=>samp.callNative("GetWeather",""),ds=e=>samp.callNative("GetServerRuleFlags","s",e),cs=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),_s=e=>!!samp.callNative("SetModeRestartTime","f",e),hs=()=>samp.callNativeFloat("GetModeRestartTime",""),us=(e,t,i)=>samp.callNative("GameTextForAll","aii",e,t,i),ms=e=>{samp.callNative("HideGameTextForAll","i",e)},ps=(e,t,i)=>samp.callNative("SendDeathMessage","iii",e,t,i),fs=()=>samp.callNative("GetMaxPlayers",""),et=(e,t,i)=>Math.sqrt(e*e+t*t+i*i),Is=e=>samp.callNative("SetGameModeText","s",e),gs=e=>samp.callNative("ShowNameTags","i",e),Ps=e=>samp.callNative("ShowPlayerMarkers","i",e),Ss=e=>samp.callNative("SetWorldTime","i",e),Es=()=>samp.callNative("GetWorldTime",""),ys=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),As=e=>samp.callNative("SetWeather","i",e),Ns=()=>samp.callNativeFloat("GetGravity",""),Cs=e=>samp.callNative("SetGravity","f",e),Ds=(e,t,i,a,n)=>samp.callNative("CreateExplosion","fffif",e,t,i,a,n),Ts=e=>samp.callNative("EnableZoneNames","i",e),vs=()=>!!samp.callNative("UsePlayerPedAnims",""),Ls=()=>!!samp.callNative("DisableInteriorEnterExits",""),ws=e=>samp.callNative("SetNameTagDrawDistance","f",e),Rs=()=>samp.callNative("DisableNameTagLOS",""),bs=e=>samp.callNative("LimitGlobalChatRadius","f",e),Os=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),Gs=()=>samp.callNative("GetServerTickRate",""),Fs=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),Bs=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),xs=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},Vs=()=>!!samp.callNative("ChatTextReplacementToggled",""),Ms=e=>samp.callNative("GetWeaponSlot","i",e),ks=e=>{const[t,i]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:i}},Hs=()=>samp.callNative("GetAvailableClasses",""),Us=e=>{const t=samp.callNative("GetPlayerClass","iIIFFFFIIIIII",e),[i,a=0,n=0,r=0,s=0,l=0,o=0,c=0,_=0,u=0,I=0,P=0,g]=t;return{teamId:i,modelId:a,spawnX:n,spawnY:r,spawnZ:s,zAngle:l,weapon1:o,weapon1Ammo:c,weapon2:_,weapon2Ammo:u,weapon3:I,weapon3Ammo:P,ret:g}},Ws=(e,t,i,a,n,r,s,l,o,c,_,u,I)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,i,a,n,r,s,l,o,c,_,u,I),js=e=>samp.callNative("SetTeamCount","i",e),Ks=(e,t,i,a,n,r,s,l,o,c,_)=>samp.callNative("AddPlayerClass","iffffiiiiii",e,t,i,a,n,r,s,l,o,c,_),Xs=(e,t,i,a,n,r,s,l,o,c,_,u)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,i,a,n,r,s,l,o,c,_,u),Zs=(e,t,i,a,n,r,s,l,o,c,_,u,I)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,i,a,n,r,s,l,o,c,_,u,I),Ys=e=>!!samp.callNative("SpawnPlayer","i",e),zs=e=>{const[t,i=0,a=0,n=0,r=0,s=0,l=0,o=0,c=0,_=0,u=0,I=0,P]=samp.callNative("GetSpawnInfo","iIIFFFFIIIIII",e);return{teamId:t,modelId:i,spawnX:a,spawnY:n,spawnZ:r,zAngle:s,weapon1:l,weapon1Ammo:o,weapon2:c,weapon2Ammo:_,weapon3:u,weapon3Ammo:I,ret:P}},$s=e=>samp.callNative("NetStats_GetConnectedTime","i",e),Js=e=>samp.callNative("NetStats_MessagesReceived","i",e),Qs=e=>samp.callNative("NetStats_BytesReceived","i",e),qs=e=>samp.callNative("NetStats_MessagesSent","i",e),el=e=>samp.callNative("NetStats_BytesSent","i",e),tl=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),il=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),al=e=>samp.callNative("NetStats_ConnectionStatus","i",e),nl=e=>{const[t,i]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:i}},rl=e=>!!samp.callNative("IsPlayerAdmin","i",e),sl=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),ll=e=>!!samp.callNative("Kick","i",e),ol=e=>!!samp.callNative("Ban","i",e),dl=e=>{const[t,i]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:i}},cl=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},_l=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),hl=e=>samp.callNative("UnBlockIpAddress","s",e),ul=(e,t)=>{const[i,a]=samp.callNative("gpci","iAi",e,41);return{val:A.decodeFromBuf(A.getValidStr(i),t),ret:a}},ml=(e,t,i,a,n)=>samp.callNative("SendClientCheck","iiiii",e,t,i,a,n),pl=()=>{samp.callNative("ClearBanList","")},fl=e=>!!samp.callNative("IsBanned","s",e),Il=e=>samp.callNative("GetPlayerRawIp","i",e),gl=e=>{const[t,i]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:i}},Pl=e=>{const[t,i]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:i}},C=e=>{if(typeof e=="number")return e;if(typeof+e=="number"&&!isNaN(+e))return+e;if(e.charAt(0)==="#")return e.length===4?parseInt(e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2)+e.charAt(3)+e.charAt(3)+"FF",16):e.length===7?parseInt(e.slice(1,e.length)+"FF",16):e.length===9?parseInt(e.slice(1,e.length),16):255;const t=(e.match(/([0-9])+/g)||[]).map(a=>parseInt(a,10));if(t.length!==4&&t.length!==3)return 255;t.length===3?t.push(255):t[3]=t[3]<1?Math.floor(t[3]*255):255;let i=0;return t.reverse().forEach((a,n)=>{a!==0&&(i+=Math.pow(16,n*2)*a)}),i},Sl=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),El=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),yl=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),Al=e=>samp.callNative("GetPlayerWeather","i",e),Nl=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetPlayerWorldBounds","iFFFF",e);return{xMax:t,xMin:i,yMax:a,yMin:n,ret:r}},Cl=e=>samp.callNativeFloat("GetPlayerZAim","i",e),Dl=e=>{const[t=0,i=0,a=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:i,fOffsetZ:a,ret:n}},Tl=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetPlayerRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:n,ret:r}},vl=e=>samp.callNative("GetPlayerDialogID","i",e),Ll=e=>samp.callNative("GetPlayerSpectateID","i",e),wl=e=>samp.callNative("GetPlayerSpectateType","i",e),Rl=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),bl=e=>samp.callNativeFloat("GetPlayerGravity","i",e),Ol=e=>!!samp.callNative("IsPlayerSpawned","i",e),Gl=e=>!!samp.callNative("IsPlayerControllable","i",e),Fl=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),Bl=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),xl=e=>!!samp.callNative("GetPlayerGhostMode","i",e),Vl=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),Ml=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),kl=e=>!!samp.callNative("HidePlayerDialog","i",e),Hl=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),Ul=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),Wl=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),jl=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),Kl=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),Xl=(e,t,i,a)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,i,a),Zl=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Yl=(e,t,i,a)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,i,a),zl=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),$l=e=>!!samp.callNative("IsPlayerNPC","i",e),Jl=(e,t,i,a)=>!!samp.callNative("SetPlayerPos","ifff",e,t,i,a),Ql=(e,t,i,a)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,i,a),ql=e=>{const[t,i,a,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},eo=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),to=e=>{const[t,i]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:i}},io=(e,t,i,a,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,i,a,n),ao=(e,t,i,a)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,i,a),no=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),ro=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),so=e=>samp.callNative("GetPlayerInterior","i",e),lo=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),oo=e=>{const[t,i]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:i}},co=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),_o=e=>{const[t,i]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:i}},ho=(e,t,i)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,i),uo=e=>samp.callNative("GetPlayerAmmo","i",e),mo=e=>samp.callNative("GetPlayerWeaponState","i",e),po=e=>samp.callNative("GetPlayerTargetPlayer","i",e),fo=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},Io=e=>samp.callNative("GetPlayerTeam","i",e),go=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Po=e=>samp.callNative("GetPlayerScore","i",e),So=e=>samp.callNative("GetPlayerDrunkLevel","i",e),Eo=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),yo=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,C(t)),Ao=e=>samp.callNative("GetPlayerColor","i",e),No=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),Co=e=>samp.callNative("GetPlayerSkin","i",e),Do=(e,t,i)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,i),To=e=>!!samp.callNative("ResetPlayerWeapons","i",e),vo=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),Lo=(e,t)=>{const[i,a,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:i,ammo:a,ret:n}},wo=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),Ro=e=>!!samp.callNative("ResetPlayerMoney","i",e),bo=e=>samp.callNative("GetPlayerMoney","i",e),Oo=e=>samp.callNative("GetPlayerState","i",e),Go=e=>samp.callNative("GetPlayerPing","i",e),Fo=e=>samp.callNative("GetPlayerWeapon","i",e),Bo=e=>{const[t,i,a,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:i,leftRight:a,ret:n}},xo=(e,t,i)=>!!samp.callNative("SetPlayerTime","iii",e,t,i),Vo=e=>{const[t,i,a]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:i,ret:a}},Mo=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),ko=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Ho=e=>!!samp.callNative("ForceClassSelection","i",e),Uo=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Wo=e=>samp.callNative("GetPlayerWantedLevel","i",e),jo=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Ko=e=>samp.callNative("GetPlayerFightingStyle","i",e),Xo=(e,t,i,a)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,i,a),Zo=e=>{const[t,i,a,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:i,z:a,ret:n}},Yo=(e,t,i)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,i),zo=(e,t,i,a,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,i,a,n,r,s),$o=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),Jo=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Qo=(e,t,i)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,i),qo=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),ed=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),td=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),id=(e,t,i,a,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,i,a,n,r),ad=e=>{const[t,i,a,n,r,s,l]=samp.callNative("GetPlayerLastShotVectors","iFFFFFF",e);return{fOriginX:t,fOriginY:i,fOriginZ:a,fHitPosX:n,fHitPosY:r,fHitPosZ:s,ret:l}},nd=(e,t,i)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,i),rd=e=>samp.callNative("GetPlayerVehicleID","i",e),sd=e=>samp.callNative("GetPlayerVehicleSeat","i",e),ld=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),od=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),dd=(e,t,i,a,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,i,a,n),cd=(e,t,i,a,n,r,s,l,o,c)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,i,a,n,r,s,l,o,c),_d=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),hd=e=>samp.callNative("GetPlayerAnimationIndex","i",e),ud=e=>samp.callNative("GetPlayerSpecialAction","i",e),md=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),pd=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),fd=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),Id=e=>samp.callNative("GetPlayerVirtualWorld","i",e),gd=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),Pd=e=>samp.callNative("GetPlayerCustomSkin","i",e),Sd=(e,t,i,a,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,i,a,n,r),Ed=(e,t,i)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,i),yd=e=>!!samp.callNative("StopRecordingPlayerData","i",e),Ad=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),Nd=(e,t,i)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,i),Cd=(e,t,i)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,i),Dd=e=>!!samp.callNative("IsPlayerConnected","i",e),Td=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),vd=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),Ld=(e,t,i,a,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,i,a,n),wd=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),Rd=(e,t,i)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,C(i));function bd(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const Od=(e,t,i)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,i),Gd=(e,t,i,a)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,i,a),Fd=(e,t,i,a,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,i,a,n),Bd=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),xd=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},Vd=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:i,z:a,ret:n}},Md=e=>samp.callNative("GetPlayerCameraMode","i",e),kd=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Hd=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),Ud=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Wd=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),jd=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),Kd=(e,t,i,a,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,i,a,n,r,s,l,o),Xd=(e,t,i,a,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,i,a,n,r,s,l,o),Zd=e=>!!samp.callNative("IsPlayerCuffed","i",e),Yd=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),zd=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),$d=e=>samp.callNative("GetActorSkin","i",e),Jd=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Qd=e=>{const[t=0,i=0,a=0,n=0,r=0,s]=samp.callNative("GetActorSpawnInfo","iIFFFF",e);return{skinId:t,fX:i,fY:a,fZ:n,fAngle:r,ret:s}},qd=e=>{const[t=0,i=0,a=0,n=0,r=0,s=0,l]=samp.callNative("GetVehicleSpawnInfo","iFFFFII",e);return{fX:t,fY:i,fZ:a,fRot:n,color1:r,color2:s,ret:l}},ec=(e,t,i,a,n,r,s,l,o=-2,c=-2)=>samp.callNative("SetVehicleSpawnInfo","iiffffiiii",e,t,i,a,n,r,s,l,o,c),tc=e=>{const[t=0,i=0,a]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:i,ret:a}},ic=e=>samp.callNative("GetVehiclePaintjob","i",e),ac=e=>samp.callNative("GetVehicleInterior","i",e),nc=e=>{const[t,i]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:i}},rc=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),sc=e=>samp.callNative("GetVehicleRespawnDelay","i",e),lc=e=>samp.callNative("GetVehicleCab","i",e),oc=e=>samp.callNative("GetVehicleOccupiedTick","i",e),dc=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),cc=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),_c=e=>!!samp.callNative("IsVehicleOccupied","i",e),hc=e=>samp.callNative("GetVehicleRespawnTick","i",e),uc=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),mc=e=>!!samp.callNative("IsVehicleDead","i",e),pc=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),fc=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),Ic=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),gc=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),Pc=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),Sc=e=>samp.callNative("GetVehicleModelCount","i",e),Ec=e=>samp.callNative("GetVehicleLastDriver","i",e),yc=e=>samp.callNative("GetVehicleDriver","i",e),Ac=()=>samp.callNative("GetVehicleModelsUsed",""),Nc=e=>samp.callNative("GetVehicleSirenState","i",e),Cc=e=>samp.callNative("GetVehicleLandingGearState","i",e),Dc=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),Tc=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),vc=e=>{const[t=0,i=0,a=0,n=0,r=0,s=0,l=0,o=0,c=0,_]=samp.callNative("GetVehicleMatrix","iFFFFFFFFF",e);return{rightX:t,rightY:i,rightZ:a,upX:n,upY:r,upZ:s,atX:l,atY:o,atZ:c,ret:_}},ai=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,i,a,n],ret:r}},Lc=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),wc=(e,t,i,a,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,i,a,n,C(r),C(s),l,o),Rc=e=>samp.callNative("DestroyVehicle","i",e),bc=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),Oc=e=>{const[t,i,a,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:i,z:a,ret:n}},Gc=(e,t,i,a)=>!!samp.callNative("SetVehiclePos","ifff",e,t,i,a),Fc=e=>{const[t,i]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:i}},Bc=e=>{const[t,i,a,n]=samp.callNative("GetVehicleRotation","iFFF",e);return{x:t,y:i,z:a,ret:n}},xc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:n,ret:r}},Vc=(e,t,i,a)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,i,a),Mc=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),kc=(e,t,i,a)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,i,a),Hc=()=>samp.callNative("ManualVehicleEngineAndLights",""),Uc=(e,t,i,a,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,i,a,n,r,s,l),Wc=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),jc=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Kc=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,i,a,n),Xc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},Zc=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,i,a,n),Yc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},zc=e=>samp.callNative("SetVehicleToRespawn","i",e),$c=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),Jc=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),Qc=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),qc=(e,t,i)=>samp.callNative("ChangeVehicleColor","iii",e,C(t),C(i)),e_=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),t_=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),i_=e=>{const[t,i]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:i}},a_=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),n_=e=>samp.callNative("DetachTrailerFromVehicle","i",e),r_=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),s_=e=>samp.callNative("GetVehicleTrailer","i",e),l_=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),o_=e=>samp.callNative("GetVehicleModel","i",e),d_=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),c_=e=>samp.callNative("GetVehicleComponentType","i",e),__=e=>samp.callNative("RepairVehicle","i",e),h_=e=>{const[t,i,a,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:i,z:a,ret:n}},u_=(e,t,i,a)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,i,a),m_=(e,t,i,a)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,i,a),p_=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:i,lights:a,tires:n,ret:r}},f_=(e,t,i,a,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,i,a,n),I_=(e,t)=>{const[i,a,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},g_=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),P_=e=>samp.callNative("GetVehicleVirtualWorld","i",e),S_=e=>!!samp.callNative("IsValidVehicle","i",e),E_=(e,t,i,a,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,i,a,n,C(r),C(s)),y_=(e,t,i,a,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,i,a,n,C(r),C(s),l,o),A_=e=>!!samp.callNative("ShowVehicle","i",e),N_=e=>!!samp.callNative("HideVehicle","i",e),C_=e=>!!samp.callNative("IsVehicleHidden","i",e),D_=e=>!!samp.callNative("IsPlayerInModShop","i",e),T_=e=>samp.callNative("GetPlayerSirenState","i",e),v_=e=>samp.callNative("GetPlayerLandingGearState","i",e),L_=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),w_=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),R_=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),ni=e=>samp.callNative("GetVehicleMaxPassengers","i",e),b_=e=>samp.callNative("CountVehicleOccupants","i",e),O_=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),G_=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetPlayerCheckpoint","iFFFF",e);return{fX:t,fY:i,fZ:a,fSize:n,ret:r}},F_=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),B_=e=>{const[t=0,i=0,a=0,n=0,r=0,s=0,l=0,o]=samp.callNative("GetPlayerRaceCheckpoint","iFFFFFFF",e);return{fX:t,fY:i,fZ:a,fNextX:n,fNextY:r,fNextZ:s,fSize:l,ret:o}},x_=e=>!!samp.callNative("IsMenuDisabled","i",e),V_=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),M_=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),k_=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:i,ret:a}},H_=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:i,ret:a}},U_=(e,t)=>{const[i,a]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:i,ret:a}},W_=(e,t,i)=>{const[a,n]=samp.callNative("GetMenuItem","iiiSi",e,t,i,31);return{item:a,ret:n}},j_=(e,t,i,a,n,r)=>samp.callNative("CreateMenu","siffff",e,t,i,a,n,r),K_=e=>samp.callNative("DestroyMenu","i",e),X_=(e,t,i)=>samp.callNative("AddMenuItem","iis",e,t,i),Z_=(e,t,i)=>samp.callNative("SetMenuColumnHeader","iis",e,t,i),Y_=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),z_=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),$_=e=>!!samp.callNative("IsValidMenu","i",e),J_=e=>samp.callNative("DisableMenu","i",e),Q_=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),q_=e=>samp.callNative("GetPlayerMenu","i",e),eh=e=>!!samp.callNative("IsValidGangZone","i",e),th=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),ih=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),ah=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),nh=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),rh=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),sh=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GangZoneGetPos","iFFFF",e);return{fMinX:t,fMinY:i,fMaxX:a,fMaxY:n,ret:r}},lh=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},oh=(e,t,i,a)=>samp.callNative("GangZoneCreate","ffff",e,t,i,a),dh=e=>samp.callNative("GangZoneDestroy","i",e),ch=(e,t,i)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,C(i)),_h=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,C(t)),hh=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),uh=e=>samp.callNative("GangZoneHideForAll","i",e),mh=(e,t,i)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,C(i)),ph=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,C(t)),fh=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),Ih=e=>samp.callNative("GangZoneStopFlashForAll","i",e),gh=(e,t,i,a,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,i,a,n),Ph=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),Sh=(e,t,i)=>samp.callNative("PlayerGangZoneShow","iii",e,t,i),Eh=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),yh=(e,t,i)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,i),Ah=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),Nh=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),Ch=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),Dh=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),Th=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),vh=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),Lh=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),wh=(e,t)=>{const[i=0,a=0,n=0,r=0,s]=samp.callNative("PlayerGangZoneGetPos","iiFFFF",e,t);return{fMinX:i,fMinY:a,fMaxX:n,fMaxY:r,ret:s}},Rh=(e,t,i)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,i)},bh=e=>!!samp.callNative("IsValidTextDraw","i",e),Oh=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),Gh=e=>{const[t,i]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:i}},Fh=(e,t,i)=>{samp.callNative("TextDrawSetPos","iff",e,t,i)},Bh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:i,ret:a}},xh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:i,ret:a}},Vh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:i,ret:a}},Mh=e=>samp.callNative("TextDrawGetColor","i",e),kh=e=>samp.callNative("TextDrawGetBoxColor","i",e),Hh=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Uh=e=>samp.callNative("TextDrawGetShadow","i",e),Wh=e=>samp.callNative("TextDrawGetOutline","i",e),jh=e=>samp.callNative("TextDrawGetFont","i",e),Kh=e=>!!samp.callNative("TextDrawIsBox","i",e),Xh=e=>!!samp.callNative("TextDrawIsProportional","i",e),Zh=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Yh=e=>samp.callNative("TextDrawGetAlignment","i",e),zh=e=>samp.callNative("TextDrawGetPreviewModel","i",e),$h=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("TextDrawGetPreviewRot","iFFFF",e);return{fRotX:t,fRotY:i,fRotZ:a,fZoom:n,ret:r}},Jh=e=>{const[t,i,a]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:i,ret:a}},Qh=(e,t,i)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,i)},qh=(e,t,i)=>samp.callNative("TextDrawCreate","ffa",e,t,i),eu=e=>samp.callNative("TextDrawDestroy","i",e),tu=(e,t,i)=>samp.callNative("TextDrawLetterSize","iff",e,t,i),iu=(e,t,i)=>samp.callNative("TextDrawTextSize","iff",e,t,i),au=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),nu=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,C(t)),ru=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),su=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,C(t)),lu=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),ou=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),du=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,C(t)),cu=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),_u=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),hu=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),uu=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),mu=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),pu=e=>samp.callNative("TextDrawShowForAll","i",e),fu=e=>samp.callNative("TextDrawHideForAll","i",e),Iu=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),gu=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),Pu=(e,t,i,a,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,i,a,n)},Su=(e,t,i)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,C(t),C(i)),Eu=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,C(t))},yu=e=>{samp.callNative("CancelSelectTextDraw","i",e)},Au=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),Nu=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),Cu=(e,t)=>{const[i,a]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:i,ret:a}},Du=(e,t,i,a)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,i,a)},Tu=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},vu=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},Lu=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:i,fY:a,ret:n}},wu=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),Ru=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),bu=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),Ou=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),Gu=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),Fu=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),Bu=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),xu=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),Vu=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Mu=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),ku=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Hu=(e,t)=>{const[i=0,a=0,n=0,r=0]=samp.callNative("PlayerTextDrawGetPreviewRot","iiFFFF",e,t);return{fRotX:i,fRotY:a,fRotZ:n,fZoom:r}},Uu=(e,t)=>{const[i,a,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:i,color2:a,ret:n}},Wu=(e,t,i,a)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,i,a),ju=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Ku=(e,t,i,a)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,i,a),Xu=(e,t,i,a)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,i,a),Zu=(e,t,i)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,i),Yu=(e,t,i)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,C(i)),zu=(e,t,i)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,i),$u=(e,t,i)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,C(i)),Ju=(e,t,i)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,i),Qu=(e,t,i)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,i),qu=(e,t,i)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,C(i)),em=(e,t,i)=>samp.callNative("PlayerTextDrawFont","iii",e,t,i),tm=(e,t,i)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,i),im=(e,t,i)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,i),am=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),nm=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),rm=(e,t,i)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,i),sm=(e,t,i)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,i),lm=(e,t,i,a,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,i,a,n,r),om=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,i,a),dm=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),cm=e=>!!samp.callNative("BeginObjectSelecting","i",e),_m=e=>!!samp.callNative("EndObjectEditing","i",e),hm=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),um=(e,t,i,a,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,i,a,n),mm=(e,t,i,a,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,i,a,n,r,s),pm=(e,t)=>samp.callNative("RedirectDownload","is",e,t),fm=e=>{const[t,i]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},Im=e=>{const[t,i]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},gm=(e,t)=>{const[i=0,a=0,n=0,r=0,s=0,l=0,o=0,c=0,_=0,u=0,I=0,P=0,g=0,y]=samp.callNative("GetPlayerAttachedObject","iiIIFFFFFFFFFII",e,t);return{modelId:i,bone:a,fX:n,fY:r,fZ:s,fRotX:l,fRotY:o,fRotZ:c,fScaleX:_,fScaleY:u,fScaleZ:I,materialColor1:P,materialColor2:g,ret:y}},Pm=(e,t,i,a,n,r,s,l,o,c,_,u,I,P,g)=>samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,i,a,n,r,s,l,o,c,_,u,I,C(P),C(g)),Sm=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),Em=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),ri=e=>!!samp.callNative("IsValidCustomModel","i",e),ym=e=>{if(!ri(e))return null;const[t,i,a]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:i,ret:a}},si=new Map([["AIRPORT",[{n:"thrw_barl_thrw",d:2}]],["ATTRACTORS",[{n:"Stepsit_in",d:1.67},{n:"Stepsit_loop",d:3.33},{n:"Stepsit_out",d:1.67}]],["BAR",[{n:"Barcustom_get",d:3},{n:"Barcustom_loop",d:2},{n:"Barcustom_order",d:3.67},{n:"BARman_idle",d:8.33},{n:"Barserve_bottle",d:3},{n:"Barserve_give",d:2.33},{n:"Barserve_glass",d:3.67},{n:"Barserve_in",d:1.67},{n:"Barserve_loop",d:2.33},{n:"Barserve_order",d:3.67},{n:"dnk_stndF_loop",d:2.33},{n:"dnk_stndM_loop",d:2.33}]],["BASEBALL",[{n:"Bat_1",d:.9},{n:"Bat_2",d:1.13},{n:"Bat_3",d:1.2},{n:"Bat_4",d:1},{n:"Bat_block",d:.47},{n:"Bat_Hit_1",d:.83},{n:"Bat_Hit_2",d:1.07},{n:"Bat_Hit_3",d:1.13},{n:"Bat_IDLE",d:.93},{n:"Bat_M",d:.53},{n:"BAT_PART",d:.53}]],["BD_FIRE",[{n:"BD_Fire1",d:1.83},{n:"BD_Fire2",d:1.67},{n:"BD_Fire3",d:1.83},{n:"BD_GF_Wave",d:5.07},{n:"BD_Panic_01",d:3.33},{n:"BD_Panic_02",d:3.33},{n:"BD_Panic_03",d:3.33},{n:"BD_Panic_04",d:3.33},{n:"BD_Panic_Loop",d:3.33},{n:"Grlfrd_Kiss_03",d:7},{n:"M_smklean_loop",d:5},{n:"Playa_Kiss_03",d:7},{n:"wash_up",d:3}]],["BEACH",[{n:"bather",d:4.2},{n:"Lay_Bac_Loop",d:2.67},{n:"ParkSit_M_loop",d:3.67},{n:"ParkSit_W_loop",d:3.33},{n:"SitnWait_loop_W",d:1.33}]],["benchpress",[{n:"gym_bp_celebrate",d:5},{n:"gym_bp_down",d:1},{n:"gym_bp_getoff",d:8.67},{n:"gym_bp_geton",d:5.33},{n:"gym_bp_up_A",d:2.33},{n:"gym_bp_up_B",d:2.67},{n:"gym_bp_up_smooth",d:1.33}]],["BF_injection",[{n:"BF_getin_LHS",d:1},{n:"BF_getin_RHS",d:1},{n:"BF_getout_LHS",d:1.13},{n:"BF_getout_RHS",d:1.13}]],["BIKED",[{n:"BIKEd_Back",d:.1},{n:"BIKEd_drivebyFT",d:.2},{n:"BIKEd_drivebyLHS",d:.2},{n:"BIKEd_drivebyRHS",d:.2},{n:"BIKEd_Fwd",d:.2},{n:"BIKEd_getoffBACK",d:1.47},{n:"BIKEd_getoffLHS",d:1},{n:"BIKEd_getoffRHS",d:1},{n:"BIKEd_hit",d:.03},{n:"BIKEd_jumponL",d:.97},{n:"BIKEd_jumponR",d:.97},{n:"BIKEd_kick",d:1.07},{n:"BIKEd_Left",d:.1},{n:"BIKEd_passenger",d:.03},{n:"BIKEd_pushes",d:.8},{n:"BIKEd_Ride",d:.03},{n:"BIKEd_Right",d:.1},{n:"BIKEd_shuffle",d:.43},{n:"BIKEd_Still",d:.03}]],["BIKEH",[{n:"BIKEh_Back",d:.1},{n:"BIKEh_drivebyFT",d:.2},{n:"BIKEh_drivebyLHS",d:.2},{n:"BIKEh_drivebyRHS",d:.2},{n:"BIKEh_Fwd",d:.2},{n:"BIKEh_getoffBACK",d:1.7},{n:"BIKEh_getoffLHS",d:.77},{n:"BIKEh_getoffRHS",d:.73},{n:"BIKEh_hit",d:.03},{n:"BIKEh_jumponL",d:1.47},{n:"BIKEh_jumponR",d:1.5},{n:"BIKEh_kick",d:1.07},{n:"BIKEh_Left",d:.13},{n:"BIKEh_passenger",d:.03},{n:"BIKEh_pushes",d:.97},{n:"BIKEh_Ride",d:.03},{n:"BIKEh_Right",d:.13},{n:"BIKEh_Still",d:.03}]],["BIKELEAP",[{n:"bk_blnce_in",d:1.9},{n:"bk_blnce_out",d:1},{n:"bk_jmp",d:.4},{n:"bk_rdy_in",d:.5},{n:"bk_rdy_out",d:.4},{n:"struggle_cesar",d:.47},{n:"struggle_driver",d:.47},{n:"truck_driver",d:.73},{n:"truck_getin",d:2.5}]],["BIKES",[{n:"BIKEs_Back",d:.1},{n:"BIKEs_drivebyFT",d:.2},{n:"BIKEs_drivebyLHS",d:.2},{n:"BIKEs_drivebyRHS",d:.2},{n:"BIKEs_Fwd",d:.2},{n:"BIKEs_getoffBACK",d:2.43},{n:"BIKEs_getoffLHS",d:1.1},{n:"BIKEs_getoffRHS",d:1.1},{n:"BIKEs_hit",d:.03},{n:"BIKEs_jumponL",d:.9},{n:"BIKEs_jumponR",d:.9},{n:"BIKEs_kick",d:1},{n:"BIKEs_Left",d:.1},{n:"BIKEs_passenger",d:.03},{n:"BIKEs_pushes",d:.73},{n:"BIKEs_Ride",d:.03},{n:"BIKEs_Right",d:.1},{n:"BIKEs_Snatch_L",d:.43},{n:"BIKEs_Snatch_R",d:.43},{n:"BIKEs_Still",d:.03}]],["BIKEV",[{n:"BIKEv_Back",d:.17},{n:"BIKEv_drivebyFT",d:.17},{n:"BIKEv_drivebyLHS",d:.23},{n:"BIKEv_drivebyRHS",d:.2},{n:"BIKEv_Fwd",d:.2},{n:"BIKEv_getoffBACK",d:1.7},{n:"BIKEv_getoffLHS",d:.67},{n:"BIKEv_getoffRHS",d:.67},{n:"BIKEv_hit",d:.03},{n:"BIKEv_jumponL",d:.67},{n:"BIKEv_jumponR",d:.67},{n:"BIKEv_kick",d:1},{n:"BIKEv_Left",d:.1},{n:"BIKEv_passenger",d:.03},{n:"BIKEv_pushes",d:.73},{n:"BIKEv_Ride",d:.03},{n:"BIKEv_Right",d:.1},{n:"BIKEv_Still",d:.03}]],["BIKE_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["BLOWJOBZ",[{n:"BJ_Car_End_P",d:4.13},{n:"BJ_Car_End_W",d:3.67},{n:"BJ_Car_Loop_P",d:.67},{n:"BJ_Car_Loop_W",d:.67},{n:"BJ_Car_Start_P",d:2.33},{n:"BJ_Car_Start_W",d:2.33},{n:"BJ_Couch_End_P",d:7.67},{n:"BJ_Couch_End_W",d:7.67},{n:"BJ_Couch_Loop_P",d:2},{n:"BJ_Couch_Loop_W",d:2},{n:"BJ_Couch_Start_P",d:5.33},{n:"BJ_Couch_Start_W",d:5.33},{n:"BJ_Stand_End_P",d:4.87},{n:"BJ_Stand_End_W",d:5.33},{n:"BJ_Stand_Loop_P",d:.67},{n:"BJ_Stand_Loop_W",d:.67},{n:"BJ_Stand_Start_P",d:2},{n:"BJ_Stand_Start_W",d:2}]],["BMX",[{n:"BMX_back",d:.1},{n:"BMX_bunnyhop",d:.33},{n:"BMX_drivebyFT",d:.2},{n:"BMX_driveby_LHS",d:.2},{n:"BMX_driveby_RHS",d:.2},{n:"BMX_fwd",d:.13},{n:"BMX_getoffBACK",d:1.37},{n:"BMX_getoffLHS",d:.73},{n:"BMX_getoffRHS",d:.63},{n:"BMX_jumponL",d:.9},{n:"BMX_jumponR",d:.9},{n:"BMX_Left",d:.13},{n:"BMX_pedal",d:.73},{n:"BMX_pushes",d:.8},{n:"BMX_Ride",d:.03},{n:"BMX_Right",d:.13},{n:"BMX_sprint",d:.67},{n:"BMX_still",d:.03}]],["BOMBER",[{n:"BOM_Plant",d:2.67},{n:"BOM_Plant_2Idle",d:1},{n:"BOM_Plant_Crouch_In",d:.8},{n:"BOM_Plant_Crouch_Out",d:.8},{n:"BOM_Plant_In",d:.87},{n:"BOM_Plant_Loop",d:.8}]],["BOX",[{n:"boxhipin",d:6.53},{n:"boxhipup",d:5},{n:"boxshdwn",d:6.1},{n:"boxshup",d:5.2},{n:"bxhipwlk",d:1.5},{n:"bxhwlki",d:.97},{n:"bxshwlk",d:2.5},{n:"bxshwlki",d:.97},{n:"bxwlko",d:.53},{n:"catch_box",d:1.5}]],["BSKTBALL",[{n:"BBALL_def_jump_shot",d:1.17},{n:"BBALL_def_loop",d:1},{n:"BBALL_def_stepL",d:.6},{n:"BBALL_def_stepR",d:.6},{n:"BBALL_Dnk",d:1.4},{n:"BBALL_Dnk_Gli",d:.37},{n:"BBALL_Dnk_Gli_O",d:.37},{n:"BBALL_Dnk_Lnch",d:.2},{n:"BBALL_Dnk_Lnch_O",d:.2},{n:"BBALL_Dnk_Lnd",d:.93},{n:"BBALL_Dnk_O",d:.1},{n:"BBALL_idle",d:2.43},{n:"BBALL_idle2",d:2.67},{n:"BBALL_idle2_O",d:2.67},{n:"BBALL_idleloop",d:.67},{n:"BBALL_idleloop_O",d:.67},{n:"BBALL_idle_O",d:2.43},{n:"BBALL_Jump_Cancel",d:1.07},{n:"BBALL_Jump_Cancel_O",d:1.07},{n:"BBALL_Jump_End",d:.93},{n:"BBALL_Jump_Shot",d:1.67},{n:"BBALL_Jump_Shot_O",d:.67},{n:"BBALL_Net_Dnk_O",d:1.83},{n:"BBALL_pickup",d:1.83},{n:"BBALL_pickup_O",d:1.83},{n:"BBALL_react_miss",d:.8},{n:"BBALL_react_score",d:1.1},{n:"BBALL_run",d:.9},{n:"BBALL_run_O",d:.9},{n:"BBALL_SkidStop_L",d:.5},{n:"BBALL_SkidStop_L_O",d:.5},{n:"BBALL_SkidStop_R",d:.5},{n:"BBALL_SkidStop_R_O",d:.5},{n:"BBALL_walk",d:1.07},{n:"BBALL_WalkStop_L",d:.5},{n:"BBALL_WalkStop_L_O",d:.5},{n:"BBALL_WalkStop_R",d:.5},{n:"BBALL_WalkStop_R_O",d:.5},{n:"BBALL_walk_O",d:1.07},{n:"BBALL_walk_start",d:.2},{n:"BBALL_walk_start_O",d:.2}]],["BUDDY",[{n:"buddy_crouchfire",d:.87},{n:"buddy_crouchreload",d:1.1},{n:"buddy_fire",d:.8},{n:"buddy_fire_poor",d:1.33},{n:"buddy_reload",d:1.3}]],["BUS",[{n:"BUS_close",d:.4},{n:"BUS_getin_LHS",d:.33},{n:"BUS_getin_RHS",d:2.17},{n:"BUS_getout_LHS",d:.8},{n:"BUS_getout_RHS",d:1.87},{n:"BUS_jacked_LHS",d:1.13},{n:"BUS_open",d:1.47},{n:"BUS_open_RHS",d:1.2},{n:"BUS_pullout_LHS",d:.8}]],["CAMERA",[{n:"camcrch_cmon",d:2.33},{n:"camcrch_idleloop",d:2},{n:"camcrch_stay",d:2},{n:"camcrch_to_camstnd",d:1.33},{n:"camstnd_cmon",d:3},{n:"camstnd_idleloop",d:2},{n:"camstnd_lkabt",d:4.33},{n:"camstnd_to_camcrch",d:1},{n:"piccrch_in",d:1.33},{n:"piccrch_out",d:2},{n:"piccrch_take",d:1},{n:"picstnd_in",d:1},{n:"picstnd_out",d:.67},{n:"picstnd_take",d:1}]],["CAR",[{n:"Fixn_Car_Loop",d:5},{n:"Fixn_Car_Out",d:2.33},{n:"flag_drop",d:4.5},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33},{n:"Tyd2car_bump",d:.83},{n:"Tyd2car_high",d:8},{n:"Tyd2car_low",d:6.67},{n:"Tyd2car_med",d:6.67},{n:"Tyd2car_TurnL",d:1},{n:"Tyd2car_TurnR",d:1}]],["CARRY",[{n:"crry_prtial",d:.03},{n:"liftup",d:1.53},{n:"liftup05",d:.63},{n:"liftup105",d:.67},{n:"putdwn",d:1.13},{n:"putdwn05",d:.67},{n:"putdwn105",d:.53}]],["CAR_CHAT",[{n:"carfone_in",d:6},{n:"carfone_loopA",d:4},{n:"carfone_loopA_to_B",d:1},{n:"carfone_loopB",d:5},{n:"carfone_loopB_to_A",d:.67},{n:"carfone_out",d:3},{n:"CAR_Sc1_BL",d:11.67},{n:"CAR_Sc1_BR",d:11.67},{n:"CAR_Sc1_FL",d:11.67},{n:"CAR_Sc1_FR",d:11.67},{n:"CAR_Sc2_FL",d:5},{n:"CAR_Sc3_BR",d:10.83},{n:"CAR_Sc3_FL",d:10.83},{n:"CAR_Sc3_FR",d:10.83},{n:"CAR_Sc4_BL",d:4.4},{n:"CAR_Sc4_BR",d:6.53},{n:"CAR_Sc4_FL",d:10},{n:"CAR_Sc4_FR",d:10},{n:"car_talkm_in",d:1.67},{n:"car_talkm_loop",d:4.33},{n:"car_talkm_out",d:7.33}]],["CASINO",[{n:"cards_in",d:.67},{n:"cards_loop",d:3.33},{n:"cards_lose",d:3.33},{n:"cards_out",d:.67},{n:"cards_pick_01",d:4.67},{n:"cards_pick_02",d:5.33},{n:"cards_raise",d:1.67},{n:"cards_win",d:3},{n:"dealone",d:.8},{n:"manwinb",d:1.5},{n:"manwind",d:1.67},{n:"Roulette_bet",d:2.33},{n:"Roulette_in",d:.67},{n:"Roulette_loop",d:3.67},{n:"Roulette_lose",d:2.67},{n:"Roulette_out",d:.67},{n:"Roulette_win",d:2.33},{n:"Slot_bet_01",d:4.67},{n:"Slot_bet_02",d:2},{n:"Slot_in",d:3.67},{n:"Slot_lose_out",d:4},{n:"Slot_Plyr",d:1.33},{n:"Slot_wait",d:3.67},{n:"Slot_win_out",d:9.33},{n:"wof",d:1.47}]],["CHAINSAW",[{n:"CSAW_1",d:1},{n:"CSAW_2",d:1.03},{n:"CSAW_3",d:.87},{n:"CSAW_G",d:1.17},{n:"CSAW_Hit_1",d:.83},{n:"CSAW_Hit_2",d:1.07},{n:"CSAW_Hit_3",d:1.13},{n:"csaw_part",d:.13},{n:"IDLE_csaw",d:1.5},{n:"WEAPON_csaw",d:1.33},{n:"WEAPON_csawlo",d:1.9}]],["CHOPPA",[{n:"CHOPPA_back",d:.1},{n:"CHOPPA_bunnyhop",d:.33},{n:"CHOPPA_drivebyFT",d:.2},{n:"CHOPPA_driveby_LHS",d:.2},{n:"CHOPPA_driveby_RHS",d:.2},{n:"CHOPPA_fwd",d:.2},{n:"CHOPPA_getoffBACK",d:1.27},{n:"CHOPPA_getoffLHS",d:.73},{n:"CHOPPA_getoffRHS",d:.63},{n:"CHOPPA_jumponL",d:.7},{n:"CHOPPA_jumponR",d:.8},{n:"CHOPPA_Left",d:.13},{n:"CHOPPA_pedal",d:.73},{n:"CHOPPA_Pushes",d:.8},{n:"CHOPPA_ride",d:.03},{n:"CHOPPA_Right",d:.13},{n:"CHOPPA_sprint",d:.67},{n:"CHOPPA_Still",d:.03}]],["CLOTHES",[{n:"CLO_Buy",d:2.07},{n:"CLO_In",d:4},{n:"CLO_Out",d:2.67},{n:"CLO_Pose_Hat",d:3.33},{n:"CLO_Pose_In",d:3.13},{n:"CLO_Pose_In_O",d:4},{n:"CLO_Pose_Legs",d:3.33},{n:"CLO_Pose_Loop",d:6},{n:"CLO_Pose_Out",d:4},{n:"CLO_Pose_Out_O",d:4},{n:"CLO_Pose_Shoes",d:3.33},{n:"CLO_Pose_Torso",d:3.33},{n:"CLO_Pose_Watch",d:3.33}]],["COACH",[{n:"COACH_inL",d:2.17},{n:"COACH_inR",d:2.2},{n:"COACH_opnL",d:1.2},{n:"COACH_opnR",d:1.2},{n:"COACH_outL",d:1.73},{n:"COACH_outR",d:1.83}]],["COLT45",[{n:"2guns_crouchfire",d:.8},{n:"colt45_crouchfire",d:.8},{n:"colt45_crouchreload",d:1},{n:"colt45_fire",d:.73},{n:"colt45_fire_2hands",d:.87},{n:"colt45_reload",d:.93},{n:"sawnoff_reload",d:.93}]],["COP_AMBIENT",[{n:"Copbrowse_in",d:5},{n:"Copbrowse_loop",d:2.33},{n:"Copbrowse_nod",d:4},{n:"Copbrowse_out",d:2.67},{n:"Copbrowse_shake",d:1.83},{n:"Coplook_in",d:1.33},{n:"Coplook_loop",d:2.67},{n:"Coplook_nod",d:5.33},{n:"Coplook_out",d:.67},{n:"Coplook_shake",d:4},{n:"Coplook_think",d:3.33},{n:"Coplook_watch",d:2}]],["COP_DVBYZ",[{n:"COP_Dvby_B",d:.83},{n:"COP_Dvby_FT",d:.83},{n:"COP_Dvby_L",d:.83},{n:"COP_Dvby_R",d:.83}]],["CRACK",[{n:"Bbalbat_Idle_01",d:6.67},{n:"Bbalbat_Idle_02",d:10},{n:"crckdeth1",d:2.17},{n:"crckdeth2",d:3},{n:"crckdeth3",d:2.17},{n:"crckdeth4",d:1.67},{n:"crckidle1",d:3.5},{n:"crckidle2",d:3.33},{n:"crckidle3",d:3.33},{n:"crckidle4",d:2.67}]],["CRIB",[{n:"CRIB_Console_Loop",d:3},{n:"CRIB_Use_Switch",d:1.17},{n:"PED_Console_Loop",d:3},{n:"PED_Console_Loose",d:3.5},{n:"PED_Console_Win",d:3.5}]],["DAM_JUMP",[{n:"DAM_Dive_Loop",d:1.33},{n:"DAM_Land",d:2.6},{n:"DAM_Launch",d:2.4},{n:"Jump_Roll",d:3.17},{n:"SF_JumpWall",d:3}]],["DANCING",[{n:"bd_clap",d:3.2},{n:"bd_clap1",d:2.63},{n:"dance_loop",d:1.17},{n:"DAN_Down_A",d:1},{n:"DAN_Left_A",d:1},{n:"DAN_Loop_A",d:2},{n:"DAN_Right_A",d:1},{n:"DAN_Up_A",d:1},{n:"dnce_M_a",d:2.13},{n:"dnce_M_b",d:1.93},{n:"dnce_M_c",d:1.93},{n:"dnce_M_d",d:2.43},{n:"dnce_M_e",d:.9}]],["DEALER",[{n:"DEALER_DEAL",d:3.17},{n:"DEALER_IDLE",d:6.67},{n:"DEALER_IDLE_01",d:5},{n:"DEALER_IDLE_02",d:4},{n:"DEALER_IDLE_03",d:4.67},{n:"DRUGS_BUY",d:3.17},{n:"shop_pay",d:4.67}]],["DILDO",[{n:"DILDO_1",d:.97},{n:"DILDO_2",d:1.1},{n:"DILDO_3",d:1.17},{n:"DILDO_block",d:.47},{n:"DILDO_G",d:1.47},{n:"DILDO_Hit_1",d:.77},{n:"DILDO_Hit_2",d:1.03},{n:"DILDO_Hit_3",d:.9},{n:"DILDO_IDLE",d:.87}]],["DODGE",[{n:"Cover_Dive_01",d:6},{n:"Cover_Dive_02",d:6},{n:"Crushed",d:.93},{n:"Crush_Jump",d:3.17}]],["DOZER",[{n:"DOZER_Align_LHS",d:.97},{n:"DOZER_Align_RHS",d:.93},{n:"DOZER_getin_LHS",d:.43},{n:"DOZER_getin_RHS",d:.43},{n:"DOZER_getout_LHS",d:1.07},{n:"DOZER_getout_RHS",d:.77},{n:"DOZER_Jacked_LHS",d:1.27},{n:"DOZER_Jacked_RHS",d:1.07},{n:"DOZER_pullout_LHS",d:.73},{n:"DOZER_pullout_RHS",d:.7}]],["DRIVEBYS",[{n:"Gang_DrivebyLHS",d:.83},{n:"Gang_DrivebyLHS_Bwd",d:.83},{n:"Gang_DrivebyLHS_Fwd",d:.83},{n:"Gang_DrivebyRHS",d:.83},{n:"Gang_DrivebyRHS_Bwd",d:.83},{n:"Gang_DrivebyRHS_Fwd",d:.83},{n:"Gang_DrivebyTop_LHS",d:.83},{n:"Gang_DrivebyTop_RHS",d:.83}]],["FAT",[{n:"FatIdle",d:1.5},{n:"FatIdle_armed",d:1.53},{n:"FatIdle_Csaw",d:1.5},{n:"FatIdle_Rocket",d:1.6},{n:"FatRun",d:.77},{n:"FatRun_armed",d:.77},{n:"FatRun_Csaw",d:.77},{n:"FatRun_Rocket",d:.77},{n:"FatSprint",d:.6},{n:"FatWalk",d:1.17},{n:"FatWalkstart",d:.2},{n:"FatWalkstart_Csaw",d:.2},{n:"FatWalkSt_armed",d:.2},{n:"FatWalkSt_Rocket",d:.2},{n:"FatWalk_armed",d:1.17},{n:"FatWalk_Csaw",d:1.17},{n:"FatWalk_Rocket",d:1.17},{n:"IDLE_tired",d:1.07}]],["FIGHT_B",[{n:"FightB_1",d:.73},{n:"FightB_2",d:1.1},{n:"FightB_3",d:1.2},{n:"FightB_block",d:.47},{n:"FightB_G",d:1.07},{n:"FightB_IDLE",d:.8},{n:"FightB_M",d:.5},{n:"HitB_1",d:.73},{n:"HitB_2",d:.83},{n:"HitB_3",d:1.43}]],["FIGHT_C",[{n:"FightC_1",d:.83},{n:"FightC_2",d:1.03},{n:"FightC_3",d:1},{n:"FightC_block",d:.47},{n:"FightC_blocking",d:3.2},{n:"FightC_G",d:.77},{n:"FightC_IDLE",d:1},{n:"FightC_M",d:.9},{n:"FightC_Spar",d:3.2},{n:"HitC_1",d:.3},{n:"HitC_2",d:.67},{n:"HitC_3",d:.83}]],["FIGHT_D",[{n:"FightD_1",d:.93},{n:"FightD_2",d:1.87},{n:"FightD_3",d:.9},{n:"FightD_block",d:.47},{n:"FightD_G",d:.83},{n:"FightD_IDLE",d:1.53},{n:"FightD_M",d:1.07},{n:"HitD_1",d:.67},{n:"HitD_2",d:1.83},{n:"HitD_3",d:.97}]],["FIGHT_E",[{n:"FightKick",d:.77},{n:"FightKick_B",d:1.03},{n:"Hit_fightkick",d:.5},{n:"Hit_fightkick_B",d:1.13}]],["FINALE",[{n:"FIN_Climb_In",d:2.9},{n:"FIN_Cop1_ClimbOut2",d:6},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Stomp",d:1},{n:"FIN_Hang_L",d:.57},{n:"FIN_Hang_Loop",d:4},{n:"FIN_Hang_R",d:.57},{n:"FIN_Hang_Slip",d:3.33},{n:"FIN_Jump_On",d:5.6},{n:"FIN_Land_Car",d:.67},{n:"FIN_Land_Die",d:2.37},{n:"FIN_LegsUp",d:1},{n:"FIN_LegsUp_L",d:.5},{n:"FIN_LegsUp_Loop",d:1.33},{n:"FIN_LegsUp_R",d:.5},{n:"FIN_Let_Go",d:.17}]],["FINALE2",[{n:"FIN_Cop1_ClimbOut",d:4},{n:"FIN_Cop1_Fall",d:.43},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Shot",d:2.07},{n:"FIN_Cop1_Swing",d:1.17},{n:"FIN_Cop2_ClimbOut",d:5.33},{n:"FIN_Switch_P",d:3.97},{n:"FIN_Switch_S",d:2.17}]],["FLAME",[{n:"FLAME_fire",d:.8}]],["Flowers",[{n:"Flower_attack",d:.8},{n:"Flower_attack_M",d:1.23},{n:"Flower_Hit",d:.83}]],["FOOD",[{n:"EAT_Burger",d:5},{n:"EAT_Chicken",d:5},{n:"EAT_Pizza",d:5},{n:"EAT_Vomit_P",d:8},{n:"EAT_Vomit_SK",d:8},{n:"FF_Dam_Bkw",d:.67},{n:"FF_Dam_Fwd",d:.67},{n:"FF_Dam_Left",d:.67},{n:"FF_Dam_Right",d:.67},{n:"FF_Die_Bkw",d:.67},{n:"FF_Die_Fwd",d:.67},{n:"FF_Die_Left",d:.67},{n:"FF_Die_Right",d:.67},{n:"FF_Sit_Eat1",d:2.83},{n:"FF_Sit_Eat2",d:2.67},{n:"FF_Sit_Eat3",d:2.67},{n:"FF_Sit_In",d:3},{n:"FF_Sit_In_L",d:2},{n:"FF_Sit_In_R",d:2},{n:"FF_Sit_Look",d:8},{n:"FF_Sit_Loop",d:2.67},{n:"FF_Sit_Out_180",d:2.83},{n:"FF_Sit_Out_L_180",d:1.33},{n:"FF_Sit_Out_R_180",d:1.33},{n:"SHP_Thank",d:1.17},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Lift",d:1.67},{n:"SHP_Tray_Lift_In",d:.5},{n:"SHP_Tray_Lift_Loop",d:8},{n:"SHP_Tray_Lift_Out",d:.5},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:.67},{n:"SHP_Tray_Return",d:1.33}]],["Freeweights",[{n:"gym_barbell",d:2.37},{n:"gym_free_A",d:1.93},{n:"gym_free_B",d:2.33},{n:"gym_free_celebrate",d:3.33},{n:"gym_free_down",d:.57},{n:"gym_free_loop",d:.67},{n:"gym_free_pickup",d:3.17},{n:"gym_free_putdown",d:3.17},{n:"gym_free_up_smooth",d:1}]],["GANGS",[{n:"DEALER_DEAL",d:1.17},{n:"DEALER_IDLE",d:2},{n:"drnkbr_prtl",d:2.67},{n:"drnkbr_prtl_F",d:2.67},{n:"DRUGS_BUY",d:1.17},{n:"hndshkaa",d:4},{n:"hndshkba",d:2.33},{n:"hndshkca",d:3.33},{n:"hndshkcb",d:3.33},{n:"hndshkda",d:2},{n:"hndshkea",d:1},{n:"hndshkfa",d:4.17},{n:"hndshkfa_swt",d:4.17},{n:"Invite_No",d:3.33},{n:"Invite_Yes",d:4.33},{n:"leanIDLE",d:1},{n:"leanIN",d:1},{n:"leanOUT",d:1},{n:"prtial_gngtlkA",d:4},{n:"prtial_gngtlkB",d:6.17},{n:"prtial_gngtlkC",d:7.33},{n:"prtial_gngtlkD",d:3},{n:"prtial_gngtlkE",d:2.83},{n:"prtial_gngtlkF",d:5.17},{n:"prtial_gngtlkG",d:7},{n:"prtial_gngtlkH",d:6},{n:"prtial_hndshk_01",d:1.67},{n:"prtial_hndshk_biz_01",d:2.33},{n:"shake_cara",d:1.67},{n:"shake_carK",d:1.27},{n:"shake_carSH",d:1.5},{n:"smkcig_prtl",d:7.5},{n:"smkcig_prtl_F",d:7.5}]],["GFUNK",[{n:"Dance_B1",d:1.27},{n:"Dance_B2",d:1.27},{n:"Dance_B3",d:1.27},{n:"Dance_B4",d:1.27},{n:"Dance_B5",d:1.27},{n:"Dance_B6",d:1.27},{n:"Dance_B7",d:1.27},{n:"Dance_B8",d:1.27},{n:"Dance_B9",d:1.27},{n:"Dance_B10",d:1.27},{n:"Dance_B11",d:1.27},{n:"Dance_B12",d:1.27},{n:"Dance_B13",d:1.27},{n:"Dance_B14",d:1.27},{n:"Dance_B15",d:1.27},{n:"Dance_B16",d:1.27},{n:"Dance_G1",d:1.27},{n:"Dance_G2",d:1.27},{n:"Dance_G3",d:1.27},{n:"Dance_G4",d:1.27},{n:"Dance_G5",d:1.27},{n:"Dance_G6",d:1.27},{n:"Dance_G7",d:1.27},{n:"Dance_G8",d:1.27},{n:"Dance_G9",d:1.27},{n:"Dance_G10",d:1.27},{n:"Dance_G11",d:1.27},{n:"Dance_G12",d:1.27},{n:"Dance_G13",d:1.27},{n:"Dance_G14",d:1.27},{n:"Dance_G15",d:1.27},{n:"Dance_G16",d:1.27},{n:"dance_loop",d:1.17}]],["GHANDS",[{n:"gsign1",d:4.77},{n:"gsign1LH",d:2.73},{n:"gsign2",d:2.13},{n:"gsign2LH",d:2.33},{n:"gsign3",d:4.67},{n:"gsign3LH",d:2},{n:"gsign4",d:4.17},{n:"gsign4LH",d:4.67},{n:"gsign5",d:6.2},{n:"gsign5LH",d:2},{n:"LHGsign1",d:2},{n:"LHGsign2",d:2},{n:"LHGsign3",d:2},{n:"LHGsign4",d:2},{n:"LHGsign5",d:2},{n:"RHGsign1",d:2},{n:"RHGsign2",d:2},{n:"RHGsign3",d:2},{n:"RHGsign4",d:2},{n:"RHGsign5",d:2}]],["GHETTO_DB",[{n:"GDB_Car2_PLY",d:9.5},{n:"GDB_Car2_SMO",d:9.5},{n:"GDB_Car2_SWE",d:9.5},{n:"GDB_Car_PLY",d:13.33},{n:"GDB_Car_RYD",d:13.33},{n:"GDB_Car_SMO",d:13.33},{n:"GDB_Car_SWE",d:13.33}]],["goggles",[{n:"goggles_put_on",d:.8}]],["GRAFFITI",[{n:"graffiti_Chkout",d:4.67},{n:"spraycan_fire",d:2.33}]],["GRAVEYARD",[{n:"mrnF_loop",d:4.67},{n:"mrnM_loop",d:2.67},{n:"prst_loopa",d:4}]],["GRENADE",[{n:"WEAPON_start_throw",d:.2},{n:"WEAPON_throw",d:.87},{n:"WEAPON_throwu",d:.67}]],["GYMNASIUM",[{n:"GYMshadowbox",d:5.1},{n:"gym_bike_celebrate",d:1.93},{n:"gym_bike_fast",d:.4},{n:"gym_bike_faster",d:.4},{n:"gym_bike_getoff",d:1.67},{n:"gym_bike_geton",d:1.67},{n:"gym_bike_pedal",d:.4},{n:"gym_bike_slow",d:.43},{n:"gym_bike_still",d:1.67},{n:"gym_jog_falloff",d:2.17},{n:"gym_shadowbox",d:5.1},{n:"gym_tread_celebrate",d:2.5},{n:"gym_tread_falloff",d:2},{n:"gym_tread_getoff",d:3.33},{n:"gym_tread_geton",d:2.5},{n:"gym_tread_jog",d:.77},{n:"gym_tread_sprint",d:.67},{n:"gym_tread_tired",d:1.33},{n:"gym_tread_walk",d:1.07},{n:"gym_walk_falloff",d:3.33},{n:"Pedals_fast",d:.4},{n:"Pedals_med",d:.4},{n:"Pedals_slow",d:.43},{n:"Pedals_still",d:.43}]],["HAIRCUTS",[{n:"BRB_Beard_01",d:4.5},{n:"BRB_Buy",d:4.17},{n:"BRB_Cut",d:1.7},{n:"BRB_Cut_In",d:.83},{n:"BRB_Cut_Out",d:1.33},{n:"BRB_Hair_01",d:3.83},{n:"BRB_Hair_02",d:4.5},{n:"BRB_In",d:1.33},{n:"BRB_Loop",d:2.67},{n:"BRB_Out",d:.67},{n:"BRB_Sit_In",d:2.07},{n:"BRB_Sit_Loop",d:7},{n:"BRB_Sit_Out",d:3}]],["HEIST9",[{n:"CAS_G2_GasKO",d:3.33},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43},{n:"Use_SwipeCard",d:1.17}]],["INT_HOUSE",[{n:"BED_In_L",d:3.33},{n:"BED_In_R",d:3.33},{n:"BED_Loop_L",d:3.33},{n:"BED_Loop_R",d:3.33},{n:"BED_Out_L",d:3.33},{n:"BED_Out_R",d:3.33},{n:"LOU_In",d:1.83},{n:"LOU_Loop",d:3.33},{n:"LOU_Out",d:2},{n:"wash_up",d:3}]],["INT_OFFICE",[{n:"FF_Dam_Fwd",d:.67},{n:"OFF_Sit_2Idle_180",d:2.83},{n:"OFF_Sit_Bored_Loop",d:2.83},{n:"OFF_Sit_Crash",d:3.33},{n:"OFF_Sit_Drink",d:4.17},{n:"OFF_Sit_Idle_Loop",d:2.07},{n:"OFF_Sit_In",d:2.77},{n:"OFF_Sit_Read",d:3.33},{n:"OFF_Sit_Type_Loop",d:3.33},{n:"OFF_Sit_Watch",d:2}]],["INT_SHOP",[{n:"shop_cashier",d:6.67},{n:"shop_in",d:1},{n:"shop_lookA",d:2},{n:"shop_lookB",d:3},{n:"shop_loop",d:2},{n:"shop_out",d:1.33},{n:"shop_pay",d:6.67},{n:"shop_shelf",d:2.33}]],["JST_BUISNESS",[{n:"girl_01",d:3.33},{n:"girl_02",d:11.33},{n:"player_01",d:24.83},{n:"smoke_01",d:25}]],["KART",[{n:"KART_getin_LHS",d:.83},{n:"KART_getin_RHS",d:.83},{n:"KART_getout_LHS",d:.83},{n:"KART_getout_RHS",d:.83}]],["KISSING",[{n:"BD_GF_Wave",d:5.07},{n:"gfwave2",d:2.67},{n:"GF_CarArgue_01",d:5},{n:"GF_CarArgue_02",d:5},{n:"GF_CarSpot",d:5},{n:"GF_StreetArgue_01",d:5},{n:"GF_StreetArgue_02",d:5},{n:"gift_get",d:5.33},{n:"gift_give",d:5.33},{n:"Grlfrd_Kiss_01",d:4.17},{n:"Grlfrd_Kiss_02",d:5.77},{n:"Grlfrd_Kiss_03",d:7},{n:"Playa_Kiss_01",d:5},{n:"Playa_Kiss_02",d:5.77},{n:"Playa_Kiss_03",d:7}]],["KNIFE",[{n:"KILL_Knife_Ped_Damage",d:2.23},{n:"KILL_Knife_Ped_Die",d:1.93},{n:"KILL_Knife_Player",d:2.67},{n:"KILL_Partial",d:.03},{n:"knife_1",d:1},{n:"knife_2",d:.93},{n:"knife_3",d:.87},{n:"Knife_4",d:.9},{n:"knife_block",d:.47},{n:"Knife_G",d:.9},{n:"knife_hit_1",d:.57},{n:"knife_hit_2",d:.63},{n:"knife_hit_3",d:1.6},{n:"knife_IDLE",d:1.3},{n:"knife_part",d:.53},{n:"WEAPON_knifeidle",d:1.3}]],["LAPDAN1",[{n:"LAPDAN_D",d:37.73},{n:"LAPDAN_P",d:37.73}]],["LAPDAN2",[{n:"LAPDAN_D",d:46.83},{n:"LAPDAN_P",d:46.83}]],["LAPDAN3",[{n:"LAPDAN_D",d:51.47},{n:"LAPDAN_P",d:51.47}]],["LOWRIDER",[{n:"F_smklean_loop",d:4},{n:"lrgirl_bdbnce",d:2.67},{n:"lrgirl_hair",d:2.33},{n:"lrgirl_hurry",d:2.83},{n:"lrgirl_idleloop",d:2.17},{n:"lrgirl_idle_to_l0",d:2.17},{n:"lrgirl_l0_bnce",d:.67},{n:"lrgirl_l0_loop",d:2},{n:"lrgirl_l0_to_l1",d:3.67},{n:"lrgirl_l12_to_l0",d:2},{n:"lrgirl_l1_bnce",d:.67},{n:"lrgirl_l1_loop",d:2},{n:"lrgirl_l1_to_l2",d:1.33},{n:"lrgirl_l2_bnce",d:.67},{n:"lrgirl_l2_loop",d:1.5},{n:"lrgirl_l2_to_l3",d:1.5},{n:"lrgirl_l345_to_l1",d:1},{n:"lrgirl_l3_bnce",d:.67},{n:"lrgirl_l3_loop",d:2},{n:"lrgirl_l3_to_l4",d:.67},{n:"lrgirl_l4_bnce",d:.67},{n:"lrgirl_l4_loop",d:2.33},{n:"lrgirl_l4_to_l5",d:1},{n:"lrgirl_l5_bnce",d:.83},{n:"lrgirl_l5_loop",d:1.67},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"prtial_gngtlkB",d:1.47},{n:"prtial_gngtlkC",d:1.5},{n:"prtial_gngtlkD",d:2.47},{n:"prtial_gngtlkE",d:3},{n:"prtial_gngtlkF",d:2.67},{n:"prtial_gngtlkG",d:2.67},{n:"prtial_gngtlkH",d:3.33},{n:"RAP_A_Loop",d:2.67},{n:"RAP_B_Loop",d:2.67},{n:"RAP_C_Loop",d:3},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33}]],["MD_CHASE",[{n:"Carhit_Hangon",d:1.53},{n:"Carhit_Tumble",d:2.03},{n:"donutdrop",d:1.5},{n:"Fen_Choppa_L1",d:1.43},{n:"Fen_Choppa_L2",d:1.3},{n:"Fen_Choppa_L3",d:1.3},{n:"Fen_Choppa_R1",d:1.3},{n:"Fen_Choppa_R2",d:1.3},{n:"Fen_Choppa_R3",d:1.3},{n:"Hangon_Stun_loop",d:4.67},{n:"Hangon_Stun_Turn",d:4},{n:"MD_BIKE_2_HANG",d:1.37},{n:"MD_BIKE_Jmp_BL",d:1.1},{n:"MD_BIKE_Jmp_F",d:1},{n:"MD_BIKE_Lnd_BL",d:.9},{n:"MD_BIKE_Lnd_Die_BL",d:1.53},{n:"MD_BIKE_Lnd_Die_F",d:.8},{n:"MD_BIKE_Lnd_F",d:1.17},{n:"MD_BIKE_Lnd_Roll",d:2.7},{n:"MD_BIKE_Lnd_Roll_F",d:1.03},{n:"MD_BIKE_Punch",d:1.83},{n:"MD_BIKE_Punch_F",d:1.83},{n:"MD_BIKE_Shot_F",d:1.33},{n:"MD_HANG_Lnd_Roll",d:2.7},{n:"MD_HANG_Loop",d:1}]],["MD_END",[{n:"END_SC1_PLY",d:5},{n:"END_SC1_RYD",d:5},{n:"END_SC1_SMO",d:5},{n:"END_SC1_SWE",d:5},{n:"END_SC2_PLY",d:9},{n:"END_SC2_RYD",d:9},{n:"END_SC2_SMO",d:9},{n:"END_SC2_SWE",d:9}]],["MEDIC",[{n:"CPR",d:8.33}]],["MISC",[{n:"bitchslap",d:1.17},{n:"BMX_celebrate",d:1.57},{n:"BMX_comeon",d:.77},{n:"bmx_idleloop_01",d:3.33},{n:"bmx_idleloop_02",d:6.67},{n:"bmx_talkleft_in",d:.67},{n:"bmx_talkleft_loop",d:6.67},{n:"bmx_talkleft_out",d:.67},{n:"bmx_talkright_in",d:.67},{n:"bmx_talkright_loop",d:7.33},{n:"bmx_talkright_out",d:.67},{n:"bng_wndw",d:7.33},{n:"bng_wndw_02",d:7.33},{n:"Case_pickup",d:1},{n:"door_jet",d:5.33},{n:"GRAB_L",d:.4},{n:"GRAB_R",d:.4},{n:"Hiker_Pose",d:.33},{n:"Hiker_Pose_L",d:.33},{n:"Idle_Chat_02",d:7.23},{n:"KAT_Throw_K",d:3.33},{n:"KAT_Throw_O",d:3.33},{n:"KAT_Throw_P",d:3.33},{n:"PASS_Rifle_O",d:1.33},{n:"PASS_Rifle_Ped",d:1.33},{n:"PASS_Rifle_Ply",d:1.33},{n:"pickup_box",d:.4},{n:"Plane_door",d:5.33},{n:"Plane_exit",d:5.33},{n:"Plane_hijack",d:5.33},{n:"Plunger_01",d:3.33},{n:"Plyrlean_loop",d:2.67},{n:"plyr_shkhead",d:1.67},{n:"Run_Dive",d:8.27},{n:"Scratchballs_01",d:8.33},{n:"SEAT_LR",d:3.67},{n:"Seat_talk_01",d:3.67},{n:"Seat_talk_02",d:3.33},{n:"SEAT_watch",d:2.33},{n:"smalplane_door",d:6.33},{n:"smlplane_door",d:5.33},{n:"MTB_back",d:.1},{n:"MTB_bunnyhop",d:.33},{n:"MTB_drivebyFT",d:.2},{n:"MTB_driveby_LHS",d:.2},{n:"MTB_driveby_RHS",d:.2},{n:"MTB_fwd",d:.2},{n:"MTB_getoffBACK",d:1.53},{n:"MTB_getoffLHS",d:.73},{n:"MTB_getoffRHS",d:.73},{n:"MTB_jumponL",d:.8},{n:"MTB_jumponR",d:.83},{n:"MTB_Left",d:.13},{n:"MTB_pedal",d:.67},{n:"MTB_pushes",d:.8},{n:"MTB_Ride",d:.03},{n:"MTB_Right",d:.13},{n:"MTB_sprint",d:.8},{n:"MTB_still",d:.03},{n:"MscleWalkst_armed",d:.2},{n:"MscleWalkst_Csaw",d:.2},{n:"Mscle_rckt_run",d:.8},{n:"Mscle_rckt_walkst",d:.2},{n:"Mscle_run_Csaw",d:.8},{n:"MuscleIdle",d:1.5},{n:"MuscleIdle_armed",d:1.5},{n:"MuscleIdle_Csaw",d:1.5},{n:"MuscleIdle_rocket",d:1.5},{n:"MuscleRun",d:.8},{n:"MuscleRun_armed",d:.8},{n:"MuscleSprint",d:.57},{n:"MuscleWalk",d:1.07},{n:"MuscleWalkstart",d:.27},{n:"MuscleWalk_armed",d:1.07},{n:"Musclewalk_Csaw",d:1.07},{n:"Musclewalk_rocket",d:1.07}]],["NEVADA",[{n:"NEVADA_getin",d:1.87},{n:"NEVADA_getout",d:.93}]],["ON_LOOKERS",[{n:"lkaround_in",d:.33},{n:"lkaround_loop",d:7},{n:"lkaround_out",d:.33},{n:"lkup_in",d:1.67},{n:"lkup_loop",d:5.33},{n:"lkup_out",d:1},{n:"lkup_point",d:3.33},{n:"panic_cower",d:6.67},{n:"panic_hide",d:6.33},{n:"panic_in",d:.83},{n:"panic_loop",d:1.67},{n:"panic_out",d:.67},{n:"panic_point",d:6},{n:"panic_shout",d:8.67},{n:"Pointup_in",d:1},{n:"Pointup_loop",d:2.67},{n:"Pointup_out",d:1},{n:"Pointup_shout",d:3},{n:"point_in",d:.5},{n:"point_loop",d:3},{n:"point_out",d:.33},{n:"shout_01",d:2.67},{n:"shout_02",d:4},{n:"shout_in",d:1.67},{n:"shout_loop",d:2},{n:"shout_out",d:.33},{n:"wave_in",d:.83},{n:"wave_loop",d:1.5},{n:"wave_out",d:.83}]],["OTB",[{n:"betslp_in",d:1.33},{n:"betslp_lkabt",d:2.67},{n:"betslp_loop",d:2.67},{n:"betslp_out",d:1},{n:"betslp_tnk",d:5.6},{n:"wtchrace_cmon",d:5},{n:"wtchrace_in",d:1.67},{n:"wtchrace_loop",d:2.67},{n:"wtchrace_lose",d:4},{n:"wtchrace_out",d:1},{n:"wtchrace_win",d:4.33}]],["PARACHUTE",[{n:"FALL_skyDive",d:1.33},{n:"FALL_SkyDive_Accel",d:1.33},{n:"FALL_skyDive_DIE",d:1},{n:"FALL_SkyDive_L",d:1.33},{n:"FALL_SkyDive_R",d:1.33},{n:"PARA_decel",d:2},{n:"PARA_decel_O",d:2},{n:"PARA_float",d:2},{n:"PARA_float_O",d:2},{n:"PARA_Land",d:1.67},{n:"PARA_Land_O",d:2.17},{n:"PARA_Land_Water",d:2.33},{n:"PARA_Land_Water_O",d:2.17},{n:"PARA_open",d:2.83},{n:"PARA_open_O",d:2.33},{n:"PARA_Rip_Land_O",d:.9},{n:"PARA_Rip_Loop_O",d:1},{n:"PARA_Rip_O",d:.23},{n:"PARA_steerL",d:2},{n:"PARA_steerL_O",d:2},{n:"PARA_steerR",d:2},{n:"PARA_steerR_O",d:2}]],["PARK",[{n:"Tai_Chi_in",d:2.17},{n:"Tai_Chi_Loop",d:12},{n:"Tai_Chi_Out",d:.83}]],["PAULNMAC",[{n:"Piss_in",d:9},{n:"Piss_loop",d:6.67},{n:"Piss_out",d:11},{n:"PnM_Argue1_A",d:4.33},{n:"PnM_Argue1_B",d:4.33},{n:"PnM_Argue2_A",d:4.33},{n:"PnM_Argue2_B",d:4.33},{n:"PnM_Loop_A",d:5.33},{n:"PnM_Loop_B",d:5.33},{n:"wank_in",d:7.33},{n:"wank_loop",d:2.67},{n:"wank_out",d:11.67}]],["PED",[{n:"abseil",d:.03},{n:"ARRESTgun",d:.67},{n:"ATM",d:12.17},{n:"BIKE_elbowL",d:.97},{n:"BIKE_elbowR",d:.97},{n:"BIKE_fallR",d:1.63},{n:"BIKE_fall_off",d:1.07},{n:"BIKE_pickupL",d:1.07},{n:"BIKE_pickupR",d:1.07},{n:"BIKE_pullupL",d:1},{n:"BIKE_pullupR",d:1},{n:"bomber",d:.6},{n:"CAR_alignHI_LHS",d:.73},{n:"CAR_alignHI_RHS",d:.73},{n:"CAR_align_LHS",d:.13},{n:"CAR_align_RHS",d:.13},{n:"CAR_closedoorL_LHS",d:.6},{n:"CAR_closedoorL_RHS",d:.4},{n:"CAR_closedoor_LHS",d:.6},{n:"CAR_closedoor_RHS",d:.4},{n:"CAR_close_LHS",d:.73},{n:"CAR_close_RHS",d:.73},{n:"CAR_crawloutRHS",d:2.17},{n:"CAR_dead_LHS",d:.03},{n:"CAR_dead_RHS",d:.03},{n:"CAR_doorlocked_LHS",d:1.33},{n:"CAR_doorlocked_RHS",d:1.27},{n:"CAR_fallout_LHS",d:.57},{n:"CAR_fallout_RHS",d:.57},{n:"CAR_getinL_LHS",d:1},{n:"CAR_getinL_RHS",d:1},{n:"CAR_getin_LHS",d:1},{n:"CAR_getin_RHS",d:1},{n:"CAR_getoutL_LHS",d:.93},{n:"CAR_getoutL_RHS",d:1},{n:"CAR_getout_LHS",d:1.13},{n:"CAR_getout_RHS",d:.8},{n:"car_hookertalk",d:4.3},{n:"CAR_jackedLHS",d:2.9},{n:"CAR_jackedRHS",d:3.43},{n:"CAR_jumpin_LHS",d:1},{n:"CAR_LB",d:.23},{n:"CAR_LB_pro",d:.1},{n:"CAR_LB_weak",d:.23},{n:"CAR_LjackedLHS",d:3.57},{n:"CAR_LjackedRHS",d:3.47},{n:"CAR_Lshuffle_RHS",d:.4},{n:"CAR_Lsit",d:.03},{n:"CAR_open_LHS",d:1.1},{n:"CAR_open_RHS",d:1.1},{n:"CAR_pulloutL_LHS",d:2.93},{n:"CAR_pulloutL_RHS",d:2.93},{n:"CAR_pullout_LHS",d:2.3},{n:"CAR_pullout_RHS",d:2.8},{n:"CAR_Qjacked",d:3.3},{n:"CAR_rolldoor",d:.6},{n:"CAR_rolldoorLO",d:.6},{n:"CAR_rollout_LHS",d:1.63},{n:"CAR_rollout_RHS",d:1.27},{n:"CAR_shuffle_RHS",d:.4},{n:"CAR_sit",d:.03},{n:"CAR_sitp",d:.03},{n:"CAR_sitpLO",d:.03},{n:"CAR_sit_pro",d:.03},{n:"CAR_sit_weak",d:.03},{n:"CAR_tune_radio",d:.63},{n:"CLIMB_idle",d:.8},{n:"CLIMB_jump",d:.57},{n:"CLIMB_jump2fall",d:.03},{n:"CLIMB_jump_B",d:.97},{n:"CLIMB_Pull",d:.87},{n:"CLIMB_Stand",d:.8},{n:"CLIMB_Stand_finish",d:.2},{n:"cower",d:.8},{n:"Crouch_Roll_L",d:.93},{n:"Crouch_Roll_R",d:.93},{n:"DAM_armL_frmBK",d:.83},{n:"DAM_armL_frmFT",d:.83},{n:"DAM_armL_frmLT",d:.67},{n:"DAM_armR_frmBK",d:.83},{n:"DAM_armR_frmFT",d:.5},{n:"DAM_armR_frmRT",d:.27},{n:"DAM_LegL_frmBK",d:.83},{n:"DAM_LegL_frmFT",d:.83},{n:"DAM_LegL_frmLT",d:.83},{n:"DAM_LegR_frmBK",d:.83},{n:"DAM_LegR_frmFT",d:.83},{n:"DAM_LegR_frmRT",d:.83},{n:"DAM_stomach_frmBK",d:.83},{n:"DAM_stomach_frmFT",d:.83},{n:"DAM_stomach_frmLT",d:.83},{n:"DAM_stomach_frmRT",d:.83},{n:"DOOR_LHinge_O",d:1.07},{n:"DOOR_RHinge_O",d:1.07},{n:"DrivebyL_L",d:.2},{n:"DrivebyL_R",d:.2},{n:"Driveby_L",d:.2},{n:"Driveby_R",d:.2},{n:"DRIVE_BOAT",d:.03},{n:"DRIVE_BOAT_back",d:.1},{n:"DRIVE_BOAT_L",d:.1},{n:"DRIVE_BOAT_R",d:.1},{n:"Drive_L",d:.13},{n:"Drive_LO_l",d:.13},{n:"Drive_LO_R",d:.13},{n:"Drive_L_pro",d:.13},{n:"Drive_L_pro_slow",d:.13},{n:"Drive_L_slow",d:.13},{n:"Drive_L_weak",d:.13},{n:"Drive_L_weak_slow",d:.13},{n:"Drive_R",d:.13},{n:"Drive_R_pro",d:.13},{n:"Drive_R_pro_slow",d:.13},{n:"Drive_R_slow",d:.13},{n:"Drive_R_weak",d:.13},{n:"Drive_R_weak_slow",d:.13},{n:"Drive_truck",d:.03},{n:"DRIVE_truck_back",d:.1},{n:"DRIVE_truck_L",d:.13},{n:"DRIVE_truck_R",d:.13},{n:"Drown",d:2.5},{n:"DUCK_cower",d:.8},{n:"endchat_01",d:2},{n:"endchat_02",d:2},{n:"endchat_03",d:2.33},{n:"EV_dive",d:2.33},{n:"EV_step",d:1.07},{n:"facanger",d:.13},{n:"facgum",d:1.03},{n:"facsurp",d:.13},{n:"facsurpm",d:.13},{n:"factalk",d:2.33},{n:"facurios",d:.13},{n:"FALL_back",d:.73},{n:"FALL_collapse",d:1},{n:"FALL_fall",d:.73},{n:"FALL_front",d:.73},{n:"FALL_glide",d:.8},{n:"FALL_land",d:.47},{n:"FALL_skyDive",d:1.33},{n:"Fight2Idle",d:.33},{n:"FightA_1",d:.43},{n:"FightA_2",d:.77},{n:"FightA_3",d:.87},{n:"FightA_block",d:.47},{n:"FightA_G",d:.93},{n:"FightA_M",d:.4},{n:"FIGHTIDLE",d:1.3},{n:"FightShB",d:.47},{n:"FightShF",d:.53},{n:"FightSh_BWD",d:.67},{n:"FightSh_FWD",d:.67},{n:"FightSh_Left",d:.67},{n:"FightSh_Right",d:.67},{n:"flee_lkaround_01",d:2},{n:"FLOOR_hit",d:.37},{n:"FLOOR_hit_f",d:.4},{n:"fucku",d:1.33},{n:"gang_gunstand",d:.03},{n:"gas_cwr",d:1},{n:"getup",d:1.37},{n:"getup_front",d:1.37},{n:"gum_eat",d:5.33},{n:"GunCrouchBwd",d:1},{n:"GunCrouchFwd",d:.73},{n:"GunMove_BWD",d:1.03},{n:"GunMove_FWD",d:1},{n:"GunMove_L",d:1},{n:"GunMove_R",d:1},{n:"Gun_2_IDLE",d:.27},{n:"GUN_BUTT",d:.43},{n:"GUN_BUTT_crouch",d:.43},{n:"Gun_stand",d:.03},{n:"handscower",d:1.93},{n:"handsup",d:.6},{n:"HitA_1",d:.3},{n:"HitA_2",d:.53},{n:"HitA_3",d:.57},{n:"HIT_back",d:.5},{n:"HIT_behind",d:.67},{n:"HIT_front",d:.6},{n:"HIT_GUN_BUTT",d:.5},{n:"HIT_L",d:.7},{n:"HIT_R",d:.6},{n:"HIT_walk",d:.33},{n:"HIT_wall",d:.7},{n:"Idlestance_fat",d:1.67},{n:"idlestance_old",d:2},{n:"IDLE_armed",d:1.47},{n:"IDLE_chat",d:6.67},{n:"IDLE_csaw",d:1.53},{n:"Idle_Gang1",d:1.67},{n:"IDLE_HBHB",d:2.67},{n:"IDLE_ROCKET",d:1.57},{n:"IDLE_stance",d:1.5},{n:"IDLE_taxi",d:.87},{n:"IDLE_tired",d:1},{n:"Jetpack_Idle",d:.03},{n:"JOG_femaleA",d:.77},{n:"JOG_maleA",d:.77},{n:"JUMP_glide",d:.5},{n:"JUMP_land",d:.23},{n:"JUMP_launch",d:.2},{n:"JUMP_launch_R",d:.2},{n:"KART_drive",d:.03},{n:"KART_L",d:.13},{n:"KART_LB",d:.03},{n:"KART_R",d:.13},{n:"KD_left",d:.9},{n:"KD_right",d:.9},{n:"KO_shot_face",d:2.1},{n:"KO_shot_front",d:.57},{n:"KO_shot_stom",d:3.17},{n:"KO_skid_back",d:.97},{n:"KO_skid_front",d:1.13},{n:"KO_spin_L",d:.87},{n:"KO_spin_R",d:.93},{n:"pass_Smoke_in_car",d:1.73},{n:"phone_in",d:2.33},{n:"phone_out",d:2},{n:"phone_talk",d:2},{n:"Player_Sneak",d:1.33},{n:"Player_Sneak_walkstart",d:.3},{n:"roadcross",d:2},{n:"roadcross_female",d:4},{n:"roadcross_gang",d:2},{n:"roadcross_old",d:4},{n:"run_1armed",d:.77},{n:"run_armed",d:.7},{n:"run_civi",d:.73},{n:"run_csaw",d:.7},{n:"run_fat",d:.8},{n:"run_fatold",d:.8},{n:"run_gang1",d:.83},{n:"run_left",d:.67},{n:"run_old",d:.8},{n:"run_player",d:.73},{n:"run_right",d:.67},{n:"run_rocket",d:.77},{n:"Run_stop",d:.87},{n:"Run_stopR",d:.8},{n:"Run_Wuzi",d:.77},{n:"SEAT_down",d:1.5},{n:"SEAT_idle",d:2},{n:"SEAT_up",d:1.17},{n:"SHOT_leftP",d:.3},{n:"SHOT_partial",d:.37},{n:"SHOT_partial_B",d:.33},{n:"SHOT_rightP",d:.33},{n:"Shove_Partial",d:.53},{n:"Smoke_in_car",d:1.73},{n:"sprint_civi",d:.53},{n:"sprint_panic",d:.6},{n:"Sprint_Wuzi",d:.67},{n:"swat_run",d:.67},{n:"Swim_Tread",d:1.3},{n:"Tap_hand",d:.03},{n:"Tap_handP",d:.03},{n:"turn_180",d:.63},{n:"Turn_L",d:.8},{n:"Turn_R",d:.8},{n:"WALK_armed",d:1.07},{n:"WALK_civi",d:1.13},{n:"WALK_csaw",d:1.07},{n:"Walk_DoorPartial",d:.8},{n:"WALK_drunk",d:3.93},{n:"WALK_fat",d:1.33},{n:"WALK_fatold",d:1.17},{n:"WALK_gang1",d:1.4},{n:"WALK_gang2",d:1.4},{n:"WALK_old",d:1.4},{n:"WALK_player",d:1.2},{n:"WALK_rocket",d:1.07},{n:"WALK_shuffle",d:1.2},{n:"WALK_start",d:.27},{n:"WALK_start_armed",d:.2},{n:"WALK_start_csaw",d:.2},{n:"WALK_start_rocket",d:.2},{n:"Walk_Wuzi",d:1.17},{n:"WEAPON_crouch",d:.8},{n:"woman_idlestance",d:5.33},{n:"woman_run",d:.77},{n:"WOMAN_runbusy",d:.67},{n:"WOMAN_runfatold",d:1.2},{n:"woman_runpanic",d:.6},{n:"WOMAN_runsexy",d:.7},{n:"WOMAN_walkbusy",d:1},{n:"WOMAN_walkfatold",d:1.2},{n:"WOMAN_walknorm",d:1.13},{n:"WOMAN_walkold",d:1.2},{n:"WOMAN_walkpro",d:1.33},{n:"WOMAN_walksexy",d:1.17},{n:"WOMAN_walkshop",d:.97},{n:"XPRESSscratch",d:3.97}]],["PLAYER_DVBYS",[{n:"Plyr_DrivebyBwd",d:.83},{n:"Plyr_DrivebyFwd",d:.83},{n:"Plyr_DrivebyLHS",d:.83},{n:"Plyr_DrivebyRHS",d:.83}]],["PLAYIDLES",[{n:"shift",d:3.6},{n:"shldr",d:2.17},{n:"stretch",d:4.6},{n:"strleg",d:3.67},{n:"time",d:5.2}]],["POLICE",[{n:"CopTraf_Away",d:1.47},{n:"CopTraf_Come",d:2.87},{n:"CopTraf_Left",d:2},{n:"CopTraf_Stop",d:2},{n:"COP_getoutcar_LHS",d:.83},{n:"Cop_move_FWD",d:1},{n:"crm_drgbst_01",d:18.57},{n:"Door_Kick",d:1.33},{n:"plc_drgbst_01",d:20.6},{n:"plc_drgbst_02",d:7.57}]],["POOL",[{n:"POOL_ChalkCue",d:4.83},{n:"POOL_Idle_Stance",d:2},{n:"POOL_Long_Shot",d:1.67},{n:"POOL_Long_Shot_O",d:1.67},{n:"POOL_Long_Start",d:.67},{n:"POOL_Long_Start_O",d:.67},{n:"POOL_Med_Shot",d:1.67},{n:"POOL_Med_Shot_O",d:1.67},{n:"POOL_Med_Start",d:.67},{n:"POOL_Med_Start_O",d:.67},{n:"POOL_Place_White",d:2.5},{n:"POOL_Short_Shot",d:1.67},{n:"POOL_Short_Shot_O",d:1.67},{n:"POOL_Short_Start",d:.67},{n:"POOL_Short_Start_O",d:.67},{n:"POOL_Walk",d:1.27},{n:"POOL_Walk_Start",d:.2},{n:"POOL_XLong_Shot",d:1.67},{n:"POOL_XLong_Shot_O",d:1.67},{n:"POOL_XLong_Start",d:.67},{n:"POOL_XLong_Start_O",d:.67}]],["POOR",[{n:"WINWASH_Start",d:.43},{n:"WINWASH_Wash2Beg",d:2.13}]],["PYTHON",[{n:"python_crouchfire",d:1.2},{n:"python_crouchreload",d:1},{n:"python_fire",d:1.17},{n:"python_fire_poor",d:1.47},{n:"python_reload",d:.93}]],["QUAD",[{n:"QUAD_back",d:.1},{n:"QUAD_driveby_FT",d:.2},{n:"QUAD_driveby_LHS",d:.2},{n:"QUAD_driveby_RHS",d:.2},{n:"QUAD_FWD",d:.2},{n:"QUAD_getoff_B",d:1.63},{n:"QUAD_getoff_LHS",d:.67},{n:"QUAD_getoff_RHS",d:.7},{n:"QUAD_geton_LHS",d:.73},{n:"QUAD_geton_RHS",d:.73},{n:"QUAD_hit",d:.03},{n:"QUAD_kick",d:1.13},{n:"QUAD_Left",d:.13},{n:"QUAD_passenger",d:.03},{n:"QUAD_reverse",d:.17},{n:"QUAD_ride",d:.03},{n:"QUAD_Right",d:.13}]],["QUAD_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["RAPPING",[{n:"Laugh_01",d:5.33},{n:"RAP_A_IN",d:.83},{n:"RAP_A_Loop",d:2.67},{n:"RAP_A_OUT",d:.33},{n:"RAP_B_IN",d:1},{n:"RAP_B_Loop",d:2.67},{n:"RAP_B_OUT",d:.87},{n:"RAP_C_Loop",d:3}]],["RIFLE",[{n:"RIFLE_crouchfire",d:.87},{n:"RIFLE_crouchload",d:1.27},{n:"RIFLE_fire",d:.8},{n:"RIFLE_fire_poor",d:.8},{n:"RIFLE_load",d:1.4}]],["RIOT",[{n:"RIOT_ANGRY",d:5},{n:"RIOT_ANGRY_B",d:.63},{n:"RIOT_challenge",d:3.23},{n:"RIOT_CHANT",d:1.73},{n:"RIOT_FUKU",d:.67},{n:"RIOT_PUNCHES",d:.67},{n:"RIOT_shout",d:1}]],["ROB_BANK",[{n:"CAT_Safe_End",d:.5},{n:"CAT_Safe_Open",d:3.33},{n:"CAT_Safe_Open_O",d:3.33},{n:"CAT_Safe_Rob",d:1.83},{n:"SHP_HandsUp_Scr",d:.67}]],["ROCKET",[{n:"idle_rocket",d:1.6},{n:"RocketFire",d:.97},{n:"run_rocket",d:.77},{n:"walk_rocket",d:1.07},{n:"WALK_start_rocket",d:.2}]],["RUNNINGMAN",[{n:"Dance_B1",d:.53},{n:"Dance_B2",d:.57},{n:"Dance_B3",d:.53},{n:"Dance_B4",d:.57},{n:"Dance_B5",d:.53},{n:"Dance_B6",d:.57},{n:"Dance_B7",d:.53},{n:"Dance_B8",d:.57},{n:"Dance_B9",d:.53},{n:"Dance_B10",d:.57},{n:"Dance_B11",d:.53},{n:"Dance_B12",d:.57},{n:"Dance_B13",d:.53},{n:"Dance_B14",d:.57},{n:"Dance_B15",d:.53},{n:"Dance_B16",d:.57},{n:"Dance_G1",d:.53},{n:"Dance_G2",d:.57},{n:"Dance_G3",d:.53},{n:"Dance_G4",d:.57},{n:"Dance_G5",d:.53},{n:"Dance_G6",d:.57},{n:"Dance_G7",d:.53},{n:"Dance_G8",d:.57},{n:"Dance_G9",d:.53},{n:"Dance_G10",d:.57},{n:"Dance_G11",d:.53},{n:"Dance_G12",d:.57},{n:"Dance_G13",d:.53},{n:"Dance_G14",d:.57},{n:"Dance_G15",d:.53},{n:"Dance_G16",d:.57},{n:"dance_loop",d:1.17}]],["RUSTLER",[{n:"Plane_align_LHS",d:.73},{n:"Plane_close",d:.4},{n:"Plane_getin",d:.8},{n:"Plane_getout",d:1.57},{n:"Plane_open",d:.7}]],["RYDER",[{n:"RYD_Beckon_01",d:1.23},{n:"RYD_Beckon_02",d:1},{n:"RYD_Beckon_03",d:1.07},{n:"RYD_Die_PT1",d:4},{n:"RYD_Die_PT2",d:7.93},{n:"Van_Crate_L",d:.67},{n:"Van_Crate_R",d:.67},{n:"Van_Fall_L",d:.47},{n:"Van_Fall_R",d:.93},{n:"Van_Lean_L",d:.67},{n:"Van_Lean_R",d:.67},{n:"VAN_PickUp_E",d:1.83},{n:"VAN_PickUp_S",d:1.5},{n:"Van_Stand",d:.67},{n:"Van_Stand_Crate",d:.67},{n:"Van_Throw",d:1.37}]],["SAMP",[{n:"FishingIdle",d:1}]],["SCRATCHING",[{n:"scdldlp",d:.67},{n:"scdlulp",d:.67},{n:"scdrdlp",d:.67},{n:"scdrulp",d:.67},{n:"sclng_l",d:1},{n:"sclng_r",d:1},{n:"scmid_l",d:.47},{n:"scmid_r",d:.47},{n:"scshrtl",d:.2},{n:"scshrtr",d:.2},{n:"sc_ltor",d:.67},{n:"sc_rtol",d:.67}]],["SHAMAL",[{n:"SHAMAL_align",d:.2},{n:"SHAMAL_getin_LHS",d:1.4},{n:"SHAMAL_getout_LHS",d:1.37},{n:"SHAMAL_open",d:.6}]],["SHOP",[{n:"ROB_2Idle",d:1.17},{n:"ROB_Loop",d:2.67},{n:"ROB_Loop_Threat",d:2},{n:"ROB_Shifty",d:5.67},{n:"ROB_StickUp_In",d:.53},{n:"SHP_Duck",d:.67},{n:"SHP_Duck_Aim",d:.33},{n:"SHP_Duck_Fire",d:.83},{n:"SHP_Gun_Aim",d:.63},{n:"SHP_Gun_Duck",d:.5},{n:"SHP_Gun_Fire",d:.87},{n:"SHP_Gun_Grab",d:.87},{n:"SHP_Gun_Threat",d:.83},{n:"SHP_HandsUp_Scr",d:.67},{n:"SHP_Jump_Glide",d:.33},{n:"SHP_Jump_Land",d:.7},{n:"SHP_Jump_Launch",d:.57},{n:"SHP_Rob_GiveCash",d:3.83},{n:"SHP_Rob_HandsUp",d:2.67},{n:"SHP_Rob_React",d:2.67},{n:"SHP_Serve_End",d:5.5},{n:"SHP_Serve_Idle",d:5},{n:"SHP_Serve_Loop",d:4.17},{n:"SHP_Serve_Start",d:1.33},{n:"Smoke_RYD",d:6.67}]],["SHOTGUN",[{n:"shotgun_crouchfire",d:1.47},{n:"shotgun_fire",d:1.47},{n:"shotgun_fire_poor",d:1.5}]],["SILENCED",[{n:"CrouchReload",d:1},{n:"SilenceCrouchfire",d:.93},{n:"Silence_fire",d:.87},{n:"Silence_reload",d:.93}]],["SKATE",[{n:"skate_idle",d:1},{n:"skate_run",d:.83},{n:"skate_sprint",d:.67}]],["SMOKING",[{n:"F_smklean_loop",d:4},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"M_smk_drag",d:3.67},{n:"M_smk_in",d:6.67},{n:"M_smk_loop",d:3.33},{n:"M_smk_out",d:3},{n:"M_smk_tap",d:3}]],["SNIPER",[{n:"WEAPON_sniper",d:1.47}]],["SnM",[{n:"SnM_Caned_Idle_P",d:2},{n:"SnM_Caned_Idle_W",d:2},{n:"SnM_Caned_P",d:1.33},{n:"SnM_Caned_W",d:1.33},{n:"SnM_Cane_Idle_P",d:2},{n:"SnM_Cane_Idle_W",d:2},{n:"SnM_Cane_P",d:1.33},{n:"SnM_Cane_W",d:1.33},{n:"SpankedP",d:1.33},{n:"SpankedW",d:1.33},{n:"Spanked_IdleP",d:1.33},{n:"Spanked_IdleW",d:1.33},{n:"SpankingP",d:1.33},{n:"SpankingW",d:1.33},{n:"Spanking_endP",d:6.67},{n:"Spanking_endW",d:6.67},{n:"Spanking_IdleP",d:1.33},{n:"Spanking_IdleW",d:1.33},{n:"Spanking_SittingIdleP",d:1.33},{n:"Spanking_SittingIdleW",d:1.33},{n:"Spanking_SittingP",d:1},{n:"Spanking_SittingW",d:1}]],["SPRAYCAN",[{n:"spraycan_fire",d:2.33},{n:"spraycan_full",d:4.5}]],["STRIP",[{n:"PLY_CASH",d:1.67},{n:"PUN_CASH",d:3.33},{n:"PUN_HOLLER",d:5},{n:"PUN_LOOP",d:1.93},{n:"strip_A",d:2.07},{n:"strip_B",d:1},{n:"strip_C",d:.97},{n:"strip_D",d:1.9},{n:"strip_E",d:3.33},{n:"strip_F",d:1.03},{n:"strip_G",d:2.27},{n:"STR_A2B",d:4},{n:"STR_B2A",d:.5},{n:"STR_B2C",d:5},{n:"STR_C1",d:6},{n:"STR_C2",d:6},{n:"STR_C2B",d:1},{n:"STR_Loop_A",d:1},{n:"STR_Loop_B",d:2},{n:"STR_Loop_C",d:3}]],["SUNBATHE",[{n:"batherdown",d:3.93},{n:"batherup",d:12.3},{n:"Lay_Bac_in",d:2.33},{n:"Lay_Bac_out",d:3},{n:"ParkSit_M_IdleA",d:3.33},{n:"ParkSit_M_IdleB",d:2.67},{n:"ParkSit_M_IdleC",d:4.33},{n:"ParkSit_M_in",d:2.33},{n:"ParkSit_M_out",d:2},{n:"ParkSit_W_idleA",d:3.33},{n:"ParkSit_W_idleB",d:5},{n:"ParkSit_W_idleC",d:3},{n:"ParkSit_W_in",d:4},{n:"ParkSit_W_out",d:2.67},{n:"SBATHE_F_LieB2Sit",d:1.67},{n:"SBATHE_F_Out",d:2},{n:"SitnWait_in_W",d:4.67},{n:"SitnWait_out_W",d:2.67}]],["SWAT",[{n:"gnstwall_injurd",d:2},{n:"JMP_Wall1m_180",d:1.17},{n:"Rail_fall",d:3},{n:"Rail_fall_crawl",d:5.67},{n:"swt_breach_01",d:5.47},{n:"swt_breach_02",d:5.33},{n:"swt_breach_03",d:4.3},{n:"swt_go",d:1.67},{n:"swt_lkt",d:3},{n:"swt_sty",d:1.17},{n:"swt_vent_01",d:4.73},{n:"swt_vent_02",d:4.43},{n:"swt_vnt_sht_die",d:.67},{n:"swt_vnt_sht_in",d:1.6},{n:"swt_vnt_sht_loop",d:.27},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43}]],["SWEET",[{n:"ho_ass_slapped",d:2},{n:"LaFin_Player",d:26.67},{n:"LaFin_Sweet",d:26.67},{n:"plyr_hndshldr_01",d:4},{n:"sweet_ass_slap",d:2},{n:"sweet_hndshldr_01",d:4},{n:"Sweet_injuredloop",d:2}]],["SWIM",[{n:"Swim_Breast",d:1.3},{n:"SWIM_crawl",d:.9},{n:"Swim_Dive_Under",d:1.07},{n:"Swim_Glide",d:1.47},{n:"Swim_jumpout",d:.33},{n:"Swim_Tread",d:1.3},{n:"Swim_Under",d:1.5}]],["SWORD",[{n:"sword_1",d:.87},{n:"sword_2",d:1.07},{n:"sword_3",d:.8},{n:"sword_4",d:1.1},{n:"sword_block",d:.47},{n:"Sword_Hit_1",d:.83},{n:"Sword_Hit_2",d:1.03},{n:"Sword_Hit_3",d:.87},{n:"sword_IDLE",d:1},{n:"sword_part",d:.67}]],["TANK",[{n:"TANK_align_LHS",d:1.43},{n:"TANK_close_LHS",d:.33},{n:"TANK_doorlocked",d:.53},{n:"TANK_getin_LHS",d:.43},{n:"TANK_getout_LHS",d:1.97},{n:"TANK_open_LHS",d:.3}]],["TATTOOS",[{n:"TAT_ArmL_In_O",d:.83},{n:"TAT_ArmL_In_P",d:.83},{n:"TAT_ArmL_In_T",d:.83},{n:"TAT_ArmL_Out_O",d:.93},{n:"TAT_ArmL_Out_P",d:2.5},{n:"TAT_ArmL_Out_T",d:.93},{n:"TAT_ArmL_Pose_O",d:.83},{n:"TAT_ArmL_Pose_P",d:.83},{n:"TAT_ArmL_Pose_T",d:.83},{n:"TAT_ArmR_In_O",d:.83},{n:"TAT_ArmR_In_P",d:.83},{n:"TAT_ArmR_In_T",d:.83},{n:"TAT_ArmR_Out_O",d:1},{n:"TAT_ArmR_Out_P",d:2.5},{n:"TAT_ArmR_Out_T",d:1},{n:"TAT_ArmR_Pose_O",d:.83},{n:"TAT_ArmR_Pose_P",d:.83},{n:"TAT_ArmR_Pose_T",d:.83},{n:"TAT_Back_In_O",d:.83},{n:"TAT_Back_In_P",d:.83},{n:"TAT_Back_In_T",d:.83},{n:"TAT_Back_Out_O",d:.93},{n:"TAT_Back_Out_P",d:2.5},{n:"TAT_Back_Out_T",d:.93},{n:"TAT_Back_Pose_O",d:.83},{n:"TAT_Back_Pose_P",d:.83},{n:"TAT_Back_Pose_T",d:.83},{n:"TAT_Back_Sit_In_P",d:.83},{n:"TAT_Back_Sit_Loop_P",d:2.67},{n:"TAT_Back_Sit_Out_P",d:.83},{n:"TAT_Bel_In_O",d:.83},{n:"TAT_Bel_In_T",d:.83},{n:"TAT_Bel_Out_O",d:.97},{n:"TAT_Bel_Out_T",d:.97},{n:"TAT_Bel_Pose_O",d:.83},{n:"TAT_Bel_Pose_T",d:.83},{n:"TAT_Che_In_O",d:.83},{n:"TAT_Che_In_P",d:.83},{n:"TAT_Che_In_T",d:.83},{n:"TAT_Che_Out_O",d:.93},{n:"TAT_Che_Out_P",d:2.5},{n:"TAT_Che_Out_T",d:.93},{n:"TAT_Che_Pose_O",d:.83},{n:"TAT_Che_Pose_P",d:.83},{n:"TAT_Che_Pose_T",d:.83},{n:"TAT_Drop_O",d:.5},{n:"TAT_Idle_Loop_O",d:2.67},{n:"TAT_Idle_Loop_T",d:2.67},{n:"TAT_Sit_In_O",d:2.33},{n:"TAT_Sit_In_P",d:2.33},{n:"TAT_Sit_In_T",d:2.33},{n:"TAT_Sit_Loop_O",d:2.67},{n:"TAT_Sit_Loop_P",d:2.67},{n:"TAT_Sit_Loop_T",d:2.67},{n:"TAT_Sit_Out_O",d:2.83},{n:"TAT_Sit_Out_P",d:2.17},{n:"TAT_Sit_Out_T",d:2.83}]],["TEC",[{n:"TEC_crouchfire",d:.97},{n:"TEC_crouchreload",d:1.33},{n:"TEC_fire",d:1.1},{n:"TEC_reload",d:1.5}]],["TRAIN",[{n:"tran_gtup",d:3.17},{n:"tran_hng",d:2.33},{n:"tran_ouch",d:1.17},{n:"tran_stmb",d:2.33}]],["TRUCK",[{n:"TRUCK_ALIGN_LHS",d:.57},{n:"TRUCK_ALIGN_RHS",d:.57},{n:"TRUCK_closedoor_LHS",d:.4},{n:"TRUCK_closedoor_RHS",d:.4},{n:"TRUCK_close_LHS",d:.73},{n:"TRUCK_close_RHS",d:.73},{n:"TRUCK_getin_LHS",d:.6},{n:"TRUCK_getin_RHS",d:.6},{n:"TRUCK_getout_LHS",d:.8},{n:"TRUCK_getout_RHS",d:.8},{n:"TRUCK_jackedLHS",d:1.73},{n:"TRUCK_jackedRHS",d:1.5},{n:"TRUCK_open_LHS",d:.53},{n:"TRUCK_open_RHS",d:.53},{n:"TRUCK_pullout_LHS",d:.9},{n:"TRUCK_pullout_RHS",d:.9},{n:"TRUCK_Shuffle",d:.4}]],["UZI",[{n:"UZI_crouchfire",d:.63},{n:"UZI_crouchreload",d:1.37},{n:"UZI_fire",d:.57},{n:"UZI_fire_poor",d:.53},{n:"UZI_reload",d:1.4}]],["VAN",[{n:"VAN_close_back_LHS",d:.33},{n:"VAN_close_back_RHS",d:.33},{n:"VAN_getin_Back_LHS",d:.6},{n:"VAN_getin_Back_RHS",d:.6},{n:"VAN_getout_back_LHS",d:.63},{n:"VAN_getout_back_RHS",d:.63},{n:"VAN_open_back_LHS",d:.97},{n:"VAN_open_back_RHS",d:.97}]],["VENDING",[{n:"VEND_Drink2_P",d:3.33},{n:"VEND_Drink_P",d:1.33},{n:"vend_eat1_P",d:4.33},{n:"VEND_Eat_P",d:1.67},{n:"VEND_Use",d:2.6},{n:"VEND_Use_pt2",d:.4}]],["VORTEX",[{n:"CAR_jumpin_LHS",d:1},{n:"CAR_jumpin_RHS",d:.93},{n:"vortex_getout_LHS",d:1},{n:"vortex_getout_RHS",d:1}]],["WAYFARER",[{n:"WF_Back",d:.1},{n:"WF_drivebyFT",d:.2},{n:"WF_drivebyLHS",d:.2},{n:"WF_drivebyRHS",d:.2},{n:"WF_Fwd",d:.2},{n:"WF_getoffBACK",d:1.73},{n:"WF_getoffLHS",d:.9},{n:"WF_getoffRHS",d:.9},{n:"WF_hit",d:.03},{n:"WF_jumponL",d:.9},{n:"WF_jumponR",d:.9},{n:"WF_kick",d:1.03},{n:"WF_Left",d:.13},{n:"WF_passenger",d:.03},{n:"WF_pushes",d:.97},{n:"WF_Ride",d:.03},{n:"WF_Right",d:.13},{n:"WF_Still",d:.03}]],["WEAPONS",[{n:"SHP_1H_Lift",d:1},{n:"SHP_1H_Lift_End",d:.33},{n:"SHP_1H_Ret",d:.83},{n:"SHP_1H_Ret_S",d:.33},{n:"SHP_2H_Lift",d:.93},{n:"SHP_2H_Lift_End",d:.33},{n:"SHP_2H_Ret",d:.9},{n:"SHP_2H_Ret_S",d:.33},{n:"SHP_Ar_Lift",d:1},{n:"SHP_Ar_Lift_End",d:.33},{n:"SHP_Ar_Ret",d:1.17},{n:"SHP_Ar_Ret_S",d:.33},{n:"SHP_G_Lift_In",d:.67},{n:"SHP_G_Lift_Out",d:.67},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:2.67}]],["WOP",[{n:"Dance_B1",d:1.13},{n:"Dance_B2",d:1.17},{n:"Dance_B3",d:1.13},{n:"Dance_B4",d:1.17},{n:"Dance_B5",d:1.13},{n:"Dance_B6",d:1.17},{n:"Dance_B7",d:1.13},{n:"Dance_B8",d:1.17},{n:"Dance_B9",d:1.13},{n:"Dance_B10",d:1.17},{n:"Dance_B11",d:1.13},{n:"Dance_B12",d:1.17},{n:"Dance_B13",d:1.13},{n:"Dance_B14",d:1.17},{n:"Dance_B15",d:1.13},{n:"Dance_B16",d:1.17},{n:"Dance_G1",d:1.13},{n:"Dance_G2",d:1.17},{n:"Dance_G3",d:1.13},{n:"Dance_G4",d:1.17},{n:"Dance_G5",d:1.13},{n:"Dance_G6",d:1.17},{n:"Dance_G7",d:1.13},{n:"Dance_G8",d:1.17},{n:"Dance_G9",d:1.13},{n:"Dance_G10",d:1.17},{n:"Dance_G11",d:1.13},{n:"Dance_G12",d:1.17},{n:"Dance_G13",d:1.13},{n:"Dance_G14",d:1.17},{n:"Dance_G15",d:1.13},{n:"Dance_G16",d:1.17},{n:"dance_loop",d:1.17}]],["WUZI",[{n:"CS_Dead_Guy",d:5.07},{n:"CS_Plyr_pt1",d:3.77},{n:"CS_Plyr_pt2",d:9.67},{n:"CS_Wuzi_pt1",d:3.77},{n:"CS_Wuzi_pt2",d:9.67},{n:"Walkstart_Idle_01",d:3.17},{n:"Wuzi_follow",d:3},{n:"Wuzi_Greet_Plyr",d:4},{n:"Wuzi_Greet_Wuzi",d:4},{n:"Wuzi_grnd_chk",d:4},{n:"Wuzi_stand_loop",d:2.67},{n:"Wuzi_Walk",d:1.17}]]]),tt=e=>{const t=si.get(e.toUpperCase());return t===void 0?!1:t},it=(e,t)=>{const i=tt(e);if(i)return t==="null"?!0:i.some(a=>a.n===t)},Am=(e,t)=>{const i=tt(e);if(i)return i.find(a=>a.n===t)?.d},ie=(e,t)=>{const i=t.replace("-","")==="utf8"?e:A.encodeToBuf(e,t);return[i instanceof Array?"a":"s",i]},li=(e,t,i)=>{const a=ie(i,e.charset);return samp.callNative("SendClientMessage",`ii${a[0]}`,e.id,C(t),a[1])},Nm=(e,t,i)=>(e.forEach(a=>li(a,t,i)),1),oi=(e,t,i)=>{const a=ie(i,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${a[0]}`,e.id,t,a[1])},Cm=(e,t,i)=>(e.forEach(a=>{oi(a,t,i)}),1),Dm=(e,t,i)=>{const{charset:a}=e,{style:n,caption:r,info:s,button1:l,button2:o}=i,[c,_]=ie(r||"",a),[,u]=ie(s||"",a),[,I]=ie(l||"",a),[,P]=ie(o||"",a);return!!samp.callNative("ShowPlayerDialog",`iii${c.repeat(4)}`,e.id,t,n,_,u,I,P)},Tm=e=>{const[t,i]=samp.callNative("GetPlayerName","iAi",e.id,B.MAX_PLAYER_NAME);return{name:A.decodeFromBuf(A.getValidStr(t),e.charset),ret:i}},vm=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,A.encodeToBuf(t,e.charset)),Lm=(e,t,i)=>{const a=A.encodeToBuf(t,i);return samp.callNative("BanEx","ia",e,a)},wm=(e,t="utf8")=>{const[i,a]=ie(e,t);return samp.callNative("SendRconCommand",i,a)},Rm=(e,t,i,a,n,r,s,l,o,c,_,u,I,P,g,y)=>{const w=A.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,i,a,n,r,s,l,o,c,_,u,I,P,g,y)},bm=(e,t,i,a,n,r,s,l,o,c,_,u,I,P,g,y)=>{const w=A.encodeToBuf(e,y);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",w,t,i,a,n,r,s,l,o,c,_,u,I,P,g,_.length,u.length,I.length,P.length)},Om=(e,t,i,a)=>{const n=A.encodeToBuf(i,a);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},Gm=(e,t)=>{const[i,a]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:A.decodeFromBuf(A.getValidStr(i),t),ret:a}},Fm=(e,t,i,a,n,r,s,l,o,c,_)=>{const u=A.encodeToBuf(a,e),I=A.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,i,u,n,I,s,l,o,c,_)},Bm=(e,t,i="utf8")=>{const[a,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:a,txdName:A.decodeFromBuf(A.getValidStr(n),i),textureName:A.decodeFromBuf(A.getValidStr(r),i),materialColor:s,ret:l}},xm=(e,t,i)=>{const[a,n,r,s,l,o,c,_,u]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),I=A.decodeFromBuf(a,i),P=A.decodeFromBuf(r,i);return{text:I,materialSize:n,fontFace:P,fontSize:s,bold:l,fontColor:o,backColor:c,textAlignment:_,ret:u}},Vm=(e,t,i,a,n,r)=>{const s=A.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,C(i),a,n)},ae=Symbol(),X=new Map,Z=new Map,be=new Map,Oe=new Map,Ge=new Map,Ie=new Map,W=new Map,ne=new Map,q=new Map,Fe=new Map,Be=new Map,Y=new Map,ge=new Map,ee=new Map,re=new Map,se=new Map,le=new Map,Pe=new Map,oe=new Map,z=new Uint32Array(65536),Mm=(e,t)=>{const i=e.length,a=t.length,n=1<<i-1;let r=-1,s=0,l=i,o=i;for(;o--;)z[e.charCodeAt(o)]|=1<<o;for(o=0;o<a;o++){let c=z[t.charCodeAt(o)];const _=c|s;c|=(c&r)+r^r,s|=~(c|r),r&=c,s&n&&l++,r&n&&l--,s=s<<1|1,r=r<<1|~(_|s),s&=_}for(o=i;o--;)z[e.charCodeAt(o)]=0;return l},km=(e,t)=>{const i=t.length,a=e.length,n=[],r=[],s=Math.ceil(i/32),l=Math.ceil(a/32);for(let g=0;g<s;g++)r[g]=-1,n[g]=0;let o=0;for(;o<l-1;o++){let g=0,y=-1;const w=o*32,F=Math.min(32,a)+w;for(let T=w;T<F;T++)z[e.charCodeAt(T)]|=1<<T;for(let T=0;T<i;T++){const Q=z[t.charCodeAt(T)],j=r[T/32|0]>>>T&1,U=n[T/32|0]>>>T&1,ot=Q|g,dt=((Q|U)&y)+y^y|Q|U;let De=g|~(dt|y),ke=y&dt;De>>>31^j&&(r[T/32|0]^=1<<T),ke>>>31^U&&(n[T/32|0]^=1<<T),De=De<<1|j,ke=ke<<1|U,y=ke|~(ot|De),g=De&ot}for(let T=w;T<F;T++)z[e.charCodeAt(T)]=0}let c=0,_=-1;const u=o*32,I=Math.min(32,a-u)+u;for(let g=u;g<I;g++)z[e.charCodeAt(g)]|=1<<g;let P=a;for(let g=0;g<i;g++){const y=z[t.charCodeAt(g)],w=r[g/32|0]>>>g&1,F=n[g/32|0]>>>g&1,T=y|c,Q=((y|F)&_)+_^_|y|F;let j=c|~(Q|_),U=_&Q;P+=j>>>a-1&1,P-=U>>>a-1&1,j>>>31^w&&(r[g/32|0]^=1<<g),U>>>31^F&&(n[g/32|0]^=1<<g),j=j<<1|w,U=U<<1|F,_=U|~(T|j),c=j&T}for(let g=u;g<I;g++)z[e.charCodeAt(g)]=0;return P},di=(e,t)=>{if(e.length<t.length){const i=t;t=e,e=i}return t.length===0?e.length:e.length<=32?Mm(e,t):km(e,t)},Hm=(e,t)=>{let i=1/0,a=0;for(let n=0;n<t.length;n++){const r=di(e,t[n]);r<i&&(i=r,a=n)}return t[a]},de=new Map,ce=new Map,ci=/[^/\s]+/gi,xe={NOT_EXIST:{code:1,msg:"command does not exist"},REJECTED:{code:2,msg:"An event registered through onCommandText returned false"},PERFORMED:{code:3,msg:"An event registered through onCommandPerformed returned false"},RECEIVED_THROW:{code:4,msg:"An event registered through onCommandReceived throw an error"},RECEIVED_REJECTED:{code:5,msg:"An event registered through onCommandReceived returned false"}},[Um,Wm]=p({name:"OnCommandReceived",isNative:!1,throwOnError:!0,beforeEach(e,t,i,a,n,r,s,l,o){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[jm,Km]=p({name:"OnCommandPerformed",isNative:!1,beforeEach(e,t,i,a,n,r,s,l,o){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[Xm,Ve]=p({name:"OnCommandError",isNative:!1,defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o,c){return{player:e,error:t,command:i,cmdText:a,buffer:n,strictMainCmd:r,noStrictMainCmd:s,hasStrict:l,hasNoStrict:o,subcommand:c,getSuggestion(){const _=Hm(a,[...de.keys(),...ce.keys()]),u=di(a,_);return{suggestion:_,distance:u}}}}}),[Zm,Ym]=p({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const i=X.get(e);let a=t,n="";return typeof t=="string"?(n=t,a=A.encodeToBuf(n,"utf-8")):n=A.decodeFromBuf(t,i.charset),{player:i,buffer:a,cmdText:n}}}),[zm,$m]=p({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,i){return{player:e,buffer:t,cmdText:i}}});function Jm(e){const t=[];let i="";for(let a=0;a<e.length;a++)i+=e[a]+" ",t.push(i.trimEnd());return t.reverse()}Zm(({player:e,buffer:t,cmdText:i,next:a})=>{const n=$m(e,t,i);if(n)return n;const r=i.match(ci),s=Jm(r),l=s.find(y=>de.has(y)),o=s.map(y=>y.toLowerCase()).find(y=>ce.has(y)),c=!!l,_=!!o,u=r.join(" ");let I=[];const P=[[l,de,!0],[o,ce,!1]],g=[u,i,t,l,o,c,_,I];if(c||_){const y=P[0][0]||P[1][0];I=u.replace(y,"").trim().split(" ")}else return Ve(e,xe.NOT_EXIST,...g);try{if(!Wm(e,...g))return Ve(e,xe.RECEIVED_REJECTED,...g)}catch(y){const w=typeof y=="object"?y:{error:y};return Ve(e,{...xe.RECEIVED_THROW,...w},...g)}for(const[y,w,F]of P){if(!y)continue;const T=w.get(y),[,Q]=T;if(!Q(e,y,I,i,t,F))return Ve(e,xe.REJECTED,...g)}return Km(e,u,i,t,l,o,c,_,I)?(a(),!0):Ve(e,xe.PERFORMED,...g)});function Qm(e,t,i,a,n,r){return{player:e,mainCommand:t,subcommand:i,cmdText:a,buffer:n,isStrict:r}}class k{static caseSensitive=!1;constructor(){}static on(t,i){let a=k.caseSensitive,n,r;typeof t=="string"||t instanceof Array?(n=t,r=i):(n=t.command,r=t.run,typeof t.caseSensitive<"u"&&(a=t.caseSensitive));const s=Array.isArray(n)?n:[n],l=s.find(_=>!_.match(ci));if(l)return console.log(`error command ${l} format`),()=>{};const o=a?de:ce,c=s.map(_=>{const u=_.replaceAll("/",""),I=a?u:u.toLowerCase();if(!o.has(I)){const g=p({name:a?"$"+I:I,isNative:!1,beforeEach:Qm});o.set(I,g)}const[P]=o.get(I);return[I,P(r)]});return()=>{c.forEach(_=>{const[u,I]=_;I()===0&&o.delete(u)})}}static off(t){(Array.isArray(t)?t:[t]).forEach(i=>{let a=i.replaceAll("/","");de.has(a)&&(x.has(a)&&x.delete(a),de.has(a)&&de.delete(a)),a=a.toLowerCase(),ce.has(a)&&(x.has(a)&&x.delete(a),ce.has(a)&&ce.delete(a))})}static enableCaseSensitive(){k.caseSensitive=!0}static disableCaseSensitive(){k.caseSensitive=!1}static isCaseSensitive(){return k.caseSensitive}static simulate(t,i){return Ym(t.id,i)}}const[_i]=p({name:"OnClientCheckResponse",identifier:"iiii",beforeEach(e,t,i,a){return{player:f.getInstance(e),actionId:t,memAddr:i,data:a}}}),[qm,ep]=p({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,i){return{player:e,newLocale:t,oldLocale:i}}}),[tp,ip]=p({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,i){return{player:e,newCharset:t,oldCharset:i}}});class f{constructor(t){if(this.id=t,t<0||t>=B.MAX_PLAYERS)throw new Error(`Invalid player ID: ${t} (valid range: 0-${B.MAX_PLAYERS-1})`);const i=f.getInstance(t);if(i)return i;X.set(t,this)}[ae]={isAndroid:!0};static MAX_CHECK_ANDROID_DELAY=10;static SKIP_CHECK_ANDROID=!1;_charset="ISO-8859-1";_locale="en_US";lastDrunkLevel=0;lastFps=0;lastUpdateTick=0;lastUpdateFpsTick=0;isPaused=!1;isRecording=!1;get charset(){return this._charset}set charset(t){const i=this._charset;this._charset=t,ip(this,t,i)}get locale(){return this._locale}set locale(t){const i=this._locale;this._locale=t,ep(this,t,i)}sendClientMessage(t,i){return li(this,t,i)}static sendClientMessageToAll(t,i){Nm(f.getInstances(),t,i)}sendMessageToPlayer(t,i){return oi(t,this.id,i)}sendMessageToAll(t){return Cm(f.getInstances(),this.id,t)}isNpc(){return $l(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return So(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return Eo(this.id,t)}allowTeleport(t){return Ul(this.id,t)}isTeleportAllowed(){return Wl(this.id)}enableCameraTarget(t){return kd(this.id,t)}enableStuntBonus(t){return gd(this.id,t)}getInterior(){return so(this.id)}setInterior(t){return ro(this.id,t)}showNameTag(t,i){return Od(this.id,t.id,i)}setColor(t){return yo(this.id,t)}getColor(){return Ao(this.id)}setMarker(t,i){Rd(this.id,t.id,i)}getMarker(t){return bd(this.id,t.id)}resetMoney(){return Ro(this.id)}getMoney(){return bo(this.id)}giveMoney(t){return wo(this.id,t)}resetWeapons(){return To(this.id)}spawn(){return Ys(this.id)}setHealth(t){return lo(this.id,t)}getHealth(){return oo(this.id)}toggleClock(t){return Mo(this.id,t)}toggleControllable(t){return od(this.id,t)}toggleSpectating(t){return Ad(this.id,t)}spectatePlayer(t,i=We.NORMAL){return Nd(this.id,t.id,i)}spectateVehicle(t,i=We.NORMAL){return Cd(this.id,t.id,i)}forceClassSelection(){return Ho(this.id)}kick(){return ll(this.id)}ban(){return ol(this.id)}banEx(t,i){return Lm(this.id,t,i)}isAdmin(){return rl(this.id)}isInRangeOfPoint(t,i,a,n){return io(this.id,t,i,a,n)}isStreamedIn(t){return no(this.id,t.id)}setSkin(t,i=!1){return!i&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===Je.DUCK?!1:No(this.id,t)}getSkin(){return Co(this.id)}isInAnyVehicle(){return vd(this.id)}getSpecialAction(){return ud(this.id)}setSpecialAction(t){return md(this.id,t)}setScore(t){return go(this.id,t)}getScore(){return Po(this.id)}getPing(){return Go(this.id)||0}setPos(t,i,a){return Jl(this.id,t,i,a)}getPos(){return ql(this.id)}isSpectating(){return this.getState()===we.SPECTATING}isWasted(){return this.getState()===we.WASTED}getState(){return Oo(this.id)}getVersion(){return Pl(this.id)}setVirtualWorld(t){return fd(this.id,t)}getVirtualWorld(){return Id(this.id)}removeFromVehicle(){return ld(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return Uo(this.id,t)}getWantedLevel(){return Wo(this.id)}setFacingAngle(t){return eo(this.id,t)}getFacingAngle(){return to(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return ko(this.id,t)}getWeather(){return Al(this.id)}setTime(t,i){if(t<0||t>23)throw new Error("[Player]: The valid hour value is only 0 to 23");if(i<0||i>59)throw new Error("[Player]: The valid minute value is only 0 to 59");return xo(this.id,t,i)}getTime(){return Vo(this.id)}removeBuilding(t,i,a,n,r){return id(this.id,t,i,a,n,r)}setTeam(t){t<0||t>d.NO_TEAM||fo(this.id,t)}getTeam(){return Io(this.id)}setSkillLevel(t,i){if(i<0||i>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return Qo(this.id,t,i)}getName(){return Tm(this)}setName(t){return vm(this,t)}setVelocity(t,i,a){return Xo(this.id,t,i,a)}getVelocity(){return Zo(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:n}=this.getVelocity();return et(i,a,n)*t}getKeys(){return Bo(this.id)}getIp(){return gl(this.id)}getFightingStyle(){return Ko(this.id)}setFightingStyle(t){return jo(this.id,t)}setArmour(t){return co(this.id,t)}getArmour(){return _o(this.id)}setCameraBehind(){return Bd(this.id)}setCameraPos(t,i,a){return Gd(this.id,t,i,a)}setCameraLookAt(t,i,a,n=Le.CUT){return Fd(this.id,t,i,a,n)}getCameraAspectRatio(){return Wd(this.id)}getCameraFrontVector(){return Vd(this.id)}getCameraMode(){return Md(this.id)}getCameraPos(){return xd(this.id)}getCameraTargetPlayer(){const t=Ud(this.id);return f.getInstances().find(i=>i.id===t)}getCameraTargetVehicle(){const t=Hd(this.id);return[...Z.values()].find(i=>i.id===t)}getCameraZoom(){return jd(this.id)}playAudioStream(t,i=0,a=0,n=0,r=5){let s=!1;return(i!==0||a!==0||n!==0)&&(s=!0),zo(this.id,t,i,a,n,r,s)}stopAudioStream(){return $o(this.id)}playSound(t,i=0,a=0,n=0){return dd(this.id,t,i,a,n)}static getMaxPlayers(){return fs()}playCrimeReport(t,i){if(i<3||i>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Yo(this.id,t.id,i)}interpolateCameraPos(t,i,a,n,r,s,l,o=Le.CUT){return Kd(this.id,t,i,a,n,r,s,l,o)}interpolateCameraLookAt(t,i,a,n,r,s,l,o=Le.CUT){return Xd(this.id,t,i,a,n,r,s,l,o)}createExplosion(t,i,a,n,r){if(n<0||n>13)throw new Error("[Player]: The valid explosion type value is only 0 to 13");return Sd(this.id,t,i,a,n,r)}static isConnected(t){return Dd(t)}isConnected(){return f.isConnected(this.id)}disableRemoteVehicleCollisions(t){return pd(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=rd(this.id);return[...Z.values()].find(i=>i.id===t)}getVehicleSeat(){return sd(this.id)}getSurfingVehicle(){const t=qo(this.id);if(t!==d.VEHICLE_ID)return[...Z.values()].find(i=>i.id===t)}applyAnimation(t,i,a=4.1,n=!1,r=!0,s=!0,l=!1,o=0,c=!1){if(!it(t,i))throw new Error(`[Player]: Invalid anim library or name ${t} ${i}`);return cd(this.id,t,i,a,n,r,s,l,o,+c)}clearAnimations(t=!1){return _d(this.id,t)}getAnimationIndex(){return hd(this.id)}getAnimationName(t=this.getAnimationIndex()){const[i,a]=Fs(t);return{index:t,animLib:i,animName:a}}setShopName(t){return Jo(this.id,t)}setPosFindZ(t,i,a){return Ql(this.id,t,i,a)}setWorldBounds(t,i,a,n){return Ld(this.id,t,i,a,n)}clearWorldBounds(){return wd(this.id)}setChatBubble(t,i,a,n,r=this.charset){return Vm(this.id,t,i,a,n,r)}getDistanceFromPoint(t,i,a){return ao(this.id,t,i,a)}getCustomSkin(){return Pd(this.id)}getTargetPlayer(){const t=po(this.id);if(t!==d.PLAYER_ID)return f.getInstances().find(i=>i.id===t)}getLastShotVectors(){return ad(this.id)}getWeapon(){return Fo(this.id)}getWeaponData(t){return Lo(this.id,t)}getWeaponState(){return mo(this.id)}giveWeapon(t,i){return Do(this.id,t,i)}setAmmo(t,i){return ho(this.id,t,i)}getAmmo(){return uo(this.id)}setArmedWeapon(t){return vo(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(d.PLAYER_ID,d.PLAYER_ID,Qe.CONNECT)}sendDeathMessage(t,i){return ps(t===d.PLAYER_ID?t:t.id,this.id,i)}sendDeathMessageToPlayer(t,i,a){return Yl(this.id,t===d.PLAYER_ID?t:t.id,i===d.PLAYER_ID?i:i.id,a)}setSpawnInfo(t,i,a,n,r,s,l,o,c,_,u,I){return t<0||t>d.NO_TEAM||i<0||i>311||i===74||o<0||_<0||I<0?!1:Zs(this.id,t,i,a,n,r,s,l,o,c,_,u,I)}redirectDownload(t){return pm(this.id,t)}sendClientCheck(t,i,a,n){const r=[2,5,69,70,71,72];if(!r.includes(t))throw new Error(`[Player]: sendClientCheck valid types are ${r.toString()}`);return new Promise((s,l)=>{if(this.isPaused)return l("[Player]: An attempt to check the player client response, but the player paused the game");const o="[Player]: An attempt to check the player client response timed out",c=this.getPing(),_=(c>=200?0:c)+200;let u=null;const I=_i(({player:P,actionId:g,memAddr:y,data:w,next:F})=>(P!==this||(u&&(clearTimeout(u),u=null),s({actionId:g,memAddr:y,data:w})),F()));u=setTimeout(()=>{I(),l(o)},_),ml(this.id,t,i,a,n)})}selectTextDraw(t){Eu(this.id,t)}cancelSelectTextDraw(){yu(this.id)}beginObjectSelecting(){return cm(this.id)}endObjectEditing(){return _m(this.id)}getSurfingObject(){const t=ed(this.id);if(t!==d.OBJECT_ID)return Y.get(t)}getSurfingPlayerObject(){const t=td(this.id);if(t!==d.OBJECT_ID)return Y.get(t)}isAttachedObjectSlotUsed(t){return Em(this.id,t)}editAttachedObject(t){return dm(this.id,t)}setAttachedObject(t,i,a,n=0,r=0,s=0,l=0,o=0,c=0,_=1,u=1,I=1,P=0,g=0){return this.isAttachedObjectSlotUsed(t)?0:Pm(this.id,t,i,a,n,r,s,l,o,c,_,u,I,P,g)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?Sm(this.id,t):0}getAnimationFlags(){return samp.callNative("GetPlayerAnimationFlags","i",this.id)}getLastSyncedTrailerID(){return samp.callNative("GetPlayerLastSyncedTrailerID","i",this.id)}getLastSyncedVehicleID(){return samp.callNative("GetPlayerLastSyncedVehicleID","i",this.id)}toggleWidescreen(t){return Sl(this.id,t)}isWidescreenToggled(){return El(this.id)}getSpawnInfo(){return zs(this.id)}getSkillLevel(t){return yl(this.id,t)}isCheckpointActive(){return O_(this.id)}getCheckpoint(){return G_(this.id)}isRaceCheckpointActive(){return F_(this.id)}getRaceCheckpoint(){return B_(this.id)}getWorldBounds(){return Nl(this.id)}isInModShop(){return D_(this.id)}getSirenState(){return T_(this.id)}getLandingGearState(){return v_(this.id)}getHydraReactorAngle(){return L_(this.id)}getTrainSpeed(){return w_(this.id)}getZAim(){return Cl(this.id)}getSurfingOffsets(){return Dl(this.id)}getRotationQuat(){return Tl(this.id)}getDialogID(){return vl(this.id)}getSpectateID(){return Ll(this.id)}getSpectateType(){return wl(this.id)}getRawIp(){return Il(this.id)}setGravity(t){return Rl(this.id,t)}getGravity(){return bl(this.id)}setAdmin(t){return sl(this.id,t)}isSpawned(){return Ol(this.id)}isControllable(){return Gl(this.id)}isCameraTargetEnabled(){return Fl(this.id)}toggleGhostMode(t){return Bl(this.id,t)}getGhostMode(){return xl(this.id)}getBuildingsRemoved(){return Vl(this.id)}getAttachedObject(t){return gm(this.id,t)}removeWeapon(t){return Ml(this.id,t)}isUsingOfficialClient(){return Hl(this.id)}allowWeapons(t){return jl(this.id,t)}areWeaponsAllowed(){return Kl(this.id)}gpci(t=this.charset){return ul(this.id,t)}isCuffed(){return Zd(this.id)}isInDriveByMode(){return Yd(this.id)}isAndroid(){return this.isConnected()&&this[ae].isAndroid}isPC(){return this.isConnected()&&!this[ae].isAndroid}isUsingOmp(){return zd(this.id)}simulateCommand(t){return k.simulate(this,t)}static getInstance(t){return X.get(t)}static getInstances(){return[...X.values()]}}const[hi]=p({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,i,a,n){const r=f.getInstance(e),s=A.decodeFromBuf(n,r.charset);return{player:r,dialogId:t,response:i,listItem:a,buffer:n,inputText:s}}});hi(({next:e,player:t,dialogId:i,response:a,listItem:n,buffer:r,inputText:s})=>{const l=R.waitingQueue.get(t);return!l||l.showId!==i||l.resolve({response:a,listItem:n,buffer:r,inputText:s}),e()});class R{_id=-1;static showingIds=[];static maxDialogId=32767;dialog;static waitingQueue=new WeakMap;constructor(t={style:$e.MSGBOX,caption:"",info:"",button1:"",button2:""}){this.dialog=t}get style(){return this.dialog.style}set style(t){this.dialog.style=t}get caption(){return this.dialog.caption}set caption(t){this.dialog.caption=t}get info(){return this.dialog.info}set info(t){this.dialog.info=t}get button1(){return this.dialog.button1}set button1(t){this.dialog.button1=t}get button2(){return this.dialog.button2}set button2(t){this.dialog.button2=t}static delDialogTask(t,i=!1){const a=R.waitingQueue.get(t);if(!a)return!1;i&&a.reject("[Dialog]: player timeout does not respond or second request show dialog"),R.waitingQueue.delete(t);const n=R.showingIds.indexOf(a.showId);return n>-1&&R.showingIds.splice(n,1),!0}show(t){return new Promise((i,a)=>{for(R.close(t);this._id===-1||R.showingIds.includes(this._id);){if(R.showingIds.length>=R.maxDialogId){this._id=-1;break}this._id=Math.floor(Math.random()*(R.maxDialogId+1))}if(this._id===-1){a("[Dialog]: The maximum number of dialogs is reached");return}R.showingIds.push(this._id),R.waitingQueue.set(t,{resolve:i,reject:a,showId:this._id}),R.__inject__ShowPlayerDialog(t,this._id,this.dialog)}).catch(i=>Promise.reject(i)).finally(()=>R.delDialogTask(t))}static close(t){R.delDialogTask(t,!0),kl(t.id)}static __inject__ShowPlayerDialog=Dm}const[ui]=p({name:"OnPlayerConnect",identifier:"i",beforeEach(e){const t=new f(e);return X.set(e,t),R.close(t),{player:t}}}),[mi]=p({name:"OnPlayerDisconnect",identifier:"ii",beforeEach(e,t){return{player:X.get(e),reason:t}},afterEach({player:e}){X.delete(e.id)}}),[pi]=p({name:"OnPlayerUpdate",identifier:"i",beforeEach(e){return{player:f.getInstance(e)}}}),[ap]=p({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const i=f.getInstance(e);return{player:i,text:A.decodeFromBuf(t,i.charset),buffer:t}}}),[np]=p({name:"OnPlayerEnterExitModShop",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),enterExit:t,interior:i}}}),[rp]=p({name:"OnPlayerClickMap",identifier:"ifff",defaultValue:!1,beforeEach(e,t,i,a){return{player:f.getInstance(e),fX:t,fY:i,fZ:a}}}),[sp]=p({name:"OnPlayerClickPlayer",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:f.getInstance(e),clickedPlayer:f.getInstance(t),source:i}}}),[lp]=p({name:"OnPlayerDeath",identifier:"iii",beforeEach(e,t,i){const a=f.getInstance(t)||d.PLAYER_ID;return{player:f.getInstance(e),killer:a,reason:i}}}),[op]=p({name:"OnPlayerGiveDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:f.getInstance(e),damage:f.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),[dp]=p({name:"OnPlayerKeyStateChange",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),newKeys:t,oldKeys:i}}}),[cp]=p({name:"OnPlayerRequestClass",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),classId:t}}}),[_p]=p({name:"OnPlayerRequestSpawn",identifier:"i",beforeEach(e){return{player:f.getInstance(e)}}}),[hp]=p({name:"OnPlayerSpawn",identifier:"i",beforeEach(e){return{player:f.getInstance(e)}}}),[up]=p({name:"OnPlayerStateChange",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),newState:t,oldState:i}}}),[mp]=p({name:"OnPlayerStreamIn",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),forPlayer:f.getInstance(t)}}}),[pp]=p({name:"OnPlayerStreamOut",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),forPlayer:f.getInstance(t)}}}),[fp]=p({name:"OnPlayerTakeDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){const r=f.getInstance(t)||d.PLAYER_ID;return{player:f.getInstance(e),damage:r,amount:i,weapon:a,bodyPart:n}}}),[Ip]=p({name:"OnPlayerInteriorChange",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),newInteriorId:t,oldInteriorId:i}}}),[gp]=p({name:"OnPlayerRequestDownload",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),type:t,crc:i}}}),[Pp]=p({name:"OnPlayerFinishedDownloading",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),virtualWorld:t}}}),[Sp]=p({name:"OnPlayerWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,n,r,s){return{player:f.getInstance(e),weapon:t,hitType:i,hitId:a,fX:n,fY:r,fZ:s}}});let Me=null;const V=new Map,Se=new Map;function fi(e){if(!e.isConnected()){V.has(e)&&(clearInterval(V.get(e)),V.delete(e),Se.delete(e));return}let t=Se.get(e)||1;if(t>=f.MAX_CHECK_ANDROID_DELAY){clearInterval(V.get(e)),V.delete(e),Se.delete(e),at(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:i})=>{i===72&&(e[ae].isAndroid=!1,V.has(e)&&(clearInterval(V.get(e)),V.delete(e),Se.delete(e)),at(e,!1))}).catch(()=>{}),t++,Se.set(e,t)}const[Ep,yp]=p({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[Ap,Np]=p({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,i,a){return{player:e,pausedAt:t,now:i,diff:a}}}),[Cp,Dp]=p({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,i){return{player:e,newFps:t,oldFps:i}}}),[Tp,at]=p({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});ui(({player:e,next:t})=>{if(!Me&&f.getInstances().length&&(Me=setInterval(()=>{f.getInstances().filter(a=>{const n=a.getState()!==we.NONE;return!a.isPaused&&!a.isNpc()&&n}).forEach(a=>{Date.now()-a.lastUpdateTick>1e3&&(a.isPaused=!0,yp(a,a.lastUpdateTick))})},500)),e.isNpc())return e[ae].isAndroid=!1,t();if(f.SKIP_CHECK_ANDROID)return e[ae].isAndroid=!e.isUsingOfficialClient(),at(e,e[ae].isAndroid),t();fi(e);const i=setInterval(()=>fi(e),1e3);return V.set(e,i),t()}),mi(({player:e,next:t})=>(Me&&f.getInstances().length<=1&&(clearInterval(Me),Me=null),V.has(e)&&(clearInterval(V.get(e)),V.delete(e),Se.delete(e)),t()));function vp(e){if(!f.isConnected(e.id))return;const t=Date.now();if(t-e.lastUpdateFpsTick>=1e3){const i=e.getDrunkLevel();if(i<100){e.setDrunkLevel(2e3),e.lastDrunkLevel=2e3,e.lastFps=0;return}e.lastUpdateFpsTick=t;const a=e.lastFps,n=e.lastDrunkLevel-i-1;e.lastFps=n,e.lastDrunkLevel=i,Dp(e,n,a)}}pi(({player:e,next:t})=>{if(!e.isNpc()){const i=Date.now();e.isPaused&&(e.isPaused=!1,Np(e,e.lastUpdateTick,i,i-e.lastUpdateTick)),e.lastUpdateTick=i,vp(e)}return t()});const nt=Object.freeze({onConnect:ui,onDisconnect:mi,onPause:Ep,onResume:Ap,onUpdate:pi,onText:ap,onEnterExitModShop:np,onClickMap:rp,onClickPlayer:sp,onDeath:lp,onGiveDamage:op,onKeyStateChange:dp,onRequestClass:cp,onRequestSpawn:_p,onSpawn:hp,onStateChange:up,onStreamIn:mp,onStreamOut:pp,onTakeDamage:fp,onInteriorChange:Ip,onRequestDownload:gp,onFinishedDownloading:Pp,onCheckResponse:_i,onCommandReceived:Um,onCommandPerformed:jm,onCommandError:Xm,onCommandText:k.on,offCommandText:k.off,onDialogResponse:hi,onLocaleChange:qm,onCharsetChange:tp,onFpsUpdate:Cp,onWeaponShot:Sp,onAndroidCheck:Tp,onCommandTextRaw:zm}),Lp=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],wp=[[13,18,19,20,21,24],[1,3,4,5,6,7,13,17,19,20,142,143,144,145],[],[],[0,2,7,13,16,17,19,20,21],[0,1,14,18,19,20,21,23],[],[],[],[],[1,3,7,13,17,19,20,21,23,24],[],[],[],[],[1,3,7,17,18,19,23],[],[],[2,6,16,20,21],[],[1,3,4,5,19,21],[0,14,16,18,19,20,21,23],[7,13,17,19,20,21],[],[],[],[1,3,4,5,6,19,21],[],[],[],null,[],[],[],[],[],[1,3,6,7,13,17,19,20,21,22],[],[],[1,3,7,13,17,23,142,143,144,145],[],[],[],[],[],[],null,[],null,null,[],[],null,null,null,[],[],[],[],[],[],null,null,null,[],[],[],[],null,[],[],[],null,null,[],[],[],[6,7,17,18,19,20,21],[4,5,12,13,20,21,22,24],[],[],null,[],[],null,[],[],[],[],[0,2,4,5,6,13,16,18,19,20,24],[],[3,7,14,17,18,19,20,21,23,142,143,144,145],[0,4,5,6,16],null,[],[],[1,2,3,6,7,11,17,19,20,23,142,143],[],[],[],[13,19,20,21,24],[],[],[],[],[],[],[],[],null,null,[],[],[],[],[],[0,2,4,7,15,16,17,18,19,20,21],[2,3,7,16,17,18,19,20,23,142,143,144,145],[1,3,5,6,7,13,17,18,20,23,142,143,144,145],[],[],null,null,null,[],[],[],[1,7,14,15,17,18,20,21],[],[1,3,6,7,11,12,17,18,19,20,23],[],[],[],[],[100,101,106,122,123,124,125,126,127,178,179,180,185],[109,110,113,114,115,116,117,118,119,120,121],[103,104,105,107,108,128,181,182,183,184],null,null,[],[1,4,6,7,17,18,19,20,23,24,142,143,144,145],[],[14,15,18,19,20,21,144,145],[],[],[],[1,2,4,6,7,17,18,19,23,24,142,143,144,145],[0,3,16,18,19,20,21,142,143],[],[1,3,7,11,12,17,18,19,20,23,142,143,144,145],[1,3,4,5,6,18,19,20,23,142,143,144,145],[2,3,5,6,16,18,19,20,21,23],[],[],[],[],[],[],[88,89,90,91,92,93,94,95,163,164,165,166,167,168],[65,66,67,68,69,70,71,72,158,159,160,161,162,173],[26,27,28,29,30,31,32,33,138,139,140,141,169,170],[55,56,57,58,59,60,61,62,63,64,154,155,156,157],[34,35,36,37,38,39,40,41,146,147,148,149,171,172],[],[],[45,46,47,48,49,50,51,52,53,54,150,151,152,153],[],[102,129,130,131,132,133,186,187,188,189],[],null,null,[],[],[],[],[42,43,44,99,174,175,176,177],[134,135,136,137,190,191,192,193],[],[],[],[1,6,7,17,18,20,23],null,[],[],[],[0,1,2,3,6,7,13,14,15,16,17,18,19,20,21,22,23,24,142,143,144,145],null,[],[],[0,4,5,6,7,13,16,17,18,20,24,144,145],null,[],[],[],[],null,[],[],[],[],[4,5,6,7,13,17,18,20,22],[],[],[1,6,7,17,18,19,20,23,24,142,143,144,145],[],[],[],[],[],[],[],[]],Rp=(e,t)=>{if(!rt(e))return!1;const i=wp[e-400];if(i===null)return!1;const a=t-1e3;return Lp.includes(a)||i.includes(a)},rt=e=>e>=400&&e<=611,bp=(e,t)=>{if(t<0||t>2)return!1;const i=new Map([[483,0],[534,2],[535,2],[536,2],[558,2],[559,2],[560,2],[561,2],[562,2],[565,2],[567,2],[575,1],[576,2]]).get(e);return i===void 0?!1:t<=i},[Op]=p({name:"OnGameModeInit",identifier:""}),[Ii,Gp]=p({name:"OnGameModeInitReal",isNative:!1});Op(()=>{Promise.resolve().then(Gp)});const[gi]=p({name:"OnGameModeExit",identifier:""}),[Fp]=p({name:"OnIncomingConnection",identifier:"isi",defaultValue:!1,beforeEach(e,t,i){return{playerId:e,ipAddress:t,port:i}}}),[Bp]=p({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:A.decodeFromBuf(e)}}}),[xp]=p({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,i){return{ip:A.decodeFromBuf(e),password:A.decodeFromBuf(t),success:!!i,ipBuffer:e,passwordBuffer:t}}}),_e=[],Ee=[],Ze=new Map,st=async e=>{try{return await new Promise((t,i)=>{const a=_e.findIndex(l=>l.name===e);if(a===-1)return;const n=_e[a];function r(l){l.length&&Ze.set(e,l),_e.splice(a,1),Ee.push(n),setTimeout(t)}const s=n.load();s instanceof Promise?s.then(r).catch(i):r(s)})}catch(t){throw new Error(`[GameMode]: script ${e} load fail
|
|
3
|
-
err:${t}`)}},
|
|
4
|
-
${t}`)}},Vp=async e=>{await lt(e),await st(e)},Mp=e=>Ze.has(e);Ii(async({next:e})=>{const t=_e.map(i=>i.name);for(const i of t)await st(i);return e()}),gi(async({next:e})=>{const t=Ee.map(i=>i.name);for(const i of t)await lt(i);return e()});const kp=function(e,...t){if(_e.some(i=>i.name===e.name)||Ee.some(i=>i.name===e.name))throw new Error(`[GameMode]: script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),_e.push(e)};class b{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=Ii;static onExit=gi;static onIncomingConnection=Fp;static onRconCommand=Bp;static onRconLoginAttempt=xp;static use(t,...i){return kp(t,...i),this}static loadUseScript=st;static reloadUseScript=Vp;static unloadUseScript=lt;static isUseScriptLoaded=Mp;static enableCmdCaseSensitive=k.enableCaseSensitive;static disableCmdCaseSensitive=k.disableCaseSensitive;static isCmdCaseSensitive=k.isCaseSensitive;static supportAllNickname(){for(let t=0;t<=255;t++)this.isNickNameCharacterAllowed(t)||this.allowNickNameCharacter(t,!0)}static setWeather(t){if(t<0||t>255)throw new Error("[GameMode]: The valid weather value is only 0 to 255");return As(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return Ss(t)}static getWorldTime=Es;static setTeamCount=js;static sendRconCommand=wm;static addPlayerClass=Ks;static addPlayerClassEx=Xs;static createExplosion(t,i,a,n,r){if(n<0||n>13)throw new Error("[GameMode]: The valid explosion type value is only 0 to 13");return Ds(t,i,a,n,r)}static manualVehicleEngineAndLights=Hc;static blockIpAddress=_l;static unBlockIpAddress=hl;static getServerTickRate=Gs;static addSimpleModel(t,i,a,n,r){return this.checkSimpleModel(t,i,a,n,r)?um(t,i,a,n,r):0}static addSimpleModelTimed(t,i,a,n,r,s,l){return this.checkSimpleModel(t,i,a,n,r,s,l)?mm(t,i,a,n,r,s,l):0}static checkSimpleModel(t,i,a,n,r,s,l){if(t<-1)throw new Error("[GameMode]: AddSimpleModel - Error virtual world");if(i<0)throw new Error("[GameMode]: AddSimpleModel - Error baseId");if(a>-1e3||a<-3e4)throw new Error("[GameMode]: AddSimpleModel - Error newId range");if(n.trim().length===0)throw new Error("[GameMode]: AddSimpleModel - Empty dffName");if(r.trim().length===0)throw new Error("[GameMode]: AddSimpleModel - Empty txdName");if(s!==void 0&&(s<0||s>23))throw new Error("[GameMode]: AddSimpleModel - Error time on range");if(l!==void 0&&(l<0||l>23))throw new Error("[GameMode]: AddSimpleModel - Error time off range");return 1}static isValidCustomModel=ri;static getCustomModePath=ym;static getConsoleVarAsString(t,i="utf8"){const{consoleVarBuf:a,ret:n}=rs(t);return{consoleVar:A.decodeFromBuf(A.getValidStr(a),i),ret:n}}static getRestartTime=hs;static setRestartTime=_s;static allowAdminTeleport=qr;static isAdminTeleportAllowed=es;static allowInteriorWeapons=ts;static areInteriorWeaponsAllowed=is;static areAllAnimationsEnabled=as;static enableAllAnimations=ns;static enableStuntBonusForAll=Bs;static enableVehicleFriendlyFire=ys;static enableZoneNames=Ts;static disableInteriorEnterExits=Ls;static setGameModeText=Is;static getGravity=Ns;static setGravity=Cs;static showNameTags=gs;static disableNameTagLOS=Rs;static usePlayerPedAnims=vs;static showPlayerMarkers=Ps;static limitPlayerMarkerRadius=Os;static limitGlobalChatRadius=bs;static setNameTagDrawDistance=ws;static findModelFileNameFromCRC=fm;static findTextureFileNameFromCRC=Im;static getWeaponName=ks;static setObjectsDefaultCameraCollision=hm;static vectorSize=et;static clearBanList=pl;static isBanned=fl;static isValidNickName=Xr;static allowNickNameCharacter=Zr;static isNickNameCharacterAllowed=Yr;static addServerRule=zr;static setServerRule=$r;static isValidServerRule=Jr;static removeServerRule=Qr;static getWeaponSlot=Ms;static getAvailableClasses=Hs;static getPlayerClass=Us;static editPlayerClass=Ws;static toggleChatTextReplacement=xs;static chatTextReplacementToggled=Vs;static getConsoleVarAsInt=ss;static getConsoleVarAsBool=ls;static getWeather=os;static getServerRuleFlag=ds;static setServerRuleFlags=cs}const N={skip:!1};b.onInit(({next:e})=>(N.skip=!1,e())),b.onExit(({next:e})=>(N.skip=!0,e()));class D{sourceInfo=null;isStatic=!1;static createdCount=0;_id=d.VEHICLE_ID;get id(){return this._id}constructor(t,i=!1){if(typeof t=="number"){const a=D.getInstance(t);if(a)return a;this._id=t,Z.set(this._id,this),this.isValid()&&D.createdCount++}else this.sourceInfo=t,this.isStatic=i}create(t=!1){if(this.id!==d.VEHICLE_ID)throw new Error("[Vehicle]: Unable to create again");if(!this.sourceInfo)throw new Error("[Vehicle]: Unable to create with only id");if(D.createdCount===B.MAX_VEHICLES)throw new Error("[Vehicle]: Unable to continue to create vehicle, maximum allowable quantity has been reached");const{modelId:i,x:a,y:n,z:r,zAngle:s,color:l,respawnDelay:o,addSiren:c}=this.sourceInfo;if(!(!t&&!rt(i))){if(this.isStatic){if(o===void 0){this._id=D.__inject_AddStaticVehicle(i,a,n,r,s,l[0],l[1]);return}this._id=D.__inject_AddStaticVehicleEx(i,a,n,r,s,l[0],l[1],o||-1,c||!1)}else this._id=D.__inject_CreateVehicle(i,a,n,r,s,l[0],l[1],o||-1,c||!1);D.createdCount++,Z.set(this._id,this)}}destroy(){if(this.id===d.VEHICLE_ID&&!N.skip)throw new Error("[Vehicle]: Unable to destroy the vehicle before create");N.skip||D.__inject_DestroyVehicle(this.id),D.createdCount--,Z.delete(this._id),this._id=d.VEHICLE_ID}addComponent(t){if(this.id===d.VEHICLE_ID)return 0;if(!Rp(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return Jc(this.id,t)}removeComponent(t){if(this.getComponentInSlot(D.getComponentType(t))===0)throw new Error(`[Vehicle]: component id ${t} does not exist on this vehicle`);return Qc(this.id,t)}getComponentInSlot(t){return d_(this.id,t)}linkToInterior(t){return this.id===d.VEHICLE_ID?0:$c(this.id,t)}setVirtualWorld(t){return this.id===d.VEHICLE_ID?0:g_(this.id,t)}getVirtualWorld(){return this.id===d.VEHICLE_ID?0:P_(this.id)}repair(){return this.id===d.VEHICLE_ID?0:__(this.id)}setPos(t,i,a){return this.id===d.VEHICLE_ID?!1:Gc(this.id,t,i,a)}getPos(){return Oc(this.id)}getHealth(){return i_(this.id)}setHealth(t){return this.id===d.VEHICLE_ID?0:t_(this.id,t)}isPlayerIn(t){return this.id===d.VEHICLE_ID?!1:Td(t.id,this.id)}putPlayerIn(t,i){if(this.id===d.VEHICLE_ID||i<0)return 0;if(i>4)throw new Error("[Vehicle]: If the seat is invalid or is taken, will cause a crash when they EXIT the vehicle.");return nd(t.id,this.id,i)}getZAngle(){return Fc(this.id)}setZAngle(t){return this.id===d.VEHICLE_ID?0:Mc(this.id,t)}setNumberPlate(t){if(this.id===d.VEHICLE_ID)return 0;if(t.length<1||t.length>32)throw new Error("[Vehicle]: The length of the number plate ranges up to 32 characters");if(!/^[a-zA-Z0-9]+$/.test(t))throw new Error("[Vehicle]: number plates only allow letters and numbers");return l_(this.id,t)}changeColors(t,i){return this.id===d.VEHICLE_ID?0:qc(this.id,t,i)}setVelocity(t,i,a){return this.id===d.VEHICLE_ID?!1:u_(this.id,t,i,a)}getVelocity(){return h_(this.id)}getSpeed(t=180){if(this.id===d.VEHICLE_ID)return 0;const{x:i,y:a,z:n}=this.getVelocity();return et(i,a,n)*t}setAngularVelocity(t,i,a){return this.id===d.VEHICLE_ID?!1:m_(this.id,t,i,a)}getDamageStatus(){return p_(this.id)}updateDamageStatus(t,i,a,n){return f_(this.id,t,i,a,n)}getDistanceFromPoint(t,i,a){return Vc(this.id,t,i,a)}getModel(){return o_(this.id)}static getModelInfo(t,i){return I_(t,i)}getModelInfo(t){return D.getModelInfo(this.getModel(),t)}getRotation(){return Bc(this.id)}getRotationQuat(){return xc(this.id)}setRespawn(){return this.id===d.VEHICLE_ID?0:zc(this.id)}isStreamedIn(t){return this.id===d.VEHICLE_ID?!1:bc(this.id,t.id)}setParamsCarDoors(t,i,a,n){return this.id===d.VEHICLE_ID?0:Kc(this.id,t,i,a,n)}setParamsCarWindows(t,i,a,n){return this.id===d.VEHICLE_ID?0:Zc(this.id,t,i,a,n)}getParamsCarDoors(){return Xc(this.id)}getParamsCarWindows(){return Yc(this.id)}setParamsEx(t,i,a,n,r,s,l){return this.id===d.VEHICLE_ID?0:Uc(this.id,t,i,a,n,r,s,l)}getParamsEx(){if(this.id===d.VEHICLE_ID)return{engine:-1,lights:-1,alarm:-1,doors:-1,bonnet:-1,boot:-1,objective:-1};const[t,i,a,n,r,s,l]=Wc(this.id);return{engine:t,lights:i,alarm:a,doors:n,bonnet:r,boot:s,objective:l}}toggleEngine(t){if(this.id===d.VEHICLE_ID)return 0;const{lights:i,alarm:a,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(t,i,a,n,r,s,l)}toggleLights(t){if(this.id===d.VEHICLE_ID)return 0;const{engine:i,alarm:a,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,t,a,n,r,s,l)}toggleAlarm(t){if(this.id===d.VEHICLE_ID)return 0;const{engine:i,lights:a,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,t,n,r,s,l)}toggleDoors(t){if(this.id===d.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,n,t,r,s,l)}toggleBonnet(t){if(this.id===d.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:n,doors:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,n,r,t,s,l)}toggleBoot(t){if(this.id===d.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:n,doors:r,bonnet:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,n,r,s,t,l)}toggleObjective(t){if(this.id===d.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:n,doors:r,bonnet:s,boot:l}=this.getParamsEx();return this.setParamsEx(i,a,n,r,s,l,t)}getParamsSirenState(){return this.id===d.VEHICLE_ID?-2:jc(this.id)}setParamsForPlayer(t,i,a){return this.id===d.VEHICLE_ID?0:kc(this.id,t.id,i,a)}isTrailerAttached(){return this.id===d.VEHICLE_ID?!1:r_(this.id)}changePaintjob(t){return this.id===d.VEHICLE_ID||!bp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),e_(this.id,t),1)}attachTrailer(t){return this.id===d.VEHICLE_ID?0:a_(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&n_(this.id)}getTrailer(){return D.getInstance(s_(this.id))}isValid(){return N.skip&&this.id!==d.VEHICLE_ID?!0:D.isValid(this.id)}getMatrix(){return vc(this.id)}getTrainSpeed(){return this.id===d.VEHICLE_ID?0:Tc(this.id)}getHydraReactorAngle(){return this.id===d.VEHICLE_ID?0:Dc(this.id)}getLandingGearState(){return this.id===d.VEHICLE_ID?0:Cc(this.id)}getSirenState(){return this.id===d.VEHICLE_ID?0:Nc(this.id)}getDriver(){return X.get(yc(this.id))}getLastDriver(){return X.get(Ec(this.id))}isSirenEnabled(){return Pc(this.id)}toggleSirenEnabled(t){return this.id===d.VEHICLE_ID?0:Ic(this.id,t)}setParamsSirenState(t){return this.id===d.VEHICLE_ID?0:gc(this.id,t)}isDead(){return this.id===d.VEHICLE_ID?!0:mc(this.id)}setDead(t){return this.id===d.VEHICLE_ID?!1:pc(this.id,t)}setBeenOccupied(t){return this.id===d.VEHICLE_ID?!1:fc(this.id,t)}getRespawnTick(){return this.id===d.VEHICLE_ID?0:hc(this.id)}setRespawnTick(t){return this.id===d.VEHICLE_ID?!1:uc(this.id,t)}isOccupied(){return this.id===d.VEHICLE_ID?!1:_c(this.id)}hasBeenOccupied(){return this.id===d.VEHICLE_ID?!1:cc(this.id)}getOccupiedTick(){return this.id===d.VEHICLE_ID?0:oc(this.id)}setOccupiedTick(t){return this.id===d.VEHICLE_ID?0:dc(this.id,t)}getCab(){return this.id===d.VEHICLE_ID?0:lc(this.id)}getRespawnDelay(){return this.id===d.VEHICLE_ID?0:sc(this.id)}setRespawnDelay(t){return this.id===d.VEHICLE_ID?0:rc(this.id,t)}getNumberPlate(){return nc(this.id)}getInterior(){return this.id===d.VEHICLE_ID?0:ac(this.id)}getPaintjob(){return this.id===d.VEHICLE_ID?d.VEHICLE_ID:ic(this.id)}getColors(){return tc(this.id)}setSpawnInfo(t,i,a,n,r,s,l,o=-2,c=-2,_=!1){return this.id===d.VEHICLE_ID||!_&&!rt(t)?0:ec(this.id,t,i,a,n,r,C(s),C(l),o,c)}getSpawnInfo(){return qd(this.id)}getRandomColorPair(){return ai(this.getModel())}show(){return this.id===d.VEHICLE_ID?!1:A_(this.id)}hide(){return this.id===d.VEHICLE_ID?!1:N_(this.id)}isHidden(){return this.id===d.VEHICLE_ID?!1:C_(this.id)}getVehicleOccupant(t){return R_(this.id,t)}getVehicleMaxPassengers(){return ni(this.getModel())}countVehicleOccupants(){return b_(this.getModel())}static getVehicleMaxPassengers=ni;static getRandomColorPair=ai;static getComponentType=c_;static colorIndexToColor=Lc;static isValid=S_;static getModelsUsed=Ac;static getModelCount=Sc;static getInstance(t){return Z.get(t)}static getInstances(){return[...Z.values()]}static __inject_AddStaticVehicle=E_;static __inject_AddStaticVehicleEx=y_;static __inject_CreateVehicle=wc;static __inject_DestroyVehicle=Rc}b.onExit(({next:e})=>(D.getInstances().forEach(t=>t.destroy()),Z.clear(),e()));const[Hp]=p({name:"OnVehicleDamageStatusUpdate",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{vehicle:D.getInstance(e),player:f.getInstance(t)}}}),[Up]=p({name:"OnVehicleDeath",identifier:"ii",beforeEach(e,t){return{vehicle:D.getInstance(e),killer:f.getInstance(t)}}}),[Wp]=p({name:"OnVehicleMod",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),vehicle:D.getInstance(t),componentId:i}}}),[jp]=p({name:"OnVehiclePaintjob",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),vehicle:D.getInstance(t),paintjobId:i}}}),[Kp]=p({name:"OnVehicleRespray",identifier:"iiii",beforeEach(e,t,i,a){return{player:f.getInstance(e),vehicle:D.getInstance(t),color:[i,a]}}}),[Xp]=p({name:"OnVehicleSirenStateChange",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:f.getInstance(e),vehicle:D.getInstance(t),state:!!i}}}),[Zp]=p({name:"OnVehicleSpawn",identifier:"i",beforeEach(e){return{vehicle:D.getInstance(e)}}}),[Yp]=p({name:"OnVehicleStreamIn",identifier:"ii",beforeEach(e,t){return{vehicle:D.getInstance(e),forPlayer:f.getInstance(t)}}}),[zp]=p({name:"OnVehicleStreamOut",identifier:"ii",beforeEach(e,t){return{vehicle:D.getInstance(e),forPlayer:f.getInstance(t)}}}),[$p]=p({name:"OnPlayerEnterVehicle",identifier:"iii",beforeEach(e,t,i){return{player:f.getInstance(e),vehicle:D.getInstance(t),isPassenger:!!i}}}),[Jp]=p({name:"OnPlayerExitVehicle",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),vehicle:D.getInstance(t)}}}),[Qp]=p({name:"OnTrailerUpdate",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),vehicle:D.getInstance(t)}}}),[qp]=p({name:"OnUnoccupiedVehicleUpdate",identifier:"iiiffffff",beforeEach(e,t,i,a,n,r,s,l,o){return{vehicle:D.getInstance(e),player:f.getInstance(t),passengerSeat:i,newX:a,newY:n,newZ:r,velX:s,velY:l,velZ:o}}}),ef=Object.freeze({onDamageStatusUpdate:Hp,onDeath:Up,onMod:Wp,onPaintjob:jp,onRespray:Kp,onSirenStateChange:Xp,onSpawn:Zp,onStreamIn:Yp,onStreamOut:zp,onPlayerEnter:$p,onPlayerExit:Jp,onTrailerUpdate:Qp,onUnoccupiedUpdate:qp}),[he]=p({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:f.getInstance(i)}}}),[ue]=p({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:f.getInstance(i)}}}),[tf]=p({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class S{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=or;static setTickRate=dr;static getPlayerTickRate(t){return cr(t.id)}static setPlayerTickRate(t,i=50){return _r(t.id,i)}static toggleChunkStream=hr;static isToggleChunkStream=ur;static getChunkTickRate(t,i=-1){return i instanceof f?zt(t,i.id):zt(t,i)}static setChunkTickRate(t,i,a=-1){return a instanceof f?$t(t,i,a.id):$t(t,i,a)}static getChunkSize=mr;static setChunkSize=pr;static getMaxItems=fr;static setMaxItems=Ir;static getVisibleItems(t,i=-1){return i instanceof f?Jt(t,i.id):Jt(t,i)}static setVisibleItems(t,i,a=-1){return a instanceof f?Qt(t,i,a.id):Qt(t,i,a)}static getRadiusMultiplier(t,i=-1){return i instanceof f?qt(t,i.id):qt(t,i)}static setRadiusMultiplier(t,i,a=-1){return a instanceof f?ei(t,i,a.id):ei(t,i,a)}static getTypePriority=gr;static setTypePriority=Pr;static getCellDistance=Sr;static setCellDistance=Er;static getCellSize=yr;static setCellSize=Ar;static toggleItemStatic=Nr;static isToggleItemStatic=Cr;static toggleItemInvAreas=Dr;static isToggleItemInvAreas=Tr;static toggleItemCallbacks=vr;static isToggleItemCallbacks=Lr;static toggleErrorCallback=wr;static isToggleErrorCallback=Rr;static amxUnloadDestroyItems=br;static processActiveItems=Or;static toggleIdleUpdate(t,i){return Gr(t.id,i)}static isToggleIdleUpdate(t){return Fr(t.id)}static toggleCameraUpdate(t,i){return Br(t.id,i)}static isToggleCameraUpdate(t){return xr(t.id)}static toggleItemUpdate(t,i,a){return Vr(t.id,i,a)}static isToggleItemUpdate(t,i){return Mr(t.id,i)}static getLastUpdateTime(){return kr()}static update(t,i=-1){return Hr(t.id,i)}static updateEx(t,i,a,n,r,s,l,o,c){return Ur(t.id,i,a,n,r,s,l,o,c)}static getDistanceToItem=un;static toggleItem(t,i,a,n){return mn(t.id,i,a,n)}static isToggleItem(t,i,a){return pn(t.id,i,a)}static toggleAllItems(t,i,a,n=[-1]){return fn(t.id,i,a,n)}static getItemInternalID(t,i,a){return In(t.id,i,a)}static getItemStreamerID(t,i,a){return gn(t.id,i,a)}static isItemVisible(t,i,a){return Pn(t.id,i,a)}static destroyAllVisibleItems(t,i,a=1){return Sn(t.id,i,a)}static countVisibleItems(t,i,a=1){return En(t.id,i,a)}static destroyAllItems=yn;static countItems=An;static getNearbyItems=Nn;static getAllVisibleItems(t,i,a){return Cn(t.id,i,a)}static getItemPos=Dn;static setItemPos=Tn;static getItemOffset=vn;static setItemOffset=Ln;static getFloatData=Ha;static setFloatData=Ua;static getIntData=Wa;static setIntData=ja;static getArrayData=Ka;static setArrayData=Xa;static isInArrayData=Za;static appendArrayData=Ya;static removeArrayData=za;static getArrayDataLength=Yt;static getUpperBound=$a;static onPluginError=tf}class M{sourceInfo=null;_id=m.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=M.getInstance(t);if(i)return i;this._id=t,Y.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerObject]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerObject]: Unable to create with only id");let{streamDistance:t,drawDistance:i,worldId:a,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{modelId:o,x:c,y:_,z:u,rx:I,ry:P,rz:g,extended:y}=this.sourceInfo;return t??=v.OBJECT_SD,i??=v.OBJECT_DD,l??=0,y?(typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=en(o,c,_,u,I,P,g,t,i,a,n,r,s,l)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=wn(o,c,_,u,I,P,g,a,n,r,t,i,s,l)),Y.set(this._id,this),this}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[StreamerObject]: Unable to destroy the object before create");return N.skip||Rn(this.id),Y.delete(this.id),this._id=m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:M.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:S.getIntData(E.OBJECT,this._id,K.MODEL_ID)}getPos(){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Cannot get position before create");return On(this.id)}setPos(t,i,a){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Cannot set position before create");return Gn(this.id,t,i,a)}getRot(){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Cannot get rotation before create");return Fn(this.id)}setRot(t,i,a){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Cannot set rotation before create");return Bn(this.id,t,i,a)}move(t,i,a,n,r=-1e3,s=-1e3,l=-1e3){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Cannot start moving before create");if(n<0)throw new Error("[StreamerObject]: speed must not be less than 0");if(n>120*1e3)throw new Error("[StreamerObject]: speed more than 120 seconds, warn if it's not intentional");return this.isMoving()&&this.stop(),xn(this.id,t,i,a,n,r,s,l)}stop(){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Cannot stop moving before create");return Vn(this.id)}isMoving(){return this.id===m.INVALID_ID?!1:Mn(this.id)}attachCamera(t){if(this.id===m.INVALID_ID||t.id===d.PLAYER_ID)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return kn(t.id,this.id)}attachToObject(t,i,a,n,r,s,l,o=!0){if(this.id===m.INVALID_ID||t.id===m.INVALID_ID)throw new Error("[StreamerObject]: Cannot attachToObject before both are created");return Hn(this.id,t.id,i,a,n,r,s,l,o)}attachToPlayer(t,i,a,n,r,s,l){if(this.id===m.INVALID_ID||t.id===d.PLAYER_ID)throw new Error("[StreamerObject]: Cannot attachToPlayer before both are created");return Un(this.id,t.id,i,a,n,r,s,l)}attachToVehicle(t,i,a,n,r,s,l){if(this.id===m.INVALID_ID||t.id===d.VEHICLE_ID)throw new Error("[StreamerObject]: Cannot attachToVehicle before both are created");return Wn(this.id,t.id,i,a,n,r,s,l)}edit(t){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Unable to edit before create");return t.endObjectEditing(),jn(t.id,this.id)}isMaterialUsed(t){return this.id===m.INVALID_ID?!1:Kn(this.id,t)}removeMaterial(t){return this.id===m.INVALID_ID||!this.isMaterialUsed(t)?0:Xn(this.id,t)}getMaterial(t){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Unable to get material before create");return Bm(this.id,t)}setMaterial(t,i,a,n,r="#000"){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Unable to set material before create");return Zn(this.id,t,i,a,n,C(r))}isMaterialTextUsed(t){return this.id===m.INVALID_ID?!1:Yn(this.id,t)}removeMaterialText(t){return this.id===m.INVALID_ID||!this.isMaterialTextUsed(t)?0:zn(this.id,t)}getMaterialText(t){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Unable to get material text before create");return xm(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,i,a,n=qe.SIZE_256x128,r="Arial",s=24,l=1,o="#fff",c="#000",_=0){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Unable to set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),Fm(t||"utf8",this.id,i,a,n,r,s,l,C(o),C(c),_)}getPlayerCameraTarget(t){const i=$n(t.id);if(i!==d.OBJECT_ID)return Y.get(i)}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.OBJECT,this.id)}setNoCameraCollision(){return Jn(this.id)}getNoCameraCollision(){return Qn(this.id)}static isValid=bn;static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.OBJECT,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Y.get(t)}static getInstances(){return[...Y.values()]}}b.onExit(({next:e})=>(M.getInstances().forEach(t=>t.destroy()),Y.clear(),e()));const[af,nf]=p({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[rf,sf]=p({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});he(({type:e,id:t,forPlayer:i,next:a})=>e===E.OBJECT?nf(i,M.getInstance(t)):a()),ue(({type:e,id:t,forPlayer:i,next:a})=>e===E.OBJECT?sf(i,M.getInstance(t)):a());const[lf]=p({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:M.getInstance(e)}}}),[of]=p({name:"OnPlayerEditDynamicObject",identifier:"iiiffffff",defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o){return{player:f.getInstance(e),object:M.getInstance(t),response:i,x:a,y:n,z:r,rX:s,rY:l,rZ:o}}}),[df]=p({name:"OnPlayerSelectDynamicObject",identifier:"iiifff",beforeEach(e,t,i,a,n,r){return{player:f.getInstance(e),object:M.getInstance(t),modelId:i,x:a,y:n,z:r}}}),[cf]=p({name:"OnPlayerShootDynamicObject",identifier:"iiifff",beforeEach(e,t,i,a,n,r){return{player:f.getInstance(e),object:M.getInstance(i),weapon:t,x:a,y:n,z:r}}}),[_f]=p({name:"OnPlayerEditAttachedObject",identifier:"iiiiifffffffff",defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o,c,_,u,I,P){return{player:f.getInstance(e),response:t,index:i,modelId:a,boneId:n,fOffsetX:r,fOffsetY:s,fOffsetZ:l,fRotX:o,fRotY:c,fRotZ:_,fScaleX:u,fScaleY:I,fScaleZ:P}}}),hf=Object.freeze({onMoved:lf,onPlayerEdit:of,onPlayerSelect:df,onPlayerShoot:cf,onPlayerEditAttached:_f,onStreamIn:af,onStreamOut:rf});class me{sourceInfo=null;_id=m.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=me.getInstance(t);if(i)return i;this._id=t,le.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerMapIcon]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerMapIcon]: Unable to create with only id");let{style:t,streamDistance:i,worldId:a,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{x:o,y:c,z:_,type:u,color:I,extended:P}=this.sourceInfo;if(u<0||u>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=Xe.LOCAL,i??=v.MAP_ICON_SD,l??=0,P?(typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=rn(o,c,_,u,C(I),t,i,a,n,r,s,l),le.set(this._id,this),this):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=Ja(o,c,_,u,C(I),a,n,r,i,t,s,l),le.set(this._id,this),this)}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[StreamerMapIcon]: Unable to destroy the map icon before create");return N.skip||Qa(this.id),le.delete(this._id),this._id=m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:me.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerMapIcon]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.MAP_ICON,this.id)}static isValid=qa;static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.MAP_ICON,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return le.get(t)}static getInstances(){return[...le.values()]}}b.onExit(({next:e})=>(me.getInstances().forEach(t=>t.destroy()),le.clear(),e()));const[uf,mf]=p({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[pf,ff]=p({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});he(({type:e,id:t,forPlayer:i,next:a})=>e===E.MAP_ICON?mf(i,me.getInstance(t)):a()),ue(({type:e,id:t,forPlayer:i,next:a})=>e===E.MAP_ICON?ff(i,me.getInstance(t)):a());const If=Object.freeze({onStreamIn:uf,onStreamOut:pf});class H{sourceInfo=null;_id=m.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=H.getInstance(t);if(i)return i;this._id=t,Pe.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerPickup]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerPickup]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,modelId:o,x:c,y:_,z:u,extended:I}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=v.PICKUP_SD,s??=0,I?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=H.__inject_CreateDynamicPickupEx(o,l,c,_,u,t,i,a,n,r,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=H.__inject_CreateDynamicPickup(o,l,c,_,u,i,a,n,t,r,s)),Pe.set(this._id,this),this}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[StreamerPickup]: Unable to destroy the pickup before create");return N.skip||H.__inject_DestroyDynamicPickup(this.id),Pe.delete(this.id),this._id=m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:H.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerPickup]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.PICKUP,this.id)}static isValid=tr;static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.PICKUP,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Pe.get(t)}static getInstances(){return[...Pe.values()]}static __inject_CreateDynamicPickup=qn;static __inject_CreateDynamicPickupEx=tn;static __inject_DestroyDynamicPickup=er}b.onExit(({next:e})=>(H.getInstances().forEach(t=>t.destroy()),Pe.clear(),e()));const[gf,Pf]=p({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Sf,Ef]=p({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});he(({type:e,id:t,forPlayer:i,next:a})=>e===E.PICKUP?Pf(i,H.getInstance(t)):a()),ue(({type:e,id:t,forPlayer:i,next:a})=>e===E.PICKUP?Ef(i,H.getInstance(t)):a());const[yf]=p({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),pickup:H.getInstance(t)}}}),Af=Object.freeze({onPlayerPickUp:yf,onStreamIn:gf,onStreamOut:Sf});class ${sourceInfo=null;_id=m.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=$.getInstance(t);if(i)return i;this._id=t,se.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerCheckpoint]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerCheckpoint]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{size:l,x:o,y:c,z:_,extended:u}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=v.CP_SD,s??=0,u?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=an(o,c,_,l,t,i,a,n,r,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=Fa(o,c,_,l,i,a,n,t,r,s)),se.set(this._id,this),this}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[StreamerCheckpoint]: Unable to destroy the checkpoint before create");return N.skip||Ba(this.id),se.delete(this.id),this._id=m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:$.isValid(this.id)}togglePlayer(t,i){if(this.id===m.INVALID_ID)throw new Error("[StreamerCheckpoint]: Unable to toggle the player before create");return xa(t.id,this.id,i),this}isPlayerIn(t){return this.id===m.INVALID_ID?!1:Ma(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.CP,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.CP,this.id)}static isValid=Zt;static togglePlayerAll(t,i){return Va(t.id,i)}static getPlayerVisible(t){return se.get(ka(t.id))}static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.CP,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return se.get(t)}static getInstances(){return[...se.values()]}}b.onExit(({next:e})=>($.getInstances().forEach(t=>t.destroy()),se.clear(),e()));const[Nf,Cf]=p({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Df,Tf]=p({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});he(({type:e,id:t,forPlayer:i,next:a})=>e===E.CP?Cf(i,$.getInstance(t)):a()),ue(({type:e,id:t,forPlayer:i,next:a})=>e===E.CP?Tf(i,$.getInstance(t)):a());const[vf]=p({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),cp:$.getInstance(t)}}}),[Lf]=p({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),cp:$.getInstance(t)}}}),wf=Object.freeze({onPlayerEnter:vf,onPlayerLeave:Lf,onStreamIn:Nf,onStreamOut:Df});class J{sourceInfo=null;_id=m.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=J.getInstance(t);if(i)return i;this._id=t,oe.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerRaceCP]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerRaceCP]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,size:o,x:c,y:_,z:u,nextX:I,nextY:P,nextZ:g,extended:y}=this.sourceInfo;if(l<0||l>8)throw new Error("[StreamerRaceCP]: Invalid type");if(o<0)throw new Error("[StreamerRaceCP]: Invalid size");return t??=v.RACE_CP_SD,s??=0,y?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=nn(l,c,_,u,I,P,g,o,t,i,a,n,r,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=ir(l,c,_,u,I,P,g,o,i,a,n,t,r,s)),oe.set(this._id,this),this}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[StreamerRaceCP]: Unable to destroy the checkpoint before create");return N.skip||ar(this.id),oe.delete(this.id),this._id=-m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:J.isValid(this.id)}togglePlayer(t,i){if(this.id===m.INVALID_ID)throw new Error("[StreamerRaceCP]: Unable to toggle the player before create");return nr(t.id,this.id,i),this}static togglePlayerAll(t,i){return rr(t.id,i)}isPlayerIn(t){return this.id===m.INVALID_ID?!1:sr(t.id,this.id)}static getPlayerVisible(t){return oe.get(lr(t.id))}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.RACE_CP,this.id)}static isValid=Zt;static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.RACE_CP,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return oe.get(t)}static getInstances(){return[...oe.values()]}}b.onExit(({next:e})=>(J.getInstances().forEach(t=>t.destroy()),oe.clear(),e()));const[Rf,bf]=p({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Of,Gf]=p({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});he(({type:e,id:t,forPlayer:i,next:a})=>e===E.RACE_CP?bf(i,J.getInstance(t)):a()),ue(({type:e,id:t,forPlayer:i,next:a})=>e===E.RACE_CP?Gf(i,J.getInstance(t)):a());const[Ff]=p({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),raceCP:J.getInstance(t)}}}),[Bf]=p({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),raceCp:J.getInstance(t)}}}),xf=Object.freeze({onPlayerEnter:Ff,onPlayerLeave:Bf,onStreamIn:Rf,onStreamOut:Of});class te{sourceInfo=null;_id=m.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=te.getInstance(t);if(i)return i;this._id=t,ee.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerActor]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerActor]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{modelId:l,x:o,y:c,z:_,r:u,invulnerable:I,health:P,extended:g}=this.sourceInfo;return t??=v.ACTOR_SD,s??=0,g?(typeof i=="number"?i=[0]:i??=[0],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=hn(l,o,c,_,u,I,P,t,i,a,n,r,s)):(Array.isArray(i)?i=0:i??=0,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=ji(l,o,c,_,u,I,P,i,a,n,t,r,s)),ee.set(this.id,this),this}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[StreamerActor]: Unable to destroy the actor before create");return N.skip||Ki(this.id),ee.delete(this.id),this._id=m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:te.isValid(this.id)}isStreamedIn(t){return this.id===m.INVALID_ID?!1:Zi(this.id,t.id)}getVirtualWorld(){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to get virtual world before create");return Yi(this.id)}setVirtualWorld(t){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to set virtual world before create");return zi(this.id,t)}applyAnimation(t,i,a=4.1,n=!1,r=!0,s=!0,l=!1,o=0){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to apply animation before create");if(!it(t,i))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${i}`);return $i(this.id,t,i,a,n,r,s,l,o)}clearAnimations(){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to clear animation before create");return Ji(this.id)}getFacingAngle(){return Qi(this.id)}setFacingAngle(t){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to set facing angle before create");return qi(this.id,t)}getPos(){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to get pos before create");return ea(this.id)}setPos(t,i,a){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to set pos before create");return ta(this.id,t,i,a)}getHealth(){return ia(this.id)}setHealth(t){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to set health before create");return aa(this.id,t)}isInvulnerable(){return this.id===m.INVALID_ID?!1:ra(this.id)}setInvulnerable(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return na(this.id,t)}getPlayerTarget(t){const i=sa(t.id);return ee.get(i)}getPlayerCameraTarget(t){const i=la(t.id);return ee.get(i)}getSkin(){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to get skin before create");return $d(this.id)}setSkin(t,i=!1){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to set skin before create");return!i&&(t<0||t>311||t===74)?0:Jd(this.id,t)}getSpawnInfo(){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Qd(this.id)}getAnimation(){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to get animation before create");return oa(this.id)}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.ACTOR,this.id)}static isValid=Xi;static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.ACTOR,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ee.get(t)}static getInstances(){return[...ee.values()]}}b.onExit(({next:e})=>(te.getInstances().forEach(t=>t.destroy()),ee.clear(),e()));const[Vf]=p({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:te.getInstance(e),forPlayer:f.getInstance(t)}}}),[Mf]=p({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:te.getInstance(e),forPlayer:f.getInstance(t)}}}),[kf]=p({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:f.getInstance(e),actor:te.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),Hf=Object.freeze({onStreamIn:Vf,onStreamOut:Mf,onPlayerGiveDamage:kf});class pe{sourceInfo=null;_id=m.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=pe.getInstance(t);if(i)return i;this._id=t,ge.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to create again");if(!this.sourceInfo)throw new Error("[Streamer3DTextLabel]: Unable to create with only id");let{attachedPlayer:t,attachedVehicle:i,testLos:a,streamDistance:n,worldId:r,interiorId:s,playerId:l,areaId:o,priority:c}=this.sourceInfo;const{charset:_,text:u,color:I,drawDistance:P,x:g,y,z:w,extended:F}=this.sourceInfo;return t??=d.PLAYER_ID,i??=d.VEHICLE_ID,n??=v.TEXT_3D_LABEL_SD,a??=!1,c??=0,F?(typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],typeof l=="number"?l=[-1]:l??=[-1],typeof o=="number"?o=[-1]:o??=[-1],this._id=bm(u,C(I),g,y,w,P,t,i,a,n,r,s,l,o,c,_||"utf8")):(Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,Array.isArray(l)?l=-1:l??=-1,Array.isArray(o)?o=-1:o??=-1,this._id=Rm(_||"utf8",u,C(I),g,y,w,P,t,i,a,r,s,l,n,o,c)),ge.set(this.id,this),this}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[Streamer3DTextLabel]: Unable to destroy before create");return N.skip||Ui(this.id),ge.delete(this.id),this._id=m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:pe.isValid(this.id)}getColor(){if(this.id===m.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to get color before create");return this.sourceInfo?this.sourceInfo.color:S.getIntData(E.TEXT_3D_LABEL,this._id,K.COLOR)}getCharset(){if(this.id===m.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to get charset before create");return this.sourceInfo?.charset}getText(){return Gm(this.id,this.sourceInfo?.charset||"utf8")}updateText(t,i,a){if(this.id===m.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to update text before create");let n="";return this.sourceInfo&&(n=a||this.sourceInfo.charset||"utf8",this.sourceInfo.charset=n),Om(this.id,C(t),i,n)}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.TEXT_3D_LABEL,this.id)}setOffsets(t,i,a){if(this.id===m.INVALID_ID)return 0;const n=S.setFloatData(E.TEXT_3D_LABEL,this.id,K.ATTACH_OFFSET_X,t);return S.setFloatData(E.TEXT_3D_LABEL,this.id,K.ATTACH_OFFSET_Y,i),S.setFloatData(E.TEXT_3D_LABEL,this.id,K.ATTACH_OFFSET_Z,a),this.sourceInfo&&(this.sourceInfo.x=t,this.sourceInfo.y=i,this.sourceInfo.z=a),n}attachToPlayer(t,i,a,n){if(this.id===m.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot attachToPlayer before created");const r=typeof t=="number"?t:t.id,s=S.setIntData(E.TEXT_3D_LABEL,this.id,K.ATTACHED_PLAYER,r);return r!==d.PLAYER_ID&&this.setOffsets(i,a,n),this.sourceInfo&&(this.sourceInfo.attachedPlayer=r),s}attachToVehicle(t,i,a,n){if(this.id===m.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot attachToVehicle before created");const r=typeof t=="number"?t:t.id,s=S.setIntData(E.TEXT_3D_LABEL,this.id,K.ATTACHED_VEHICLE,r);return r!==d.VEHICLE_ID&&this.setOffsets(i,a,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=Wi;static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.TEXT_3D_LABEL,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ge.get(t)}static getInstances(){return[...ge.values()]}}b.onExit(({next:e})=>(pe.getInstances().forEach(t=>t.destroy()),ge.clear(),e()));const[Uf,Wf]=p({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[jf,Kf]=p({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});he(({type:e,id:t,forPlayer:i,next:a})=>e===E.TEXT_3D_LABEL?Wf(i,pe.getInstance(t)):a()),ue(({type:e,id:t,forPlayer:i,next:a})=>e===E.TEXT_3D_LABEL?Kf(i,pe.getInstance(t)):a());const Xf=Object.freeze({onStreamIn:Uf,onStreamOut:jf});class G{sourceInfo=null;_id=m.INVALID_ID;get type(){return this.sourceInfo?.type??void 0}get id(){return this._id}constructor(t){if(typeof t=="number"){const i=G.getInstance(t);if(i)return i;this._id=t,re.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerArea]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerArea]: Unable to create with only id");let{worldId:t,interiorId:i,playerId:a,priority:n}=this.sourceInfo;n??=0;const{type:r,extended:s}=this.sourceInfo;if(s)if(typeof t=="number"?t=[-1]:t??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],r==="circle"){const{x:l,y:o,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid circle extend size");this._id=sn(l,o,c,t,i,a,n)}else if(r==="cuboid"){const{minX:l,minY:o,minZ:c,maxX:_,maxY:u,maxZ:I}=this.sourceInfo;this._id=cn(l,o,c,_,u,I,t,i,a,n)}else if(r==="cylinder"){const{x:l,y:o,minZ:c,maxZ:_,size:u}=this.sourceInfo;if(u<0)throw new Error("[StreamerArea]: Invalid cylinder extend size");this._id=ln(l,o,c,_,u,t,i,a,n)}else if(r==="polygon"){const{points:l,minZ:o,maxZ:c}=this.sourceInfo;if(l.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon extended with asymmetrical points");this._id=_n(l,o,c,t,i,a,n)}else if(r==="rectangle"){const{minX:l,minY:o,maxX:c,maxY:_}=this.sourceInfo;this._id=dn(l,o,c,_,t,i,a,n)}else{const{x:l,y:o,z:c,size:_}=this.sourceInfo;if(_<0)throw new Error("[StreamerArea]: Invalid sphere extended size");this._id=on(l,o,c,_,t,i,a,n)}else if(Array.isArray(t)?t=-1:t??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,r==="circle"){const{x:l,y:o,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid circle size");this._id=da(l,o,c,t,i,a,n)}else if(r==="cuboid"){const{minX:l,minY:o,minZ:c,maxX:_,maxY:u,maxZ:I}=this.sourceInfo;this._id=ua(l,o,c,_,u,I,t,i,a,n)}else if(r==="cylinder"){const{x:l,y:o,minZ:c,maxZ:_,size:u}=this.sourceInfo;if(u<0)throw new Error("[StreamerArea]: Invalid cylinder size");this._id=ca(l,o,c,_,u,t,i,a,n)}else if(r==="polygon"){const{points:l,minZ:o,maxZ:c}=this.sourceInfo;if(l.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon with asymmetrical points");this._id=ma(l,o,c,t,i,a,n)}else if(r==="rectangle"){const{minX:l,minY:o,maxX:c,maxY:_}=this.sourceInfo;this._id=ha(l,o,c,_,t,i,a,n)}else{const{x:l,y:o,z:c,size:_}=this.sourceInfo;if(_<0)throw new Error("[StreamerArea]: Invalid sphere size");this._id=_a(l,o,c,_,t,i,a,n)}return re.set(this._id,this),this}destroy(){if(this.id===m.INVALID_ID&&!N.skip)throw new Error("[StreamerArea]: Unable to destroy the area before create");return N.skip||pa(this.id),re.delete(this.id),this._id=m.INVALID_ID,this}isValid(){return N.skip&&this.id!==m.INVALID_ID?!0:G.isValid(this.id)}getType(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerArea]: Unable to get type before create");return Ia(this.id)}getPolygonPoints(){return ga(this.id)}getPolygonNumberPoints(){if(this.id!==m.INVALID_ID)throw new Error("[StreamerArea]: Unable to getPolygonNumberPoints number before create");if(this.type!=="polygon")throw new Error("[StreamerArea]: getPolygonNumberPoints invalid area type");return Wt(this.id)}isPlayerIn(t,i=!1){return this.id===m.INVALID_ID?!1:Pa(t.id,this.id,i)}static isPlayerInAny(t,i=!1){return Sa(t.id,i)}isAnyPlayerIn(t=!1){return this.id===m.INVALID_ID?!1:Ea(this.id,t)}static isAnyPlayerInAny(t=!1){return ya(t)}static getPlayerAreas(t){return G.getPlayerAreasNumber(t)?Aa(t.id).areas.map(i=>re.get(i)):[]}static getPlayerAreasNumber(t){return jt(t.id)}isPointIn(t,i,a){return this.id===m.INVALID_ID?!1:Na(this.id,t,i,a)}static isPointInAny(t,i,a){return Ca(t,i,a)}isLineIn(t,i,a,n,r,s){return this.id===m.INVALID_ID?!1:Da(this.id,t,i,a,n,r,s)}static isLineInAny(t,i,a,n,r,s){return Ta(t,i,a,n,r,s)}static getForPoint(t,i,a){return G.getNumberForPoint(t,i,a)?va(t,i,a).areas.map(n=>G.getInstance(n)).filter(Boolean):[]}static getNumberForPoint(t,i,a){return Kt(t,i,a)}static getForLine(t,i,a,n,r,s){return G.getNumberForLine(t,i,a,n,r,s)?La(t,i,a,n,r,s).areas.map(l=>G.getInstance(l)).filter(Boolean):[]}static getNumberForLine(t,i,a,n,r,s){return Xt(t,i,a,n,r,s)}attachToObject(t,i=0,a=0,n=0){if(this.id===m.INVALID_ID||t.id===m.INVALID_ID)throw new Error("[StreamerArea]: Unable to toggle attach to object before create");return wa(this.id,t.id,je.DYNAMIC,d.PLAYER_ID,i,a,n)}attachToPlayer(t,i=0,a=0,n=0){if(this.id===m.INVALID_ID||t.id===d.PLAYER_ID)throw new Error("[StreamerArea]: Unable to toggle attach to player before create");return Ra(this.id,t.id,i,a,n)}attachToVehicle(t,i=0,a=0,n=0){if(this.id===m.INVALID_ID||t.id===d.VEHICLE_ID)throw new Error("[StreamerArea]: Unable to toggle attach to vehicle before create");return ba(this.id,t.id,i,a,n)}toggleSpectateMode(t){if(this.id===m.INVALID_ID)throw new Error("[StreamerArea]: Unable to toggle spectate mode before create");return Oa(this.id,t)}isToggleSpectateMode(){return this.id===m.INVALID_ID?!1:Ga(this.id)}toggleCallbacks(t=!0){if(this.id===m.INVALID_ID)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(E.AREA,this.id,t)}isToggleCallbacks(){return this.id===m.INVALID_ID?!1:S.isToggleItemCallbacks(E.AREA,this.id)}static isValid=fa;static togglePlayerUpdate(t,i=!0){return S.toggleItemUpdate(t,E.AREA,i)}static hideForPlayer(t,i=-5e4){return S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?S.updateEx(t,a.x,a.y,a.z):S.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return re.get(t)}static getInstances(){return[...re.values()]}}b.onExit(({next:e})=>(G.getInstances().forEach(t=>t.destroy()),re.clear(),e()));const[Zf,Yf]=p({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[zf,$f]=p({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});he(({type:e,id:t,forPlayer:i,next:a})=>e===E.AREA?Yf(i,G.getInstance(t)):a()),ue(({type:e,id:t,forPlayer:i,next:a})=>e===E.AREA?$f(i,G.getInstance(t)):a());const[Jf]=p({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),area:G.getInstance(t)}}}),[Qf]=p({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),area:G.getInstance(t)}}}),qf=Object.freeze({onStreamIn:Zf,onStreamOut:zf,onPlayerEnter:Jf,onPlayerLeave:Qf});class L{_id=d.NPC_ID;_name="";get id(){return this._id}constructor(t){if(this._id=samp.callNative("NPC_Create","s",t),this._name=t,this._id!==d.PLAYER_ID){new f(this._id);const i=L.getInstance(this._id);if(i)return i}return Ie.set(this._id,this),this}getName(){return this._name}destroy(){return N.skip||samp.callNative("NPC_Destroy","i",this._id),Ie.delete(this._id),this._id=d.NPC_ID,this}isValid(){return N.skip&&this._id!==d.NPC_ID?!0:L.isValid(this._id)}spawn(){return samp.callNative("NPC_Spawn","i",this._id),this}respawn(){return samp.callNative("NPC_Respawn","i",this._id),this}setPos(t,i,a){return samp.callNative("NPC_SetPos","ifff",this._id,t,i,a),this}setRot(t,i,a){return samp.callNative("NPC_SetRot","ifff",this._id,t,i,a),this}getRot(){const[t,i,a,n]=samp.callNative("NPC_GetRot","iFFF",this._id);return{rX:t,rY:i,rZ:a,ret:n}}setFacingAngle(t){return samp.callNative("NPC_SetFacingAngle","if",this._id,t),this}getFacingAngle(){const[t,i]=samp.callNative("NPC_GetFacingAngle","iF",this._id);return{angle:t,ret:i}}setVirtualWorld(t){return samp.callNative("NPC_SetVirtualWorld","ii",this._id,t),this}getVirtualWorld(){return samp.callNative("NPC_GetVirtualWorld","i",this._id)}move(t,i,a,n,r=fe.AUTO){return!!samp.callNative("NPC_Move","ifffif",this._id,t,i,a,n,r)}moveToPlayer(t,i,a=fe.AUTO){return!!samp.callNative("NPC_MoveToPlayer","iiif",this._id,t.id,i,a)}stopMove(){return samp.callNative("NPC_StopMove","i",this._id),this}isMoving(){return!!samp.callNative("NPC_IsMoving","i",this._id)}isMovingToPlayer(t){return!!samp.callNative("NPC_IsMovingToPlayer","ii",this._id,t.id)}setSkin(t){return samp.callNative("NPC_SetSkin","ii",this._id,t),this}getSkin(){return samp.callNative("NPC_GetSkin","i",this._id)}isStreamedIn(t){return!!samp.callNative("NPC_IsStreamedIn","ii",this._id,t.id)}isAnyStreamedIn(){return!!samp.callNative("NPC_IsAnyStreamedIn","i",this._id)}setInterior(t){return samp.callNative("NPC_SetInterior","ii",this._id,t),this}getInterior(){return samp.callNative("NPC_GetInterior","i",this._id)}setHealth(t){return samp.callNative("NPC_SetHealth","if",this._id,t),this}getHealth(){return samp.callNativeFloat("NPC_GetHealth","i",this._id)}setArmour(t){return samp.callNative("NPC_SetArmour","if",this._id,t),this}getArmour(){return samp.callNativeFloat("NPC_GetArmour","i",this._id)}isDead(){return!!samp.callNative("NPC_IsDead","i",this._id)}applyAnimation(t,i,a,n,r,s,l,o,c){return samp.callNative("NPC_ApplyAnimation","issfiiiiii",this._id,t,i,a,n,r,s,l,o,c),this}setWeapon(t){return samp.callNative("NPC_SetWeapon","ii",this._id,t),this}getWeapon(){return samp.callNative("NPC_GetWeapon","i",this._id)}setAmmo(t){return samp.callNative("NPC_SetAmmo","ii",this._id,t),this}getAmmo(){return samp.callNative("NPC_GetAmmo","i",this._id)}setKeys(t,i,a){return samp.callNative("NPC_SetKeys","iiii",this._id,t,i,a),this}getKeys(){const[t,i,a,n]=samp.callNative("NPC_GetKeys","iIII",this._id);return{upAndDown:t,leftAndDown:i,keys:a,ret:n}}setWeaponSkillLevel(t,i){return samp.callNative("NPC_SetWeaponSkillLevel","iii",this._id,t,i),this}getWeaponSkillLevel(t){return samp.callNative("NPC_GetWeaponSkillLevel","ii",this._id,t)}meleeAttack(t,i){return samp.callNative("NPC_MeleeAttack","iii",this._id,t,i),this}stopMeleeAttack(){return samp.callNative("NPC_StopMeleeAttack","i",this._id),this}isMeleeAttacking(){return!!samp.callNative("NPC_IsMeleeAttacking","i",this._id)}setFightingStyle(t){return samp.callNative("NPC_SetFightingStyle","ii",this._id,t),this}getFightingStyle(){return samp.callNative("NPC_GetFightingStyle","i",this._id)}enableReloading(t){return samp.callNative("NPC_EnableReloading","ii",this._id,t),this}isReloadEnabled(){return!!samp.callNative("NPC_IsReloadEnabled","i",this._id)}isReloading(){return!!samp.callNative("NPC_IsReloading","i",this._id)}enableInfiniteAmmo(t){return samp.callNative("NPC_EnableInfiniteAmmo","ii",this._id,t),this}isInfiniteAmmoEnabled(){return!!samp.callNative("NPC_IsInfiniteAmmoEnabled","i",this._id)}setWeaponState(t){return!!samp.callNative("NPC_SetWeaponState","ii",this._id,t)}getWeaponState(){return samp.callNative("NPC_GetWeaponState","i",this._id)}setAmmoInClip(t){return samp.callNative("NPC_SetAmmoInClip","ii",this._id,t),this}getAmmoInClip(){return samp.callNative("NPC_GetAmmoInClip","i",this._id)}shoot(t,i,a,n,r,s,l,o,c,_,u=ve.ALL){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,i,a,n,r,s,l,o,c,_,u),this}isShooting(){return!!samp.callNative("NPC_IsShooting","i",this._id)}aimAt(t,i,a,n,r,s,l,o,c,_=ve.ALL){return samp.callNative("NPC_AimAt","ifffiiifffi",this._id,t,i,a,n,r,s,l,o,c,_),this}aimAtPlayer(t,i,a,n,r,s,l,o,c,_,u=ve.ALL){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,i,a,n,r,s,l,o,c,_,u),this}stopAim(){return samp.callNative("NPC_StopAim","i",this._id),this}isAiming(){return!!samp.callNative("NPC_IsAiming","i",this._id)}isAimingAtPlayer(t){return!!samp.callNative("NPC_IsAimingAtPlayer","ii",this._id,t.id)}setWeaponAccuracy(t,i){return samp.callNative("NPC_SetWeaponAccuracy","iif",this._id,t,i),this}getWeaponAccuracy(t){return samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",this._id,t)}setWeaponReloadTime(t,i){return samp.callNative("NPC_SetWeaponReloadTime","iii",this._id,t,i)}getWeaponReloadTime(t){return samp.callNative("NPC_GetWeaponReloadTime","ii",this._id,t)}getWeaponActualReloadTime(t){return samp.callNative("NPC_GetWeaponActualReloadTime","ii",this._id,t)}setWeaponShootTime(t,i){return samp.callNative("NPC_SetWeaponShootTime","iii",this._id,t,i)}getWeaponShootTime(t){return samp.callNative("NPC_GetWeaponShootTime","ii",this._id,t)}setWeaponClipSize(t,i){return samp.callNative("NPC_SetWeaponClipSize","iii",this._id,t,i)}getWeaponClipSize(t){return samp.callNative("NPC_GetWeaponClipSize","ii",this._id,t)}getWeaponActualClipSize(t){return samp.callNative("NPC_GetWeaponActualClipSize","ii",this._id,t)}enterVehicle(t,i,a){return samp.callNative("NPC_EnterVehicle","iiii",this._id,t.id,i,a),this}exitVehicle(){return samp.callNative("NPC_ExitVehicle","i",this._id),this}putInVehicle(t,i){return samp.callNative("NPC_PutInVehicle","iii",this._id,t.id,i)}removeFromVehicle(){return samp.callNative("NPC_RemoveFromVehicle","i",this._id)}getVehicle(){return D.getInstance(this.getVehicleID())}getVehicleID(){return samp.callNative("NPC_GetVehicle","i",this._id)}getVehicleSeat(){return samp.callNative("NPC_GetVehicleSeat","i",this._id)}getEnteringVehicle(){return D.getInstance(this.getEnteringVehicleId())}getEnteringVehicleId(){return samp.callNative("NPC_GetEnteringVehicle","i",this._id)}getEnteringVehicleSeat(){return samp.callNative("NPC_GetEnteringVehicleSeat","i",this._id)}isEnteringVehicle(){return!!samp.callNative("NPC_IsEnteringVehicle","i",this._id)}useVehicleSiren(t=!0){return samp.callNative("NPC_UseVehicleSiren","ii",this._id,t)}isVehicleSirenUsed(){return!!samp.callNative("NPC_IsVehicleSirenUsed","i",this._id)}setVehicleHealth(t){return samp.callNative("NPC_SetVehicleHealth","if",this._id,t)}getVehicleHealth(){return samp.callNativeFloat("NPC_GetVehicleHealth","i",this._id)}setVehicleHydraThrusters(t){return samp.callNative("NPC_SetVehicleHydraThrusters","ii",this._id,t)}getVehicleHydraThrusters(){return samp.callNative("NPC_GetVehicleHydraThrusters","i",this._id)}setVehicleGearState(t){return samp.callNative("NPC_SetVehicleGearState","ii",this._id,t)}getVehicleGearState(){return samp.callNative("NPC_GetVehicleGearState","i",this._id)}setVehicleTrainSpeed(t){return samp.callNative("NPC_SetVehicleTrainSpeed","if",this._id,t)}getVehicleTrainSpeed(){return samp.callNativeFloat("NPC_GetVehicleTrainSpeed","i",this._id)}resetAnimation(){return samp.callNative("NPC_ResetAnimation","i",this._id)}setAnimation(t,i,a,n,r,s,l){return samp.callNative("NPC_SetAnimation","iifiiiii",this._id,t,i,a,n,r,s,l)}getAnimation(){const[t,i,a,n,r,s,l,o]=samp.callNative("NPC_GetAnimation","iIFIIIII",this._id);return{animationId:t,delta:i,loop:!!a,lockX:!!n,lockY:!!r,freeze:!!s,time:l,ret:o}}clearAnimations(){return samp.callNative("NPC_ClearAnimations","i",this._id)}setSpecialAction(t){return samp.callNative("NPC_SetSpecialAction","ii",this._id,t)}getSpecialAction(){return samp.callNative("NPC_SetSpecialAction","i",this._id)}startPlayback(t,i,a,n,r,s,l,o){return samp.callNative("NPC_StartPlayback","isiffffff",this._id,t,i,a,n,r,s,l,o)}startPlaybackEx(t,i,a,n,r,s,l,o){return samp.callNative("NPC_StartPlaybackEx","iiiffffff",this._id,t.id,i,a,n,r,s,l,o)}stopPlayback(){return samp.callNative("NPC_StopPlayback","i",this._id)}pausePlayback(t){return samp.callNative("NPC_PausePlayback","ii",this._id,t)}isPlayingPlayback(){return!!samp.callNative("NPC_IsPlayingPlayback","i",this._id)}isPlaybackPaused(){return!!samp.callNative("NPC_IsPlaybackPaused","i",this._id)}playNode(t,i=Ue.JOG,a=fe.AUTO,n=0,r=!0){return!!samp.callNative("NPC_PlayNode","iiiffi",this._id,t.id,i,a,n,r)}stopPlayingNode(){return!!samp.callNative("NPC_StopPlayingNode","i",this._id)}pausePlayingNode(){return!!samp.callNative("NPC_PausePlayingNode","i",this._id)}resumePlayingNode(){return!!samp.callNative("NPC_ResumePlayingNode","i",this._id)}isPlayingNodePaused(){return!!samp.callNative("NPC_IsPlayingNodePaused","i",this._id)}isPlayingNode(){return!!samp.callNative("NPC_IsPlayingNode","i",this._id)}changeNode(t,i){return samp.callNative("NPC_ChangeNode","iii",this._id,t.id,i)}updateNodePoint(t){return!!samp.callNative("NPC_UpdateNodePoint","ii",this._id,t)}setInvulnerable(t){return samp.callNative("NPC_SetInvulnerable","ii",this._id,t)}isInvulnerable(){return!!samp.callNative("NPC_IsInvulnerable","i",this._id)}setSurfingOffsets(t,i,a){return samp.callNative("NPC_SetSurfingOffsets","ifff",this._id,t,i,a)}getSurfingOffsets(){const[t,i,a,n]=samp.callNative("NPC_GetSurfingOffsets","iFFF",this._id);return{x:t,y:i,z:a,ret:n}}setSurfingVehicle(t){return samp.callNative("NPC_SetSurfingVehicle","ii",this._id,t.id)}getSurfingVehicle(){return D.getInstance(this.getSurfingVehicleId())}getSurfingVehicleId(){return samp.callNative("NPC_GetSurfingVehicle","i",this._id)}setSurfingPlayerObject(t){return samp.callNative("NPC_SetSurfingPlayerObject","ii",this._id,t)}getSurfingPlayerObject(){return samp.callNative("NPC_GetSurfingPlayerObject","i",this._id)}resetSurfingData(){return samp.callNative("NPC_ResetSurfingData","i",this._id)}setSurfingDynamicObject(t){return this.setSurfingPlayerObject(S.getItemInternalID(new f(this._id),E.OBJECT,t.id))}getSurfingDynamicObject(){return M.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return S.getItemStreamerID(new f(this._id),E.OBJECT,this.getSurfingPlayerObject())}isSpawned(){return!!samp.callNative("NPC_IsSpawned","i",this._id)}kill(t,i){return!!samp.callNative("NPC_Kill","iii",this._id,typeof t=="number"?t:t.id,i)}setVelocity(t,i,a){return!!samp.callNative("NPC_SetVelocity","ifff",this._id,t,i,a)}getVelocity(){const[t,i,a,n]=samp.callNative("NPC_GetVelocity","iFFF",this._id);return{x:t,y:i,z:a,ret:n}}getPlayerAimingAt(){const t=samp.callNative("NPC_GetPlayerAimingAt","i",this._id);return t!==d.PLAYER_ID?f.getInstance(t):null}getPlayerMovingTo(){const t=samp.callNative("NPC_GetPlayerMovingTo","i",this._id);return t!==d.PLAYER_ID?f.getInstance(t):null}static startRecordingPlayerData(t,i,a){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");Ed(t.id,i,a),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");yd(t.id),t.isRecording=!1}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return Ie.get(t)}static getInstances(){return[...Ie.values()]}}class Ae{_filePath="";_id=d.RECORD_ID;get id(){return this._id}get filePath(){return this._filePath}constructor(t){if(typeof t=="string"?(this._filePath=t,this._id=samp.callNative("NPC_LoadRecord","s",this._filePath)):this._id=t,q.has(this._id))return q.get(this._id)}unload(){const t=this._id;if(!N.skip){const i=!!samp.callNative("NPC_UnloadRecord","i",this._id);return i&&(this._id=d.RECORD_ID,this._filePath="",q.delete(t)),i}return this._id=d.RECORD_ID,this._filePath="",q.delete(t),!0}isValid(){return N.skip&&this._id!==d.RECORD_ID?!0:Ae.isValid(this._id)}static isValid(t){return!!samp.callNative("NPC_IsValidRecord","i",t)}static getCount(){return samp.callNative("NPC_GetRecordCount","")}static unloadAll(){const t=!!samp.callNative("NPC_UnloadAllRecords","");return t&&q.clear(),t}static getInstance(t){return q.get(t)}static getInstances(){return[...q.values()]}}class ye{_id=d.NODE_ID;get id(){return this._id}constructor(t){if(this._id=t,W.has(this._id))return W.get(this._id);W.set(this._id,this)}open(){samp.callNative("NPC_OpenNode","i",this._id)&&!W.has(this._id)&&W.set(this._id,this)}close(){if(!N.skip){const t=!!samp.callNative("NPC_CloseNode","i",this._id);return t&&(W.delete(this._id),this._id=d.NODE_ID),t}return W.delete(this._id),this._id=d.NODE_ID,!0}isOpen(){return N.skip&&this._id!==d.NODE_ID?!0:!!samp.callNative("NPC_IsNodeOpen","i",this._id)}getType(){return samp.callNative("NPC_GetNodeType","i",this._id)}setPoint(t){return!!samp.callNative("NPC_SetNodePoint","ii",this._id,t)}getPointPosition(){const[t,i,a,n]=samp.callNative("NPC_GetNodePointPosition","iFFF",this._id);return{x:t,y:i,z:a,ret:!!n}}getPointCount(){return samp.callNative("NPC_GetNodePointCount","i",this._id)}getInfo(){const[t,i,a,n]=samp.callNative("NPC_GetNodeInfo","iIII",this._id);return{vehNodes:t,pedNodes:i,naviNode:a,ret:!!n}}static getInstance(t){return W.get(t)}static getInstances(){return[...W.values()]}}class Ne{_id=d.PATH_ID;get id(){return this._id}constructor(t){if(typeof t<"u"){if(ne.has(t))return ne.get(t);this._id=t}else this._id=samp.callNative("NPC_CreatePath","")}destroy(){const t=!!samp.callNative("NPC_DestroyPath","i",this._id);return t&&(this._id=d.PATH_ID,ne.delete(this._id)),t}addPoint(t,i,a,n){return!!samp.callNative("NPC_AddPointToPath","iffff",this._id,t,i,a,n)}removePoint(t){return!!samp.callNative("NPC_RemovePointFromPath","ii",this._id,t)}clear(){return!!samp.callNative("NPC_ClearPath","i",this._id)}getPointCount(){return samp.callNative("NPC_GetPathPointCount","i",this._id)}getPoint(t){const[i,a,n,r,s]=samp.callNative("NPC_GetPathPoint","ii",this._id,t);return{x:i,y:a,z:n,stopRange:r,ret:s}}isValid(){return Ne.isValid(this._id)}getCurrentPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}move(t=Ue.JOG,i=fe.AUTO,a=!1){return!!samp.callNative("NPC_MoveByPath","iiifi",this._id,this._id,t,i,a)}hasPointInRadius(t,i,a,n){return!!samp.callNative("NPC_HasPathPointInRange","iiffff",this._id,this._id,t,i,a,n)}static destroyAll(){const t=!!samp.callNative("NPC_DestroyAllPath","");return t&&ne.clear(),t}static getCount(){return samp.callNative("NPC_GetPathCount","")}static isValid(t){return!!samp.callNative("NPC_IsValidPath","i",t)}static getInstance(t){return ne.get(t)}static getInstances(){return[...ne.values()]}}b.onExit(({next:e})=>(L.getInstances().forEach(t=>{t.isValid()&&t.destroy()}),Ie.clear(),ye.getInstances().forEach(t=>{t.isOpen()&&t.close()}),W.clear(),Ne.destroyAll(),ne.clear(),Ae.getInstances().forEach(t=>{t.isValid()&&t.unload()}),q.clear(),e()));const[eI]=p({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:A.decodeFromBuf(t)}}}),[tI]=p({name:"OnNPCFinishMove",identifier:"i",beforeEach(e){return{npc:L.getInstance(e)}}}),[iI]=p({name:"OnNPCCreate",identifier:"i",beforeEach(e){return{npc:L.getInstance(e)}}}),[aI]=p({name:"OnNPCDestroy",identifier:"i",beforeEach(e){return{npc:L.getInstance(e)}},afterEach({npc:e}){Ie.delete(e.id)}}),[nI]=p({name:"OnNPCWeaponStateChange",identifier:"iii",beforeEach(e,t,i){return{npc:L.getInstance(e),newState:t,oldState:i}}}),[rI]=p({name:"OnNPCTakeDamage",identifier:"iiiii",beforeEach(e,t,i,a,n){return{npc:L.getInstance(e),damager:f.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[sI]=p({name:"OnNPCGiveDamage",identifier:"iiiii",beforeEach(e,t,i,a,n){return{npc:L.getInstance(e),damager:f.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[lI]=p({name:"OnNPCDeath",identifier:"iii",beforeEach(e,t,i){const a=f.getInstance(t)||d.PLAYER_ID;return{npc:L.getInstance(e),killer:a,reason:i}}}),[oI]=p({name:"OnNPCSpawn",identifier:"i",beforeEach(e){return{npc:L.getInstance(e)}}}),[dI]=p({name:"OnNPCRespawn",identifier:"i",beforeEach(e){return{npc:L.getInstance(e)}}}),[cI]=p({name:"OnNPCPlaybackStart",identifier:"ii",beforeEach(e,t){return{npc:L.getInstance(e),record:Ae.getInstance(t),recordId:t}}}),[_I]=p({name:"OnNPCPlaybackEnd",identifier:"ii",beforeEach(e,t){return{npc:L.getInstance(e),record:Ae.getInstance(t),recordId:t}}}),[hI]=p({name:"OnNPCWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,n,r,s){return{npc:L.getInstance(e),weapon:t,hitType:i,hitId:a,fX:n,fY:r,fZ:s}}}),[uI]=p({name:"OnNPCFinishNodePoint",identifier:"iii",beforeEach(e,t,i){return{npc:L.getInstance(e),node:ye.getInstance(t),nodeId:t,pointId:i}}}),[mI]=p({name:"OnNPCFinishNode",identifier:"ii",beforeEach(e,t){return{npc:L.getInstance(e),node:ye.getInstance(t),nodeId:t}}}),[pI]=p({name:"OnNPCChangeNode",identifier:"iii",beforeEach(e,t,i){return{npc:L.getInstance(e),newNode:ye.getInstance(t),oldNode:ye.getInstance(i),newNodeId:t,oldNodeId:i}}}),[fI]=p({name:"OnNPCFinishMovePath",identifier:"ii",beforeEach(e,t){return{npc:L.getInstance(e),path:Ne.getInstance(t),pathId:t}}}),[II]=p({name:"OnNPCFinishMovePathPoint",identifier:"iii",beforeEach(e,t,i){return{npc:L.getInstance(e),path:Ne.getInstance(t),pathId:t,pointIndex:i}}}),gI=Object.freeze({onClientMessage:eI,onFinishMove:tI,onCreate:iI,onDestroy:aI,onSpawn:oI,onRespawn:dI,onWeaponStateChange:nI,onTakeDamage:rI,onGiveDamage:sI,onDeath:lI,onPlaybackStart:cI,onPlaybackEnd:_I,onWeaponShot:hI,onFinishNodePoint:uI,onFinishNode:mI,onChangeNode:pI,onFinishMovePath:fI,onFinishMovePathPoint:II});class PI{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return cl()}static getPlayerNetworkStats(t){return dl(t.id)}static getBytesReceived(t){return Qs(t.id)}static getBytesSent(t){return el(t.id)}static getConnectionStatus(t){return al(t.id)}static getConnectedTime(t){return $s(t.id)}static getIpPort(t){return nl(t.id)}static getMessagesReceived(t){return Js(t.id)}static getMessagesRecvPerSecond(t){return tl(t.id)}static getMessagesSent(t){return qs(t.id)}static getPacketLossPercent(t){return il(t.id)}}class SI{_text;_time;_style;get text(){return this._text}set text(t){this._text=t}get time(){return this._time}set time(t){this._time=t}get style(){return this._style}set style(t){this._style=t}constructor(t,i,a){this._text=t,this._time=i,this._style=a}static hideForAll(t){ms(t)}static has(t,i){return Zl(t.id,i)}forAll(t="win1252"){us(A.encodeToBuf(A.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,i="win1252"){Xl(t.id,A.encodeToBuf(A.convertSpecialChar(this.text),i),this.time,this.style)}hideForPlayer(t){return zl(t.id,this.style)}}class Ce{_itemCount=0;get itemCount(){return this._itemCount}_id=d.MENU;get id(){return this._id}_title;get title(){return this._title}set title(t){this._title=t}_columns=1;get columns(){return this._columns}set columns(t){if(t!==1&&t!==2)throw new Error("[Menu]: The menu column number interval is between 1 and 2");this._columns=t}_x;get x(){return this._x}set x(t){this._x=t}_y;get y(){return this._y}set y(t){this._y=t}_col1width;get col1width(){return this._col1width}set col1width(t){this._col1width=t}_col2width;get col2width(){return this._col2width}set col2width(t){this._col2width=t}constructor(t,i,a,n,r,s){this._title=t,this.columns=i,this._x=a,this._y=n,this._col1width=r,this._col2width=s}create(){if(this._id!==d.MENU)throw new Error("[Menu]: Cannot be created twice");if(Ce.getInstances().length===B.MAX_MENUS)throw new Error("[Menu]: The maximum number of menus allowed to be created has been reached 128");return this._id=j_(this.title,this.columns,this.x,this.y,this.col1width,this.col2width),Ge.set(this._id,this),this}destroy(){if(this._id===d.MENU)throw new Error("[Menu]: Cannot destroy before create");return N.skip||K_(this.id),Ge.delete(this._id),this._id=d.MENU,this}addItem(t,i){if(this._id===d.MENU)throw new Error("[Menu]: Cannot addItem before create");if(this._itemCount===B.MAX_MENU_ROW)throw new Error("[Menu]: The maximum number of items allowed to be added has been reached 12");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return X_(this.id,t,i),this._itemCount++,this}setColumnHeader(t,i){if(this._id===d.MENU)throw new Error("[Menu]: Cannot setColumnHeader before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return Z_(this.id,t,i),this}disable(){if(this._id===d.MENU)throw new Error("[Menu]: Cannot disable menu before create");return J_(this.id),this}disableRow(t){if(this._id===d.MENU)throw new Error("[Menu]: Cannot disable row before create");if(t<0||t>this.itemCount-1)throw new Error("[Menu]: Wrong number of rows");Q_(this.id,t)}isValid(){return N.skip&&this.id!==d.MENU?!0:Ce.isValid(this.id)}showForPlayer(t){if(this._id===d.MENU)throw new Error("[Menu]: Cannot show menu before create");return Y_(this.id,t.id)}hideForPlayer(t){if(this._id===d.MENU)throw new Error("[Menu]: Cannot hide menu before create");return z_(this.id,t.id)}isDisabled(){return this._id===d.MENU?!1:x_(this.id)}isRowDisabled(t){return this._id===d.MENU||t<0||t>this._itemCount?!1:V_(this.id,t)}getItems(t){return this._id===d.MENU?0:M_(this.id,t)}getPos(){return this._id===d.MENU?{fX:this.x,fY:this.y}:k_(this.id)}getColumnWidth(){return this.id===d.MENU?{fColumn1:this.col1width,fColumn2:this.col2width}:H_(this.id)}getColumnHeader(t){if(this._id===d.MENU)throw new Error("[Menu]: Cannot get column header before create");return U_(this.id,t)}getItem(t,i){if(this._id===d.MENU)throw new Error("[Menu]: Cannot get item before create");if(i<0||i>this.getItems(t)-1)throw new Error("[Menu]: invalid getItem range");return W_(this.id,t,i)}static isValid=$_;static getInstance(t){return Ge.get(t)}static getInstances(){return[...Ge.values()]}static getInstanceByPlayer(t){return this.getInstances().find(i=>i.id===q_(t.id))}}b.onExit(({next:e})=>(Ce.getInstances().forEach(t=>t.destroy()),Ge.clear(),e()));const[EI]=p({name:"OnPlayerExitedMenu",identifier:"i",beforeEach(e){return{player:f.getInstance(e)}}}),[yI]=p({name:"OnPlayerSelectedMenuRow",identifier:"ii",beforeEach(e,t){const i=f.getInstance(e),a=Ce.getInstanceByPlayer(i);return{player:i,menu:a,row:t}}}),AI=Object.freeze({onPlayerExited:EI,onPlayerSelectedRow:yI});class O{sourceInfo;constructor(t){this.sourceInfo=t}_id=d.GANG_ZONE;get id(){return this._id}create(){if(this.id!==d.GANG_ZONE)throw new Error("[GangZone]: Unable to create again");const{player:t}=this.sourceInfo;if(t){if(O.getInstances(!1).length===B.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:i,minY:a,maxX:n,maxY:r}=this.sourceInfo;this._id=gh(t.id,i,a,n,r);const s=nt.onDisconnect(({player:l,next:o})=>{o(),l===this.sourceInfo.player&&(this.isValid()&&this.destroy(),s())});Oe.set(this.id,this)}else{if(O.getInstances(!0).length===B.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:i,minY:a,maxX:n,maxY:r}=this.sourceInfo;this._id=oh(i,a,n,r),be.set(this.id,this)}}destroy(){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to destroy the gangzone before create");const{player:t}=this.sourceInfo;t?(N.skip||Ph(t.id,this.id),Oe.delete(this.id)):(N.skip||dh(this.id),be.delete(this.id)),this._id=d.GANG_ZONE}showForAll(t){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to show the gangzone before create");if(!this.sourceInfo.player)return _h(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be show for all.")}showForPlayer(t,i){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to show the gangzone before create");const a=this.sourceInfo.player;if(a)Sh(a.id,this.id,C(t));else if(i)ch(i.id,this.id,t);else throw new Error("[GangZone]: invalid player for show");return this}hideForAll(){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to hide the gangzone before create");if(!this.sourceInfo.player)return uh(this.id),this;throw new Error("[GangZone]: player's gangzone should not be hide for all.")}hideForPlayer(t){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to hide the gangzone before create");const i=this.sourceInfo.player;if(i)Eh(i.id,this.id);else if(t)hh(t.id,this.id);else throw new Error("[GangZone]: invalid player for hide");return this}flashForAll(t){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to flash the gangzone before create");if(!this.sourceInfo.player)return ph(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be flash for all.")}flashForPlayer(t,i){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to flash the gangzone before create");const a=this.sourceInfo.player;if(a)yh(a.id,this.id,C(i));else if(t)mh(t.id,this.id,i);else throw new Error("[GangZone]: invalid player for flash");return this}stopFlashForAll(){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");if(!this.sourceInfo.player)return Ih(this.id),this;throw new Error("[GangZone]: player's gangzone should not be stop flash for all.")}stopFlashForPlayer(t){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");const i=this.sourceInfo.player;if(i)Ah(i.id,this.id);else if(t)fh(t.id,this.id);else throw new Error("[GangZone]: invalid player for flash");return this}isValid(){if(N.skip&&this.id!==d.GANG_ZONE)return!0;if(this.id===d.GANG_ZONE)return!1;const t=this.sourceInfo.player;return t?O.isValidPlayer(t.id,this.id):O.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===d.GANG_ZONE)return!1;const i=this.sourceInfo.player;return i?Ch(i.id,this.id):th(t.id,this.id)}isVisibleForPlayer(t){if(this.id===d.GANG_ZONE)return!1;const i=this.sourceInfo.player;return i?Dh(i.id,this.id):ih(t.id,this.id)}getColorForPlayer(t){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to get color before create");const i=this.sourceInfo.player;return i?Th(i.id,this.id):ah(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to get flash color before create");const i=this.sourceInfo.player;return i?vh(i.id,this.id):nh(t.id,this.id)}isFlashingForPlayer(t){if(this.id===d.GANG_ZONE)return!1;const i=this.sourceInfo.player;return i?Lh(i.id,this.id):rh(t.id,this.id)}getPos(){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to get position before create");const t=this.sourceInfo.player;return t?wh(t.id,this.id):sh(this.id)}useCheck(t){if(this.id===d.GANG_ZONE)throw new Error("[GangZone]: Unable to use check before create");const i=this.sourceInfo.player;return i?Rh(i.id,this.id,t):lh(this.id,t),this}static isValidPlayer=Nh;static isValidGlobal=eh;static getInstance(t,i){return i?be.get(t):Oe.get(t)}static getInstances(t){return t?[...be.values()]:[...Oe.values()]}}b.onExit(({next:e})=>(O.getInstances(!0).forEach(t=>t.destroy()),O.getInstances(!1).forEach(t=>t.destroy()),be.clear(),Oe.clear(),e()));const[NI]=p({name:"OnPlayerEnterGangZone",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),gangZone:O.getInstance(t,!0)}}}),[CI]=p({name:"OnPlayerLeaveGangZone",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),gangZone:O.getInstance(t,!0)}}}),[DI]=p({name:"OnPlayerEnterPlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),gangZone:O.getInstance(t,!1)}}}),[TI]=p({name:"OnPlayerLeavePlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),gangZone:O.getInstance(t,!1)}}}),[vI]=p({name:"OnPlayerClickGangZone",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),gangZone:O.getInstance(t,!0)}}}),[LI]=p({name:"OnPlayerClickPlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:f.getInstance(e),gangZone:O.getInstance(t,!1)}}}),wI=Object.freeze({onPlayerEnterGlobal:NI,onPlayerLeaveGlobal:CI,onPlayerEnterPlayer:DI,onPlayerLeavePlayer:TI,onPlayerClickGlobal:vI,onPlayerClickPlayer:LI});class h{sourceInfo;_id=d.TEXT_DRAW;get id(){return this._id}constructor(t){this.sourceInfo=t}create(){if(this.id!==d.TEXT_DRAW)throw new Error("[TextDraw]: Unable to create again");const{x:t,y:i,text:a,player:n,charset:r="iso-8859-1"}=this.sourceInfo,s=A.encodeToBuf(A.convertSpecialChar(a),r);if(n){if(h.getInstances(!1).length===B.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=h.__inject__CreatePlayerTextDraw(n.id,t,i,s);const l=nt.onDisconnect(({player:o,next:c})=>{const _=c();return o===n&&(this.isValid()&&this.destroy(),l()),_});Be.set(this.id,this)}else{if(h.getInstances(!0).length===B.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=h.__inject__TextDrawCreate(t,i,s),Fe.set(this.id,this)}return this}destroy(){this.id===d.TEXT_DRAW&&h.beforeCreateWarn("destroy the textdraw");const{player:t}=this.sourceInfo;return t?(N.skip||h.__inject__PlayerTextDrawDestroy(t.id,this.id),Be.delete(this.id)):(N.skip||h.__inject__TextDrawDestroy(this.id),Fe.delete(this.id)),this._id=d.TEXT_DRAW,this}setFont(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set font"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawFont(i.id,this.id,t):h.__inject__TextDrawFont(this.id,t),this}setColor(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set color"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawColor(i.id,this.id,t):h.__inject__TextDrawColor(this.id,t),this}setBoxColors(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set box color"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawBoxColor(i.id,this.id,t):h.__inject__TextDrawBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set background color"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawBackgroundColor(i.id,this.id,t):h.__inject__TextDrawBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set alignment"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawAlignment(i.id,this.id,t):h.__inject__TextDrawAlignment(this.id,t),this}setLetterSize(t,i){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set letter size"),this;const{player:a}=this.sourceInfo;return a?h.__inject__PlayerTextDrawLetterSize(a.id,this.id,t,i):h.__inject__TextDrawLetterSize(this.id,t,i),this}setOutline(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set outline model"),this;if(t<0)throw new Error("[TextDraw]: Invalid outline value");const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawSetOutline(i.id,this.id,t):h.__inject__TextDrawSetOutline(this.id,t),this}setPreviewModel(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set preview model"),this;this.setFont(Re.MODEL_PREVIEW);const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawSetPreviewModel(i.id,this.id,t):h.__inject__TextDrawSetPreviewModel(this.id,t),this}setPreviewRot(t,i,a,n=1){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set preview rot"),this;this.setFont(Re.MODEL_PREVIEW);const{player:r}=this.sourceInfo;return r?h.__inject__PlayerTextDrawSetPreviewRot(r.id,this.id,t,i,a,n):h.__inject__TextDrawSetPreviewRot(this.id,t,i,a,n),this}setPreviewVehColors(t,i){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set preview veh col"),this;this.setFont(Re.MODEL_PREVIEW);const{player:a}=this.sourceInfo;return a?h.__inject__PlayerTextDrawSetPreviewVehicleColors(a.id,this.id,t,i):h.__inject__TextDrawSetPreviewVehicleColors(this.id,t,i),this}setProportional(t=!0){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set Proportional"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawSetProportional(i.id,this.id,t):h.__inject__TextDrawSetProportional(this.id,t),this}setSelectable(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set Selectable"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawSetSelectable(i.id,this.id,t):h.__inject__TextDrawSetSelectable(this.id,t),this}setShadow(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set shadow"),this;if(t<0)throw new Error("[TextDraw]: Invalid shadow value");const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawSetShadow(i.id,this.id,t):h.__inject__TextDrawSetShadow(this.id,t),this}setString(t,i){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set string"),this;if(t.length===0||t.length>1024)throw new Error("[TextDraw]: Invalid text length");const{player:a,charset:n="iso-8859-1"}=this.sourceInfo,r=A.encodeToBuf(A.convertSpecialChar(t),n);return a?h.__inject__PlayerTextDrawSetString(a.id,this.id,r):i?h.__inject__TextDrawSetStringForPlayer(this.id,i.id,r):h.__inject__TextDrawSetString(this.id,r),this}setTextSize(t,i){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set TextSize"),this;const{player:a}=this.sourceInfo;return a?h.__inject__PlayerTextDrawTextSize(a.id,this.id,t,i):h.__inject__TextDrawTextSize(this.id,t,i),this}useBox(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set TextSize"),this;const{player:i}=this.sourceInfo;return i?h.__inject__PlayerTextDrawUseBox(i.id,this.id,t):h.__inject__TextDrawUseBox(this.id,t),this}static beforeCreateWarn(t){throw new Error(`[TextDraw]: Unable to ${t} before create`)}show(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("show"),this;const i=this.sourceInfo.player;if(i)h.__inject__PlayerTextDrawShow(i.id,this.id);else if(t)h.__inject__TextDrawShowForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for show");return this}hide(t){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("hide"),this;const i=this.sourceInfo.player;if(i)h.__inject__PlayerTextDrawHide(i.id,this.id);else if(t)h.__inject__TextDrawHideForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for hide");return this}showAll(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("show"),this;if(!this.sourceInfo.player)return h.__inject__TextDrawShowForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be show for all.")}hideAll(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("hideAll"),this;if(!this.sourceInfo.player)return h.__inject__TextDrawHideForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be hide for all.")}isValid(){if(N.skip&&this.id!==d.TEXT_DRAW)return!0;const t=this.sourceInfo.player;return t?h.__inject__IsValidPlayerTextDraw(t.id,this.id):h.__inject__IsValidTextDraw(this.id)}isVisibleForPlayer(t){if(this.id===d.TEXT_DRAW)return!1;const{player:i}=this.sourceInfo;return i?h.__inject__IsPlayerTextDrawVisible(i.id,this.id):t?h.__inject__IsTextDrawVisibleForPlayer(t.id,this.id):!1}getString(){if(this.id===d.TEXT_DRAW)return this.sourceInfo.text;const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetString(t.id,this.id).str:h.__inject__TextDrawGetString(this.id).str}setPos(t,i){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("set position"),this;const a=this.sourceInfo.player;return a?h.__inject__PlayerTextDrawSetPos(a.id,this.id,t,i):h.__inject__TextDrawSetPos(this.id,t,i),this}getLetterSize(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get letter size");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetLetterSize(t.id,this.id):h.__inject__TextDrawGetLetterSize(this.id)}getTextSize(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get text size");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetTextSize(t.id,this.id):h.__inject__TextDrawGetTextSize(this.id)}getPos(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get position");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetPos(t.id,this.id):h.__inject__TextDrawGetPos(this.id)}getColor(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get color");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetColor(t.id,this.id):h.__inject__TextDrawGetColor(this.id)}getBoxColor(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get box color");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetBoxColor(t.id,this.id):h.__inject__TextDrawGetBoxColor(this.id)}getBackgroundColor(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get bg color");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetBackgroundColor(t.id,this.id):h.__inject__TextDrawGetBackgroundColor(this.id)}getShadow(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get shadow");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetShadow(t.id,this.id):h.__inject__TextDrawGetShadow(this.id)}getOutline(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get outline");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetOutline(t.id,this.id):h.__inject__TextDrawGetOutline(this.id)}getFont(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get font");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetFont(t.id,this.id):h.__inject__TextDrawGetFont(this.id)}isBox(){if(this.id===d.TEXT_DRAW)return!1;const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawIsBox(t.id,this.id):h.__inject__TextDrawIsBox(this.id)}isProportional(){if(this.id===d.TEXT_DRAW)return!1;const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawIsProportional(t.id,this.id):h.__inject__TextDrawIsProportional(this.id)}isSelectable(){if(this.id===d.TEXT_DRAW)return!1;const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawIsSelectable(t.id,this.id):h.__inject__TextDrawIsSelectable(this.id)}getAlignment(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get alignment");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetAlignment(t.id,this.id):h.__inject__TextDrawGetAlignment(this.id)}getPreviewModel(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get preview model");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetPreviewModel(t.id,this.id):h.__inject__TextDrawGetPreviewModel(this.id)}getPreviewRot(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get preview rotation");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetPreviewRot(t.id,this.id):h.__inject__TextDrawGetPreviewRot(this.id)}getPreviewVehColors(){if(this.id===d.TEXT_DRAW)return h.beforeCreateWarn("get preview vel colors");const t=this.sourceInfo.player;return t?h.__inject__PlayerTextDrawGetPreviewVehicleColors(t.id,this.id):h.__inject__TextDrawGetPreviewVehicleColors(this.id)}isGlobal(){return!!this.sourceInfo.player}static getInstance(t,i){return i?Fe.get(t):Be.get(t)}static getInstances(t){return t?[...Fe.values()]:[...Be.values()]}static __inject__TextDrawCreate=qh;static __inject__CreatePlayerTextDraw=Wu;static __inject__TextDrawDestroy=eu;static __inject__PlayerTextDrawDestroy=ju;static __inject__TextDrawFont=cu;static __inject__PlayerTextDrawFont=em;static __inject__TextDrawColor=nu;static __inject__PlayerTextDrawColor=Yu;static __inject__TextDrawBoxColor=su;static __inject__PlayerTextDrawBoxColor=$u;static __inject__TextDrawBackgroundColor=du;static __inject__PlayerTextDrawBackgroundColor=qu;static __inject__TextDrawAlignment=au;static __inject__PlayerTextDrawAlignment=Zu;static __inject__TextDrawLetterSize=tu;static __inject__PlayerTextDrawLetterSize=Ku;static __inject__TextDrawSetOutline=ou;static __inject__PlayerTextDrawSetOutline=Qu;static __inject__TextDrawSetPreviewModel=gu;static __inject__PlayerTextDrawSetPreviewModel=sm;static __inject__TextDrawSetPreviewRot=Pu;static __inject__PlayerTextDrawSetPreviewRot=lm;static __inject__TextDrawSetPreviewVehicleColors=Su;static __inject__PlayerTextDrawSetPreviewVehicleColors=om;static __inject__TextDrawSetProportional=_u;static __inject__PlayerTextDrawSetProportional=tm;static __inject__TextDrawSetSelectable=hu;static __inject__PlayerTextDrawSetSelectable=im;static __inject__TextDrawSetShadow=lu;static __inject__PlayerTextDrawSetShadow=Ju;static __inject__PlayerTextDrawSetString=rm;static __inject__TextDrawSetStringForPlayer=Qh;static __inject__TextDrawSetString=Iu;static __inject__TextDrawTextSize=iu;static __inject__PlayerTextDrawTextSize=Xu;static __inject__PlayerTextDrawUseBox=zu;static __inject__TextDrawUseBox=ru;static __inject__PlayerTextDrawShow=am;static __inject__TextDrawShowForPlayer=uu;static __inject__PlayerTextDrawHide=nm;static __inject__TextDrawHideForPlayer=mu;static __inject__TextDrawShowForAll=pu;static __inject__TextDrawHideForAll=fu;static __inject__IsValidPlayerTextDraw=Au;static __inject__IsValidTextDraw=bh;static __inject__IsPlayerTextDrawVisible=Nu;static __inject__IsTextDrawVisibleForPlayer=Oh;static __inject__PlayerTextDrawGetString=Cu;static __inject__TextDrawGetString=Gh;static __inject__PlayerTextDrawSetPos=Du;static __inject__TextDrawSetPos=Fh;static __inject__PlayerTextDrawGetLetterSize=Tu;static __inject__TextDrawGetLetterSize=Bh;static __inject__PlayerTextDrawGetTextSize=vu;static __inject__TextDrawGetTextSize=xh;static __inject__PlayerTextDrawGetPos=Lu;static __inject__TextDrawGetPos=Vh;static __inject__PlayerTextDrawGetColor=wu;static __inject__TextDrawGetColor=Mh;static __inject__PlayerTextDrawGetBoxColor=Ru;static __inject__TextDrawGetBoxColor=kh;static __inject__PlayerTextDrawGetBackgroundColor=bu;static __inject__TextDrawGetBackgroundColor=Hh;static __inject__PlayerTextDrawGetShadow=Ou;static __inject__TextDrawGetShadow=Uh;static __inject__PlayerTextDrawGetOutline=Gu;static __inject__TextDrawGetOutline=Wh;static __inject__PlayerTextDrawGetFont=Fu;static __inject__TextDrawGetFont=jh;static __inject__PlayerTextDrawIsBox=Bu;static __inject__TextDrawIsBox=Kh;static __inject__PlayerTextDrawIsProportional=xu;static __inject__TextDrawIsProportional=Xh;static __inject__PlayerTextDrawIsSelectable=Vu;static __inject__TextDrawIsSelectable=Zh;static __inject__PlayerTextDrawGetAlignment=Mu;static __inject__TextDrawGetAlignment=Yh;static __inject__PlayerTextDrawGetPreviewModel=ku;static __inject__TextDrawGetPreviewModel=zh;static __inject__PlayerTextDrawGetPreviewRot=Hu;static __inject__TextDrawGetPreviewRot=$h;static __inject__TextDrawGetPreviewVehicleColors=Jh;static __inject__PlayerTextDrawGetPreviewVehicleColors=Uu}b.onExit(({next:e})=>(h.getInstances(!0).forEach(t=>t.destroy()),h.getInstances(!1).forEach(t=>t.destroy()),Fe.clear(),Be.clear(),e()));const[RI]=p({name:"OnPlayerClickTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:f.getInstance(e),textDraw:t===d.TEXT_DRAW?t:h.getInstance(t,!0)}}}),[bI]=p({name:"OnPlayerClickPlayerTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:f.getInstance(e),textDraw:t===d.TEXT_DRAW?t:h.getInstance(t,!1)}}}),OI=Object.freeze({onPlayerClickGlobal:RI,onPlayerClickPlayer:bI});function GI(e,t){return(e&t)===t}function FI(e,t,i){return(e&i)===i&&(t&i)!==i}function BI(e,t){return!!(e&t)}function xI(e,t,i){return(e&i)!==i&&(t&i)===i}function VI(e){const t=new Set,i=e.prototype,a=Object.getOwnPropertyNames(i).filter(r=>typeof i[r]=="function"&&r!=="constructor").reduce((r,s)=>(r[s]=i[s],r),{});function n(r,s){if(t.has(r))throw new Error(`Method '${String(r)}' of class '${e.name}' has already been hooked. Each method can only be hooked once per defineHooks call. `);if(typeof Reflect.get(i,r)!="function")throw new Error(`Invalid method: ${String(r)}`);return Reflect.set(i,r,s),t.add(r),s}return[a,n]}export{ut as ArtworkEnum,Tt as BodyPartsEnum,vt as BoneIdsEnum,Bt as BulletHitTypesEnum,Le as CameraCutStylesEnum,Dt as CameraModesEnum,Rt as CarModTypeEnum,mt as ClickSourcesEnum,ft as ConnectionStatusEnum,Qe as DamageDeathReasonEnum,R as Dialog,$e as DialogStylesEnum,pe as Dynamic3DTextLabel,Xf as Dynamic3DTextLabelEvent,te as DynamicActor,Hf as DynamicActorEvent,G as DynamicArea,qf as DynamicAreaEvent,wf as DynamicCheckPointEvent,$ as DynamicCheckpoint,me as DynamicMapIcon,If as DynamicMapIconEvent,M as DynamicObject,hf as DynamicObjectEvent,H as DynamicPickup,Af as DynamicPickupEvent,J as DynamicRaceCP,xf as DynamicRaceCPEvent,K as E_STREAMER,pt as EditResponseTypesEnum,Nt as FightingStylesEnum,Lt as ForceSyncEnum,b as GameMode,SI as GameText,O as GangZone,wI as GangZoneEvent,A as I18n,d as InvalidEnum,It as KeysEnum,B as LimitsEnum,Xe as MapIconStyles,Ct as MapIconStylesEnum,gt as MarkerModesEnum,kt as MaterialTextAlign,qe as MaterialTextSizes,Ce as Menu,AI as MenuEvent,ve as NPCEntityCheckEnum,fe as NPCMoveSpeedEnum,Ue as NPCMoveTypeEnum,Pt as NPCPlaybackEnum,St as NPCRecordStatusEnum,PI as NetStats,L as Npc,gI as NpcEvent,ye as NpcNode,Ne as NpcPath,Ae as NpcRecord,yt as ObjectMaterialAlignmentEnum,Et as ObjectMaterialTextSizeEnum,f as Player,nt as PlayerEvent,we as PlayerStateEnum,Vt as RecordTypesEnum,At as SelectObjectTypesEnum,Je as SpecialActionsEnum,We as SpectateModesEnum,S as Streamer,Mt as StreamerAreaTypes,v as StreamerDistances,E as StreamerItemTypes,m as StreamerMiscellaneous,je as StreamerObjectTypes,h as TextDraw,wt as TextDrawAlignEnum,OI as TextDrawEvent,Re as TextDrawFontsEnum,D as Vehicle,ef as VehicleEvent,Ot as VehicleModelInfoEnum,bt as VehicleParamsEnum,Gt as WeaponEnum,Ft as WeaponSkillsEnum,xt as WeaponStatesEnum,si as animateLib,p as defineEvent,VI as defineHooks,Am as getAnimateDurationByLibName,GI as isHolding,FI as isPressed,BI as isPressing,xI as isReleased,tt as isValidAnimateLib,it as isValidAnimateName,C as rgba,jr as useTrigger,Kr as withTriggerOptions};
|
|
1
|
+
import pi from"node:util";import fi from"iconv-lite";var Ii=(e=>(e[e.DOWNLOAD_REQUEST_EMPTY=0]="DOWNLOAD_REQUEST_EMPTY",e[e.DOWNLOAD_REQUEST_MODEL_FILE=1]="DOWNLOAD_REQUEST_MODEL_FILE",e[e.DOWNLOAD_REQUEST_TEXTURE_FILE=2]="DOWNLOAD_REQUEST_TEXTURE_FILE",e))(Ii||{}),Pi=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(Pi||{}),gt=(e=>(e[e.MSGBOX=0]="MSGBOX",e[e.INPUT=1]="INPUT",e[e.LIST=2]="LIST",e[e.PASSWORD=3]="PASSWORD",e[e.TABLIST=4]="TABLIST",e[e.TABLIST_HEADERS=5]="TABLIST_HEADERS",e))(gt||{}),gi=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(gi||{}),yi=(e=>(e[e.NO_ACTION=0]="NO_ACTION",e[e.DISCONNECT_ASAP=1]="DISCONNECT_ASAP",e[e.DISCONNECT_ASAP_SILENTLY=2]="DISCONNECT_ASAP_SILENTLY",e[e.DISCONNECT_ON_NO_ACK=3]="DISCONNECT_ON_NO_ACK",e[e.REQUESTED_CONNECTION=4]="REQUESTED_CONNECTION",e[e.HANDLING_CONNECTION_REQUEST=5]="HANDLING_CONNECTION_REQUEST",e[e.UNVERIFIED_SENDER=6]="UNVERIFIED_SENDER",e[e.SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET=7]="SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET",e[e.CONNECTED=8]="CONNECTED",e))(yi||{}),o=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_ID",e[e.NPC_ID=-1]="NPC_ID",e[e.PATH_ID=-1]="PATH_ID",e[e.NODE_ID=-1]="NODE_ID",e[e.RECORD_ID=-1]="RECORD_ID",e[e.VEHICLE_ID=65535]="VEHICLE_ID",e[e.ACTOR_ID=65535]="ACTOR_ID",e[e.OBJECT_ID=65535]="OBJECT_ID",e[e.MENU=-1]="MENU",e[e.TEXT_DRAW=65535]="TEXT_DRAW",e[e.PLAYER_TEXT_DRAW=65535]="PLAYER_TEXT_DRAW",e[e.GANG_ZONE=-1]="GANG_ZONE",e[e._3DTEXT_ID=65535]="_3DTEXT_ID",e[e.PLAYER_3DTEXT_ID=65535]="PLAYER_3DTEXT_ID",e[e.PICKUP_ID=-1]="PICKUP_ID",e))(o||{}),Si=(e=>(e[e.NONE=0]="NONE",e[e.ACTION=1]="ACTION",e[e.CROUCH=2]="CROUCH",e[e.FIRE=4]="FIRE",e[e.SPRINT=8]="SPRINT",e[e.SECONDARY_ATTACK=16]="SECONDARY_ATTACK",e[e.JUMP=32]="JUMP",e[e.LOOK_RIGHT=64]="LOOK_RIGHT",e[e.HANDBRAKE=128]="HANDBRAKE",e[e.LOOK_LEFT=256]="LOOK_LEFT",e[e.SUBMISSION=512]="SUBMISSION",e[e.LOOK_BEHIND=512]="LOOK_BEHIND",e[e.WALK=1024]="WALK",e[e.ANALOG_UP=2048]="ANALOG_UP",e[e.ANALOG_DOWN=4096]="ANALOG_DOWN",e[e.ANALOG_LEFT=8192]="ANALOG_LEFT",e[e.ANALOG_RIGHT=16384]="ANALOG_RIGHT",e[e.YES=65536]="YES",e[e.NO=131072]="NO",e[e.CTRL_BACK=262144]="CTRL_BACK",e[e.KEY_UP=-128]="KEY_UP",e[e.KEY_DOWN=128]="KEY_DOWN",e[e.KEY_LEFT=-128]="KEY_LEFT",e[e.KEY_RIGHT=128]="KEY_RIGHT",e))(Si||{}),B=(e=>(e[e.MAX_PLAYER_NAME=24]="MAX_PLAYER_NAME",e[e.MAX_PLAYERS=1e3]="MAX_PLAYERS",e[e.MAX_VEHICLES=2e3]="MAX_VEHICLES",e[e.MAX_ACTORS=1e3]="MAX_ACTORS",e[e.MAX_OBJECTS=1e3]="MAX_OBJECTS",e[e.MAX_GANG_ZONES=1024]="MAX_GANG_ZONES",e[e.MAX_TEXT_DRAWS=2048]="MAX_TEXT_DRAWS",e[e.MAX_PLAYER_TEXT_DRAWS=256]="MAX_PLAYER_TEXT_DRAWS",e[e.MAX_MENUS=128]="MAX_MENUS",e[e.MAX_MENU_ROW=12]="MAX_MENU_ROW",e[e.MAX_MENU_COL=2]="MAX_MENU_COL",e[e.MAX_3DTEXT_GLOBAL=1024]="MAX_3DTEXT_GLOBAL",e[e.MAX_3DTEXT_PLAYER=1024]="MAX_3DTEXT_PLAYER",e[e.MAX_PICKUPS=4096]="MAX_PICKUPS",e[e.MAX_PLAYER_ATTACHED_OBJECTS=10]="MAX_PLAYER_ATTACHED_OBJECTS",e[e.MAX_CHATBUBBLE_LENGTH=144]="MAX_CHATBUBBLE_LENGTH",e[e.NPC_MAX_NODES=64]="NPC_MAX_NODES",e[e.MAX_NPCS=1e3]="MAX_NPCS",e[e.MAX_WORLD_BOUNDS=2e4]="MAX_WORLD_BOUNDS",e[e.MIN_WORLD_BOUNDS=-2e4]="MIN_WORLD_BOUNDS",e[e.MAX_TEXTDRAW_STR_LENGTH=800]="MAX_TEXTDRAW_STR_LENGTH",e[e.MAX_VEHICLE_CARRIAGES=3]="MAX_VEHICLE_CARRIAGES",e[e.MAX_GAMETEXT_STYLES=16]="MAX_GAMETEXT_STYLES",e[e.MIN_CUSTOM_SKIN_ID=20001]="MIN_CUSTOM_SKIN_ID",e[e.MAX_CUSTOM_SKIN_ID=3e4]="MAX_CUSTOM_SKIN_ID",e[e.MIN_CUSTOM_OBJECT_ID=-3e4]="MIN_CUSTOM_OBJECT_ID",e[e.MAX_CUSTOM_OBJECT_ID=-1e3]="MAX_CUSTOM_OBJECT_ID",e))(B||{}),Ai=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(Ai||{}),Ei=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(Ei||{}),Di=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(Di||{}),it=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.WALK=1]="WALK",e[e.JOG=2]="JOG",e[e.SPRINT=3]="SPRINT",e[e.DRIVE=4]="DRIVE",e[e.AUTO=5]="AUTO",e))(it||{}),ze=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.NPC=2]="NPC",e[e.ACTOR=4]="ACTOR",e[e.VEHICLE=8]="VEHICLE",e[e.OBJECT=16]="OBJECT",e[e.POBJECT_ORIG=32]="POBJECT_ORIG",e[e.POBJECT_TARG=64]="POBJECT_TARG",e[e.MAP=128]="MAP",e[e.ALL=255]="ALL",e))(ze||{}),Be=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(Be||{}),Ci=(e=>(e[e._32x32=10]="_32x32",e[e._64x32=20]="_64x32",e[e._64x64=30]="_64x64",e[e._128x32=40]="_128x32",e[e._128x64=50]="_128x64",e[e._128x128=60]="_128x128",e[e._256x32=70]="_256x32",e[e._256x64=80]="_256x64",e[e._256x128=90]="_256x128",e[e._256x256=100]="_256x256",e[e._512x64=110]="_512x64",e[e._512x128=120]="_512x128",e[e._512x256=130]="_512x256",e[e._512x512=140]="_512x512",e))(Ci||{}),Ni=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(Ni||{}),Te=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(Te||{}),Ti=(e=>(e[e.NORMAL=0]="NORMAL",e[e.BOXING=1]="BOXING",e[e.KUNGFU=2]="KUNGFU",e[e.KNEEHEAD=3]="KNEEHEAD",e[e.GRABKICK=4]="GRABKICK",e[e.ELBOW=5]="ELBOW",e))(Ti||{}),bi=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(bi||{}),Je=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Je||{}),vi=(e=>(e[e.BEHINDCAR=3]="BEHINDCAR",e[e.FOLLOWPED=4]="FOLLOWPED",e[e.SNIPER=7]="SNIPER",e[e.ROCKETLAUNCHER=8]="ROCKETLAUNCHER",e[e.FIXED=15]="FIXED",e[e._1STPERSON=16]="_1STPERSON",e[e.CAM_ON_A_STRING=18]="CAM_ON_A_STRING",e[e.BEHINDBOAT=22]="BEHINDBOAT",e[e.CAMERA=46]="CAMERA",e[e.ROCKETLAUNCHER_HS=51]="ROCKETLAUNCHER_HS",e[e.AIMWEAPON=53]="AIMWEAPON",e[e.AIMWEAPON_FROMCAR=55]="AIMWEAPON_FROMCAR",e[e.DW_HELI_CHASE=56]="DW_HELI_CHASE",e[e.DW_CAM_MAN=57]="DW_CAM_MAN",e[e.DW_BIRDY=58]="DW_BIRDY",e[e.DW_PLANE_SPOTTER=59]="DW_PLANE_SPOTTER",e[e.DW_PLANECAM1=62]="DW_PLANECAM1",e[e.DW_PLANECAM2=63]="DW_PLANECAM2",e[e.DW_PLANECAM3=64]="DW_PLANECAM3",e))(vi||{}),at=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(at||{}),$e=(e=>(e[e.NONE=0]="NONE",e[e.ONFOOT=1]="ONFOOT",e[e.DRIVER=2]="DRIVER",e[e.PASSENGER=3]="PASSENGER",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.ENTER_VEHICLE_DRIVER=5]="ENTER_VEHICLE_DRIVER",e[e.ENTER_VEHICLE_PASSENGER=6]="ENTER_VEHICLE_PASSENGER",e[e.WASTED=7]="WASTED",e[e.SPAWNED=8]="SPAWNED",e[e.SPECTATING=9]="SPECTATING",e))($e||{}),Li=(e=>(e[e.TORSO=3]="TORSO",e[e.GROIN=4]="GROIN",e[e.LEFT_ARM=5]="LEFT_ARM",e[e.RIGHT_ARM=6]="RIGHT_ARM",e[e.LEFT_LEG=7]="LEFT_LEG",e[e.RIGHT_LEG=8]="RIGHT_LEG",e[e.HEAD=9]="HEAD",e))(Li||{}),Oi=(e=>(e[e.Spine=1]="Spine",e[e.Head=2]="Head",e[e.LeftUpperArm=3]="LeftUpperArm",e[e.RightUpperArm=4]="RightUpperArm",e[e.LeftHand=5]="LeftHand",e[e.RightHand=6]="RightHand",e[e.LeftThigh=7]="LeftThigh",e[e.RightThigh=8]="RightThigh",e[e.LeftFoot=9]="LeftFoot",e[e.RightFoot=10]="RightFoot",e[e.RightCalf=11]="RightCalf",e[e.LeftCalf=12]="LeftCalf",e[e.LeftForearm=13]="LeftForearm",e[e.RightForearm=14]="RightForearm",e[e.LeftClavicle=15]="LeftClavicle",e[e.RightClavicle=16]="RightClavicle",e[e.Neck=17]="Neck",e[e.Jaw=18]="Jaw",e))(Oi||{}),wi=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(wi||{}),yt=(e=>(e[e.NONE=0]="NONE",e[e.DUCK=1]="DUCK",e[e.USEJETPACK=2]="USEJETPACK",e[e.ENTER_VEHICLE=3]="ENTER_VEHICLE",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.DANCE1=5]="DANCE1",e[e.DANCE2=6]="DANCE2",e[e.DANCE3=7]="DANCE3",e[e.DANCE4=8]="DANCE4",e[e.HANDSUP=10]="HANDSUP",e[e.USECELLPHONE=11]="USECELLPHONE",e[e.SITTING=12]="SITTING",e[e.STOPUSECELLPHONE=13]="STOPUSECELLPHONE",e[e.DRINK_BEER=20]="DRINK_BEER",e[e.SMOKE_CIGGY=21]="SMOKE_CIGGY",e[e.DRINK_WINE=22]="DRINK_WINE",e[e.DRINK_SPRUNK=23]="DRINK_SPRUNK",e[e.CUFFED=24]="CUFFED",e[e.CARRY=25]="CARRY",e[e.PISSING=68]="PISSING",e))(yt||{}),Qe=(e=>(e[e.FONT_0=0]="FONT_0",e[e.FONT_1=1]="FONT_1",e[e.FONT_2=2]="FONT_2",e[e.FONT_3=3]="FONT_3",e[e.SPRITE_DRAW=4]="SPRITE_DRAW",e[e.MODEL_PREVIEW=5]="MODEL_PREVIEW",e[e.BANK=0]="BANK",e[e.STANDARD=1]="STANDARD",e[e.SPACEAGE=2]="SPACEAGE",e[e.HEADING=3]="HEADING",e[e.BECKETT_REGULAR=0]="BECKETT_REGULAR",e[e.AHARONI_BOLD=1]="AHARONI_BOLD",e[e.BANK_GOTHIC=2]="BANK_GOTHIC",e[e.PRICEDOWN=3]="PRICEDOWN",e[e.SPRITE=4]="SPRITE",e[e.PREVIEW=5]="PREVIEW",e))(Qe||{}),Gi=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(Gi||{}),Ri=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=-1]="NONE",e[e.SPOILER=0]="SPOILER",e[e.HOOD=1]="HOOD",e[e.ROOF=2]="ROOF",e[e.SIDESKIRT=3]="SIDESKIRT",e[e.LAMPS=4]="LAMPS",e[e.NITRO=5]="NITRO",e[e.EXHAUST=6]="EXHAUST",e[e.WHEELS=7]="WHEELS",e[e.STEREO=8]="STEREO",e[e.HYDRAULICS=9]="HYDRAULICS",e[e.FRONT_BUMPER=10]="FRONT_BUMPER",e[e.REAR_BUMPER=11]="REAR_BUMPER",e[e.VENT_RIGHT=12]="VENT_RIGHT",e[e.VENT_LEFT=13]="VENT_LEFT",e[e.FRONT_BULLBAR=14]="FRONT_BULLBAR",e[e.REAR_BULLBAR=15]="REAR_BULLBAR",e))(Ri||{}),ji=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(ji||{}),Fi=(e=>(e[e.SIZE=1]="SIZE",e[e.FRONTSEAT=2]="FRONTSEAT",e[e.REARSEAT=3]="REARSEAT",e[e.PETROLCAP=4]="PETROLCAP",e[e.WHEELSFRONT=5]="WHEELSFRONT",e[e.WHEELSREAR=6]="WHEELSREAR",e[e.WHEELSMID=7]="WHEELSMID",e[e.FRONT_BUMPER_Z=8]="FRONT_BUMPER_Z",e[e.REAR_BUMPER_Z=9]="REAR_BUMPER_Z",e))(Fi||{}),xi=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.REASON_VEHICLE=49]="REASON_VEHICLE",e[e.REASON_DROWN=53]="REASON_DROWN",e[e.REASON_COLLISION=54]="REASON_COLLISION",e[e.REASON_SPLAT=54]="REASON_SPLAT",e[e.REASON_CONNECT=200]="REASON_CONNECT",e[e.REASON_DISCONNECT=200]="REASON_DISCONNECT",e[e.REASON_SUICIDE=255]="REASON_SUICIDE",e[e.FIST=0]="FIST",e[e.BRASSKNUCKLE=1]="BRASSKNUCKLE",e[e.GOLFCLUB=2]="GOLFCLUB",e[e.NIGHTSTICK=3]="NIGHTSTICK",e[e.KNIFE=4]="KNIFE",e[e.BAT=5]="BAT",e[e.SHOVEL=6]="SHOVEL",e[e.POOLSTICK=7]="POOLSTICK",e[e.KATANA=8]="KATANA",e[e.CHAINSAW=9]="CHAINSAW",e[e.DILDO=10]="DILDO",e[e.DILDO2=11]="DILDO2",e[e.VIBRATOR=12]="VIBRATOR",e[e.VIBRATOR2=13]="VIBRATOR2",e[e.FLOWER=14]="FLOWER",e[e.CANE=15]="CANE",e[e.GRENADE=16]="GRENADE",e[e.TEARGAS=17]="TEARGAS",e[e.MOLTOV=18]="MOLTOV",e[e.COLT45=22]="COLT45",e[e.SILENCED=23]="SILENCED",e[e.DEAGLE=24]="DEAGLE",e[e.SHOTGUN=25]="SHOTGUN",e[e.SAWEDOFF=26]="SAWEDOFF",e[e.SHOTGSPA=27]="SHOTGSPA",e[e.UZI=28]="UZI",e[e.MP5=29]="MP5",e[e.AK47=30]="AK47",e[e.M4=31]="M4",e[e.TEC9=32]="TEC9",e[e.RIFLE=33]="RIFLE",e[e.SNIPER=34]="SNIPER",e[e.ROCKETLAUNCHER=35]="ROCKETLAUNCHER",e[e.HEATSEEKER=36]="HEATSEEKER",e[e.FLAMETHROWER=37]="FLAMETHROWER",e[e.MINIGUN=38]="MINIGUN",e[e.SATCHEL=39]="SATCHEL",e[e.BOMB=40]="BOMB",e[e.SPRAYCAN=41]="SPRAYCAN",e[e.FIREEXTINGUISHER=42]="FIREEXTINGUISHER",e[e.CAMERA=43]="CAMERA",e[e.NIGHT_VISION_GOGGLES=44]="NIGHT_VISION_GOGGLES",e[e.THERMAL_GOGGLES=45]="THERMAL_GOGGLES",e[e.PARACHUTE=46]="PARACHUTE",e))(xi||{}),Vi=(e=>(e[e.PISTOL=0]="PISTOL",e[e.PISTOL_SILENCED=1]="PISTOL_SILENCED",e[e.DESERT_EAGLE=2]="DESERT_EAGLE",e[e.SHOTGUN=3]="SHOTGUN",e[e.SAWNOFF_SHOTGUN=4]="SAWNOFF_SHOTGUN",e[e.SPAS12_SHOTGUN=5]="SPAS12_SHOTGUN",e[e.MICRO_UZI=6]="MICRO_UZI",e[e.MP5=7]="MP5",e[e.AK47=8]="AK47",e[e.M4=9]="M4",e[e.SNIPERRIFLE=10]="SNIPERRIFLE",e))(Vi||{}),Bi=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.VEHICLE=2]="VEHICLE",e[e.OBJECT=3]="OBJECT",e[e.PLAYER_OBJECT=4]="PLAYER_OBJECT",e))(Bi||{}),Mi=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NO_BULLETS=0]="NO_BULLETS",e[e.LAST_BULLET=1]="LAST_BULLET",e[e.MORE_BULLETS=2]="MORE_BULLETS",e[e.RELOADING=3]="RELOADING",e))(Mi||{}),St=(e=>(e[e.VEHICLE=49]="VEHICLE",e[e.HELICOPTERBLADES=50]="HELICOPTERBLADES",e[e.EXPLOSION=51]="EXPLOSION",e[e.DROWN=53]="DROWN",e[e.COLLISION=54]="COLLISION",e[e.CONNECT=200]="CONNECT",e[e.DISCONNECT=201]="DISCONNECT",e[e.SUICIDE=255]="SUICIDE",e))(St||{}),ki=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(ki||{}),Hi=(e=>(e[e.CIRCLE=0]="CIRCLE",e[e.CYLINDER=1]="CYLINDER",e[e.SPHERE=2]="SPHERE",e[e.RECTANGLE=3]="RECTANGLE",e[e.CUBOID=4]="CUBOID",e[e.POLYGON=5]="POLYGON",e))(Hi||{}),G=(e=>(e[e.OBJECT_SD=300]="OBJECT_SD",e[e.OBJECT_DD=0]="OBJECT_DD",e[e.PICKUP_SD=200]="PICKUP_SD",e[e.CP_SD=200]="CP_SD",e[e.RACE_CP_SD=200]="RACE_CP_SD",e[e.MAP_ICON_SD=200]="MAP_ICON_SD",e[e.TEXT_3D_LABEL_SD=200]="TEXT_3D_LABEL_SD",e[e.ACTOR_SD=200]="ACTOR_SD",e))(G||{}),T=(e=>(e[e.OBJECT=0]="OBJECT",e[e.PICKUP=1]="PICKUP",e[e.CP=2]="CP",e[e.RACE_CP=3]="RACE_CP",e[e.MAP_ICON=4]="MAP_ICON",e[e.TEXT_3D_LABEL=5]="TEXT_3D_LABEL",e[e.AREA=6]="AREA",e[e.ACTOR=7]="ACTOR",e))(T||{}),p=(e=>(e[e.MAX_TYPES=8]="MAX_TYPES",e[e.MAX_AREA_TYPES=5]="MAX_AREA_TYPES",e[e.MAX_OBJECT_TYPES=3]="MAX_OBJECT_TYPES",e[e.INVALID_ID=0]="INVALID_ID",e))(p||{}),rt=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(rt||{}),le=(e=>(e[e.AREA_ID=0]="AREA_ID",e[e.ATTACHED_OBJECT=1]="ATTACHED_OBJECT",e[e.ATTACHED_PLAYER=2]="ATTACHED_PLAYER",e[e.ATTACHED_VEHICLE=3]="ATTACHED_VEHICLE",e[e.ATTACH_OFFSET_X=4]="ATTACH_OFFSET_X",e[e.ATTACH_OFFSET_Y=5]="ATTACH_OFFSET_Y",e[e.ATTACH_OFFSET_Z=6]="ATTACH_OFFSET_Z",e[e.ATTACH_R_X=7]="ATTACH_R_X",e[e.ATTACH_R_Y=8]="ATTACH_R_Y",e[e.ATTACH_R_Z=9]="ATTACH_R_Z",e[e.ATTACH_X=10]="ATTACH_X",e[e.ATTACH_Y=11]="ATTACH_Y",e[e.ATTACH_Z=12]="ATTACH_Z",e[e.COLOR=13]="COLOR",e[e.DRAW_DISTANCE=14]="DRAW_DISTANCE",e[e.EXTRA_ID=15]="EXTRA_ID",e[e.HEALTH=16]="HEALTH",e[e.INTERIOR_ID=17]="INTERIOR_ID",e[e.INVULNERABLE=18]="INVULNERABLE",e[e.MAX_X=19]="MAX_X",e[e.MAX_Y=20]="MAX_Y",e[e.MAX_Z=21]="MAX_Z",e[e.MIN_X=22]="MIN_X",e[e.MIN_Y=23]="MIN_Y",e[e.MIN_Z=24]="MIN_Z",e[e.MODEL_ID=25]="MODEL_ID",e[e.MOVE_R_X=26]="MOVE_R_X",e[e.MOVE_R_Y=27]="MOVE_R_Y",e[e.MOVE_R_Z=28]="MOVE_R_Z",e[e.MOVE_SPEED=29]="MOVE_SPEED",e[e.MOVE_X=30]="MOVE_X",e[e.MOVE_Y=31]="MOVE_Y",e[e.MOVE_Z=32]="MOVE_Z",e[e.NEXT_X=33]="NEXT_X",e[e.NEXT_Y=34]="NEXT_Y",e[e.NEXT_Z=35]="NEXT_Z",e[e.PLAYER_ID=36]="PLAYER_ID",e[e.PRIORITY=37]="PRIORITY",e[e.ROTATION=38]="ROTATION",e[e.R_X=39]="R_X",e[e.R_Y=40]="R_Y",e[e.R_Z=41]="R_Z",e[e.SIZE=42]="SIZE",e[e.STREAM_DISTANCE=43]="STREAM_DISTANCE",e[e.STYLE=44]="STYLE",e[e.SYNC_ROTATION=45]="SYNC_ROTATION",e[e.TEST_LOS=46]="TEST_LOS",e[e.TYPE=47]="TYPE",e[e.WORLD_ID=48]="WORLD_ID",e[e.X=49]="X",e[e.Y=50]="Y",e[e.Z=51]="Z",e))(le||{}),Ui=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(Ui||{}),nt=(e=>(e[e.SIZE_32x32=10]="SIZE_32x32",e[e.SIZE_64x32=20]="SIZE_64x32",e[e.SIZE_64x64=30]="SIZE_64x64",e[e.SIZE_128x32=40]="SIZE_128x32",e[e.SIZE_128x64=50]="SIZE_128x64",e[e.SIZE_128x128=60]="SIZE_128x128",e[e.SIZE_256x32=70]="SIZE_256x32",e[e.SIZE_256x64=80]="SIZE_256x64",e[e.SIZE_256x128=90]="SIZE_256x128",e[e.SIZE_256x256=100]="SIZE_256x256",e[e.SIZE_512x64=110]="SIZE_512x64",e[e.SIZE_512x128=120]="SIZE_512x128",e[e.SIZE_512x256=130]="SIZE_512x256",e[e.SIZE_512x512=140]="SIZE_512x512",e))(nt||{});const At=-1,Wi=-1,Ki=-1,Xi=-1,Zi=0,Yi=-1e3,zi=-1e3,Ji=-1e3,$i=0,Et=32,Qi=300,qi=!0,qe=1,ea=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),ta=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),ia=(e,t,i,a,r,n=!0,s=100,l=0,c=-1,_=-1,d=G.ACTOR_SD,h=-1,P=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,i,a,r,n,s,l,c,_,d,h,P),aa=e=>samp.callNative("DestroyDynamicActor","i",e),ra=e=>!!samp.callNative("IsValidDynamicActor","i",e),na=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),sa=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),la=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),oa=(e,t,i,a,r,n,s,l,c)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,i,a,r,n,s,l,c),ca=e=>samp.callNative("ClearDynamicActorAnimations","i",e),_a=e=>{const[t,i]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:i}},da=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),ha=e=>{const[t,i,a,r]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:i,z:a,ret:r}},ua=(e,t,i,a)=>samp.callNative("SetDynamicActorPos","ifff",e,t,i,a),ma=e=>{const[t,i]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:i}},pa=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),fa=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),Ia=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),Pa=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),ga=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),ya=e=>{const[t,i,a=0,r=0,n=0,s=0,l=0,c=0,_]=samp.callNative("GetDynamicActorAnimation","iSSFIIIIIii",e,32,32);return{animLib:t,animName:i,fDelta:a,loop:r,lockX:n,lockY:s,freeze:l,time:c,ret:_}},Sa=(e,t,i,a=-1,r=-1,n=-1,s=0)=>samp.callNative("CreateDynamicCircle","fffiiii",e,t,i,a,r,n,s),Aa=(e,t,i,a,r,n=-1,s=-1,l=-1,c=0)=>samp.callNative("CreateDynamicCylinder","fffffiiii",e,t,i,a,r,n,s,l,c),Ea=(e,t,i,a,r=-1,n=-1,s=-1,l=0)=>samp.callNative("CreateDynamicSphere","ffffiiii",e,t,i,a,r,n,s,l),Da=(e,t,i,a,r=-1,n=-1,s=-1,l=0)=>samp.callNative("CreateDynamicRectangle","ffffiiii",e,t,i,a,r,n,s,l),Ca=(e,t,i,a,r,n,s=-1,l=-1,c=-1,_=0)=>samp.callNative("CreateDynamicCuboid","ffffffiiii",e,t,i,a,r,n,s,l,c,_),Na=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=-1,r=-1,n=-1,s=0)=>samp.callNative("CreateDynamicPolygon","affiiiii",e,t,i,e.length,a,r,n,s),Ta=e=>samp.callNative("DestroyDynamicArea","i",e),ba=e=>!!samp.callNative("IsValidDynamicArea","i",e),va=e=>samp.callNative("GetDynamicAreaType","i",e),La=e=>{const[t,i]=samp.callNative("GetDynamicPolygonPoints","iAi",e,Dt(e));return{points:t,ret:i}},Dt=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),Oa=(e,t,i=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,i),wa=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),Ga=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),Ra=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),ja=e=>{const[t,i]=samp.callNative("GetPlayerDynamicAreas","iAi",e,Ct(e));return{areas:t,ret:i}},Ct=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),Fa=(e,t,i,a)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,i,a),xa=(e,t,i)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,i),Va=(e,t,i,a,r,n,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,i,a,r,n,s),Ba=(e,t,i,a,r,n)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,i,a,r,n),Ma=(e,t,i)=>{const[a,r]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,i,Nt(e,t,i));return{areas:a,ret:r}},Nt=(e,t,i)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,i),ka=(e,t,i,a,r,n)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,i,a,r,n,Tt(e,t,i,a,r,n));return{areas:s,ret:l}},Tt=(e,t,i,a,r,n)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,i,a,r,n),Ha=(e,t,i=rt.DYNAMIC,a=65535,r=0,n=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,i,a,r,n,s),Ua=(e,t,i=0,a=0,r=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,i,a,r),Wa=(e,t,i=0,a=0,r=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,i,a,r),Ka=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),Xa=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),Za=(e,t,i,a,r=-1,n=-1,s=-1,l=G.CP_SD,c=-1,_=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,i,a,r,n,s,l,c,_),Ya=e=>samp.callNative("DestroyDynamicCP","i",e),bt=e=>!!samp.callNative("IsValidDynamicCP","i",e),za=(e,t,i)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,i),Ja=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),$a=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),Qa=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),qa=(e,t,i)=>{const[a,r]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,i);return{val:a,ret:r}},er=(e,t,i,a)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,i,a),tr=(e,t,i)=>samp.callNative("Streamer_GetIntData","iii",e,t,i),ir=(e,t,i,a)=>samp.callNative("Streamer_SetIntData","iiii",e,t,i,a),ar=(e,t,i)=>{const[a,r]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,i,vt(e,t,i));return{arrayData:a,ret:r}},rr=(e,t,i,a)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,i,a,a.length),nr=(e,t,i,a)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,i,a),sr=(e,t,i,a)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,i,a),lr=(e,t,i,a)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,i,a),vt=(e,t,i)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,i),or=e=>samp.callNative("Streamer_GetUpperBound","i",e);var st=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(st||{});const cr=(e,t,i,a,r,n=-1,s=-1,l=-1,c=G.MAP_ICON_SD,_=0,d=-1,h=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,i,a,r,n,s,l,c,_,d,h),_r=e=>samp.callNative("DestroyDynamicMapIcon","i",e),dr=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),hr=(e,t,i,a,r,n,s,l=G.OBJECT_SD,c=G.OBJECT_DD,_=[-1],d=[-1],h=[-1],P=[-1],S=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,i,a,r,n,s,l,c,_,d,h,P,S,_.length,d.length,h.length,P.length),ur=(e,t,i,a,r,n=G.PICKUP_SD,s=[-1],l=[-1],c=[-1],_=[-1],d=0)=>samp.callNative("CreateDynamicPickupEx","iiffffaaaaiiiii",e,t,i,a,r,n,s,l,c,_,d,s.length,l.length,c.length,_.length),mr=(e,t,i,a,r=G.CP_SD,n=[-1],s=[-1],l=[-1],c=[-1],_=0)=>samp.callNative("CreateDynamicCPEx","fffffaaaaiiiii",e,t,i,a,r,n,s,l,c,_,n.length,s.length,l.length,c.length),pr=(e,t,i,a,r,n,s,l,c=G.RACE_CP_SD,_=[-1],d=[-1],h=[-1],P=[-1],S=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,i,a,r,n,s,l,c,_,d,h,P,S,_.length,d.length,h.length,P.length),fr=(e,t,i,a,r,n=st.LOCAL,s=G.MAP_ICON_SD,l=[-1],c=[-1],_=[-1],d=[-1],h=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,i,a,r,n,s,l,c,_,d,h,l.length,c.length,_.length,d.length),Ir=(e,t,i,a=[-1],r=[-1],n=[-1],s=0)=>samp.callNative("CreateDynamicCircleEx","fffaaaiiii",e,t,i,a,r,n,a.length,r.length,n.length,s),Pr=(e,t,i,a,r,n=[-1],s=[-1],l=[-1],c=0)=>samp.callNative("CreateDynamicCylinderEx","fffffaaaiiii",e,t,i,a,r,n,s,l,n.length,s.length,l.length,c),gr=(e,t,i,a,r=[-1],n=[-1],s=[-1],l=0)=>samp.callNative("CreateDynamicSphereEx","ffffaaaiiii",e,t,i,a,r,n,s,r.length,n.length,s.length,l),yr=(e,t,i,a,r=[-1],n=[-1],s=[-1],l=0)=>samp.callNative("CreateDynamicRectangleEx","ffffaaaiiii",e,t,i,a,r,n,s,r.length,n.length,s.length,l),Sr=(e,t,i,a,r,n,s=[-1],l=[-1],c=[-1],_=0)=>samp.callNative("CreateDynamicCuboidEx","ffffffaaaiiii",e,t,i,a,r,n,s,l,c,s.length,l.length,c.length,_),Ar=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=[-1],r=[-1],n=[-1],s=0)=>samp.callNative("CreateDynamicPolygonEx","affiaaaiiii",e,t,i,e.length,a,r,n,a.length,r.length,n.length,s),Er=(e,t,i,a,r,n=!0,s=100,l=G.ACTOR_SD,c=[0],_=[-1],d=[-1],h=[-1],P=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,i,a,r,n,s,l,c,_,d,h,P,c.length,_.length,d.length,h.length),Dr=(e,t,i,a,r,n=3)=>{const[s,l]=samp.callNative("Streamer_GetDistanceToItem","fffiiFi",e,t,i,a,r,n);return{distance:s,ret:l}},Cr=(e,t,i,a)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,i,a),Nr=(e,t,i)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,i),Tr=(e,t,i,a=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,i,a,a.length),br=(e,t,i)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,i),vr=(e,t,i)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,i),Lr=(e,t,i)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,i),Or=(e,t,i=qe)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,i),wr=(e,t,i=qe)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,i),Gr=(e,t=qe)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),Rr=(e,t=qe)=>samp.callNative("Streamer_CountItems","ii",e,t),jr=(e,t,i,a,r=Et,n=Qi,s=At)=>{const[l=[],c=0]=samp.callNative("Streamer_GetNearbyItems","fffiAifi",e,t,i,a,r,n,s);return l.slice(0,c)},Fr=(e,t,i=Et)=>{const[a=[],r=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,i);return a.slice(0,r)},xr=(e,t)=>{const[i,a,r,n]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:i,y:a,z:r,ret:n}},Vr=(e,t,i,a,r)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,i,a,r),Br=(e,t)=>{const[i,a,r,n]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:i,y:a,z:r,ret:n}},Mr=(e,t,i,a,r)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,i,a,r),kr=(e,t,i,a,r,n,s,l=At,c=Wi,_=Ki,d=G.OBJECT_SD,h=G.OBJECT_DD,P=Xi,S=Zi)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,i,a,r,n,s,l,c,_,d,h,P,S),Hr=e=>samp.callNative("DestroyDynamicObject","i",e),Ur=e=>!!samp.callNative("IsValidDynamicObject","i",e),Wr=e=>{const[t,i,a,r]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:r}},Kr=(e,t,i,a)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,i,a),Xr=e=>{const[t,i,a,r]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:i,rz:a,ret:r}},Zr=(e,t,i,a)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,i,a),Yr=(e,t,i,a,r,n=Yi,s=zi,l=Ji)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,i,a,r,n,s,l),zr=e=>samp.callNative("StopDynamicObject","i",e),Jr=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),$r=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),Qr=(e,t,i,a,r,n,s,l,c=qi)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,i,a,r,n,s,l,c),qr=(e,t,i,a,r,n,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,i,a,r,n,s,l),en=(e,t,i,a,r,n,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,i,a,r,n,s,l),tn=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),an=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),rn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),nn=(e,t,i,a,r,n=$i)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,i,a,r,n),sn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),ln=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),on=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),cn=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),_n=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),dn=(e,t,i,a,r,n=-1,s=-1,l=-1,c=G.PICKUP_SD,_=-1,d=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,i,a,r,n,s,l,c,_,d),hn=e=>!!samp.callNative("DestroyDynamicPickup","i",e),un=e=>!!samp.callNative("IsValidDynamicPickup","i",e),mn=(e,t,i,a,r,n,s,l,c=-1,_=-1,d=-1,h=G.RACE_CP_SD,P=-1,S=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,i,a,r,n,s,l,c,_,d,h,P,S),pn=e=>samp.callNative("DestroyDynamicRaceCP","i",e),fn=(e,t,i)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,i),In=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),Pn=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),gn=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),yn=()=>samp.callNative("Streamer_GetTickRate",""),Sn=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),An=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),En=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),Dn=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),Cn=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),Lt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Ot=(e,t,i=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,i),Nn=e=>samp.callNative("Streamer_GetChunkSize","i",e),Tn=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),bn=e=>samp.callNative("Streamer_GetMaxItems","i",e),vn=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),wt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),Gt=(e,t,i=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,i),Rt=(e,t=-1)=>{const[i,a]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:i,ret:a}},jt=(e,t,i=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,i),Ln=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",p.MAX_TYPES);return{priority:e,ret:t}},On=e=>samp.callNative("Streamer_SetTypePriority","ai",e,p.MAX_TYPES),wn=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},Gn=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Rn=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},jn=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Fn=(e,t,i)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,i),xn=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Vn=(e,t,i)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,i),Bn=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Mn=(e,t,i)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,i),kn=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),Hn=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Un=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Wn=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),Kn=()=>samp.callNative("Streamer_ProcessActiveItems",""),Xn=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Zn=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),Yn=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),zn=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),Jn=(e,t,i)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,i),$n=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),Qn=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},qn=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),es=(e,t,i,a,r=-1,n=-1,s=-1,l=-1,c=!0)=>samp.callNative("Streamer_UpdateEx","ifffiiiii",e,t,i,a,r,n,s,l,c),U=new Map,Ft=new Map;function ts(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function xt(e,t,...i){const{defaultValue:a=!0,name:r,beforeEach:n,afterEach:s,throwOnError:l=!1}=e,c=U.get(r);if(!c||!c.length)return+a;const _=n?n(...i):{},d=[];let h=t;const P=S=>{if(h++,h<c.length){try{S&&Object.assign(_,S);const y={next:P,defaultValue:a,..._},N=c[h](y);return N instanceof Promise?(d.push(N),a):N}catch(y){const N=`executing event [name:${r},index:${h}] error:
|
|
2
|
+
${y}`;if(l)throw{error:y,message:N};console.log(N)}return a}return s&&(d.length?Promise.allSettled(d).then(()=>s(_)):s(_)),a};return ts(P(),a)}function u(e){const{name:t,identifier:i,isNative:a=!0}=e;if(U.has(t)){const l=`event [name:${t}] error: already defined.`;throw new Error(l)}function r(...l){if(l.length===1&&typeof l[0]=="object"&&l[0].__trigger__){const c=l[0];let _=-1;if(c.skipToNext){const d=U.get(t);if(d&&d.length){const h=d.indexOf(c.skipToNext);h>-1&&(_=h)}}return xt(e,_,...c.args)}return xt(e,-1,...l)}function n(l,c=!1){U.has(t)||U.set(t,[]);const _=U.get(t),d=(c?_.unshift(l):_.push(l))-1;return()=>{const h=U.get(t);if(!h)return;const P=h.length-1,S=P<d?P:d;for(let y=S;y>=0;y--)if(h[y]===l){h.splice(y,1);break}return h.length===0&&U.delete(t),h.length}}const s=[n,r];return a&&(typeof i<"u"&&samp.registerEvent(t,i),samp.on(t,r)),Ft.set(t,r),s}function is(e){return Ft.get(e)}function as(e){return Object.assign(e,{__trigger__:!0})}function Vt(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}function rs(e,t){const i={},a=Object.keys(e);for(let r=0;r<a.length;r++){const n=a[r],s=e[n];i[t(s,n,e)]=s}return i}function et(e){return e==="__proto__"}function Me(e,t){const i=Object.keys(t);for(let a=0;a<i.length;a++){const r=i[a];if(et(r))continue;const n=t[r],s=e[r];Array.isArray(n)?Array.isArray(s)?e[r]=Me(s,n):e[r]=Me([],n):Vt(n)?Vt(s)?e[r]=Me(s,n):e[r]=Me({},n):(s===void 0||n!==void 0)&&(e[r]=n)}return e}function ns(e,t){const i={...e};for(let a=0;a<t.length;a++){const r=t[a];delete i[r]}return i}const ss=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function ls(e){return Array.from(e.match(ss)??[])}function lt(e){return ls(e).map(i=>i.toLowerCase()).join("_")}function os(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function Bt(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function Mt(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(Mt).join(",");const t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}function cs(e){if(Array.isArray(e))return e.map(Bt);if(typeof e=="symbol")return[e];e=Mt(e);const t=[],i=e.length;if(i===0)return t;let a=0,r="",n="",s=!1;for(e.charCodeAt(0)===46&&(t.push(""),a++);a<i;){const l=e[a];n?l==="\\"&&a+1<i?(a++,r+=e[a]):l===n?n="":r+=l:s?l==='"'||l==="'"?n=l:l==="]"?(s=!1,t.push(r),r=""):r+=l:l==="["?(s=!0,r&&(t.push(r),r="")):l==="."?r&&(t.push(r),r=""):r+=l,a++}return r&&t.push(r),t}function ot(e,t,i){if(e==null)return i;switch(typeof t){case"string":{if(et(t))return i;const a=e[t];return a===void 0?os(t)?ot(e,cs(t),i):i:a}case"number":case"symbol":{typeof t=="number"&&(t=Bt(t));const a=e[t];return a===void 0?i:a}default:{if(Array.isArray(t))return _s(e,t,i);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),et(t))return i;const a=e[t];return a===void 0?i:a}}}function _s(e,t,i){if(t.length===0)return i;let a=e;for(let r=0;r<t.length;r++){if(a==null||et(t[r]))return i;a=a[t[r]]}return a===void 0?i:a}const{encode:ds,decode:hs,encodingExists:us}=fi;function ms(e){return e instanceof Buffer}class A{constructor(t,i){this.defaultLocale=t,this.locales=i,this.defaultLocale=lt(t),this.locales=A.snakeLocaleKeys(i)}addLocales=t=>{Me(this.locales,A.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=ns(this.locales,t)};$t=(t,i,a=this.defaultLocale)=>{const r=this.locales[lt(a)],n=ot(this.locales[this.defaultLocale],t),s=ot(r,t,n);if(typeof s>"u")throw new Error(`[i18n]: cannot find ${a}["${t}"]`);if(typeof s!="string")return JSON.stringify(s);let l=s;return i&&i.length&&(l=pi.format(l,...i)),l};static isValidate(t){if(!us(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,i){return A.isValidate(i),[...ds(t,i),0]}static decodeFromBuf(t,i="utf8"){A.isValidate(i);const a=ms(t)?t:Buffer.from(A.getValidStr(t));return hs(a,i)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return rs(t,(i,a)=>lt(a))}static convertSpecialChar(t){const i={\u00E0:"\x97",\u00E1:"\x98",\u00E2:"\x99",\u00E4:"\x9A",\u00C0:"\x80",\u00C1:"\x81",\u00C2:"\x82",\u00C4:"\x83",\u00E8:"\x9D",\u00E9:"\x9E",\u00EA:"\x9F",\u00EB:"\xA0",\u00C8:"\x86",\u00C9:"\x87",\u00CA:"\x88",\u00CB:"\x89",\u00EC:"\xA1",\u00ED:"\xA2",\u00EE:"\xA3",\u00EF:"\xA4",\u00CC:"\x8A",\u00CD:"\x8B",\u00CE:"\x8C",\u00CF:"\x8D",\u00F2:"\xA5",\u00F3:"\xA6",\u00F4:"\xA7",\u00F6:"\xA8",\u00D2:"\x8E",\u00D3:"\x8F",\u00D4:"\x90",\u00D6:"\x91",\u00F9:"\xA9",\u00FA:"\xAA",\u00FB:"\xAB",\u00FC:"\xAC",\u00D9:"\x92",\u00DA:"\x93",\u00DB:"\x94",\u00DC:"\x95",\u00F1:"\xAE",\u00D1:"\xAD","\xA1":"@","\xBF":"\xAF","`":"\xB1"};return t.split("").map(a=>a in i?i[a]:a).join("")}}const ps=e=>!!samp.callNative("IsValidNickName","s",e),fs=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Is=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Ps=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),gs=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),ys=e=>!!samp.callNative("IsValidServerRule","s",e),Ss=e=>!!samp.callNative("RemoveServerRule","s",e),As=e=>{samp.callNative("AllowAdminTeleport","i",e)},Es=()=>!!samp.callNative("IsAdminTeleportAllowed",""),Ds=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Cs=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),Ns=()=>!!samp.callNative("AreAllAnimationsEnabled",""),Ts=e=>{samp.callNative("EnableAllAnimations","i",e)},bs=e=>{const[t,i]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:i}},vs=e=>samp.callNative("GetConsoleVarAsInt","s",e),Ls=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),Os=()=>samp.callNative("GetWeather",""),ws=e=>samp.callNative("GetServerRuleFlags","s",e),Gs=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Rs=e=>!!samp.callNative("SetModeRestartTime","f",e),js=()=>samp.callNativeFloat("GetModeRestartTime",""),Fs=(e,t,i)=>samp.callNative("GameTextForAll","aii",e,t,i),xs=e=>{samp.callNative("HideGameTextForAll","i",e)},Vs=(e,t,i)=>samp.callNative("SendDeathMessage","iii",e,t,i),Bs=()=>samp.callNative("GetMaxPlayers",""),ct=(e,t,i)=>Math.sqrt(e*e+t*t+i*i),Ms=e=>samp.callNative("SetGameModeText","s",e),ks=e=>samp.callNative("ShowNameTags","i",e),Hs=e=>samp.callNative("ShowPlayerMarkers","i",e),Us=e=>samp.callNative("SetWorldTime","i",e),Ws=()=>samp.callNative("GetWorldTime",""),Ks=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),Xs=e=>samp.callNative("SetWeather","i",e),Zs=()=>samp.callNativeFloat("GetGravity",""),Ys=e=>samp.callNative("SetGravity","f",e),zs=(e,t,i,a,r)=>samp.callNative("CreateExplosion","fffif",e,t,i,a,r),Js=e=>samp.callNative("EnableZoneNames","i",e),$s=()=>!!samp.callNative("UsePlayerPedAnims",""),Qs=()=>!!samp.callNative("DisableInteriorEnterExits",""),qs=e=>samp.callNative("SetNameTagDrawDistance","f",e),el=()=>samp.callNative("DisableNameTagLOS",""),tl=e=>samp.callNative("LimitGlobalChatRadius","f",e),il=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),al=()=>samp.callNative("GetServerTickRate",""),rl=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),nl=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),sl=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},ll=()=>!!samp.callNative("ChatTextReplacementToggled",""),ol=e=>samp.callNative("GetWeaponSlot","i",e),cl=e=>{const[t,i]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:i}},_l=()=>samp.callNative("GetAvailableClasses",""),dl=e=>{const t=samp.callNative("GetPlayerClass","iIIFFFFIIIIII",e),[i,a=0,r=0,n=0,s=0,l=0,c=0,_=0,d=0,h=0,P=0,S=0,y]=t;return{teamId:i,modelId:a,spawnX:r,spawnY:n,spawnZ:s,zAngle:l,weapon1:c,weapon1Ammo:_,weapon2:d,weapon2Ammo:h,weapon3:P,weapon3Ammo:S,ret:y}},hl=(e,t,i,a,r,n,s,l,c,_,d,h,P)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,i,a,r,n,s,l,c,_,d,h,P),ul=e=>samp.callNative("SetTeamCount","i",e),ml=(e,t,i,a,r,n,s,l,c,_,d)=>samp.callNative("AddPlayerClass","iffffiiiiii",e,t,i,a,r,n,s,l,c,_,d),pl=(e,t,i,a,r,n,s,l,c,_,d,h)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,i,a,r,n,s,l,c,_,d,h),fl=(e,t,i,a,r,n,s,l,c,_,d,h,P)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,i,a,r,n,s,l,c,_,d,h,P),Il=e=>!!samp.callNative("SpawnPlayer","i",e),Pl=e=>{const[t,i=0,a=0,r=0,n=0,s=0,l=0,c=0,_=0,d=0,h=0,P=0,S]=samp.callNative("GetSpawnInfo","iIIFFFFIIIIII",e);return{teamId:t,modelId:i,spawnX:a,spawnY:r,spawnZ:n,zAngle:s,weapon1:l,weapon1Ammo:c,weapon2:_,weapon2Ammo:d,weapon3:h,weapon3Ammo:P,ret:S}},gl=e=>samp.callNative("NetStats_GetConnectedTime","i",e),yl=e=>samp.callNative("NetStats_MessagesReceived","i",e),Sl=e=>samp.callNative("NetStats_BytesReceived","i",e),Al=e=>samp.callNative("NetStats_MessagesSent","i",e),El=e=>samp.callNative("NetStats_BytesSent","i",e),Dl=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Cl=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),Nl=e=>samp.callNative("NetStats_ConnectionStatus","i",e),Tl=e=>{const[t,i]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:i}},bl=e=>!!samp.callNative("IsPlayerAdmin","i",e),vl=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Ll=e=>!!samp.callNative("Kick","i",e),Ol=e=>!!samp.callNative("Ban","i",e),wl=e=>{const[t,i]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:i}},Gl=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Rl=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),jl=e=>samp.callNative("UnBlockIpAddress","s",e),Fl=(e,t)=>{const[i,a]=samp.callNative("gpci","iAi",e,41);return{val:A.decodeFromBuf(A.getValidStr(i),t),ret:a}},xl=(e,t,i,a,r)=>samp.callNative("SendClientCheck","iiiii",e,t,i,a,r),Vl=()=>{samp.callNative("ClearBanList","")},Bl=e=>!!samp.callNative("IsBanned","s",e),Ml=e=>samp.callNative("GetPlayerRawIp","i",e),kl=e=>{const[t,i]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:i}},Hl=e=>{const[t,i]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:i}},D=e=>{if(typeof e=="number")return e;if(typeof+e=="number"&&!isNaN(+e))return+e;if(e.charAt(0)==="#")return e.length===4?parseInt(e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2)+e.charAt(3)+e.charAt(3)+"FF",16):e.length===7?parseInt(e.slice(1,e.length)+"FF",16):e.length===9?parseInt(e.slice(1,e.length),16):255;const t=(e.match(/([0-9])+/g)||[]).map(a=>parseInt(a,10));if(t.length!==4&&t.length!==3)return 255;t.length===3?t.push(255):t[3]=t[3]<1?Math.floor(t[3]*255):255;let i=0;return t.reverse().forEach((a,r)=>{a!==0&&(i+=Math.pow(16,r*2)*a)}),i},Ul=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),Wl=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),Kl=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),Xl=e=>samp.callNative("GetPlayerWeather","i",e),Zl=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetPlayerWorldBounds","iFFFF",e);return{xMax:t,xMin:i,yMax:a,yMin:r,ret:n}},Yl=e=>samp.callNativeFloat("GetPlayerZAim","i",e),zl=e=>{const[t=0,i=0,a=0,r]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:i,fOffsetZ:a,ret:r}},Jl=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetPlayerRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:r,ret:n}},$l=e=>samp.callNative("GetPlayerDialogID","i",e),Ql=e=>samp.callNative("GetPlayerSpectateID","i",e),ql=e=>samp.callNative("GetPlayerSpectateType","i",e),eo=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),to=e=>samp.callNativeFloat("GetPlayerGravity","i",e),io=e=>!!samp.callNative("IsPlayerSpawned","i",e),ao=e=>!!samp.callNative("IsPlayerControllable","i",e),ro=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),no=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),so=e=>!!samp.callNative("GetPlayerGhostMode","i",e),lo=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),oo=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),co=e=>!!samp.callNative("HidePlayerDialog","i",e),_o=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),ho=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),uo=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),mo=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),po=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),fo=(e,t,i,a)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,i,a),Io=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Po=(e,t,i,a)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,i,a),go=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),yo=e=>!!samp.callNative("IsPlayerNPC","i",e),So=(e,t,i,a)=>!!samp.callNative("SetPlayerPos","ifff",e,t,i,a),Ao=(e,t,i,a)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,i,a),Eo=e=>{const[t,i,a,r]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:i,z:a,ret:r}},Do=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),Co=e=>{const[t,i]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:i}},No=(e,t,i,a,r)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,i,a,r),To=(e,t,i,a)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,i,a),bo=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),vo=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Lo=e=>samp.callNative("GetPlayerInterior","i",e),Oo=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),wo=e=>{const[t,i]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:i}},Go=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Ro=e=>{const[t,i]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:i}},jo=(e,t,i)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,i),Fo=e=>samp.callNative("GetPlayerAmmo","i",e),xo=e=>samp.callNative("GetPlayerWeaponState","i",e),Vo=e=>samp.callNative("GetPlayerTargetPlayer","i",e),Bo=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},Mo=e=>samp.callNative("GetPlayerTeam","i",e),ko=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Ho=e=>samp.callNative("GetPlayerScore","i",e),Uo=e=>samp.callNative("GetPlayerDrunkLevel","i",e),Wo=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),Ko=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,D(t)),Xo=e=>samp.callNative("GetPlayerColor","i",e),Zo=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),Yo=e=>samp.callNative("GetPlayerSkin","i",e),zo=(e,t,i)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,i),Jo=e=>!!samp.callNative("ResetPlayerWeapons","i",e),$o=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),Qo=(e,t)=>{const[i,a,r]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:i,ammo:a,ret:r}},qo=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),ec=e=>!!samp.callNative("ResetPlayerMoney","i",e),tc=e=>samp.callNative("GetPlayerMoney","i",e),ic=e=>samp.callNative("GetPlayerState","i",e),ac=e=>samp.callNative("GetPlayerPing","i",e),rc=e=>samp.callNative("GetPlayerWeapon","i",e),nc=e=>{const[t,i,a,r]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:i,leftRight:a,ret:r}},sc=(e,t,i)=>!!samp.callNative("SetPlayerTime","iii",e,t,i),lc=e=>{const[t,i,a]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:i,ret:a}},oc=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),cc=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),_c=e=>!!samp.callNative("ForceClassSelection","i",e),dc=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),hc=e=>samp.callNative("GetPlayerWantedLevel","i",e),uc=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),mc=e=>samp.callNative("GetPlayerFightingStyle","i",e),pc=(e,t,i,a)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,i,a),fc=e=>{const[t,i,a,r]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:i,z:a,ret:r}},Ic=(e,t,i)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,i),Pc=(e,t,i,a,r,n,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,i,a,r,n,s),gc=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),yc=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Sc=(e,t,i)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,i),Ac=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),Ec=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),Dc=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Cc=(e,t,i,a,r,n)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,i,a,r,n),Nc=e=>{const[t,i,a,r,n,s,l]=samp.callNative("GetPlayerLastShotVectors","iFFFFFF",e);return{fOriginX:t,fOriginY:i,fOriginZ:a,fHitPosX:r,fHitPosY:n,fHitPosZ:s,ret:l}},Tc=(e,t,i)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,i),bc=e=>samp.callNative("GetPlayerVehicleID","i",e),vc=e=>samp.callNative("GetPlayerVehicleSeat","i",e),Lc=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),Oc=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),wc=(e,t,i,a,r)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,i,a,r),Gc=(e,t,i,a,r,n,s,l,c,_)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,i,a,r,n,s,l,c,_),Rc=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),jc=e=>samp.callNative("GetPlayerAnimationIndex","i",e),Fc=e=>samp.callNative("GetPlayerSpecialAction","i",e),xc=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),Vc=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),Bc=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),Mc=e=>samp.callNative("GetPlayerVirtualWorld","i",e),kc=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),Hc=e=>samp.callNative("GetPlayerCustomSkin","i",e),Uc=(e,t,i,a,r,n)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,i,a,r,n),Wc=(e,t,i)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,i),Kc=e=>!!samp.callNative("StopRecordingPlayerData","i",e),Xc=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),Zc=(e,t,i)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,i),Yc=(e,t,i)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,i),zc=e=>!!samp.callNative("IsPlayerConnected","i",e),Jc=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),$c=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),Qc=(e,t,i,a,r)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,i,a,r),qc=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),e_=(e,t,i)=>{samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,D(i))};function t_(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const i_=(e,t,i)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,i),a_=(e,t,i,a,r,n,s,l)=>!!samp.callNative("SetPlayerMapIcon","iifffiii",e,t,i,a,r,n,D(s),l),r_=(e,t)=>!!samp.callNative("RemovePlayerMapIcon","ii",e,t),n_=(e,t,i,a)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,i,a),s_=(e,t,i,a,r)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,i,a,r),l_=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),o_=e=>{const[t,i,a,r]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:i,z:a,ret:r}},c_=e=>{const[t,i,a,r]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:i,z:a,ret:r}},__=e=>samp.callNative("GetPlayerCameraMode","i",e),d_=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),h_=e=>samp.callNative("GetPlayerCameraTargetObject","i",e),u_=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),m_=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),p_=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),f_=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),I_=(e,t)=>!!samp.callNative("AttachCameraToObject","ii",e,t),P_=(e,t)=>!!samp.callNative("AttachCameraToPlayerObject","ii",e,t),g_=(e,t,i,a,r,n,s,l,c)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,i,a,r,n,s,l,c),y_=(e,t,i,a,r,n,s,l,c)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,i,a,r,n,s,l,c),S_=e=>!!samp.callNative("IsPlayerCuffed","i",e),A_=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),E_=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),kt=e=>samp.callNative("GetActorSkin","i",e),Ht=(e,t)=>!!samp.callNative("SetActorSkin","ii",e,t),Ut=e=>{const[t=0,i=0,a=0,r=0,n=0,s]=samp.callNative("GetActorSpawnInfo","iIFFFF",e);return{skinId:t,fX:i,fY:a,fZ:r,fAngle:n,ret:s}},D_=e=>{const[t,i,a=0,r=0,n=0,s=0,l=0,c=0,_]=samp.callNative("GetActorAnimation","iSiSiFIIIII",e,32,32);return{animLib:t,animName:i,fDelta:a,loop:r,lockX:n,lockY:s,freeze:l,time:c,ret:_}},C_=(e,t,i,a,r)=>samp.callNative("CreateActor","iffff",e,t,i,a,r),N_=e=>!!samp.callNative("DestroyActor","i",e),T_=(e,t)=>!!samp.callNative("IsActorStreamedIn","ii",e,t),b_=(e,t)=>!!samp.callNative("SetActorVirtualWorld","ii",e,t),v_=e=>samp.callNative("GetActorVirtualWorld","i",e),L_=(e,t,i,a,r,n,s,l,c)=>!!samp.callNative("ApplyActorAnimation","issfiiiii",e,t,i,a,r,n,s,l,c),O_=e=>!!samp.callNative("ClearActorAnimations","i",e),w_=(e,t,i,a)=>!!samp.callNative("SetActorPos","ifff",e,t,i,a),G_=e=>{const[t,i,a,r]=samp.callNative("GetActorPos","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},R_=(e,t)=>!!samp.callNative("SetActorFacingAngle","if",e,t),j_=e=>{const[t,i]=samp.callNative("GetActorFacingAngle","iF",e);return{angle:t,ret:!!i}},F_=(e,t)=>!!samp.callNative("SetActorHealth","if",e,t),x_=e=>{const[t,i]=samp.callNative("GetActorHealth","iF",e);return{health:t,ret:!!i}},V_=(e,t)=>!!samp.callNative("SetActorInvulnerable","ii",e,t),B_=e=>!!samp.callNative("IsActorInvulnerable","i",e),M_=e=>!!samp.callNative("IsValidActor","i",e),k_=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0,l]=samp.callNative("GetVehicleSpawnInfo","iFFFFII",e);return{fX:t,fY:i,fZ:a,fRot:r,color1:n,color2:s,ret:l}},H_=(e,t,i,a,r,n,s,l,c=-2,_=-2)=>samp.callNative("SetVehicleSpawnInfo","iiffffiiii",e,t,i,a,r,n,s,l,c,_),U_=e=>{const[t=0,i=0,a]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:i,ret:a}},W_=e=>samp.callNative("GetVehiclePaintjob","i",e),K_=e=>samp.callNative("GetVehicleInterior","i",e),X_=e=>{const[t,i]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:i}},Z_=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),Y_=e=>samp.callNative("GetVehicleRespawnDelay","i",e),z_=e=>samp.callNative("GetVehicleCab","i",e),J_=e=>samp.callNative("GetVehicleOccupiedTick","i",e),$_=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Q_=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),q_=e=>!!samp.callNative("IsVehicleOccupied","i",e),ed=e=>samp.callNative("GetVehicleRespawnTick","i",e),td=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),id=e=>!!samp.callNative("IsVehicleDead","i",e),ad=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),rd=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),nd=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),sd=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),ld=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),od=e=>samp.callNative("GetVehicleModelCount","i",e),Wt=e=>samp.callNative("GetVehicleLastDriver","i",e),Kt=e=>samp.callNative("GetVehicleDriver","i",e),cd=()=>samp.callNative("GetVehicleModelsUsed",""),_d=e=>samp.callNative("GetVehicleSirenState","i",e),dd=e=>samp.callNative("GetVehicleLandingGearState","i",e),hd=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),ud=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),md=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0,l=0,c=0,_=0,d]=samp.callNative("GetVehicleMatrix","iFFFFFFFFF",e);return{rightX:t,rightY:i,rightZ:a,upX:r,upY:n,upZ:s,atX:l,atY:c,atZ:_,ret:d}},pd=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,i,a,r],ret:n}},fd=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),Id=(e,t,i,a,r,n,s,l,c)=>samp.callNative("CreateVehicle","iffffiiii",e,t,i,a,r,D(n),D(s),l,c),Pd=e=>samp.callNative("DestroyVehicle","i",e),gd=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),yd=e=>{const[t,i,a,r]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:i,z:a,ret:r}},Sd=(e,t,i,a)=>!!samp.callNative("SetVehiclePos","ifff",e,t,i,a),Ad=e=>{const[t,i]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:i}},Ed=e=>{const[t,i,a,r]=samp.callNative("GetVehicleRotation","iFFF",e);return{x:t,y:i,z:a,ret:r}},Dd=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:r,ret:n}},Cd=(e,t,i,a)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,i,a),Nd=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),Td=(e,t,i,a)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,i,a),bd=()=>samp.callNative("ManualVehicleEngineAndLights",""),vd=(e,t,i,a,r,n,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,i,a,r,n,s,l),Ld=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Od=e=>samp.callNative("GetVehicleParamsSirenState","i",e),wd=(e,t,i,a,r)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,i,a,r),Gd=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:r,ret:n}},Rd=(e,t,i,a,r)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,i,a,r),jd=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:r,ret:n}},Fd=e=>samp.callNative("SetVehicleToRespawn","i",e),xd=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),Vd=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),Bd=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Md=(e,t,i)=>samp.callNative("ChangeVehicleColor","iii",e,D(t),D(i)),kd=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),Hd=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),Ud=e=>{const[t,i]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:i}},Wd=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),Kd=e=>samp.callNative("DetachTrailerFromVehicle","i",e),Xd=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),Xt=e=>samp.callNative("GetVehicleTrailer","i",e),Zd=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Yd=e=>samp.callNative("GetVehicleModel","i",e),zd=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),Jd=e=>samp.callNative("GetVehicleComponentType","i",e),$d=e=>samp.callNative("RepairVehicle","i",e),Qd=e=>{const[t,i,a,r]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:i,z:a,ret:r}},qd=(e,t,i,a)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,i,a),eh=(e,t,i,a)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,i,a),th=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:i,lights:a,tires:r,ret:n}},ih=(e,t,i,a,r)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,i,a,r),ah=(e,t)=>{const[i,a,r,n]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:i,y:a,z:r,ret:n}},rh=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),nh=e=>samp.callNative("GetVehicleVirtualWorld","i",e),sh=e=>!!samp.callNative("IsValidVehicle","i",e),lh=(e,t,i,a,r,n,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,i,a,r,D(n),D(s)),oh=(e,t,i,a,r,n,s,l,c)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,i,a,r,D(n),D(s),l,c),ch=e=>!!samp.callNative("ShowVehicle","i",e),_h=e=>!!samp.callNative("HideVehicle","i",e),dh=e=>!!samp.callNative("IsVehicleHidden","i",e),hh=e=>!!samp.callNative("IsPlayerInModShop","i",e),uh=e=>samp.callNative("GetPlayerSirenState","i",e),mh=e=>samp.callNative("GetPlayerLandingGearState","i",e),ph=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),fh=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),Ih=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),Ph=e=>samp.callNative("GetVehicleMaxPassengers","i",e),gh=e=>samp.callNative("CountVehicleOccupants","i",e),yh=(e,t,i,a,r)=>!!samp.callNative("SetPlayerCheckpoint","iffff",e,t,i,a,r),Sh=e=>!!samp.callNative("DisablePlayerCheckpoint","i",e),Ah=(e,t,i,a,r,n,s,l,c)=>!!samp.callNative("SetPlayerRaceCheckpoint","iifffffff",e,t,i,a,r,n,s,l,c),Eh=e=>!!samp.callNative("DisablePlayerRaceCheckpoint","i",e),Dh=e=>!!samp.callNative("IsPlayerInCheckpoint","i",e),Ch=e=>!!samp.callNative("IsPlayerInRaceCheckpoint","i",e),Zt=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),Yt=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetPlayerCheckpoint","iFFFF",e);return{fX:t,fY:i,fZ:a,fSize:r,ret:n}},zt=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),Jt=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0,l=0,c]=samp.callNative("GetPlayerRaceCheckpoint","iFFFFFFF",e);return{fX:t,fY:i,fZ:a,fNextX:r,fNextY:n,fNextZ:s,fSize:l,ret:c}},Nh=e=>!!samp.callNative("IsMenuDisabled","i",e),Th=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),bh=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),vh=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:i,ret:a}},Lh=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:i,ret:a}},Oh=(e,t)=>{const[i,a]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:i,ret:a}},wh=(e,t,i)=>{const[a,r]=samp.callNative("GetMenuItem","iiiSi",e,t,i,31);return{item:a,ret:r}},Gh=(e,t,i,a,r,n)=>samp.callNative("CreateMenu","siffff",e,t,i,a,r,n),Rh=e=>samp.callNative("DestroyMenu","i",e),jh=(e,t,i)=>samp.callNative("AddMenuItem","iis",e,t,i),Fh=(e,t,i)=>samp.callNative("SetMenuColumnHeader","iis",e,t,i),xh=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),Vh=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),Bh=e=>!!samp.callNative("IsValidMenu","i",e),Mh=e=>samp.callNative("DisableMenu","i",e),kh=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),$t=e=>samp.callNative("GetPlayerMenu","i",e),Hh=e=>!!samp.callNative("IsValid3DTextLabel","i",e),Uh=(e,t)=>!!samp.callNative("Is3DTextLabelStreamedIn","ii",e,t),Wh=e=>samp.callNative("Get3DTextLabelColor","i",e),Kh=e=>{const[t=0,i=0,a=0,r]=samp.callNative("Get3DTextLabelPos","iFFF",e);return{fX:t,fY:i,fZ:a,ret:r}},Xh=(e,t)=>!!samp.callNative("Set3DTextLabelDrawDistance","ii",e,t),Zh=e=>samp.callNativeFloat("Get3DTextLabelDrawDistance","i",e),Yh=e=>!!samp.callNative("Get3DTextLabelLOS","i",e),zh=(e,t)=>!!samp.callNative("Set3DTextLabelLOS","ii",e,t),Jh=(e,t)=>!!samp.callNative("Set3DTextLabelVirtualWorld","ii",e,t),$h=e=>samp.callNative("Get3DTextLabelVirtualWorld","i",e),Qh=e=>{const[t=0,i=0]=samp.callNative("Get3DTextLabelAttachedData","i",e);return{attachedPlayerId:t,attachedVehicleId:i}},qh=e=>samp.callNative("Delete3DTextLabel","i",e),eu=(e,t,i,a,r)=>!!samp.callNative("Attach3DTextLabelToPlayer","iifff",e,t,i,a,r),tu=(e,t,i,a,r)=>!!samp.callNative("Attach3DTextLabelToVehicle","iifff",e,t,i,a,r),iu=(e,t)=>!!samp.callNative("IsValidPlayer3DTextLabel","ii",e,t),au=(e,t)=>samp.callNative("GetPlayer3DTextLabelColor","ii",e,t),ru=(e,t)=>{const[i=0,a=0,r=0,n]=samp.callNative("GetPlayer3DTextLabelPos","iiFFF",e,t);return{fX:i,fY:a,fZ:r,ret:n}},nu=(e,t,i)=>!!samp.callNative("SetPlayer3DTextLabelDrawDistance","iii",e,t,i),su=(e,t)=>samp.callNativeFloat("GetPlayer3DTextLabelDrawDistance","ii",e,t),lu=(e,t)=>!!samp.callNative("GetPlayer3DTextLabelLOS","ii",e,t),ou=(e,t,i)=>!!samp.callNative("SetPlayer3DTextLabelLOS","iii",e,t,i),cu=(e,t)=>samp.callNative("GetPlayer3DTextLabelVirtualWorld","ii",e,t),_u=(e,t,i)=>!!samp.callNative("SetPlayer3DTextLabelVirtualWorld","iii",e,t,i),du=(e,t)=>{const[i=0,a=0]=samp.callNative("GetPlayer3DTextLabelAttachedData","ii",e,t);return{attachedPlayerId:i,attachedVehicleId:a}},hu=(e,t)=>samp.callNative("DeletePlayer3DTextLabel","ii",e,t),uu=e=>!!samp.callNative("IsValidGangZone","i",e),mu=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),pu=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),fu=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),Iu=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),Pu=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),gu=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GangZoneGetPos","iFFFF",e);return{fMinX:t,fMinY:i,fMaxX:a,fMaxY:r,ret:n}},yu=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},Su=(e,t,i,a)=>samp.callNative("GangZoneCreate","ffff",e,t,i,a),Au=e=>samp.callNative("GangZoneDestroy","i",e),Eu=(e,t,i)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,D(i)),Du=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,D(t)),Cu=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),Nu=e=>samp.callNative("GangZoneHideForAll","i",e),Tu=(e,t,i)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,D(i)),bu=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,D(t)),vu=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),Lu=e=>samp.callNative("GangZoneStopFlashForAll","i",e),Ou=(e,t,i,a,r)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,i,a,r),wu=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),Gu=(e,t,i)=>samp.callNative("PlayerGangZoneShow","iii",e,t,i),Ru=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),ju=(e,t,i)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,i),Fu=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),xu=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),Vu=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),Bu=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),Mu=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),ku=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),Hu=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),Uu=(e,t)=>{const[i=0,a=0,r=0,n=0,s]=samp.callNative("PlayerGangZoneGetPos","iiFFFF",e,t);return{fMinX:i,fMinY:a,fMaxX:r,fMaxY:n,ret:s}},Wu=(e,t,i)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,i)},Ku=e=>!!samp.callNative("IsValidTextDraw","i",e),Xu=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),Zu=e=>{const[t,i]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:i}},Yu=(e,t,i)=>{samp.callNative("TextDrawSetPos","iff",e,t,i)},zu=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:i,ret:a}},Ju=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:i,ret:a}},$u=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:i,ret:a}},Qu=e=>samp.callNative("TextDrawGetColor","i",e),qu=e=>samp.callNative("TextDrawGetBoxColor","i",e),em=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),tm=e=>samp.callNative("TextDrawGetShadow","i",e),im=e=>samp.callNative("TextDrawGetOutline","i",e),am=e=>samp.callNative("TextDrawGetFont","i",e),rm=e=>!!samp.callNative("TextDrawIsBox","i",e),nm=e=>!!samp.callNative("TextDrawIsProportional","i",e),sm=e=>!!samp.callNative("TextDrawIsSelectable","i",e),lm=e=>samp.callNative("TextDrawGetAlignment","i",e),om=e=>samp.callNative("TextDrawGetPreviewModel","i",e),cm=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("TextDrawGetPreviewRot","iFFFF",e);return{fRotX:t,fRotY:i,fRotZ:a,fZoom:r,ret:n}},_m=e=>{const[t,i,a]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:i,ret:a}},dm=(e,t,i)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,i)},hm=(e,t,i)=>samp.callNative("TextDrawCreate","ffa",e,t,i),um=e=>samp.callNative("TextDrawDestroy","i",e),mm=(e,t,i)=>samp.callNative("TextDrawLetterSize","iff",e,t,i),pm=(e,t,i)=>samp.callNative("TextDrawTextSize","iff",e,t,i),fm=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),Im=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,D(t)),Pm=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),gm=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,D(t)),ym=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),Sm=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),Am=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,D(t)),Em=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),Dm=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),Cm=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),Nm=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),Tm=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),bm=e=>samp.callNative("TextDrawShowForAll","i",e),vm=e=>samp.callNative("TextDrawHideForAll","i",e),Lm=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),Om=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),wm=(e,t,i,a,r=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,i,a,r)},Gm=(e,t,i)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,D(t),D(i)),Rm=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,D(t))},jm=e=>{samp.callNative("CancelSelectTextDraw","i",e)},Fm=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),xm=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),Vm=(e,t)=>{const[i,a]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:i,ret:a}},Bm=(e,t,i,a)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,i,a)},Mm=(e,t)=>{const[i=0,a=0,r]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:i,fY:a,ret:r}},km=(e,t)=>{const[i=0,a=0,r]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:i,fY:a,ret:r}},Hm=(e,t)=>{const[i=0,a=0,r]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:i,fY:a,ret:r}},Um=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),Wm=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),Km=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),Xm=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),Zm=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),Ym=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),zm=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),Jm=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),$m=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Qm=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),qm=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),ep=(e,t)=>{const[i=0,a=0,r=0,n=0]=samp.callNative("PlayerTextDrawGetPreviewRot","iiFFFF",e,t);return{fRotX:i,fRotY:a,fRotZ:r,fZoom:n}},tp=(e,t)=>{const[i,a,r]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:i,color2:a,ret:r}},ip=(e,t,i,a)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,i,a),ap=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},rp=(e,t,i,a)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,i,a),np=(e,t,i,a)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,i,a),sp=(e,t,i)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,i),lp=(e,t,i)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,D(i)),op=(e,t,i)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,i),cp=(e,t,i)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,D(i)),_p=(e,t,i)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,i),dp=(e,t,i)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,i),hp=(e,t,i)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,D(i)),up=(e,t,i)=>samp.callNative("PlayerTextDrawFont","iii",e,t,i),mp=(e,t,i)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,i),pp=(e,t,i)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,i),fp=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),Ip=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),Pp=(e,t,i)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,i),gp=(e,t,i)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,i),yp=(e,t,i,a,r,n)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,i,a,r,n),Sp=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,i,a),Ap=e=>samp.callNativeFloat("GetObjectDrawDistance","i",e),Ep=e=>samp.callNativeFloat("GetObjectMoveSpeed","i",e),Dp=(e,t)=>samp.callNativeFloat("SetObjectMoveSpeed","if",e,t),Cp=e=>{const[t=0,i=0,a=0,r]=samp.callNative("GetObjectMovingTargetPos","iFFF",e);return{fX:t,fY:i,fZ:a,ret:r}},Np=e=>{const[t=0,i=0,a=0,r]=samp.callNative("GetObjectTarget","iFFF",e);return{fX:t,fY:i,fZ:a,ret:r}},Tp=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0]=samp.callNative("GetObjectAttachedOffset","i",e);return{fX:t,fY:i,fZ:a,fRotX:r,fRotY:n,fRotZ:s}},bp=e=>samp.callNative("GetObjectSyncRotation","i",e),vp=(e,t)=>!!samp.callNative("IsObjectMaterialSlotUsed","ii",e,t),Lp=(e,t)=>{const[i=0,a,r,n=0,s]=samp.callNative("GetObjectMaterial","iiISiSiI",e,t,64,64);return{modelId:i,txdName:a,textureName:r,materialColor:n,ret:s}},Op=(e,t,i,a,r,n,s,l=0)=>samp.callNative("CreateObject","ifffffff",e,t,i,a,r,n,s,l),wp=(e,t,i,a,r,n,s,l)=>!!samp.callNative("AttachObjectToVehicle","iiffffff",e,t,i,a,r,n,s,l),Gp=(e,t,i,a,r,n,s,l,c,_=!0)=>!!samp.callNative("AttachPlayerObjectToObject","iiiffffffi",e,t,i,a,r,n,s,l,c,_),Rp=(e,t,i,a,r,n,s,l,c=!0)=>!!samp.callNative("AttachObjectToObject","iiffffffi",e,t,i,a,r,n,s,l,c),jp=(e,t,i,a,r,n,s,l)=>!!samp.callNative("AttachObjectToPlayer","iiffffff",e,t,i,a,r,n,s,l),Fp=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),xp=(e,t,i,a)=>!!samp.callNative("SetObjectPos","ifff",e,t,i,a),Vp=e=>{const[t,i,a,r]=samp.callNative("GetObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:r}},Bp=(e,t,i,a)=>!!samp.callNative("SetObjectRot","ifff",e,t,i,a),Mp=e=>{const[t,i,a,r]=samp.callNative("GetObjectRot","iFFF",e);return{x:t,y:i,z:a,ret:r}},kp=e=>samp.callNative("GetObjectModel","i",e),Hp=e=>!!samp.callNative("SetObjectNoCameraCol","i",e),Up=e=>!!samp.callNative("IsObjectNoCameraCol","i",e),Wp=e=>!!samp.callNative("IsValidObject","i",e),Kp=e=>samp.callNative("DestroyObject","i",e),Xp=(e,t,i,a,r,n,s,l)=>samp.callNative("MoveObject","ifffffff",e,t,i,a,r,n,s,l),Zp=e=>samp.callNative("StopObject","i",e),Yp=e=>!!samp.callNative("IsObjectMoving","i",e),zp=(e,t)=>!!samp.callNative("BeginObjectEditing","ii",e,t),Jp=e=>!!samp.callNative("BeginObjectSelecting","i",e),Qt=e=>!!samp.callNative("EndObjectEditing","i",e),$p=(e,t,i,a,r,n)=>!!samp.callNative("SetObjectMaterial","iiissi",e,t,i,a,r,D(n)),Qp=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),qp=(e,t,i,a,r)=>!!samp.callNative("AddSimpleModel","iiiss",e,t,i,a,r),ef=(e,t,i,a,r,n,s)=>!!samp.callNative("AddSimpleModelTimed","iiissii",e,t,i,a,r,n,s),tf=(e,t)=>!!samp.callNative("RedirectDownload","is",e,t),af=e=>{const[t,i]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},rf=e=>{const[t,i]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},nf=(e,t)=>{const[i=0,a=0,r=0,n=0,s=0,l=0,c=0,_=0,d=0,h=0,P=0,S=0,y=0,N]=samp.callNative("GetPlayerAttachedObject","iiIIFFFFFFFFFII",e,t);return{modelId:i,bone:a,fX:r,fY:n,fZ:s,fRotX:l,fRotY:c,fRotZ:_,fScaleX:d,fScaleY:h,fScaleZ:P,materialColor1:S,materialColor2:y,ret:N}},sf=(e,t,i,a,r,n,s,l,c,_,d,h,P,S,y)=>!!samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,i,a,r,n,s,l,c,_,d,h,P,D(S),D(y)),lf=(e,t)=>!!samp.callNative("RemovePlayerAttachedObject","ii",e,t),of=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),qt=e=>!!samp.callNative("IsValidCustomModel","i",e),cf=e=>{if(!qt(e))return null;const[t,i,a]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:i,ret:a}},_f=(e,t)=>samp.callNativeFloat("GetPlayerObjectDrawDistance","ii",e,t),df=(e,t,i)=>samp.callNativeFloat("SetPlayerObjectMoveSpeed","iif",e,t,i),hf=(e,t)=>samp.callNativeFloat("GetPlayerObjectMoveSpeed","ii",e,t),uf=(e,t)=>{const[i=0,a=0,r=0,n]=samp.callNative("GetPlayerObjectTarget","iiFFF",e,t);return{fX:i,fY:a,fZ:r,ret:n}},mf=(e,t)=>{const[i=0,a=0,r=0,n]=samp.callNative("GetPlayerObjectMovingTargetPos","iiFFF",e,t);return{fX:i,fY:a,fZ:r,ret:n}},pf=(e,t)=>{const[i=0,a=0,r=0,n=0,s=0,l=0,c]=samp.callNative("GetPlayerObjectAttachedOffset","iiFFFFFF",e,t);return{fX:i,fY:a,fZ:r,fRotX:n,fRotY:s,fRotZ:l,ret:c}},ff=(e,t)=>!!samp.callNative("GetPlayerObjectSyncRotation","ii",e,t),If=(e,t,i)=>!!samp.callNative("IsPlayerObjectMaterialSlotUsed","iii",e,t,i),Pf=(e,t,i)=>{const[a=0,r,n,s=0,l]=samp.callNative("GetPlayerObjectMaterial","iiiISiSiI",e,t,i,64,64);return{modelId:a,txdName:r,textureName:n,materialColor:s,ret:l}},gf=(e,t)=>!!samp.callNative("IsPlayerObjectNoCameraCol","ii",e,t),yf=e=>samp.callNative("GetPlayerCameraTargetPlayerObj","i",e),Sf=(e,t)=>!!samp.callNative("BeginPlayerObjectEditing","ii",e,t),Af=(e,t,i,a,r,n,s,l,c=0)=>samp.callNative("CreatePlayerObject","iifffffff",e,t,i,a,r,n,s,l,c),Ef=(e,t,i,a,r,n,s,l,c)=>!!samp.callNative("AttachPlayerObjectToVehicle","iiiffffff",e,t,i,a,r,n,s,l,c),Df=(e,t,i,a,r)=>samp.callNative("SetPlayerObjectPos","iifff",e,t,i,a,r),Cf=(e,t)=>{const[i,a,r,n]=samp.callNative("GetPlayerObjectPos","iiFFF",e,t);return{x:i,y:a,z:r,ret:n}},Nf=(e,t,i,a,r)=>samp.callNative("SetPlayerObjectRot","iifff",e,t,i,a,r),Tf=(e,t)=>{const[i,a,r,n]=samp.callNative("GetPlayerObjectRot","iiFFF",e,t);return{x:i,y:a,z:r,ret:n}},bf=(e,t)=>samp.callNative("GetPlayerObjectModel","ii",e,t),vf=(e,t)=>!!samp.callNative("SetPlayerObjectNoCameraCollision","ii",e,t),Lf=(e,t)=>!!samp.callNative("IsValidPlayerObject","ii",e,t),Of=(e,t)=>samp.callNative("DestroyPlayerObject","ii",e,t),wf=(e,t,i,a,r,n,s,l,c)=>samp.callNative("MovePlayerObject","iifffffff",e,t,i,a,r,n,s,l,c),Gf=(e,t)=>samp.callNative("StopPlayerObject","ii",e,t),Rf=(e,t)=>!!samp.callNative("IsPlayerObjectMoving","ii",e,t),jf=(e,t,i,a,r,n,s,l,c)=>!!samp.callNative("AttachPlayerObjectToPlayer","iiiffffff",e,t,i,a,r,n,s,l,c),Ff=(e,t,i,a,r,n,s)=>!!samp.callNative("SetPlayerObjectMaterial","iiiissi",e,t,i,a,r,n,D(s)),xf=e=>!!samp.callNative("IsValidPickup","i",e),Vf=(e,t)=>!!samp.callNative("IsPickupStreamedIn","ii",e,t),Bf=e=>{const[t,i,a,r]=samp.callNative("GetPickupPos","iFFF",e);return{fX:t,fY:i,fZ:a,ret:r}},Mf=e=>samp.callNative("GetPickupModel","i",e),kf=e=>samp.callNative("GetPickupType","i",e),Hf=e=>samp.callNative("GetPickupVirtualWorld","i",e),Uf=(e,t,i,a,r=!0)=>!!samp.callNative("SetPickupPos","ifffi",e,t,i,a,r),Wf=(e,t,i=!0)=>!!samp.callNative("SetPickupModel","iii",e,t,i),Kf=(e,t,i=!0)=>!!samp.callNative("SetPickupType","iii",e,t,i),Xf=(e,t)=>!!samp.callNative("SetPickupVirtualWorld","ii",e,t),Zf=(e,t)=>!!samp.callNative("ShowPickupForPlayer","ii",e,t),Yf=(e,t)=>!!samp.callNative("HidePickupForPlayer","ii",e,t),zf=(e,t)=>!!samp.callNative("IsPickupHiddenForPlayer","ii",e,t),Jf=(e,t,i,a,r,n)=>samp.callNative("AddStaticPickup","iifffi",e,t,i,a,r,n),$f=(e,t,i,a,r,n)=>samp.callNative("CreatePickup","iifffi",e,t,i,a,r,n),Qf=e=>!!samp.callNative("DestroyPickup","i",e),ei=new Map([["AIRPORT",[{n:"thrw_barl_thrw",d:2}]],["ATTRACTORS",[{n:"Stepsit_in",d:1.67},{n:"Stepsit_loop",d:3.33},{n:"Stepsit_out",d:1.67}]],["BAR",[{n:"Barcustom_get",d:3},{n:"Barcustom_loop",d:2},{n:"Barcustom_order",d:3.67},{n:"BARman_idle",d:8.33},{n:"Barserve_bottle",d:3},{n:"Barserve_give",d:2.33},{n:"Barserve_glass",d:3.67},{n:"Barserve_in",d:1.67},{n:"Barserve_loop",d:2.33},{n:"Barserve_order",d:3.67},{n:"dnk_stndF_loop",d:2.33},{n:"dnk_stndM_loop",d:2.33}]],["BASEBALL",[{n:"Bat_1",d:.9},{n:"Bat_2",d:1.13},{n:"Bat_3",d:1.2},{n:"Bat_4",d:1},{n:"Bat_block",d:.47},{n:"Bat_Hit_1",d:.83},{n:"Bat_Hit_2",d:1.07},{n:"Bat_Hit_3",d:1.13},{n:"Bat_IDLE",d:.93},{n:"Bat_M",d:.53},{n:"BAT_PART",d:.53}]],["BD_FIRE",[{n:"BD_Fire1",d:1.83},{n:"BD_Fire2",d:1.67},{n:"BD_Fire3",d:1.83},{n:"BD_GF_Wave",d:5.07},{n:"BD_Panic_01",d:3.33},{n:"BD_Panic_02",d:3.33},{n:"BD_Panic_03",d:3.33},{n:"BD_Panic_04",d:3.33},{n:"BD_Panic_Loop",d:3.33},{n:"Grlfrd_Kiss_03",d:7},{n:"M_smklean_loop",d:5},{n:"Playa_Kiss_03",d:7},{n:"wash_up",d:3}]],["BEACH",[{n:"bather",d:4.2},{n:"Lay_Bac_Loop",d:2.67},{n:"ParkSit_M_loop",d:3.67},{n:"ParkSit_W_loop",d:3.33},{n:"SitnWait_loop_W",d:1.33}]],["benchpress",[{n:"gym_bp_celebrate",d:5},{n:"gym_bp_down",d:1},{n:"gym_bp_getoff",d:8.67},{n:"gym_bp_geton",d:5.33},{n:"gym_bp_up_A",d:2.33},{n:"gym_bp_up_B",d:2.67},{n:"gym_bp_up_smooth",d:1.33}]],["BF_injection",[{n:"BF_getin_LHS",d:1},{n:"BF_getin_RHS",d:1},{n:"BF_getout_LHS",d:1.13},{n:"BF_getout_RHS",d:1.13}]],["BIKED",[{n:"BIKEd_Back",d:.1},{n:"BIKEd_drivebyFT",d:.2},{n:"BIKEd_drivebyLHS",d:.2},{n:"BIKEd_drivebyRHS",d:.2},{n:"BIKEd_Fwd",d:.2},{n:"BIKEd_getoffBACK",d:1.47},{n:"BIKEd_getoffLHS",d:1},{n:"BIKEd_getoffRHS",d:1},{n:"BIKEd_hit",d:.03},{n:"BIKEd_jumponL",d:.97},{n:"BIKEd_jumponR",d:.97},{n:"BIKEd_kick",d:1.07},{n:"BIKEd_Left",d:.1},{n:"BIKEd_passenger",d:.03},{n:"BIKEd_pushes",d:.8},{n:"BIKEd_Ride",d:.03},{n:"BIKEd_Right",d:.1},{n:"BIKEd_shuffle",d:.43},{n:"BIKEd_Still",d:.03}]],["BIKEH",[{n:"BIKEh_Back",d:.1},{n:"BIKEh_drivebyFT",d:.2},{n:"BIKEh_drivebyLHS",d:.2},{n:"BIKEh_drivebyRHS",d:.2},{n:"BIKEh_Fwd",d:.2},{n:"BIKEh_getoffBACK",d:1.7},{n:"BIKEh_getoffLHS",d:.77},{n:"BIKEh_getoffRHS",d:.73},{n:"BIKEh_hit",d:.03},{n:"BIKEh_jumponL",d:1.47},{n:"BIKEh_jumponR",d:1.5},{n:"BIKEh_kick",d:1.07},{n:"BIKEh_Left",d:.13},{n:"BIKEh_passenger",d:.03},{n:"BIKEh_pushes",d:.97},{n:"BIKEh_Ride",d:.03},{n:"BIKEh_Right",d:.13},{n:"BIKEh_Still",d:.03}]],["BIKELEAP",[{n:"bk_blnce_in",d:1.9},{n:"bk_blnce_out",d:1},{n:"bk_jmp",d:.4},{n:"bk_rdy_in",d:.5},{n:"bk_rdy_out",d:.4},{n:"struggle_cesar",d:.47},{n:"struggle_driver",d:.47},{n:"truck_driver",d:.73},{n:"truck_getin",d:2.5}]],["BIKES",[{n:"BIKEs_Back",d:.1},{n:"BIKEs_drivebyFT",d:.2},{n:"BIKEs_drivebyLHS",d:.2},{n:"BIKEs_drivebyRHS",d:.2},{n:"BIKEs_Fwd",d:.2},{n:"BIKEs_getoffBACK",d:2.43},{n:"BIKEs_getoffLHS",d:1.1},{n:"BIKEs_getoffRHS",d:1.1},{n:"BIKEs_hit",d:.03},{n:"BIKEs_jumponL",d:.9},{n:"BIKEs_jumponR",d:.9},{n:"BIKEs_kick",d:1},{n:"BIKEs_Left",d:.1},{n:"BIKEs_passenger",d:.03},{n:"BIKEs_pushes",d:.73},{n:"BIKEs_Ride",d:.03},{n:"BIKEs_Right",d:.1},{n:"BIKEs_Snatch_L",d:.43},{n:"BIKEs_Snatch_R",d:.43},{n:"BIKEs_Still",d:.03}]],["BIKEV",[{n:"BIKEv_Back",d:.17},{n:"BIKEv_drivebyFT",d:.17},{n:"BIKEv_drivebyLHS",d:.23},{n:"BIKEv_drivebyRHS",d:.2},{n:"BIKEv_Fwd",d:.2},{n:"BIKEv_getoffBACK",d:1.7},{n:"BIKEv_getoffLHS",d:.67},{n:"BIKEv_getoffRHS",d:.67},{n:"BIKEv_hit",d:.03},{n:"BIKEv_jumponL",d:.67},{n:"BIKEv_jumponR",d:.67},{n:"BIKEv_kick",d:1},{n:"BIKEv_Left",d:.1},{n:"BIKEv_passenger",d:.03},{n:"BIKEv_pushes",d:.73},{n:"BIKEv_Ride",d:.03},{n:"BIKEv_Right",d:.1},{n:"BIKEv_Still",d:.03}]],["BIKE_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["BLOWJOBZ",[{n:"BJ_Car_End_P",d:4.13},{n:"BJ_Car_End_W",d:3.67},{n:"BJ_Car_Loop_P",d:.67},{n:"BJ_Car_Loop_W",d:.67},{n:"BJ_Car_Start_P",d:2.33},{n:"BJ_Car_Start_W",d:2.33},{n:"BJ_Couch_End_P",d:7.67},{n:"BJ_Couch_End_W",d:7.67},{n:"BJ_Couch_Loop_P",d:2},{n:"BJ_Couch_Loop_W",d:2},{n:"BJ_Couch_Start_P",d:5.33},{n:"BJ_Couch_Start_W",d:5.33},{n:"BJ_Stand_End_P",d:4.87},{n:"BJ_Stand_End_W",d:5.33},{n:"BJ_Stand_Loop_P",d:.67},{n:"BJ_Stand_Loop_W",d:.67},{n:"BJ_Stand_Start_P",d:2},{n:"BJ_Stand_Start_W",d:2}]],["BMX",[{n:"BMX_back",d:.1},{n:"BMX_bunnyhop",d:.33},{n:"BMX_drivebyFT",d:.2},{n:"BMX_driveby_LHS",d:.2},{n:"BMX_driveby_RHS",d:.2},{n:"BMX_fwd",d:.13},{n:"BMX_getoffBACK",d:1.37},{n:"BMX_getoffLHS",d:.73},{n:"BMX_getoffRHS",d:.63},{n:"BMX_jumponL",d:.9},{n:"BMX_jumponR",d:.9},{n:"BMX_Left",d:.13},{n:"BMX_pedal",d:.73},{n:"BMX_pushes",d:.8},{n:"BMX_Ride",d:.03},{n:"BMX_Right",d:.13},{n:"BMX_sprint",d:.67},{n:"BMX_still",d:.03}]],["BOMBER",[{n:"BOM_Plant",d:2.67},{n:"BOM_Plant_2Idle",d:1},{n:"BOM_Plant_Crouch_In",d:.8},{n:"BOM_Plant_Crouch_Out",d:.8},{n:"BOM_Plant_In",d:.87},{n:"BOM_Plant_Loop",d:.8}]],["BOX",[{n:"boxhipin",d:6.53},{n:"boxhipup",d:5},{n:"boxshdwn",d:6.1},{n:"boxshup",d:5.2},{n:"bxhipwlk",d:1.5},{n:"bxhwlki",d:.97},{n:"bxshwlk",d:2.5},{n:"bxshwlki",d:.97},{n:"bxwlko",d:.53},{n:"catch_box",d:1.5}]],["BSKTBALL",[{n:"BBALL_def_jump_shot",d:1.17},{n:"BBALL_def_loop",d:1},{n:"BBALL_def_stepL",d:.6},{n:"BBALL_def_stepR",d:.6},{n:"BBALL_Dnk",d:1.4},{n:"BBALL_Dnk_Gli",d:.37},{n:"BBALL_Dnk_Gli_O",d:.37},{n:"BBALL_Dnk_Lnch",d:.2},{n:"BBALL_Dnk_Lnch_O",d:.2},{n:"BBALL_Dnk_Lnd",d:.93},{n:"BBALL_Dnk_O",d:.1},{n:"BBALL_idle",d:2.43},{n:"BBALL_idle2",d:2.67},{n:"BBALL_idle2_O",d:2.67},{n:"BBALL_idleloop",d:.67},{n:"BBALL_idleloop_O",d:.67},{n:"BBALL_idle_O",d:2.43},{n:"BBALL_Jump_Cancel",d:1.07},{n:"BBALL_Jump_Cancel_O",d:1.07},{n:"BBALL_Jump_End",d:.93},{n:"BBALL_Jump_Shot",d:1.67},{n:"BBALL_Jump_Shot_O",d:.67},{n:"BBALL_Net_Dnk_O",d:1.83},{n:"BBALL_pickup",d:1.83},{n:"BBALL_pickup_O",d:1.83},{n:"BBALL_react_miss",d:.8},{n:"BBALL_react_score",d:1.1},{n:"BBALL_run",d:.9},{n:"BBALL_run_O",d:.9},{n:"BBALL_SkidStop_L",d:.5},{n:"BBALL_SkidStop_L_O",d:.5},{n:"BBALL_SkidStop_R",d:.5},{n:"BBALL_SkidStop_R_O",d:.5},{n:"BBALL_walk",d:1.07},{n:"BBALL_WalkStop_L",d:.5},{n:"BBALL_WalkStop_L_O",d:.5},{n:"BBALL_WalkStop_R",d:.5},{n:"BBALL_WalkStop_R_O",d:.5},{n:"BBALL_walk_O",d:1.07},{n:"BBALL_walk_start",d:.2},{n:"BBALL_walk_start_O",d:.2}]],["BUDDY",[{n:"buddy_crouchfire",d:.87},{n:"buddy_crouchreload",d:1.1},{n:"buddy_fire",d:.8},{n:"buddy_fire_poor",d:1.33},{n:"buddy_reload",d:1.3}]],["BUS",[{n:"BUS_close",d:.4},{n:"BUS_getin_LHS",d:.33},{n:"BUS_getin_RHS",d:2.17},{n:"BUS_getout_LHS",d:.8},{n:"BUS_getout_RHS",d:1.87},{n:"BUS_jacked_LHS",d:1.13},{n:"BUS_open",d:1.47},{n:"BUS_open_RHS",d:1.2},{n:"BUS_pullout_LHS",d:.8}]],["CAMERA",[{n:"camcrch_cmon",d:2.33},{n:"camcrch_idleloop",d:2},{n:"camcrch_stay",d:2},{n:"camcrch_to_camstnd",d:1.33},{n:"camstnd_cmon",d:3},{n:"camstnd_idleloop",d:2},{n:"camstnd_lkabt",d:4.33},{n:"camstnd_to_camcrch",d:1},{n:"piccrch_in",d:1.33},{n:"piccrch_out",d:2},{n:"piccrch_take",d:1},{n:"picstnd_in",d:1},{n:"picstnd_out",d:.67},{n:"picstnd_take",d:1}]],["CAR",[{n:"Fixn_Car_Loop",d:5},{n:"Fixn_Car_Out",d:2.33},{n:"flag_drop",d:4.5},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33},{n:"Tyd2car_bump",d:.83},{n:"Tyd2car_high",d:8},{n:"Tyd2car_low",d:6.67},{n:"Tyd2car_med",d:6.67},{n:"Tyd2car_TurnL",d:1},{n:"Tyd2car_TurnR",d:1}]],["CARRY",[{n:"crry_prtial",d:.03},{n:"liftup",d:1.53},{n:"liftup05",d:.63},{n:"liftup105",d:.67},{n:"putdwn",d:1.13},{n:"putdwn05",d:.67},{n:"putdwn105",d:.53}]],["CAR_CHAT",[{n:"carfone_in",d:6},{n:"carfone_loopA",d:4},{n:"carfone_loopA_to_B",d:1},{n:"carfone_loopB",d:5},{n:"carfone_loopB_to_A",d:.67},{n:"carfone_out",d:3},{n:"CAR_Sc1_BL",d:11.67},{n:"CAR_Sc1_BR",d:11.67},{n:"CAR_Sc1_FL",d:11.67},{n:"CAR_Sc1_FR",d:11.67},{n:"CAR_Sc2_FL",d:5},{n:"CAR_Sc3_BR",d:10.83},{n:"CAR_Sc3_FL",d:10.83},{n:"CAR_Sc3_FR",d:10.83},{n:"CAR_Sc4_BL",d:4.4},{n:"CAR_Sc4_BR",d:6.53},{n:"CAR_Sc4_FL",d:10},{n:"CAR_Sc4_FR",d:10},{n:"car_talkm_in",d:1.67},{n:"car_talkm_loop",d:4.33},{n:"car_talkm_out",d:7.33}]],["CASINO",[{n:"cards_in",d:.67},{n:"cards_loop",d:3.33},{n:"cards_lose",d:3.33},{n:"cards_out",d:.67},{n:"cards_pick_01",d:4.67},{n:"cards_pick_02",d:5.33},{n:"cards_raise",d:1.67},{n:"cards_win",d:3},{n:"dealone",d:.8},{n:"manwinb",d:1.5},{n:"manwind",d:1.67},{n:"Roulette_bet",d:2.33},{n:"Roulette_in",d:.67},{n:"Roulette_loop",d:3.67},{n:"Roulette_lose",d:2.67},{n:"Roulette_out",d:.67},{n:"Roulette_win",d:2.33},{n:"Slot_bet_01",d:4.67},{n:"Slot_bet_02",d:2},{n:"Slot_in",d:3.67},{n:"Slot_lose_out",d:4},{n:"Slot_Plyr",d:1.33},{n:"Slot_wait",d:3.67},{n:"Slot_win_out",d:9.33},{n:"wof",d:1.47}]],["CHAINSAW",[{n:"CSAW_1",d:1},{n:"CSAW_2",d:1.03},{n:"CSAW_3",d:.87},{n:"CSAW_G",d:1.17},{n:"CSAW_Hit_1",d:.83},{n:"CSAW_Hit_2",d:1.07},{n:"CSAW_Hit_3",d:1.13},{n:"csaw_part",d:.13},{n:"IDLE_csaw",d:1.5},{n:"WEAPON_csaw",d:1.33},{n:"WEAPON_csawlo",d:1.9}]],["CHOPPA",[{n:"CHOPPA_back",d:.1},{n:"CHOPPA_bunnyhop",d:.33},{n:"CHOPPA_drivebyFT",d:.2},{n:"CHOPPA_driveby_LHS",d:.2},{n:"CHOPPA_driveby_RHS",d:.2},{n:"CHOPPA_fwd",d:.2},{n:"CHOPPA_getoffBACK",d:1.27},{n:"CHOPPA_getoffLHS",d:.73},{n:"CHOPPA_getoffRHS",d:.63},{n:"CHOPPA_jumponL",d:.7},{n:"CHOPPA_jumponR",d:.8},{n:"CHOPPA_Left",d:.13},{n:"CHOPPA_pedal",d:.73},{n:"CHOPPA_Pushes",d:.8},{n:"CHOPPA_ride",d:.03},{n:"CHOPPA_Right",d:.13},{n:"CHOPPA_sprint",d:.67},{n:"CHOPPA_Still",d:.03}]],["CLOTHES",[{n:"CLO_Buy",d:2.07},{n:"CLO_In",d:4},{n:"CLO_Out",d:2.67},{n:"CLO_Pose_Hat",d:3.33},{n:"CLO_Pose_In",d:3.13},{n:"CLO_Pose_In_O",d:4},{n:"CLO_Pose_Legs",d:3.33},{n:"CLO_Pose_Loop",d:6},{n:"CLO_Pose_Out",d:4},{n:"CLO_Pose_Out_O",d:4},{n:"CLO_Pose_Shoes",d:3.33},{n:"CLO_Pose_Torso",d:3.33},{n:"CLO_Pose_Watch",d:3.33}]],["COACH",[{n:"COACH_inL",d:2.17},{n:"COACH_inR",d:2.2},{n:"COACH_opnL",d:1.2},{n:"COACH_opnR",d:1.2},{n:"COACH_outL",d:1.73},{n:"COACH_outR",d:1.83}]],["COLT45",[{n:"2guns_crouchfire",d:.8},{n:"colt45_crouchfire",d:.8},{n:"colt45_crouchreload",d:1},{n:"colt45_fire",d:.73},{n:"colt45_fire_2hands",d:.87},{n:"colt45_reload",d:.93},{n:"sawnoff_reload",d:.93}]],["COP_AMBIENT",[{n:"Copbrowse_in",d:5},{n:"Copbrowse_loop",d:2.33},{n:"Copbrowse_nod",d:4},{n:"Copbrowse_out",d:2.67},{n:"Copbrowse_shake",d:1.83},{n:"Coplook_in",d:1.33},{n:"Coplook_loop",d:2.67},{n:"Coplook_nod",d:5.33},{n:"Coplook_out",d:.67},{n:"Coplook_shake",d:4},{n:"Coplook_think",d:3.33},{n:"Coplook_watch",d:2}]],["COP_DVBYZ",[{n:"COP_Dvby_B",d:.83},{n:"COP_Dvby_FT",d:.83},{n:"COP_Dvby_L",d:.83},{n:"COP_Dvby_R",d:.83}]],["CRACK",[{n:"Bbalbat_Idle_01",d:6.67},{n:"Bbalbat_Idle_02",d:10},{n:"crckdeth1",d:2.17},{n:"crckdeth2",d:3},{n:"crckdeth3",d:2.17},{n:"crckdeth4",d:1.67},{n:"crckidle1",d:3.5},{n:"crckidle2",d:3.33},{n:"crckidle3",d:3.33},{n:"crckidle4",d:2.67}]],["CRIB",[{n:"CRIB_Console_Loop",d:3},{n:"CRIB_Use_Switch",d:1.17},{n:"PED_Console_Loop",d:3},{n:"PED_Console_Loose",d:3.5},{n:"PED_Console_Win",d:3.5}]],["DAM_JUMP",[{n:"DAM_Dive_Loop",d:1.33},{n:"DAM_Land",d:2.6},{n:"DAM_Launch",d:2.4},{n:"Jump_Roll",d:3.17},{n:"SF_JumpWall",d:3}]],["DANCING",[{n:"bd_clap",d:3.2},{n:"bd_clap1",d:2.63},{n:"dance_loop",d:1.17},{n:"DAN_Down_A",d:1},{n:"DAN_Left_A",d:1},{n:"DAN_Loop_A",d:2},{n:"DAN_Right_A",d:1},{n:"DAN_Up_A",d:1},{n:"dnce_M_a",d:2.13},{n:"dnce_M_b",d:1.93},{n:"dnce_M_c",d:1.93},{n:"dnce_M_d",d:2.43},{n:"dnce_M_e",d:.9}]],["DEALER",[{n:"DEALER_DEAL",d:3.17},{n:"DEALER_IDLE",d:6.67},{n:"DEALER_IDLE_01",d:5},{n:"DEALER_IDLE_02",d:4},{n:"DEALER_IDLE_03",d:4.67},{n:"DRUGS_BUY",d:3.17},{n:"shop_pay",d:4.67}]],["DILDO",[{n:"DILDO_1",d:.97},{n:"DILDO_2",d:1.1},{n:"DILDO_3",d:1.17},{n:"DILDO_block",d:.47},{n:"DILDO_G",d:1.47},{n:"DILDO_Hit_1",d:.77},{n:"DILDO_Hit_2",d:1.03},{n:"DILDO_Hit_3",d:.9},{n:"DILDO_IDLE",d:.87}]],["DODGE",[{n:"Cover_Dive_01",d:6},{n:"Cover_Dive_02",d:6},{n:"Crushed",d:.93},{n:"Crush_Jump",d:3.17}]],["DOZER",[{n:"DOZER_Align_LHS",d:.97},{n:"DOZER_Align_RHS",d:.93},{n:"DOZER_getin_LHS",d:.43},{n:"DOZER_getin_RHS",d:.43},{n:"DOZER_getout_LHS",d:1.07},{n:"DOZER_getout_RHS",d:.77},{n:"DOZER_Jacked_LHS",d:1.27},{n:"DOZER_Jacked_RHS",d:1.07},{n:"DOZER_pullout_LHS",d:.73},{n:"DOZER_pullout_RHS",d:.7}]],["DRIVEBYS",[{n:"Gang_DrivebyLHS",d:.83},{n:"Gang_DrivebyLHS_Bwd",d:.83},{n:"Gang_DrivebyLHS_Fwd",d:.83},{n:"Gang_DrivebyRHS",d:.83},{n:"Gang_DrivebyRHS_Bwd",d:.83},{n:"Gang_DrivebyRHS_Fwd",d:.83},{n:"Gang_DrivebyTop_LHS",d:.83},{n:"Gang_DrivebyTop_RHS",d:.83}]],["FAT",[{n:"FatIdle",d:1.5},{n:"FatIdle_armed",d:1.53},{n:"FatIdle_Csaw",d:1.5},{n:"FatIdle_Rocket",d:1.6},{n:"FatRun",d:.77},{n:"FatRun_armed",d:.77},{n:"FatRun_Csaw",d:.77},{n:"FatRun_Rocket",d:.77},{n:"FatSprint",d:.6},{n:"FatWalk",d:1.17},{n:"FatWalkstart",d:.2},{n:"FatWalkstart_Csaw",d:.2},{n:"FatWalkSt_armed",d:.2},{n:"FatWalkSt_Rocket",d:.2},{n:"FatWalk_armed",d:1.17},{n:"FatWalk_Csaw",d:1.17},{n:"FatWalk_Rocket",d:1.17},{n:"IDLE_tired",d:1.07}]],["FIGHT_B",[{n:"FightB_1",d:.73},{n:"FightB_2",d:1.1},{n:"FightB_3",d:1.2},{n:"FightB_block",d:.47},{n:"FightB_G",d:1.07},{n:"FightB_IDLE",d:.8},{n:"FightB_M",d:.5},{n:"HitB_1",d:.73},{n:"HitB_2",d:.83},{n:"HitB_3",d:1.43}]],["FIGHT_C",[{n:"FightC_1",d:.83},{n:"FightC_2",d:1.03},{n:"FightC_3",d:1},{n:"FightC_block",d:.47},{n:"FightC_blocking",d:3.2},{n:"FightC_G",d:.77},{n:"FightC_IDLE",d:1},{n:"FightC_M",d:.9},{n:"FightC_Spar",d:3.2},{n:"HitC_1",d:.3},{n:"HitC_2",d:.67},{n:"HitC_3",d:.83}]],["FIGHT_D",[{n:"FightD_1",d:.93},{n:"FightD_2",d:1.87},{n:"FightD_3",d:.9},{n:"FightD_block",d:.47},{n:"FightD_G",d:.83},{n:"FightD_IDLE",d:1.53},{n:"FightD_M",d:1.07},{n:"HitD_1",d:.67},{n:"HitD_2",d:1.83},{n:"HitD_3",d:.97}]],["FIGHT_E",[{n:"FightKick",d:.77},{n:"FightKick_B",d:1.03},{n:"Hit_fightkick",d:.5},{n:"Hit_fightkick_B",d:1.13}]],["FINALE",[{n:"FIN_Climb_In",d:2.9},{n:"FIN_Cop1_ClimbOut2",d:6},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Stomp",d:1},{n:"FIN_Hang_L",d:.57},{n:"FIN_Hang_Loop",d:4},{n:"FIN_Hang_R",d:.57},{n:"FIN_Hang_Slip",d:3.33},{n:"FIN_Jump_On",d:5.6},{n:"FIN_Land_Car",d:.67},{n:"FIN_Land_Die",d:2.37},{n:"FIN_LegsUp",d:1},{n:"FIN_LegsUp_L",d:.5},{n:"FIN_LegsUp_Loop",d:1.33},{n:"FIN_LegsUp_R",d:.5},{n:"FIN_Let_Go",d:.17}]],["FINALE2",[{n:"FIN_Cop1_ClimbOut",d:4},{n:"FIN_Cop1_Fall",d:.43},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Shot",d:2.07},{n:"FIN_Cop1_Swing",d:1.17},{n:"FIN_Cop2_ClimbOut",d:5.33},{n:"FIN_Switch_P",d:3.97},{n:"FIN_Switch_S",d:2.17}]],["FLAME",[{n:"FLAME_fire",d:.8}]],["Flowers",[{n:"Flower_attack",d:.8},{n:"Flower_attack_M",d:1.23},{n:"Flower_Hit",d:.83}]],["FOOD",[{n:"EAT_Burger",d:5},{n:"EAT_Chicken",d:5},{n:"EAT_Pizza",d:5},{n:"EAT_Vomit_P",d:8},{n:"EAT_Vomit_SK",d:8},{n:"FF_Dam_Bkw",d:.67},{n:"FF_Dam_Fwd",d:.67},{n:"FF_Dam_Left",d:.67},{n:"FF_Dam_Right",d:.67},{n:"FF_Die_Bkw",d:.67},{n:"FF_Die_Fwd",d:.67},{n:"FF_Die_Left",d:.67},{n:"FF_Die_Right",d:.67},{n:"FF_Sit_Eat1",d:2.83},{n:"FF_Sit_Eat2",d:2.67},{n:"FF_Sit_Eat3",d:2.67},{n:"FF_Sit_In",d:3},{n:"FF_Sit_In_L",d:2},{n:"FF_Sit_In_R",d:2},{n:"FF_Sit_Look",d:8},{n:"FF_Sit_Loop",d:2.67},{n:"FF_Sit_Out_180",d:2.83},{n:"FF_Sit_Out_L_180",d:1.33},{n:"FF_Sit_Out_R_180",d:1.33},{n:"SHP_Thank",d:1.17},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Lift",d:1.67},{n:"SHP_Tray_Lift_In",d:.5},{n:"SHP_Tray_Lift_Loop",d:8},{n:"SHP_Tray_Lift_Out",d:.5},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:.67},{n:"SHP_Tray_Return",d:1.33}]],["Freeweights",[{n:"gym_barbell",d:2.37},{n:"gym_free_A",d:1.93},{n:"gym_free_B",d:2.33},{n:"gym_free_celebrate",d:3.33},{n:"gym_free_down",d:.57},{n:"gym_free_loop",d:.67},{n:"gym_free_pickup",d:3.17},{n:"gym_free_putdown",d:3.17},{n:"gym_free_up_smooth",d:1}]],["GANGS",[{n:"DEALER_DEAL",d:1.17},{n:"DEALER_IDLE",d:2},{n:"drnkbr_prtl",d:2.67},{n:"drnkbr_prtl_F",d:2.67},{n:"DRUGS_BUY",d:1.17},{n:"hndshkaa",d:4},{n:"hndshkba",d:2.33},{n:"hndshkca",d:3.33},{n:"hndshkcb",d:3.33},{n:"hndshkda",d:2},{n:"hndshkea",d:1},{n:"hndshkfa",d:4.17},{n:"hndshkfa_swt",d:4.17},{n:"Invite_No",d:3.33},{n:"Invite_Yes",d:4.33},{n:"leanIDLE",d:1},{n:"leanIN",d:1},{n:"leanOUT",d:1},{n:"prtial_gngtlkA",d:4},{n:"prtial_gngtlkB",d:6.17},{n:"prtial_gngtlkC",d:7.33},{n:"prtial_gngtlkD",d:3},{n:"prtial_gngtlkE",d:2.83},{n:"prtial_gngtlkF",d:5.17},{n:"prtial_gngtlkG",d:7},{n:"prtial_gngtlkH",d:6},{n:"prtial_hndshk_01",d:1.67},{n:"prtial_hndshk_biz_01",d:2.33},{n:"shake_cara",d:1.67},{n:"shake_carK",d:1.27},{n:"shake_carSH",d:1.5},{n:"smkcig_prtl",d:7.5},{n:"smkcig_prtl_F",d:7.5}]],["GFUNK",[{n:"Dance_B1",d:1.27},{n:"Dance_B2",d:1.27},{n:"Dance_B3",d:1.27},{n:"Dance_B4",d:1.27},{n:"Dance_B5",d:1.27},{n:"Dance_B6",d:1.27},{n:"Dance_B7",d:1.27},{n:"Dance_B8",d:1.27},{n:"Dance_B9",d:1.27},{n:"Dance_B10",d:1.27},{n:"Dance_B11",d:1.27},{n:"Dance_B12",d:1.27},{n:"Dance_B13",d:1.27},{n:"Dance_B14",d:1.27},{n:"Dance_B15",d:1.27},{n:"Dance_B16",d:1.27},{n:"Dance_G1",d:1.27},{n:"Dance_G2",d:1.27},{n:"Dance_G3",d:1.27},{n:"Dance_G4",d:1.27},{n:"Dance_G5",d:1.27},{n:"Dance_G6",d:1.27},{n:"Dance_G7",d:1.27},{n:"Dance_G8",d:1.27},{n:"Dance_G9",d:1.27},{n:"Dance_G10",d:1.27},{n:"Dance_G11",d:1.27},{n:"Dance_G12",d:1.27},{n:"Dance_G13",d:1.27},{n:"Dance_G14",d:1.27},{n:"Dance_G15",d:1.27},{n:"Dance_G16",d:1.27},{n:"dance_loop",d:1.17}]],["GHANDS",[{n:"gsign1",d:4.77},{n:"gsign1LH",d:2.73},{n:"gsign2",d:2.13},{n:"gsign2LH",d:2.33},{n:"gsign3",d:4.67},{n:"gsign3LH",d:2},{n:"gsign4",d:4.17},{n:"gsign4LH",d:4.67},{n:"gsign5",d:6.2},{n:"gsign5LH",d:2},{n:"LHGsign1",d:2},{n:"LHGsign2",d:2},{n:"LHGsign3",d:2},{n:"LHGsign4",d:2},{n:"LHGsign5",d:2},{n:"RHGsign1",d:2},{n:"RHGsign2",d:2},{n:"RHGsign3",d:2},{n:"RHGsign4",d:2},{n:"RHGsign5",d:2}]],["GHETTO_DB",[{n:"GDB_Car2_PLY",d:9.5},{n:"GDB_Car2_SMO",d:9.5},{n:"GDB_Car2_SWE",d:9.5},{n:"GDB_Car_PLY",d:13.33},{n:"GDB_Car_RYD",d:13.33},{n:"GDB_Car_SMO",d:13.33},{n:"GDB_Car_SWE",d:13.33}]],["goggles",[{n:"goggles_put_on",d:.8}]],["GRAFFITI",[{n:"graffiti_Chkout",d:4.67},{n:"spraycan_fire",d:2.33}]],["GRAVEYARD",[{n:"mrnF_loop",d:4.67},{n:"mrnM_loop",d:2.67},{n:"prst_loopa",d:4}]],["GRENADE",[{n:"WEAPON_start_throw",d:.2},{n:"WEAPON_throw",d:.87},{n:"WEAPON_throwu",d:.67}]],["GYMNASIUM",[{n:"GYMshadowbox",d:5.1},{n:"gym_bike_celebrate",d:1.93},{n:"gym_bike_fast",d:.4},{n:"gym_bike_faster",d:.4},{n:"gym_bike_getoff",d:1.67},{n:"gym_bike_geton",d:1.67},{n:"gym_bike_pedal",d:.4},{n:"gym_bike_slow",d:.43},{n:"gym_bike_still",d:1.67},{n:"gym_jog_falloff",d:2.17},{n:"gym_shadowbox",d:5.1},{n:"gym_tread_celebrate",d:2.5},{n:"gym_tread_falloff",d:2},{n:"gym_tread_getoff",d:3.33},{n:"gym_tread_geton",d:2.5},{n:"gym_tread_jog",d:.77},{n:"gym_tread_sprint",d:.67},{n:"gym_tread_tired",d:1.33},{n:"gym_tread_walk",d:1.07},{n:"gym_walk_falloff",d:3.33},{n:"Pedals_fast",d:.4},{n:"Pedals_med",d:.4},{n:"Pedals_slow",d:.43},{n:"Pedals_still",d:.43}]],["HAIRCUTS",[{n:"BRB_Beard_01",d:4.5},{n:"BRB_Buy",d:4.17},{n:"BRB_Cut",d:1.7},{n:"BRB_Cut_In",d:.83},{n:"BRB_Cut_Out",d:1.33},{n:"BRB_Hair_01",d:3.83},{n:"BRB_Hair_02",d:4.5},{n:"BRB_In",d:1.33},{n:"BRB_Loop",d:2.67},{n:"BRB_Out",d:.67},{n:"BRB_Sit_In",d:2.07},{n:"BRB_Sit_Loop",d:7},{n:"BRB_Sit_Out",d:3}]],["HEIST9",[{n:"CAS_G2_GasKO",d:3.33},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43},{n:"Use_SwipeCard",d:1.17}]],["INT_HOUSE",[{n:"BED_In_L",d:3.33},{n:"BED_In_R",d:3.33},{n:"BED_Loop_L",d:3.33},{n:"BED_Loop_R",d:3.33},{n:"BED_Out_L",d:3.33},{n:"BED_Out_R",d:3.33},{n:"LOU_In",d:1.83},{n:"LOU_Loop",d:3.33},{n:"LOU_Out",d:2},{n:"wash_up",d:3}]],["INT_OFFICE",[{n:"FF_Dam_Fwd",d:.67},{n:"OFF_Sit_2Idle_180",d:2.83},{n:"OFF_Sit_Bored_Loop",d:2.83},{n:"OFF_Sit_Crash",d:3.33},{n:"OFF_Sit_Drink",d:4.17},{n:"OFF_Sit_Idle_Loop",d:2.07},{n:"OFF_Sit_In",d:2.77},{n:"OFF_Sit_Read",d:3.33},{n:"OFF_Sit_Type_Loop",d:3.33},{n:"OFF_Sit_Watch",d:2}]],["INT_SHOP",[{n:"shop_cashier",d:6.67},{n:"shop_in",d:1},{n:"shop_lookA",d:2},{n:"shop_lookB",d:3},{n:"shop_loop",d:2},{n:"shop_out",d:1.33},{n:"shop_pay",d:6.67},{n:"shop_shelf",d:2.33}]],["JST_BUISNESS",[{n:"girl_01",d:3.33},{n:"girl_02",d:11.33},{n:"player_01",d:24.83},{n:"smoke_01",d:25}]],["KART",[{n:"KART_getin_LHS",d:.83},{n:"KART_getin_RHS",d:.83},{n:"KART_getout_LHS",d:.83},{n:"KART_getout_RHS",d:.83}]],["KISSING",[{n:"BD_GF_Wave",d:5.07},{n:"gfwave2",d:2.67},{n:"GF_CarArgue_01",d:5},{n:"GF_CarArgue_02",d:5},{n:"GF_CarSpot",d:5},{n:"GF_StreetArgue_01",d:5},{n:"GF_StreetArgue_02",d:5},{n:"gift_get",d:5.33},{n:"gift_give",d:5.33},{n:"Grlfrd_Kiss_01",d:4.17},{n:"Grlfrd_Kiss_02",d:5.77},{n:"Grlfrd_Kiss_03",d:7},{n:"Playa_Kiss_01",d:5},{n:"Playa_Kiss_02",d:5.77},{n:"Playa_Kiss_03",d:7}]],["KNIFE",[{n:"KILL_Knife_Ped_Damage",d:2.23},{n:"KILL_Knife_Ped_Die",d:1.93},{n:"KILL_Knife_Player",d:2.67},{n:"KILL_Partial",d:.03},{n:"knife_1",d:1},{n:"knife_2",d:.93},{n:"knife_3",d:.87},{n:"Knife_4",d:.9},{n:"knife_block",d:.47},{n:"Knife_G",d:.9},{n:"knife_hit_1",d:.57},{n:"knife_hit_2",d:.63},{n:"knife_hit_3",d:1.6},{n:"knife_IDLE",d:1.3},{n:"knife_part",d:.53},{n:"WEAPON_knifeidle",d:1.3}]],["LAPDAN1",[{n:"LAPDAN_D",d:37.73},{n:"LAPDAN_P",d:37.73}]],["LAPDAN2",[{n:"LAPDAN_D",d:46.83},{n:"LAPDAN_P",d:46.83}]],["LAPDAN3",[{n:"LAPDAN_D",d:51.47},{n:"LAPDAN_P",d:51.47}]],["LOWRIDER",[{n:"F_smklean_loop",d:4},{n:"lrgirl_bdbnce",d:2.67},{n:"lrgirl_hair",d:2.33},{n:"lrgirl_hurry",d:2.83},{n:"lrgirl_idleloop",d:2.17},{n:"lrgirl_idle_to_l0",d:2.17},{n:"lrgirl_l0_bnce",d:.67},{n:"lrgirl_l0_loop",d:2},{n:"lrgirl_l0_to_l1",d:3.67},{n:"lrgirl_l12_to_l0",d:2},{n:"lrgirl_l1_bnce",d:.67},{n:"lrgirl_l1_loop",d:2},{n:"lrgirl_l1_to_l2",d:1.33},{n:"lrgirl_l2_bnce",d:.67},{n:"lrgirl_l2_loop",d:1.5},{n:"lrgirl_l2_to_l3",d:1.5},{n:"lrgirl_l345_to_l1",d:1},{n:"lrgirl_l3_bnce",d:.67},{n:"lrgirl_l3_loop",d:2},{n:"lrgirl_l3_to_l4",d:.67},{n:"lrgirl_l4_bnce",d:.67},{n:"lrgirl_l4_loop",d:2.33},{n:"lrgirl_l4_to_l5",d:1},{n:"lrgirl_l5_bnce",d:.83},{n:"lrgirl_l5_loop",d:1.67},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"prtial_gngtlkB",d:1.47},{n:"prtial_gngtlkC",d:1.5},{n:"prtial_gngtlkD",d:2.47},{n:"prtial_gngtlkE",d:3},{n:"prtial_gngtlkF",d:2.67},{n:"prtial_gngtlkG",d:2.67},{n:"prtial_gngtlkH",d:3.33},{n:"RAP_A_Loop",d:2.67},{n:"RAP_B_Loop",d:2.67},{n:"RAP_C_Loop",d:3},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33}]],["MD_CHASE",[{n:"Carhit_Hangon",d:1.53},{n:"Carhit_Tumble",d:2.03},{n:"donutdrop",d:1.5},{n:"Fen_Choppa_L1",d:1.43},{n:"Fen_Choppa_L2",d:1.3},{n:"Fen_Choppa_L3",d:1.3},{n:"Fen_Choppa_R1",d:1.3},{n:"Fen_Choppa_R2",d:1.3},{n:"Fen_Choppa_R3",d:1.3},{n:"Hangon_Stun_loop",d:4.67},{n:"Hangon_Stun_Turn",d:4},{n:"MD_BIKE_2_HANG",d:1.37},{n:"MD_BIKE_Jmp_BL",d:1.1},{n:"MD_BIKE_Jmp_F",d:1},{n:"MD_BIKE_Lnd_BL",d:.9},{n:"MD_BIKE_Lnd_Die_BL",d:1.53},{n:"MD_BIKE_Lnd_Die_F",d:.8},{n:"MD_BIKE_Lnd_F",d:1.17},{n:"MD_BIKE_Lnd_Roll",d:2.7},{n:"MD_BIKE_Lnd_Roll_F",d:1.03},{n:"MD_BIKE_Punch",d:1.83},{n:"MD_BIKE_Punch_F",d:1.83},{n:"MD_BIKE_Shot_F",d:1.33},{n:"MD_HANG_Lnd_Roll",d:2.7},{n:"MD_HANG_Loop",d:1}]],["MD_END",[{n:"END_SC1_PLY",d:5},{n:"END_SC1_RYD",d:5},{n:"END_SC1_SMO",d:5},{n:"END_SC1_SWE",d:5},{n:"END_SC2_PLY",d:9},{n:"END_SC2_RYD",d:9},{n:"END_SC2_SMO",d:9},{n:"END_SC2_SWE",d:9}]],["MEDIC",[{n:"CPR",d:8.33}]],["MISC",[{n:"bitchslap",d:1.17},{n:"BMX_celebrate",d:1.57},{n:"BMX_comeon",d:.77},{n:"bmx_idleloop_01",d:3.33},{n:"bmx_idleloop_02",d:6.67},{n:"bmx_talkleft_in",d:.67},{n:"bmx_talkleft_loop",d:6.67},{n:"bmx_talkleft_out",d:.67},{n:"bmx_talkright_in",d:.67},{n:"bmx_talkright_loop",d:7.33},{n:"bmx_talkright_out",d:.67},{n:"bng_wndw",d:7.33},{n:"bng_wndw_02",d:7.33},{n:"Case_pickup",d:1},{n:"door_jet",d:5.33},{n:"GRAB_L",d:.4},{n:"GRAB_R",d:.4},{n:"Hiker_Pose",d:.33},{n:"Hiker_Pose_L",d:.33},{n:"Idle_Chat_02",d:7.23},{n:"KAT_Throw_K",d:3.33},{n:"KAT_Throw_O",d:3.33},{n:"KAT_Throw_P",d:3.33},{n:"PASS_Rifle_O",d:1.33},{n:"PASS_Rifle_Ped",d:1.33},{n:"PASS_Rifle_Ply",d:1.33},{n:"pickup_box",d:.4},{n:"Plane_door",d:5.33},{n:"Plane_exit",d:5.33},{n:"Plane_hijack",d:5.33},{n:"Plunger_01",d:3.33},{n:"Plyrlean_loop",d:2.67},{n:"plyr_shkhead",d:1.67},{n:"Run_Dive",d:8.27},{n:"Scratchballs_01",d:8.33},{n:"SEAT_LR",d:3.67},{n:"Seat_talk_01",d:3.67},{n:"Seat_talk_02",d:3.33},{n:"SEAT_watch",d:2.33},{n:"smalplane_door",d:6.33},{n:"smlplane_door",d:5.33},{n:"MTB_back",d:.1},{n:"MTB_bunnyhop",d:.33},{n:"MTB_drivebyFT",d:.2},{n:"MTB_driveby_LHS",d:.2},{n:"MTB_driveby_RHS",d:.2},{n:"MTB_fwd",d:.2},{n:"MTB_getoffBACK",d:1.53},{n:"MTB_getoffLHS",d:.73},{n:"MTB_getoffRHS",d:.73},{n:"MTB_jumponL",d:.8},{n:"MTB_jumponR",d:.83},{n:"MTB_Left",d:.13},{n:"MTB_pedal",d:.67},{n:"MTB_pushes",d:.8},{n:"MTB_Ride",d:.03},{n:"MTB_Right",d:.13},{n:"MTB_sprint",d:.8},{n:"MTB_still",d:.03},{n:"MscleWalkst_armed",d:.2},{n:"MscleWalkst_Csaw",d:.2},{n:"Mscle_rckt_run",d:.8},{n:"Mscle_rckt_walkst",d:.2},{n:"Mscle_run_Csaw",d:.8},{n:"MuscleIdle",d:1.5},{n:"MuscleIdle_armed",d:1.5},{n:"MuscleIdle_Csaw",d:1.5},{n:"MuscleIdle_rocket",d:1.5},{n:"MuscleRun",d:.8},{n:"MuscleRun_armed",d:.8},{n:"MuscleSprint",d:.57},{n:"MuscleWalk",d:1.07},{n:"MuscleWalkstart",d:.27},{n:"MuscleWalk_armed",d:1.07},{n:"Musclewalk_Csaw",d:1.07},{n:"Musclewalk_rocket",d:1.07}]],["NEVADA",[{n:"NEVADA_getin",d:1.87},{n:"NEVADA_getout",d:.93}]],["ON_LOOKERS",[{n:"lkaround_in",d:.33},{n:"lkaround_loop",d:7},{n:"lkaround_out",d:.33},{n:"lkup_in",d:1.67},{n:"lkup_loop",d:5.33},{n:"lkup_out",d:1},{n:"lkup_point",d:3.33},{n:"panic_cower",d:6.67},{n:"panic_hide",d:6.33},{n:"panic_in",d:.83},{n:"panic_loop",d:1.67},{n:"panic_out",d:.67},{n:"panic_point",d:6},{n:"panic_shout",d:8.67},{n:"Pointup_in",d:1},{n:"Pointup_loop",d:2.67},{n:"Pointup_out",d:1},{n:"Pointup_shout",d:3},{n:"point_in",d:.5},{n:"point_loop",d:3},{n:"point_out",d:.33},{n:"shout_01",d:2.67},{n:"shout_02",d:4},{n:"shout_in",d:1.67},{n:"shout_loop",d:2},{n:"shout_out",d:.33},{n:"wave_in",d:.83},{n:"wave_loop",d:1.5},{n:"wave_out",d:.83}]],["OTB",[{n:"betslp_in",d:1.33},{n:"betslp_lkabt",d:2.67},{n:"betslp_loop",d:2.67},{n:"betslp_out",d:1},{n:"betslp_tnk",d:5.6},{n:"wtchrace_cmon",d:5},{n:"wtchrace_in",d:1.67},{n:"wtchrace_loop",d:2.67},{n:"wtchrace_lose",d:4},{n:"wtchrace_out",d:1},{n:"wtchrace_win",d:4.33}]],["PARACHUTE",[{n:"FALL_skyDive",d:1.33},{n:"FALL_SkyDive_Accel",d:1.33},{n:"FALL_skyDive_DIE",d:1},{n:"FALL_SkyDive_L",d:1.33},{n:"FALL_SkyDive_R",d:1.33},{n:"PARA_decel",d:2},{n:"PARA_decel_O",d:2},{n:"PARA_float",d:2},{n:"PARA_float_O",d:2},{n:"PARA_Land",d:1.67},{n:"PARA_Land_O",d:2.17},{n:"PARA_Land_Water",d:2.33},{n:"PARA_Land_Water_O",d:2.17},{n:"PARA_open",d:2.83},{n:"PARA_open_O",d:2.33},{n:"PARA_Rip_Land_O",d:.9},{n:"PARA_Rip_Loop_O",d:1},{n:"PARA_Rip_O",d:.23},{n:"PARA_steerL",d:2},{n:"PARA_steerL_O",d:2},{n:"PARA_steerR",d:2},{n:"PARA_steerR_O",d:2}]],["PARK",[{n:"Tai_Chi_in",d:2.17},{n:"Tai_Chi_Loop",d:12},{n:"Tai_Chi_Out",d:.83}]],["PAULNMAC",[{n:"Piss_in",d:9},{n:"Piss_loop",d:6.67},{n:"Piss_out",d:11},{n:"PnM_Argue1_A",d:4.33},{n:"PnM_Argue1_B",d:4.33},{n:"PnM_Argue2_A",d:4.33},{n:"PnM_Argue2_B",d:4.33},{n:"PnM_Loop_A",d:5.33},{n:"PnM_Loop_B",d:5.33},{n:"wank_in",d:7.33},{n:"wank_loop",d:2.67},{n:"wank_out",d:11.67}]],["PED",[{n:"abseil",d:.03},{n:"ARRESTgun",d:.67},{n:"ATM",d:12.17},{n:"BIKE_elbowL",d:.97},{n:"BIKE_elbowR",d:.97},{n:"BIKE_fallR",d:1.63},{n:"BIKE_fall_off",d:1.07},{n:"BIKE_pickupL",d:1.07},{n:"BIKE_pickupR",d:1.07},{n:"BIKE_pullupL",d:1},{n:"BIKE_pullupR",d:1},{n:"bomber",d:.6},{n:"CAR_alignHI_LHS",d:.73},{n:"CAR_alignHI_RHS",d:.73},{n:"CAR_align_LHS",d:.13},{n:"CAR_align_RHS",d:.13},{n:"CAR_closedoorL_LHS",d:.6},{n:"CAR_closedoorL_RHS",d:.4},{n:"CAR_closedoor_LHS",d:.6},{n:"CAR_closedoor_RHS",d:.4},{n:"CAR_close_LHS",d:.73},{n:"CAR_close_RHS",d:.73},{n:"CAR_crawloutRHS",d:2.17},{n:"CAR_dead_LHS",d:.03},{n:"CAR_dead_RHS",d:.03},{n:"CAR_doorlocked_LHS",d:1.33},{n:"CAR_doorlocked_RHS",d:1.27},{n:"CAR_fallout_LHS",d:.57},{n:"CAR_fallout_RHS",d:.57},{n:"CAR_getinL_LHS",d:1},{n:"CAR_getinL_RHS",d:1},{n:"CAR_getin_LHS",d:1},{n:"CAR_getin_RHS",d:1},{n:"CAR_getoutL_LHS",d:.93},{n:"CAR_getoutL_RHS",d:1},{n:"CAR_getout_LHS",d:1.13},{n:"CAR_getout_RHS",d:.8},{n:"car_hookertalk",d:4.3},{n:"CAR_jackedLHS",d:2.9},{n:"CAR_jackedRHS",d:3.43},{n:"CAR_jumpin_LHS",d:1},{n:"CAR_LB",d:.23},{n:"CAR_LB_pro",d:.1},{n:"CAR_LB_weak",d:.23},{n:"CAR_LjackedLHS",d:3.57},{n:"CAR_LjackedRHS",d:3.47},{n:"CAR_Lshuffle_RHS",d:.4},{n:"CAR_Lsit",d:.03},{n:"CAR_open_LHS",d:1.1},{n:"CAR_open_RHS",d:1.1},{n:"CAR_pulloutL_LHS",d:2.93},{n:"CAR_pulloutL_RHS",d:2.93},{n:"CAR_pullout_LHS",d:2.3},{n:"CAR_pullout_RHS",d:2.8},{n:"CAR_Qjacked",d:3.3},{n:"CAR_rolldoor",d:.6},{n:"CAR_rolldoorLO",d:.6},{n:"CAR_rollout_LHS",d:1.63},{n:"CAR_rollout_RHS",d:1.27},{n:"CAR_shuffle_RHS",d:.4},{n:"CAR_sit",d:.03},{n:"CAR_sitp",d:.03},{n:"CAR_sitpLO",d:.03},{n:"CAR_sit_pro",d:.03},{n:"CAR_sit_weak",d:.03},{n:"CAR_tune_radio",d:.63},{n:"CLIMB_idle",d:.8},{n:"CLIMB_jump",d:.57},{n:"CLIMB_jump2fall",d:.03},{n:"CLIMB_jump_B",d:.97},{n:"CLIMB_Pull",d:.87},{n:"CLIMB_Stand",d:.8},{n:"CLIMB_Stand_finish",d:.2},{n:"cower",d:.8},{n:"Crouch_Roll_L",d:.93},{n:"Crouch_Roll_R",d:.93},{n:"DAM_armL_frmBK",d:.83},{n:"DAM_armL_frmFT",d:.83},{n:"DAM_armL_frmLT",d:.67},{n:"DAM_armR_frmBK",d:.83},{n:"DAM_armR_frmFT",d:.5},{n:"DAM_armR_frmRT",d:.27},{n:"DAM_LegL_frmBK",d:.83},{n:"DAM_LegL_frmFT",d:.83},{n:"DAM_LegL_frmLT",d:.83},{n:"DAM_LegR_frmBK",d:.83},{n:"DAM_LegR_frmFT",d:.83},{n:"DAM_LegR_frmRT",d:.83},{n:"DAM_stomach_frmBK",d:.83},{n:"DAM_stomach_frmFT",d:.83},{n:"DAM_stomach_frmLT",d:.83},{n:"DAM_stomach_frmRT",d:.83},{n:"DOOR_LHinge_O",d:1.07},{n:"DOOR_RHinge_O",d:1.07},{n:"DrivebyL_L",d:.2},{n:"DrivebyL_R",d:.2},{n:"Driveby_L",d:.2},{n:"Driveby_R",d:.2},{n:"DRIVE_BOAT",d:.03},{n:"DRIVE_BOAT_back",d:.1},{n:"DRIVE_BOAT_L",d:.1},{n:"DRIVE_BOAT_R",d:.1},{n:"Drive_L",d:.13},{n:"Drive_LO_l",d:.13},{n:"Drive_LO_R",d:.13},{n:"Drive_L_pro",d:.13},{n:"Drive_L_pro_slow",d:.13},{n:"Drive_L_slow",d:.13},{n:"Drive_L_weak",d:.13},{n:"Drive_L_weak_slow",d:.13},{n:"Drive_R",d:.13},{n:"Drive_R_pro",d:.13},{n:"Drive_R_pro_slow",d:.13},{n:"Drive_R_slow",d:.13},{n:"Drive_R_weak",d:.13},{n:"Drive_R_weak_slow",d:.13},{n:"Drive_truck",d:.03},{n:"DRIVE_truck_back",d:.1},{n:"DRIVE_truck_L",d:.13},{n:"DRIVE_truck_R",d:.13},{n:"Drown",d:2.5},{n:"DUCK_cower",d:.8},{n:"endchat_01",d:2},{n:"endchat_02",d:2},{n:"endchat_03",d:2.33},{n:"EV_dive",d:2.33},{n:"EV_step",d:1.07},{n:"facanger",d:.13},{n:"facgum",d:1.03},{n:"facsurp",d:.13},{n:"facsurpm",d:.13},{n:"factalk",d:2.33},{n:"facurios",d:.13},{n:"FALL_back",d:.73},{n:"FALL_collapse",d:1},{n:"FALL_fall",d:.73},{n:"FALL_front",d:.73},{n:"FALL_glide",d:.8},{n:"FALL_land",d:.47},{n:"FALL_skyDive",d:1.33},{n:"Fight2Idle",d:.33},{n:"FightA_1",d:.43},{n:"FightA_2",d:.77},{n:"FightA_3",d:.87},{n:"FightA_block",d:.47},{n:"FightA_G",d:.93},{n:"FightA_M",d:.4},{n:"FIGHTIDLE",d:1.3},{n:"FightShB",d:.47},{n:"FightShF",d:.53},{n:"FightSh_BWD",d:.67},{n:"FightSh_FWD",d:.67},{n:"FightSh_Left",d:.67},{n:"FightSh_Right",d:.67},{n:"flee_lkaround_01",d:2},{n:"FLOOR_hit",d:.37},{n:"FLOOR_hit_f",d:.4},{n:"fucku",d:1.33},{n:"gang_gunstand",d:.03},{n:"gas_cwr",d:1},{n:"getup",d:1.37},{n:"getup_front",d:1.37},{n:"gum_eat",d:5.33},{n:"GunCrouchBwd",d:1},{n:"GunCrouchFwd",d:.73},{n:"GunMove_BWD",d:1.03},{n:"GunMove_FWD",d:1},{n:"GunMove_L",d:1},{n:"GunMove_R",d:1},{n:"Gun_2_IDLE",d:.27},{n:"GUN_BUTT",d:.43},{n:"GUN_BUTT_crouch",d:.43},{n:"Gun_stand",d:.03},{n:"handscower",d:1.93},{n:"handsup",d:.6},{n:"HitA_1",d:.3},{n:"HitA_2",d:.53},{n:"HitA_3",d:.57},{n:"HIT_back",d:.5},{n:"HIT_behind",d:.67},{n:"HIT_front",d:.6},{n:"HIT_GUN_BUTT",d:.5},{n:"HIT_L",d:.7},{n:"HIT_R",d:.6},{n:"HIT_walk",d:.33},{n:"HIT_wall",d:.7},{n:"Idlestance_fat",d:1.67},{n:"idlestance_old",d:2},{n:"IDLE_armed",d:1.47},{n:"IDLE_chat",d:6.67},{n:"IDLE_csaw",d:1.53},{n:"Idle_Gang1",d:1.67},{n:"IDLE_HBHB",d:2.67},{n:"IDLE_ROCKET",d:1.57},{n:"IDLE_stance",d:1.5},{n:"IDLE_taxi",d:.87},{n:"IDLE_tired",d:1},{n:"Jetpack_Idle",d:.03},{n:"JOG_femaleA",d:.77},{n:"JOG_maleA",d:.77},{n:"JUMP_glide",d:.5},{n:"JUMP_land",d:.23},{n:"JUMP_launch",d:.2},{n:"JUMP_launch_R",d:.2},{n:"KART_drive",d:.03},{n:"KART_L",d:.13},{n:"KART_LB",d:.03},{n:"KART_R",d:.13},{n:"KD_left",d:.9},{n:"KD_right",d:.9},{n:"KO_shot_face",d:2.1},{n:"KO_shot_front",d:.57},{n:"KO_shot_stom",d:3.17},{n:"KO_skid_back",d:.97},{n:"KO_skid_front",d:1.13},{n:"KO_spin_L",d:.87},{n:"KO_spin_R",d:.93},{n:"pass_Smoke_in_car",d:1.73},{n:"phone_in",d:2.33},{n:"phone_out",d:2},{n:"phone_talk",d:2},{n:"Player_Sneak",d:1.33},{n:"Player_Sneak_walkstart",d:.3},{n:"roadcross",d:2},{n:"roadcross_female",d:4},{n:"roadcross_gang",d:2},{n:"roadcross_old",d:4},{n:"run_1armed",d:.77},{n:"run_armed",d:.7},{n:"run_civi",d:.73},{n:"run_csaw",d:.7},{n:"run_fat",d:.8},{n:"run_fatold",d:.8},{n:"run_gang1",d:.83},{n:"run_left",d:.67},{n:"run_old",d:.8},{n:"run_player",d:.73},{n:"run_right",d:.67},{n:"run_rocket",d:.77},{n:"Run_stop",d:.87},{n:"Run_stopR",d:.8},{n:"Run_Wuzi",d:.77},{n:"SEAT_down",d:1.5},{n:"SEAT_idle",d:2},{n:"SEAT_up",d:1.17},{n:"SHOT_leftP",d:.3},{n:"SHOT_partial",d:.37},{n:"SHOT_partial_B",d:.33},{n:"SHOT_rightP",d:.33},{n:"Shove_Partial",d:.53},{n:"Smoke_in_car",d:1.73},{n:"sprint_civi",d:.53},{n:"sprint_panic",d:.6},{n:"Sprint_Wuzi",d:.67},{n:"swat_run",d:.67},{n:"Swim_Tread",d:1.3},{n:"Tap_hand",d:.03},{n:"Tap_handP",d:.03},{n:"turn_180",d:.63},{n:"Turn_L",d:.8},{n:"Turn_R",d:.8},{n:"WALK_armed",d:1.07},{n:"WALK_civi",d:1.13},{n:"WALK_csaw",d:1.07},{n:"Walk_DoorPartial",d:.8},{n:"WALK_drunk",d:3.93},{n:"WALK_fat",d:1.33},{n:"WALK_fatold",d:1.17},{n:"WALK_gang1",d:1.4},{n:"WALK_gang2",d:1.4},{n:"WALK_old",d:1.4},{n:"WALK_player",d:1.2},{n:"WALK_rocket",d:1.07},{n:"WALK_shuffle",d:1.2},{n:"WALK_start",d:.27},{n:"WALK_start_armed",d:.2},{n:"WALK_start_csaw",d:.2},{n:"WALK_start_rocket",d:.2},{n:"Walk_Wuzi",d:1.17},{n:"WEAPON_crouch",d:.8},{n:"woman_idlestance",d:5.33},{n:"woman_run",d:.77},{n:"WOMAN_runbusy",d:.67},{n:"WOMAN_runfatold",d:1.2},{n:"woman_runpanic",d:.6},{n:"WOMAN_runsexy",d:.7},{n:"WOMAN_walkbusy",d:1},{n:"WOMAN_walkfatold",d:1.2},{n:"WOMAN_walknorm",d:1.13},{n:"WOMAN_walkold",d:1.2},{n:"WOMAN_walkpro",d:1.33},{n:"WOMAN_walksexy",d:1.17},{n:"WOMAN_walkshop",d:.97},{n:"XPRESSscratch",d:3.97}]],["PLAYER_DVBYS",[{n:"Plyr_DrivebyBwd",d:.83},{n:"Plyr_DrivebyFwd",d:.83},{n:"Plyr_DrivebyLHS",d:.83},{n:"Plyr_DrivebyRHS",d:.83}]],["PLAYIDLES",[{n:"shift",d:3.6},{n:"shldr",d:2.17},{n:"stretch",d:4.6},{n:"strleg",d:3.67},{n:"time",d:5.2}]],["POLICE",[{n:"CopTraf_Away",d:1.47},{n:"CopTraf_Come",d:2.87},{n:"CopTraf_Left",d:2},{n:"CopTraf_Stop",d:2},{n:"COP_getoutcar_LHS",d:.83},{n:"Cop_move_FWD",d:1},{n:"crm_drgbst_01",d:18.57},{n:"Door_Kick",d:1.33},{n:"plc_drgbst_01",d:20.6},{n:"plc_drgbst_02",d:7.57}]],["POOL",[{n:"POOL_ChalkCue",d:4.83},{n:"POOL_Idle_Stance",d:2},{n:"POOL_Long_Shot",d:1.67},{n:"POOL_Long_Shot_O",d:1.67},{n:"POOL_Long_Start",d:.67},{n:"POOL_Long_Start_O",d:.67},{n:"POOL_Med_Shot",d:1.67},{n:"POOL_Med_Shot_O",d:1.67},{n:"POOL_Med_Start",d:.67},{n:"POOL_Med_Start_O",d:.67},{n:"POOL_Place_White",d:2.5},{n:"POOL_Short_Shot",d:1.67},{n:"POOL_Short_Shot_O",d:1.67},{n:"POOL_Short_Start",d:.67},{n:"POOL_Short_Start_O",d:.67},{n:"POOL_Walk",d:1.27},{n:"POOL_Walk_Start",d:.2},{n:"POOL_XLong_Shot",d:1.67},{n:"POOL_XLong_Shot_O",d:1.67},{n:"POOL_XLong_Start",d:.67},{n:"POOL_XLong_Start_O",d:.67}]],["POOR",[{n:"WINWASH_Start",d:.43},{n:"WINWASH_Wash2Beg",d:2.13}]],["PYTHON",[{n:"python_crouchfire",d:1.2},{n:"python_crouchreload",d:1},{n:"python_fire",d:1.17},{n:"python_fire_poor",d:1.47},{n:"python_reload",d:.93}]],["QUAD",[{n:"QUAD_back",d:.1},{n:"QUAD_driveby_FT",d:.2},{n:"QUAD_driveby_LHS",d:.2},{n:"QUAD_driveby_RHS",d:.2},{n:"QUAD_FWD",d:.2},{n:"QUAD_getoff_B",d:1.63},{n:"QUAD_getoff_LHS",d:.67},{n:"QUAD_getoff_RHS",d:.7},{n:"QUAD_geton_LHS",d:.73},{n:"QUAD_geton_RHS",d:.73},{n:"QUAD_hit",d:.03},{n:"QUAD_kick",d:1.13},{n:"QUAD_Left",d:.13},{n:"QUAD_passenger",d:.03},{n:"QUAD_reverse",d:.17},{n:"QUAD_ride",d:.03},{n:"QUAD_Right",d:.13}]],["QUAD_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["RAPPING",[{n:"Laugh_01",d:5.33},{n:"RAP_A_IN",d:.83},{n:"RAP_A_Loop",d:2.67},{n:"RAP_A_OUT",d:.33},{n:"RAP_B_IN",d:1},{n:"RAP_B_Loop",d:2.67},{n:"RAP_B_OUT",d:.87},{n:"RAP_C_Loop",d:3}]],["RIFLE",[{n:"RIFLE_crouchfire",d:.87},{n:"RIFLE_crouchload",d:1.27},{n:"RIFLE_fire",d:.8},{n:"RIFLE_fire_poor",d:.8},{n:"RIFLE_load",d:1.4}]],["RIOT",[{n:"RIOT_ANGRY",d:5},{n:"RIOT_ANGRY_B",d:.63},{n:"RIOT_challenge",d:3.23},{n:"RIOT_CHANT",d:1.73},{n:"RIOT_FUKU",d:.67},{n:"RIOT_PUNCHES",d:.67},{n:"RIOT_shout",d:1}]],["ROB_BANK",[{n:"CAT_Safe_End",d:.5},{n:"CAT_Safe_Open",d:3.33},{n:"CAT_Safe_Open_O",d:3.33},{n:"CAT_Safe_Rob",d:1.83},{n:"SHP_HandsUp_Scr",d:.67}]],["ROCKET",[{n:"idle_rocket",d:1.6},{n:"RocketFire",d:.97},{n:"run_rocket",d:.77},{n:"walk_rocket",d:1.07},{n:"WALK_start_rocket",d:.2}]],["RUNNINGMAN",[{n:"Dance_B1",d:.53},{n:"Dance_B2",d:.57},{n:"Dance_B3",d:.53},{n:"Dance_B4",d:.57},{n:"Dance_B5",d:.53},{n:"Dance_B6",d:.57},{n:"Dance_B7",d:.53},{n:"Dance_B8",d:.57},{n:"Dance_B9",d:.53},{n:"Dance_B10",d:.57},{n:"Dance_B11",d:.53},{n:"Dance_B12",d:.57},{n:"Dance_B13",d:.53},{n:"Dance_B14",d:.57},{n:"Dance_B15",d:.53},{n:"Dance_B16",d:.57},{n:"Dance_G1",d:.53},{n:"Dance_G2",d:.57},{n:"Dance_G3",d:.53},{n:"Dance_G4",d:.57},{n:"Dance_G5",d:.53},{n:"Dance_G6",d:.57},{n:"Dance_G7",d:.53},{n:"Dance_G8",d:.57},{n:"Dance_G9",d:.53},{n:"Dance_G10",d:.57},{n:"Dance_G11",d:.53},{n:"Dance_G12",d:.57},{n:"Dance_G13",d:.53},{n:"Dance_G14",d:.57},{n:"Dance_G15",d:.53},{n:"Dance_G16",d:.57},{n:"dance_loop",d:1.17}]],["RUSTLER",[{n:"Plane_align_LHS",d:.73},{n:"Plane_close",d:.4},{n:"Plane_getin",d:.8},{n:"Plane_getout",d:1.57},{n:"Plane_open",d:.7}]],["RYDER",[{n:"RYD_Beckon_01",d:1.23},{n:"RYD_Beckon_02",d:1},{n:"RYD_Beckon_03",d:1.07},{n:"RYD_Die_PT1",d:4},{n:"RYD_Die_PT2",d:7.93},{n:"Van_Crate_L",d:.67},{n:"Van_Crate_R",d:.67},{n:"Van_Fall_L",d:.47},{n:"Van_Fall_R",d:.93},{n:"Van_Lean_L",d:.67},{n:"Van_Lean_R",d:.67},{n:"VAN_PickUp_E",d:1.83},{n:"VAN_PickUp_S",d:1.5},{n:"Van_Stand",d:.67},{n:"Van_Stand_Crate",d:.67},{n:"Van_Throw",d:1.37}]],["SAMP",[{n:"FishingIdle",d:1}]],["SCRATCHING",[{n:"scdldlp",d:.67},{n:"scdlulp",d:.67},{n:"scdrdlp",d:.67},{n:"scdrulp",d:.67},{n:"sclng_l",d:1},{n:"sclng_r",d:1},{n:"scmid_l",d:.47},{n:"scmid_r",d:.47},{n:"scshrtl",d:.2},{n:"scshrtr",d:.2},{n:"sc_ltor",d:.67},{n:"sc_rtol",d:.67}]],["SHAMAL",[{n:"SHAMAL_align",d:.2},{n:"SHAMAL_getin_LHS",d:1.4},{n:"SHAMAL_getout_LHS",d:1.37},{n:"SHAMAL_open",d:.6}]],["SHOP",[{n:"ROB_2Idle",d:1.17},{n:"ROB_Loop",d:2.67},{n:"ROB_Loop_Threat",d:2},{n:"ROB_Shifty",d:5.67},{n:"ROB_StickUp_In",d:.53},{n:"SHP_Duck",d:.67},{n:"SHP_Duck_Aim",d:.33},{n:"SHP_Duck_Fire",d:.83},{n:"SHP_Gun_Aim",d:.63},{n:"SHP_Gun_Duck",d:.5},{n:"SHP_Gun_Fire",d:.87},{n:"SHP_Gun_Grab",d:.87},{n:"SHP_Gun_Threat",d:.83},{n:"SHP_HandsUp_Scr",d:.67},{n:"SHP_Jump_Glide",d:.33},{n:"SHP_Jump_Land",d:.7},{n:"SHP_Jump_Launch",d:.57},{n:"SHP_Rob_GiveCash",d:3.83},{n:"SHP_Rob_HandsUp",d:2.67},{n:"SHP_Rob_React",d:2.67},{n:"SHP_Serve_End",d:5.5},{n:"SHP_Serve_Idle",d:5},{n:"SHP_Serve_Loop",d:4.17},{n:"SHP_Serve_Start",d:1.33},{n:"Smoke_RYD",d:6.67}]],["SHOTGUN",[{n:"shotgun_crouchfire",d:1.47},{n:"shotgun_fire",d:1.47},{n:"shotgun_fire_poor",d:1.5}]],["SILENCED",[{n:"CrouchReload",d:1},{n:"SilenceCrouchfire",d:.93},{n:"Silence_fire",d:.87},{n:"Silence_reload",d:.93}]],["SKATE",[{n:"skate_idle",d:1},{n:"skate_run",d:.83},{n:"skate_sprint",d:.67}]],["SMOKING",[{n:"F_smklean_loop",d:4},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"M_smk_drag",d:3.67},{n:"M_smk_in",d:6.67},{n:"M_smk_loop",d:3.33},{n:"M_smk_out",d:3},{n:"M_smk_tap",d:3}]],["SNIPER",[{n:"WEAPON_sniper",d:1.47}]],["SnM",[{n:"SnM_Caned_Idle_P",d:2},{n:"SnM_Caned_Idle_W",d:2},{n:"SnM_Caned_P",d:1.33},{n:"SnM_Caned_W",d:1.33},{n:"SnM_Cane_Idle_P",d:2},{n:"SnM_Cane_Idle_W",d:2},{n:"SnM_Cane_P",d:1.33},{n:"SnM_Cane_W",d:1.33},{n:"SpankedP",d:1.33},{n:"SpankedW",d:1.33},{n:"Spanked_IdleP",d:1.33},{n:"Spanked_IdleW",d:1.33},{n:"SpankingP",d:1.33},{n:"SpankingW",d:1.33},{n:"Spanking_endP",d:6.67},{n:"Spanking_endW",d:6.67},{n:"Spanking_IdleP",d:1.33},{n:"Spanking_IdleW",d:1.33},{n:"Spanking_SittingIdleP",d:1.33},{n:"Spanking_SittingIdleW",d:1.33},{n:"Spanking_SittingP",d:1},{n:"Spanking_SittingW",d:1}]],["SPRAYCAN",[{n:"spraycan_fire",d:2.33},{n:"spraycan_full",d:4.5}]],["STRIP",[{n:"PLY_CASH",d:1.67},{n:"PUN_CASH",d:3.33},{n:"PUN_HOLLER",d:5},{n:"PUN_LOOP",d:1.93},{n:"strip_A",d:2.07},{n:"strip_B",d:1},{n:"strip_C",d:.97},{n:"strip_D",d:1.9},{n:"strip_E",d:3.33},{n:"strip_F",d:1.03},{n:"strip_G",d:2.27},{n:"STR_A2B",d:4},{n:"STR_B2A",d:.5},{n:"STR_B2C",d:5},{n:"STR_C1",d:6},{n:"STR_C2",d:6},{n:"STR_C2B",d:1},{n:"STR_Loop_A",d:1},{n:"STR_Loop_B",d:2},{n:"STR_Loop_C",d:3}]],["SUNBATHE",[{n:"batherdown",d:3.93},{n:"batherup",d:12.3},{n:"Lay_Bac_in",d:2.33},{n:"Lay_Bac_out",d:3},{n:"ParkSit_M_IdleA",d:3.33},{n:"ParkSit_M_IdleB",d:2.67},{n:"ParkSit_M_IdleC",d:4.33},{n:"ParkSit_M_in",d:2.33},{n:"ParkSit_M_out",d:2},{n:"ParkSit_W_idleA",d:3.33},{n:"ParkSit_W_idleB",d:5},{n:"ParkSit_W_idleC",d:3},{n:"ParkSit_W_in",d:4},{n:"ParkSit_W_out",d:2.67},{n:"SBATHE_F_LieB2Sit",d:1.67},{n:"SBATHE_F_Out",d:2},{n:"SitnWait_in_W",d:4.67},{n:"SitnWait_out_W",d:2.67}]],["SWAT",[{n:"gnstwall_injurd",d:2},{n:"JMP_Wall1m_180",d:1.17},{n:"Rail_fall",d:3},{n:"Rail_fall_crawl",d:5.67},{n:"swt_breach_01",d:5.47},{n:"swt_breach_02",d:5.33},{n:"swt_breach_03",d:4.3},{n:"swt_go",d:1.67},{n:"swt_lkt",d:3},{n:"swt_sty",d:1.17},{n:"swt_vent_01",d:4.73},{n:"swt_vent_02",d:4.43},{n:"swt_vnt_sht_die",d:.67},{n:"swt_vnt_sht_in",d:1.6},{n:"swt_vnt_sht_loop",d:.27},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43}]],["SWEET",[{n:"ho_ass_slapped",d:2},{n:"LaFin_Player",d:26.67},{n:"LaFin_Sweet",d:26.67},{n:"plyr_hndshldr_01",d:4},{n:"sweet_ass_slap",d:2},{n:"sweet_hndshldr_01",d:4},{n:"Sweet_injuredloop",d:2}]],["SWIM",[{n:"Swim_Breast",d:1.3},{n:"SWIM_crawl",d:.9},{n:"Swim_Dive_Under",d:1.07},{n:"Swim_Glide",d:1.47},{n:"Swim_jumpout",d:.33},{n:"Swim_Tread",d:1.3},{n:"Swim_Under",d:1.5}]],["SWORD",[{n:"sword_1",d:.87},{n:"sword_2",d:1.07},{n:"sword_3",d:.8},{n:"sword_4",d:1.1},{n:"sword_block",d:.47},{n:"Sword_Hit_1",d:.83},{n:"Sword_Hit_2",d:1.03},{n:"Sword_Hit_3",d:.87},{n:"sword_IDLE",d:1},{n:"sword_part",d:.67}]],["TANK",[{n:"TANK_align_LHS",d:1.43},{n:"TANK_close_LHS",d:.33},{n:"TANK_doorlocked",d:.53},{n:"TANK_getin_LHS",d:.43},{n:"TANK_getout_LHS",d:1.97},{n:"TANK_open_LHS",d:.3}]],["TATTOOS",[{n:"TAT_ArmL_In_O",d:.83},{n:"TAT_ArmL_In_P",d:.83},{n:"TAT_ArmL_In_T",d:.83},{n:"TAT_ArmL_Out_O",d:.93},{n:"TAT_ArmL_Out_P",d:2.5},{n:"TAT_ArmL_Out_T",d:.93},{n:"TAT_ArmL_Pose_O",d:.83},{n:"TAT_ArmL_Pose_P",d:.83},{n:"TAT_ArmL_Pose_T",d:.83},{n:"TAT_ArmR_In_O",d:.83},{n:"TAT_ArmR_In_P",d:.83},{n:"TAT_ArmR_In_T",d:.83},{n:"TAT_ArmR_Out_O",d:1},{n:"TAT_ArmR_Out_P",d:2.5},{n:"TAT_ArmR_Out_T",d:1},{n:"TAT_ArmR_Pose_O",d:.83},{n:"TAT_ArmR_Pose_P",d:.83},{n:"TAT_ArmR_Pose_T",d:.83},{n:"TAT_Back_In_O",d:.83},{n:"TAT_Back_In_P",d:.83},{n:"TAT_Back_In_T",d:.83},{n:"TAT_Back_Out_O",d:.93},{n:"TAT_Back_Out_P",d:2.5},{n:"TAT_Back_Out_T",d:.93},{n:"TAT_Back_Pose_O",d:.83},{n:"TAT_Back_Pose_P",d:.83},{n:"TAT_Back_Pose_T",d:.83},{n:"TAT_Back_Sit_In_P",d:.83},{n:"TAT_Back_Sit_Loop_P",d:2.67},{n:"TAT_Back_Sit_Out_P",d:.83},{n:"TAT_Bel_In_O",d:.83},{n:"TAT_Bel_In_T",d:.83},{n:"TAT_Bel_Out_O",d:.97},{n:"TAT_Bel_Out_T",d:.97},{n:"TAT_Bel_Pose_O",d:.83},{n:"TAT_Bel_Pose_T",d:.83},{n:"TAT_Che_In_O",d:.83},{n:"TAT_Che_In_P",d:.83},{n:"TAT_Che_In_T",d:.83},{n:"TAT_Che_Out_O",d:.93},{n:"TAT_Che_Out_P",d:2.5},{n:"TAT_Che_Out_T",d:.93},{n:"TAT_Che_Pose_O",d:.83},{n:"TAT_Che_Pose_P",d:.83},{n:"TAT_Che_Pose_T",d:.83},{n:"TAT_Drop_O",d:.5},{n:"TAT_Idle_Loop_O",d:2.67},{n:"TAT_Idle_Loop_T",d:2.67},{n:"TAT_Sit_In_O",d:2.33},{n:"TAT_Sit_In_P",d:2.33},{n:"TAT_Sit_In_T",d:2.33},{n:"TAT_Sit_Loop_O",d:2.67},{n:"TAT_Sit_Loop_P",d:2.67},{n:"TAT_Sit_Loop_T",d:2.67},{n:"TAT_Sit_Out_O",d:2.83},{n:"TAT_Sit_Out_P",d:2.17},{n:"TAT_Sit_Out_T",d:2.83}]],["TEC",[{n:"TEC_crouchfire",d:.97},{n:"TEC_crouchreload",d:1.33},{n:"TEC_fire",d:1.1},{n:"TEC_reload",d:1.5}]],["TRAIN",[{n:"tran_gtup",d:3.17},{n:"tran_hng",d:2.33},{n:"tran_ouch",d:1.17},{n:"tran_stmb",d:2.33}]],["TRUCK",[{n:"TRUCK_ALIGN_LHS",d:.57},{n:"TRUCK_ALIGN_RHS",d:.57},{n:"TRUCK_closedoor_LHS",d:.4},{n:"TRUCK_closedoor_RHS",d:.4},{n:"TRUCK_close_LHS",d:.73},{n:"TRUCK_close_RHS",d:.73},{n:"TRUCK_getin_LHS",d:.6},{n:"TRUCK_getin_RHS",d:.6},{n:"TRUCK_getout_LHS",d:.8},{n:"TRUCK_getout_RHS",d:.8},{n:"TRUCK_jackedLHS",d:1.73},{n:"TRUCK_jackedRHS",d:1.5},{n:"TRUCK_open_LHS",d:.53},{n:"TRUCK_open_RHS",d:.53},{n:"TRUCK_pullout_LHS",d:.9},{n:"TRUCK_pullout_RHS",d:.9},{n:"TRUCK_Shuffle",d:.4}]],["UZI",[{n:"UZI_crouchfire",d:.63},{n:"UZI_crouchreload",d:1.37},{n:"UZI_fire",d:.57},{n:"UZI_fire_poor",d:.53},{n:"UZI_reload",d:1.4}]],["VAN",[{n:"VAN_close_back_LHS",d:.33},{n:"VAN_close_back_RHS",d:.33},{n:"VAN_getin_Back_LHS",d:.6},{n:"VAN_getin_Back_RHS",d:.6},{n:"VAN_getout_back_LHS",d:.63},{n:"VAN_getout_back_RHS",d:.63},{n:"VAN_open_back_LHS",d:.97},{n:"VAN_open_back_RHS",d:.97}]],["VENDING",[{n:"VEND_Drink2_P",d:3.33},{n:"VEND_Drink_P",d:1.33},{n:"vend_eat1_P",d:4.33},{n:"VEND_Eat_P",d:1.67},{n:"VEND_Use",d:2.6},{n:"VEND_Use_pt2",d:.4}]],["VORTEX",[{n:"CAR_jumpin_LHS",d:1},{n:"CAR_jumpin_RHS",d:.93},{n:"vortex_getout_LHS",d:1},{n:"vortex_getout_RHS",d:1}]],["WAYFARER",[{n:"WF_Back",d:.1},{n:"WF_drivebyFT",d:.2},{n:"WF_drivebyLHS",d:.2},{n:"WF_drivebyRHS",d:.2},{n:"WF_Fwd",d:.2},{n:"WF_getoffBACK",d:1.73},{n:"WF_getoffLHS",d:.9},{n:"WF_getoffRHS",d:.9},{n:"WF_hit",d:.03},{n:"WF_jumponL",d:.9},{n:"WF_jumponR",d:.9},{n:"WF_kick",d:1.03},{n:"WF_Left",d:.13},{n:"WF_passenger",d:.03},{n:"WF_pushes",d:.97},{n:"WF_Ride",d:.03},{n:"WF_Right",d:.13},{n:"WF_Still",d:.03}]],["WEAPONS",[{n:"SHP_1H_Lift",d:1},{n:"SHP_1H_Lift_End",d:.33},{n:"SHP_1H_Ret",d:.83},{n:"SHP_1H_Ret_S",d:.33},{n:"SHP_2H_Lift",d:.93},{n:"SHP_2H_Lift_End",d:.33},{n:"SHP_2H_Ret",d:.9},{n:"SHP_2H_Ret_S",d:.33},{n:"SHP_Ar_Lift",d:1},{n:"SHP_Ar_Lift_End",d:.33},{n:"SHP_Ar_Ret",d:1.17},{n:"SHP_Ar_Ret_S",d:.33},{n:"SHP_G_Lift_In",d:.67},{n:"SHP_G_Lift_Out",d:.67},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:2.67}]],["WOP",[{n:"Dance_B1",d:1.13},{n:"Dance_B2",d:1.17},{n:"Dance_B3",d:1.13},{n:"Dance_B4",d:1.17},{n:"Dance_B5",d:1.13},{n:"Dance_B6",d:1.17},{n:"Dance_B7",d:1.13},{n:"Dance_B8",d:1.17},{n:"Dance_B9",d:1.13},{n:"Dance_B10",d:1.17},{n:"Dance_B11",d:1.13},{n:"Dance_B12",d:1.17},{n:"Dance_B13",d:1.13},{n:"Dance_B14",d:1.17},{n:"Dance_B15",d:1.13},{n:"Dance_B16",d:1.17},{n:"Dance_G1",d:1.13},{n:"Dance_G2",d:1.17},{n:"Dance_G3",d:1.13},{n:"Dance_G4",d:1.17},{n:"Dance_G5",d:1.13},{n:"Dance_G6",d:1.17},{n:"Dance_G7",d:1.13},{n:"Dance_G8",d:1.17},{n:"Dance_G9",d:1.13},{n:"Dance_G10",d:1.17},{n:"Dance_G11",d:1.13},{n:"Dance_G12",d:1.17},{n:"Dance_G13",d:1.13},{n:"Dance_G14",d:1.17},{n:"Dance_G15",d:1.13},{n:"Dance_G16",d:1.17},{n:"dance_loop",d:1.17}]],["WUZI",[{n:"CS_Dead_Guy",d:5.07},{n:"CS_Plyr_pt1",d:3.77},{n:"CS_Plyr_pt2",d:9.67},{n:"CS_Wuzi_pt1",d:3.77},{n:"CS_Wuzi_pt2",d:9.67},{n:"Walkstart_Idle_01",d:3.17},{n:"Wuzi_follow",d:3},{n:"Wuzi_Greet_Plyr",d:4},{n:"Wuzi_Greet_Wuzi",d:4},{n:"Wuzi_grnd_chk",d:4},{n:"Wuzi_stand_loop",d:2.67},{n:"Wuzi_Walk",d:1.17}]]]),_t=e=>{const t=ei.get(e.toUpperCase());return typeof t>"u"?!1:t},dt=(e,t)=>{const i=_t(e);if(i)return t==="null"?!0:i.some(a=>a.n===t)},qf=(e,t)=>{const i=_t(e);if(i)return i.find(a=>a.n===t)?.d},de=(e,t)=>{const i=t.replace("-","")==="utf8"?e:A.encodeToBuf(e,t);return[i instanceof Array?"a":"s",i]},ti=(e,t,i)=>{const a=de(i,e.charset);return samp.callNative("SendClientMessage",`ii${a[0]}`,e.id,D(t),a[1])},eI=(e,t,i)=>(e.forEach(a=>ti(a,t,i)),1),ii=(e,t,i)=>{const a=de(i,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${a[0]}`,e.id,t,a[1])},tI=(e,t,i)=>(e.forEach(a=>{ii(a,t,i)}),1),iI=(e,t,i)=>{const{charset:a}=e,{style:r,caption:n,info:s,button1:l,button2:c}=i,[_,d]=de(n||"",a),[,h]=de(s||"",a),[,P]=de(l||"",a),[,S]=de(c||"",a);return!!samp.callNative("ShowPlayerDialog",`iii${_.repeat(4)}`,e.id,t,r,d,h,P,S)},aI=e=>{const[t,i]=samp.callNative("GetPlayerName","iAi",e.id,B.MAX_PLAYER_NAME);return{name:A.decodeFromBuf(A.getValidStr(t),e.charset),ret:i}},rI=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,A.encodeToBuf(t,e.charset)),nI=(e,t,i)=>{const a=A.encodeToBuf(t,i);return samp.callNative("BanEx","ia",e,a)},sI=(e,t="utf8")=>{const[i,a]=de(e,t);return samp.callNative("SendRconCommand",i,a)},lI=(e,t,i,a,r,n,s,l,c,_,d,h,P,S,y,N)=>{const V=A.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",V,i,a,r,n,s,l,c,_,d,h,P,S,y,N)},oI=(e,t,i,a,r,n,s,l,c,_,d,h,P,S,y,N)=>{const V=A.encodeToBuf(e,N);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",V,t,i,a,r,n,s,l,c,_,d,h,P,S,y,d.length,h.length,P.length,S.length)},cI=(e,t,i,a)=>{const r=A.encodeToBuf(i,a);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,r)},_I=(e,t)=>{const[i,a]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:A.decodeFromBuf(A.getValidStr(i),t),ret:a}},dI=(e,t,i,a,r,n,s,l,c,_,d)=>{const h=A.encodeToBuf(a,e),P=A.encodeToBuf(n,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,i,h,r,P,s,l,c,_,d)},hI=(e,t,i="utf8")=>{const[a,r,n,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:a,txdName:A.decodeFromBuf(A.getValidStr(r),i),textureName:A.decodeFromBuf(A.getValidStr(n),i),materialColor:s,ret:l}},uI=(e,t,i)=>{const[a,r,n,s,l,c,_,d,h]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),P=A.decodeFromBuf(a,i),S=A.decodeFromBuf(n,i);return{text:P,materialSize:r,fontFace:S,fontSize:s,bold:l,fontColor:c,backColor:_,textAlignment:d,ret:h}},mI=(e,t,i,a,r,n)=>{const s=A.encodeToBuf(t,n);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,D(i),a,r)},ai=(e,t,i,a,r,n,s,l=!0,c,_,d)=>{const h=A.encodeToBuf(i,e),P=A.encodeToBuf(n,e);return!!samp.callNative("SetObjectMaterialText","iaiiaiiiii",t,h,a,r,P,s,l,D(c),D(_),d)},pI=(e,t,i)=>{const[a,r=0,n,s=0,l=0,c=0,_=0,d=0,h]=samp.callNative("GetObjectMaterialText","iiAiIAiIIIII",e,t,2048,32),P=A.decodeFromBuf(a,i),S=A.decodeFromBuf(n,i);return{text:P,materialSize:r,fontFace:S,fontSize:s,bold:l,fontColor:c,backColor:_,textAlignment:d,ret:h}},ri=(e,t,i,a,r,n,s,l,c=!0,_,d,h)=>{const P=A.encodeToBuf(a,e),S=A.encodeToBuf(s,e);return!!samp.callNative("SetPlayerObjectMaterialText","iiaiiaiiiii",t,i,P,r,n,S,l,c,D(_),D(d),h)},fI=(e,t,i,a)=>{const[r,n=0,s,l=0,c=0,_=0,d=0,h=0,P]=samp.callNative("GetPlayerObjectMaterialText","iiiAiIAiIIIII",e,t,i,2048,32),S=A.decodeFromBuf(r,a),y=A.decodeFromBuf(s,a);return{text:S,materialSize:n,fontFace:y,fontSize:l,bold:c,fontColor:_,backColor:d,textAlignment:h,ret:P}},II=(e,t,i,a,r,n,s,l,c=!1)=>{const _=A.encodeToBuf(t,e);return samp.callNative("Create3DTextLabel","aiffffii",_,D(i),a,r,n,s,l,c)},PI=(e,t,i,a,r,n,s,l,c,_,d)=>{const h=A.encodeToBuf(i,e);return samp.callNative("CreatePlayer3DTextLabel","iaiffffiii",t,h,D(a),r,n,s,l,c,_,d)},gI=(e,t,i,a)=>{const r=A.encodeToBuf(a,e);return!!samp.callNative("Update3DTextLabelText","iia",t,D(i),r)},yI=(e,t,i,a,r)=>{const n=A.encodeToBuf(r,e);return!!samp.callNative("UpdatePlayer3DTextLabelText","iiia",t,i,D(a),n)},SI=(e,t)=>{const[i,a]=samp.callNative("Get3DTextLabelText","iAi",t,144);return{text:A.decodeFromBuf(i,e),buf:i,ret:a}},AI=(e,t,i)=>{const[a,r]=samp.callNative("GetPlayer3DTextLabelText","iiAi",t,i,144);return{text:A.decodeFromBuf(a,e),buf:a,ret:r}},R=Symbol("internalPlayerProps"),te=new Map,ie=new Map,ke=new Map,z=new Map,He=new Map,be=new Map,J=new Map,he=new Map,oe=new Map,Ue=new Map,$=new Map,ue=new Map,ve=new Map,ce=new Map,me=new Map,pe=new Map,fe=new Map,Le=new Map,Ie=new Map,Pe=new Map,Q=new Map,We=new Map,Oe=new Map,we=new Map,q=new Map,ae=new Uint32Array(65536),EI=(e,t)=>{const i=e.length,a=t.length,r=1<<i-1;let n=-1,s=0,l=i,c=i;for(;c--;)ae[e.charCodeAt(c)]|=1<<c;for(c=0;c<a;c++){let _=ae[t.charCodeAt(c)];const d=_|s;_|=(_&n)+n^n,s|=~(_|n),n&=_,s&r&&l++,n&r&&l--,s=s<<1|1,n=n<<1|~(d|s),s&=d}for(c=i;c--;)ae[e.charCodeAt(c)]=0;return l},DI=(e,t)=>{const i=t.length,a=e.length,r=[],n=[],s=Math.ceil(i/32),l=Math.ceil(a/32);for(let y=0;y<s;y++)n[y]=-1,r[y]=0;let c=0;for(;c<l-1;c++){let y=0,N=-1;const V=c*32,H=Math.min(32,a)+V;for(let O=V;O<H;O++)ae[e.charCodeAt(O)]|=1<<O;for(let O=0;O<i;O++){const se=ae[t.charCodeAt(O)],ee=n[O/32|0]>>>O&1,Y=r[O/32|0]>>>O&1,It=se|y,Pt=((se|Y)&N)+N^N|se|Y;let Ve=y|~(Pt|N),Ye=N&Pt;Ve>>>31^ee&&(n[O/32|0]^=1<<O),Ye>>>31^Y&&(r[O/32|0]^=1<<O),Ve=Ve<<1|ee,Ye=Ye<<1|Y,N=Ye|~(It|Ve),y=Ve&It}for(let O=V;O<H;O++)ae[e.charCodeAt(O)]=0}let _=0,d=-1;const h=c*32,P=Math.min(32,a-h)+h;for(let y=h;y<P;y++)ae[e.charCodeAt(y)]|=1<<y;let S=a;for(let y=0;y<i;y++){const N=ae[t.charCodeAt(y)],V=n[y/32|0]>>>y&1,H=r[y/32|0]>>>y&1,O=N|_,se=((N|H)&d)+d^d|N|H;let ee=_|~(se|d),Y=d&se;S+=ee>>>a-1&1,S-=Y>>>a-1&1,ee>>>31^V&&(n[y/32|0]^=1<<y),Y>>>31^H&&(r[y/32|0]^=1<<y),ee=ee<<1|V,Y=Y<<1|H,d=Y|~(O|ee),_=ee&O}for(let y=h;y<P;y++)ae[e.charCodeAt(y)]=0;return S},ni=(e,t)=>{if(e.length<t.length){const i=t;t=e,e=i}return t.length===0?e.length:e.length<=32?EI(e,t):DI(e,t)},CI=(e,t)=>{let i=1/0,a=0;for(let r=0;r<t.length;r++){const n=ni(e,t[r]);n<i&&(i=n,a=r)}return t[a]},ge=new Map,ye=new Map,si=/[^/\s]+/gi,Ke={NOT_EXIST:{code:1,msg:"command does not exist"},REJECTED:{code:2,msg:"An event registered through onCommandText returned false"},PERFORMED:{code:3,msg:"An event registered through onCommandPerformed returned false"},RECEIVED_THROW:{code:4,msg:"An event registered through onCommandReceived throw an error"},RECEIVED_REJECTED:{code:5,msg:"An event registered through onCommandReceived returned false"}},[NI,TI]=u({name:"OnCommandReceived",isNative:!1,throwOnError:!0,beforeEach(e,t,i,a,r,n,s,l,c){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:r,noStrictMainCmd:n,hasStrict:s,hasNoStrict:l,subcommand:c}}}),[bI,vI]=u({name:"OnCommandPerformed",isNative:!1,beforeEach(e,t,i,a,r,n,s,l,c){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:r,noStrictMainCmd:n,hasStrict:s,hasNoStrict:l,subcommand:c}}}),[LI,Xe]=u({name:"OnCommandError",isNative:!1,defaultValue:!1,beforeEach(e,t,i,a,r,n,s,l,c,_){return{player:e,error:t,command:i,cmdText:a,buffer:r,strictMainCmd:n,noStrictMainCmd:s,hasStrict:l,hasNoStrict:c,subcommand:_,getSuggestion(){const d=CI(a,[...ge.keys(),...ye.keys()]),h=ni(a,d);return{suggestion:d,distance:h}}}}}),[OI,wI]=u({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const i=te.get(e);let a=t,r="";return typeof t=="string"?(r=t,a=A.encodeToBuf(r,"utf-8")):r=A.decodeFromBuf(t,i.charset),{player:i,buffer:a,cmdText:r}}}),[GI,RI]=u({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,i){return{player:e,buffer:t,cmdText:i}}});function jI(e){const t=[];let i="";for(let a=0;a<e.length;a++)i+=e[a]+" ",t.push(i.trimEnd());return t.reverse()}OI(({player:e,buffer:t,cmdText:i,next:a})=>{const r=RI(e,t,i);if(r)return r;const n=i.match(si),s=jI(n),l=s.find(N=>ge.has(N)),c=s.map(N=>N.toLowerCase()).find(N=>ye.has(N)),_=!!l,d=!!c,h=n.join(" ");let P=[];const S=[[l,ge,!0],[c,ye,!1]],y=[h,i,t,l,c,_,d,P];if(_||d){const N=S[0][0]||S[1][0];P=h.replace(N,"").trim().split(" ")}else return Xe(e,Ke.NOT_EXIST,...y);try{if(!TI(e,...y))return Xe(e,Ke.RECEIVED_REJECTED,...y)}catch(N){const V=typeof N=="object"?N:{error:N};return Xe(e,{...Ke.RECEIVED_THROW,...V},...y)}for(const[N,V,H]of S){if(!N)continue;const O=V.get(N),[,se]=O;if(!se(e,N,P,i,t,H))return Xe(e,Ke.REJECTED,...y)}return vI(e,h,i,t,l,c,_,d,P)?(a(),!0):Xe(e,Ke.PERFORMED,...y)});function FI(e,t,i,a,r,n){return{player:e,mainCommand:t,subcommand:i,cmdText:a,buffer:r,isStrict:n}}class X{static caseSensitive=!1;constructor(){}static on(t,i){let a=X.caseSensitive,r,n;typeof t=="string"||t instanceof Array?(r=t,n=i):(r=t.command,n=t.run,typeof t.caseSensitive<"u"&&(a=t.caseSensitive));const s=Array.isArray(r)?r:[r],l=s.find(d=>!d.match(si));if(l)return console.log(`error command ${l} format`),()=>{};const c=a?ge:ye,_=s.map(d=>{const h=d.replaceAll("/",""),P=a?h:h.toLowerCase();if(!c.has(P)){const y=u({name:a?"$"+P:P,isNative:!1,beforeEach:FI});c.set(P,y)}const[S]=c.get(P);return[P,S(n)]});return()=>{_.forEach(d=>{const[h,P]=d;P()===0&&c.delete(h)})}}static off(t){(Array.isArray(t)?t:[t]).forEach(i=>{let a=i.replaceAll("/","");ge.has(a)&&(U.has(a)&&U.delete(a),ge.has(a)&&ge.delete(a)),a=a.toLowerCase(),ye.has(a)&&(U.has(a)&&U.delete(a),ye.has(a)&&ye.delete(a))})}static enableCaseSensitive(){X.caseSensitive=!0}static disableCaseSensitive(){X.caseSensitive=!1}static isCaseSensitive(){return X.caseSensitive}static simulate(t,i){return wI(t.id,i)}}const[xI]=u({name:"OnGameModeInit",identifier:""}),[li,VI]=u({name:"OnGameModeInitReal",isNative:!1});xI(()=>{Promise.resolve().then(VI)});const[oi]=u({name:"OnGameModeExit",identifier:""}),[BI]=u({name:"OnIncomingConnection",identifier:"isi",defaultValue:!1,beforeEach(e,t,i){return{playerId:e,ipAddress:t,port:i}}}),[MI]=u({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:A.decodeFromBuf(e)}}}),[kI]=u({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,i){return{ip:A.decodeFromBuf(e),password:A.decodeFromBuf(t),success:!!i,ipBuffer:e,passwordBuffer:t}}}),Se=[],Ge=[],tt=new Map,ht=async e=>{try{return await new Promise((t,i)=>{const a=Se.findIndex(l=>l.name===e);if(a===-1)return;const r=Se[a];function n(l){l.length&&tt.set(e,l),Se.splice(a,1),Ge.push(r),setTimeout(t)}const s=r.load();s instanceof Promise?s.then(n).catch(i):n(s)})}catch(t){throw new Error(`[GameMode]: script ${e} load fail
|
|
3
|
+
err:${t}`)}},ut=async e=>{try{return await new Promise((t,i)=>{const a=Ge.findIndex(c=>c.name===e);if(a===-1)return;const r=Ge[a],n=tt.get(e);n&&(n.forEach(c=>c()),tt.delete(e));function s(){Ge.splice(a,1),Se.push(r),setTimeout(t)}const l=r.unload();l instanceof Promise?l.then(s).catch(i):s()})}catch(t){throw new Error(`[GameMode]: script ${e} unload fail
|
|
4
|
+
${t}`)}},HI=async e=>{await ut(e),await ht(e)},UI=e=>tt.has(e);li(async({next:e})=>{const t=Se.map(i=>i.name);for(const i of t)await ht(i);return e()}),oi(async({next:e})=>{const t=Ge.map(i=>i.name);for(const i of t)await ut(i);return e()});const WI=function(e,...t){if(Se.some(i=>i.name===e.name)||Ge.some(i=>i.name===e.name))throw new Error(`[GameMode]: script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),Se.push(e)};class x{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=li;static onExit=oi;static onIncomingConnection=BI;static onRconCommand=MI;static onRconLoginAttempt=kI;static use(t,...i){return WI(t,...i),this}static loadUseScript=ht;static reloadUseScript=HI;static unloadUseScript=ut;static isUseScriptLoaded=UI;static enableCmdCaseSensitive=X.enableCaseSensitive;static disableCmdCaseSensitive=X.disableCaseSensitive;static isCmdCaseSensitive=X.isCaseSensitive;static supportAllNickname(){for(let t=0;t<=255;t++)this.isNickNameCharacterAllowed(t)||this.allowNickNameCharacter(t,!0)}static setWeather(t){if(t<0||t>255)throw new Error("[GameMode]: The valid weather value is only 0 to 255");return Xs(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return Us(t)}static getWorldTime=Ws;static setTeamCount=ul;static sendRconCommand=sI;static addPlayerClass=ml;static addPlayerClassEx=pl;static createExplosion(t,i,a,r,n){if(r<0||r>13)throw new Error("[GameMode]: The valid explosion type value is only 0 to 13");return zs(t,i,a,r,n)}static manualVehicleEngineAndLights=bd;static blockIpAddress=Rl;static unBlockIpAddress=jl;static getServerTickRate=al;static addSimpleModel(t,i,a,r,n){return this.checkSimpleModel(t,i,a,r,n)?qp(t,i,a,r,n):!1}static addSimpleModelTimed(t,i,a,r,n,s,l){return this.checkSimpleModel(t,i,a,r,n,s,l)?ef(t,i,a,r,n,s,l):!1}static checkSimpleModel(t,i,a,r,n,s,l){if(t<-1)throw new Error("[GameMode]: AddSimpleModel - Error virtual world");if(i<0)throw new Error("[GameMode]: AddSimpleModel - Error baseId");if(a>B.MAX_CUSTOM_OBJECT_ID||a<B.MIN_CUSTOM_OBJECT_ID)throw new Error("[GameMode]: AddSimpleModel - Error newId range");if(r.trim().length===0)throw new Error("[GameMode]: AddSimpleModel - Empty dffName");if(n.trim().length===0)throw new Error("[GameMode]: AddSimpleModel - Empty txdName");if(s!==void 0&&(s<0||s>23))throw new Error("[GameMode]: AddSimpleModel - Error time on range");if(l!==void 0&&(l<0||l>23))throw new Error("[GameMode]: AddSimpleModel - Error time off range");return!0}static isValidCustomModel=qt;static getCustomModePath=cf;static getConsoleVarAsString(t,i="utf8"){const{consoleVarBuf:a,ret:r}=bs(t);return{consoleVar:A.decodeFromBuf(A.getValidStr(a),i),ret:r}}static getRestartTime=js;static setRestartTime=Rs;static allowAdminTeleport=As;static isAdminTeleportAllowed=Es;static allowInteriorWeapons=Ds;static areInteriorWeaponsAllowed=Cs;static areAllAnimationsEnabled=Ns;static enableAllAnimations=Ts;static enableStuntBonusForAll=nl;static enableVehicleFriendlyFire=Ks;static enableZoneNames=Js;static disableInteriorEnterExits=Qs;static setGameModeText=Ms;static getGravity=Zs;static setGravity=Ys;static showNameTags=ks;static disableNameTagLOS=el;static usePlayerPedAnims=$s;static showPlayerMarkers=Hs;static limitPlayerMarkerRadius=il;static limitGlobalChatRadius=tl;static setNameTagDrawDistance=qs;static findModelFileNameFromCRC=af;static findTextureFileNameFromCRC=rf;static getWeaponName=cl;static setObjectsDefaultCameraCollision=Qp;static vectorSize=ct;static clearBanList=Vl;static isBanned=Bl;static isValidNickName=ps;static allowNickNameCharacter=fs;static isNickNameCharacterAllowed=Is;static addServerRule=Ps;static setServerRule=gs;static isValidServerRule=ys;static removeServerRule=Ss;static getWeaponSlot=ol;static getAvailableClasses=_l;static getPlayerClass=dl;static editPlayerClass=hl;static toggleChatTextReplacement=sl;static chatTextReplacementToggled=ll;static getConsoleVarAsInt=vs;static getConsoleVarAsBool=Ls;static getWeather=Os;static getServerRuleFlag=ws;static setServerRuleFlags=Gs}const C={skip:!1};x.onInit(({next:e})=>(C.skip=!1,e())),x.onExit(({next:e})=>(C.skip=!0,e()));class g{sourceInfo=null;_id=o.OBJECT_ID;_player=null;get id(){return this._id}constructor(t,i){if(typeof t=="number"){i&&(this._player=i);const a=g.getInstance(t,i);if(a)return a;this._id=t,this.isGlobal()&&Pe.set(this._id,this)}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Error("[ObjectMp]: Unable to create with only id");if(this.id!==o.OBJECT_ID)throw new Error("[ObjectMp]: Unable to create again");const{modelId:t,x:i,y:a,z:r,rx:n,ry:s,rz:l,drawDistance:c=0}=this.sourceInfo;if(this.isGlobal()){if(this._id=g.__inject__CreateObject(t,i,a,r,n,s,l,c),this.id===o.OBJECT_ID||g.getInstances().length===B.MAX_OBJECTS)throw new Error("[ObjectMp]: Unable to create object, maximum has been reached");return Pe.set(this._id,this),this}const _=this.getPlayerId();if(_===o.PLAYER_ID)return this;const d=this.getPlayer();if(this._id=g.__inject__CreatePlayerObject(_,t,i,a,r,n,s,l,c),this.id===o.OBJECT_ID||g.getInstances(d).length===B.MAX_OBJECTS)throw new Error("[ObjectMp]: Unable to create player object, maximum has been reached");return Q.has(d)||Q.set(d,new Map),Q.get(this.getPlayer()).set(this.id,this),this}destroy(){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Unable to destroy the object before create");if(this.isGlobal())C.skip||g.__inject__DestroyObject(this.id),Pe.delete(this.id);else{const t=this.getPlayerId();if(t===o.PLAYER_ID)return this;const i=this.getPlayer();if(C.skip||g.__inject__DestroyPlayerObject(t,this.id),Q.has(i)){const a=Q.get(i);a.delete(this.id),a.size===0&&Q.delete(i)}}return this._id=o.OBJECT_ID,this}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:o.PLAYER_ID}isValid(){return C.skip&&this.id!==o.OBJECT_ID?!0:this.isGlobal()?g.isValid(this.id):g.isValid(this.id,this.getPlayerId())}getModel(){return this.sourceInfo?this.sourceInfo.modelId:this.isGlobal()?g.__inject__GetObjectModel(this.id):g.__inject__GetPlayerObjectModel(this.getPlayerId(),this.id)}getPos(){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Cannot get position before create");return this.isGlobal()?g.__inject__GetObjectPos(this.id):g.__inject__GetPlayerObjectPos(this.getPlayerId(),this.id)}setPos(t,i,a){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Cannot set position before create");return this.isGlobal()?g.__inject__SetObjectPos(this.id,t,i,a):g.__inject__SetPlayerObjectPos(this.getPlayerId(),this.id,t,i,a)}getRot(){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Cannot get rotation before create");return this.isGlobal()?g.__inject__GetObjectRot(this.id):g.__inject__GetPlayerObjectRot(this.getPlayerId(),this.id)}setRot(t,i,a){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Cannot set rotation before create");return this.isGlobal()?g.__inject__SetObjectRot(this.id,t,i,a):g.__inject__SetPlayerObjectRot(this.getPlayerId(),this.id,t,i,a)}move(t,i,a,r,n,s,l){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Cannot start moving before create");if(r<0)throw new Error("[ObjectMp]: speed must not be less than 0");if(r>120*1e3)throw new Error("[ObjectMp]: speed more than 120 seconds, warn if it's not intentional");return this.isMoving()&&this.stop(),this.isGlobal()?g.__inject__MoveObject(this.id,t,i,a,r,n,s,l):g.__inject__MovePlayerObject(this.getPlayerId(),this.id,t,i,a,r,n,s,l)}stop(){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Cannot stop moving before create");return this.isGlobal()?g.__inject__StopObject(this.id):g.__inject__StopPlayerObject(this.getPlayerId(),this.id)}isMoving(){return this.id===o.OBJECT_ID?!1:this.isGlobal()?g.__inject__IsObjectMoving(this.id):g.__inject__IsPlayerObjectMoving(this.getPlayerId(),this.id)}attachCamera(t){if(this.id===o.OBJECT_ID)return!1;if(this.isGlobal()){if(!t)throw new Error("[ObjectMp]: Cannot attachCamera without player");return g.__inject__AttachCameraToObject(t.id,this.id)}return g.__inject__AttachCameraToPlayerObject(this.getPlayerId(),this.id)}attachToObject(t,i,a,r,n,s,l,c=!0){if(this.id===o.OBJECT_ID||t.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Cannot attachToObject before both are created");if(this.isGlobal()&&t.isGlobal())return g.__inject__AttachObjectToObject(this.id,t.id,i,a,r,n,s,l,c);if(!this.isGlobal()&&!t.isGlobal())return g.__inject__AttachPlayerObjectToObject(this.getPlayerId(),this.id,t.id,i,a,r,n,s,l,c);throw new Error("[ObjectMp]: Cannot attachToObject with global and player object")}attachToPlayer(t,i,a,r,n,s,l){if(this.id===o.OBJECT_ID)return!1;if(this.isGlobal()){if(!t)throw new Error("[ObjectMp]: Cannot attachCamera without player");return g.__inject__AttachObjectToPlayer(this.id,t.id,i,a,r,n,s,l)}return g.__inject__AttachPlayerObjectToPlayer(this.getPlayerId(),this.id,t.id,i,a,r,n,s,l)}attachToVehicle(t,i,a,r,n,s,l){return this.id===o.OBJECT_ID?!1:this.isGlobal()?g.__inject__AttachObjectToVehicle(this.id,t.id,i,a,r,n,s,l):g.__inject__AttachPlayerObjectToVehicle(this.getPlayerId(),this.id,t.id,i,a,r,n,s,l)}edit(t){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Unable to edit before create");return t.endObjectEditing(),this.isGlobal()?g.__inject__BeginObjectEditing(t.id,this.id):g.__inject__BeginPlayerObjectEditing(t.id,this.id)}isMaterialUsed(t){return this.id===o.OBJECT_ID?!1:this.isGlobal()?g.__inject__IsObjectMaterialSlotUsed(this.id,t):g.__inject__IsPlayerObjectMaterialSlotUsed(this.getPlayerId(),this.id,t)}getMaterial(t){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Unable to get material before create");return this.isGlobal()?g.__inject__GetObjectMaterial(this.id,t):g.__inject__GetPlayerObjectMaterial(this.getPlayerId(),this.id,t)}setMaterial(t,i,a,r,n="#000"){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Unable to set material before create");return this.isGlobal()?g.__inject__SetObjectMaterial(this.id,t,i,a,r,D(n)):g.__inject__SetPlayerObjectMaterial(this.getPlayerId(),this.id,t,i,a,r,D(n))}getMaterialText(t){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Unable to get material text before create");return this.isGlobal()?pI(this.id,t,this.sourceInfo?.charset||"utf8"):fI(this.getPlayerId(),this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,i,a,r=nt.SIZE_256x128,n="Arial",s=24,l=!0,c="#fff",_="#000",d=0){if(this.id===o.OBJECT_ID)throw new Error("[ObjectMp]: Unable to set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),this.isGlobal()?ai(t||"utf8",this.id,i,a,r,n,s,l,D(c),D(_),d):ri(t||"utf8",this.getPlayerId(),this.id,i,a,r,n,s,l,D(c),D(_),d)}static getPlayerCameraTarget(t,i=!0){if(i){const r=g.__inject__GetPlayerCameraTargetObject(t.id);return r===o.OBJECT_ID?void 0:Pe.get(r)}const a=g.__inject__GetPlayerCameraTargetPlayerObject(t.id);if(a!==o.OBJECT_ID)return g.getPlayersInstances().map(([,r])=>r).flat().find(r=>r.id===a)}setNoCameraCollision(){return this.id===o.OBJECT_ID?!1:this.isGlobal()?g.__inject__SetObjectNoCameraCollision(this.id):g.__inject__SetPlayerObjectNoCameraCollision(this.getPlayerId(),this.id)}isNoCameraCol(){return this.id===o.OBJECT_ID?!1:this.isGlobal()?g.__inject__IsObjectNoCameraCol(this.id):g.__inject__IsPlayerObjectNoCameraCol(this.getPlayerId(),this.id)}hasCameraCollision(){return!this.isNoCameraCol()}getDrawDistance(){return this.id===o.OBJECT_ID?0:this.isGlobal()?g.__inject__GetObjectDrawDistance(this.id):g.__inject__GetPlayerObjectDrawDistance(this.getPlayerId(),this.id)}setMoveSpeed(t){return this.id===o.OBJECT_ID?!1:this.isGlobal()?g.__inject__SetObjectMoveSpeed(this.id,t):g.__inject__SetPlayerObjectMoveSpeed(this.getPlayerId(),this.id,t)}getMoveSpeed(){return this.id===o.OBJECT_ID?0:this.isGlobal()?g.__inject__GetObjectMoveSpeed(this.id):g.__inject__GetPlayerObjectMoveSpeed(this.getPlayerId(),this.id)}getMovingTargetPos(){return this.isGlobal()?g.__inject__GetObjectMovingTargetPos(this.id):g.__inject__GetPlayerObjectMovingTargetPos(this.getPlayerId(),this.id)}getSyncRotation(){return this.isGlobal()?g.__inject__GetObjectSyncRotation(this.id):g.__inject__GetPlayerObjectSyncRotation(this.getPlayerId(),this.id)}getAttachedOffset(){return this.isGlobal()?g.__inject__GetObjectAttachedOffset(this.id):g.__inject__GetPlayerObjectAttachedOffset(this.getPlayerId(),this.id)}getTarget(){return this.isGlobal()?g.__inject__GetObjectTarget(this.id):g.__inject__GetPlayerObjectTarget(this.getPlayerId(),this.id)}static isValid(t,i){return i===o.PLAYER_ID?!1:typeof i>"u"?g.__inject__IsValidObject(t):g.__inject__IsValidPlayerObject(i,t)}static getInstance(t,i){if(!i)return Pe.get(t);if(i.id!==o.PLAYER_ID)return Q.get(i)?.get(t)}static getInstances(t){return t?t.id===o.PLAYER_ID?[]:[...Q.get(t)?.values()||[]]:[...Pe.values()]}static getPlayersInstances(){return Array.from(Q.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__CreateObject=Op;static __inject__CreatePlayerObject=Af;static __inject__DestroyObject=Kp;static __inject__DestroyPlayerObject=Of;static __inject__SetObjectMaterialText=ai;static __inject__SetPlayerObjectMaterialText=ri;static __inject__SetObjectNoCameraCollision=Hp;static __inject__SetPlayerObjectNoCameraCollision=vf;static __inject__IsObjectNoCameraCol=Up;static __inject__IsPlayerObjectNoCameraCol=gf;static __inject__GetObjectDrawDistance=Ap;static __inject__GetPlayerObjectDrawDistance=_f;static __inject__SetObjectMoveSpeed=Dp;static __inject__SetPlayerObjectMoveSpeed=df;static __inject__GetObjectMoveSpeed=Ep;static __inject__GetPlayerObjectMoveSpeed=hf;static __inject__GetObjectMovingTargetPos=Cp;static __inject__GetPlayerObjectMovingTargetPos=mf;static __inject__GetObjectSyncRotation=bp;static __inject__GetPlayerObjectSyncRotation=ff;static __inject__GetObjectAttachedOffset=Tp;static __inject__GetPlayerObjectAttachedOffset=pf;static __inject__GetObjectTarget=Np;static __inject__GetPlayerObjectTarget=uf;static __inject__IsValidObject=Wp;static __inject__IsValidPlayerObject=Lf;static __inject__GetPlayerCameraTargetObject=h_;static __inject__GetPlayerCameraTargetPlayerObject=yf;static __inject__GetObjectModel=kp;static __inject__GetPlayerObjectModel=bf;static __inject__GetObjectPos=Vp;static __inject__GetPlayerObjectPos=Cf;static __inject__GetObjectRot=Mp;static __inject__GetPlayerObjectRot=Tf;static __inject__SetObjectPos=xp;static __inject__SetPlayerObjectPos=Df;static __inject__SetObjectRot=Bp;static __inject__SetPlayerObjectRot=Nf;static __inject__MoveObject=Xp;static __inject__MovePlayerObject=wf;static __inject__SetObjectMaterial=$p;static __inject__SetPlayerObjectMaterial=Ff;static __inject__StopObject=Zp;static __inject__StopPlayerObject=Gf;static __inject__IsObjectMoving=Yp;static __inject__IsPlayerObjectMoving=Rf;static __inject__AttachCameraToObject=I_;static __inject__AttachCameraToPlayerObject=P_;static __inject__AttachObjectToPlayer=jp;static __inject__AttachObjectToObject=Rp;static __inject__AttachPlayerObjectToObject=Gp;static __inject__AttachPlayerObjectToPlayer=jf;static __inject__AttachObjectToVehicle=wp;static __inject__AttachPlayerObjectToVehicle=Ef;static __inject__BeginObjectEditing=zp;static __inject__BeginPlayerObjectEditing=Sf;static __inject__EndObjectEditing=Qt;static __inject__GetObjectMaterial=Lp;static __inject__GetPlayerObjectMaterial=Pf;static __inject__IsObjectMaterialSlotUsed=vp;static __inject__IsPlayerObjectMaterialSlotUsed=If}const[ci]=u({name:"OnClientCheckResponse",identifier:"iiii",beforeEach(e,t,i,a){return{player:I.getInstance(e),actionId:t,memAddr:i,data:a}}}),[KI,XI]=u({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,i){return{player:e,newLocale:t,oldLocale:i}}}),[ZI,YI]=u({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,i){return{player:e,newCharset:t,oldCharset:i}}});class I{constructor(t){if(this.id=t,t<0||t>=B.MAX_PLAYERS)throw new Error(`Invalid player ID: ${t} (valid range: 0-${B.MAX_PLAYERS-1})`);const i=I.getInstance(t);if(i)return i;te.set(t,this)}static MAX_CHECK_ANDROID_DELAY=10;static SKIP_CHECK_ANDROID=!1;_charset="ISO-8859-1";_locale="en_US";[R]={isAndroid:!0,lastDrunkLevel:0,lastFps:0,lastUpdateTick:0,lastUpdateFpsTick:0,isPaused:!1,isRecording:!1};get lastDrunkLevel(){return this[R].lastDrunkLevel}get lastFps(){return this[R].lastFps}get lastUpdateTick(){return this[R].lastUpdateTick}get lastUpdateFpsTick(){return this[R].lastUpdateFpsTick}get isPaused(){return this[R].isPaused}get isRecording(){return this[R].isRecording}get charset(){return this._charset}set charset(t){const i=this._charset;this._charset=t,YI(this,t,i)}get locale(){return this._locale}set locale(t){const i=this._locale;this._locale=t,XI(this,t,i)}sendClientMessage(t,i){return ti(this,t,i)}static sendClientMessageToAll(t,i){eI(I.getInstances(),t,i)}sendMessageToPlayer(t,i){return ii(t,this.id,i)}sendMessageToAll(t){return tI(I.getInstances(),this.id,t)}isNpc(){return yo(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return Uo(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return Wo(this.id,t)}allowTeleport(t){return ho(this.id,t)}isTeleportAllowed(){return uo(this.id)}enableCameraTarget(t){return d_(this.id,t)}enableStuntBonus(t){return kc(this.id,t)}getInterior(){return Lo(this.id)}setInterior(t){return vo(this.id,t)}showNameTag(t,i){return i_(this.id,t.id,i)}setColor(t){return Ko(this.id,t)}getColor(){return Xo(this.id)}setMapIcon(t,i,a,r,n,s,l){return a_(this.id,t,i,a,r,n,s,l)}removeMapIcon(t){return r_(this.id,t)}setMarker(t,i){e_(this.id,t.id,i)}getMarker(t){return t_(this.id,t.id)}resetMoney(){return ec(this.id)}getMoney(){return tc(this.id)}giveMoney(t){return qo(this.id,t)}resetWeapons(){return Jo(this.id)}spawn(){return Il(this.id)}setHealth(t){return Oo(this.id,t)}getHealth(){return wo(this.id)}toggleClock(t){return oc(this.id,t)}toggleControllable(t){return Oc(this.id,t)}toggleSpectating(t){return Xc(this.id,t)}spectatePlayer(t,i=at.NORMAL){return Zc(this.id,t.id,i)}spectateVehicle(t,i=at.NORMAL){return Yc(this.id,t.id,i)}forceClassSelection(){return _c(this.id)}kick(){return Ll(this.id)}ban(){return Ol(this.id)}banEx(t,i){return nI(this.id,t,i)}isAdmin(){return bl(this.id)}isInRangeOfPoint(t,i,a,r){return No(this.id,t,i,a,r)}isStreamedIn(t){return bo(this.id,t.id)}setSkin(t,i=!1){return!i&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===yt.DUCK?!1:Zo(this.id,t)}getSkin(){return Yo(this.id)}isInAnyVehicle(){return $c(this.id)}getSpecialAction(){return Fc(this.id)}setSpecialAction(t){return xc(this.id,t)}setScore(t){return ko(this.id,t)}getScore(){return Ho(this.id)}getPing(){return ac(this.id)||0}setPos(t,i,a){return So(this.id,t,i,a)}getPos(){return Eo(this.id)}isSpectating(){return this.getState()===$e.SPECTATING}isWasted(){return this.getState()===$e.WASTED}getState(){return ic(this.id)}getVersion(){return Hl(this.id)}setVirtualWorld(t){return Bc(this.id,t)}getVirtualWorld(){return Mc(this.id)}removeFromVehicle(){return Lc(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return dc(this.id,t)}getWantedLevel(){return hc(this.id)}setFacingAngle(t){return Do(this.id,t)}getFacingAngle(){return Co(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return cc(this.id,t)}getWeather(){return Xl(this.id)}setTime(t,i){if(t<0||t>23)throw new Error("[Player]: The valid hour value is only 0 to 23");if(i<0||i>59)throw new Error("[Player]: The valid minute value is only 0 to 59");return sc(this.id,t,i)}getTime(){return lc(this.id)}removeBuilding(t,i,a,r,n){return Cc(this.id,t,i,a,r,n)}setTeam(t){t<0||t>o.NO_TEAM||Bo(this.id,t)}getTeam(){return Mo(this.id)}setSkillLevel(t,i){if(i<0||i>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return Sc(this.id,t,i)}getName(){return aI(this)}setName(t){return rI(this,t)}setVelocity(t,i,a){return pc(this.id,t,i,a)}getVelocity(){return fc(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:r}=this.getVelocity();return ct(i,a,r)*t}getKeys(){return nc(this.id)}getIp(){return kl(this.id)}getFightingStyle(){return mc(this.id)}setFightingStyle(t){return uc(this.id,t)}setArmour(t){return Go(this.id,t)}getArmour(){return Ro(this.id)}setCameraBehind(){return l_(this.id)}setCameraPos(t,i,a){return n_(this.id,t,i,a)}setCameraLookAt(t,i,a,r=Je.CUT){return s_(this.id,t,i,a,r)}getCameraAspectRatio(){return p_(this.id)}getCameraFrontVector(){return c_(this.id)}getCameraMode(){return __(this.id)}getCameraPos(){return o_(this.id)}getCameraTargetPlayer(){const t=m_(this.id);return I.getInstances().find(i=>i.id===t)}getCameraTargetVehicle(){const t=u_(this.id);return[...ie.values()].find(i=>i.id===t)}getCameraZoom(){return f_(this.id)}playAudioStream(t,i=0,a=0,r=0,n=5){let s=!1;return(i!==0||a!==0||r!==0)&&(s=!0),Pc(this.id,t,i,a,r,n,s)}stopAudioStream(){return gc(this.id)}playSound(t,i=0,a=0,r=0){return wc(this.id,t,i,a,r)}static getMaxPlayers(){return Bs()}playCrimeReport(t,i){if(i<3||i>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Ic(this.id,t.id,i)}interpolateCameraPos(t,i,a,r,n,s,l,c=Je.CUT){return g_(this.id,t,i,a,r,n,s,l,c)}interpolateCameraLookAt(t,i,a,r,n,s,l,c=Je.CUT){return y_(this.id,t,i,a,r,n,s,l,c)}createExplosion(t,i,a,r,n){if(r<0||r>13)throw new Error("[Player]: The valid explosion type value is only 0 to 13");return Uc(this.id,t,i,a,r,n)}static isConnected(t){return zc(t)}isConnected(){return I.isConnected(this.id)}disableRemoteVehicleCollisions(t){return Vc(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=bc(this.id);return[...ie.values()].find(i=>i.id===t)}getVehicleSeat(){return vc(this.id)}getSurfingVehicle(){const t=Ac(this.id);if(t!==o.VEHICLE_ID)return[...ie.values()].find(i=>i.id===t)}applyAnimation(t,i,a=4.1,r=!1,n=!0,s=!0,l=!1,c=0,_=!1){if(!dt(t,i))throw new Error(`[Player]: Invalid anim library or name ${t} ${i}`);return Gc(this.id,t,i,a,r,n,s,l,c,+_)}clearAnimations(t=!1){return Rc(this.id,t)}getAnimationIndex(){return jc(this.id)}getAnimationName(t=this.getAnimationIndex()){const[i,a]=rl(t);return{index:t,animLib:i,animName:a}}setShopName(t){return yc(this.id,t)}setPosFindZ(t,i,a){return Ao(this.id,t,i,a)}setWorldBounds(t,i,a,r){return Qc(this.id,t,i,a,r)}clearWorldBounds(){return qc(this.id)}setChatBubble(t,i,a,r,n=this.charset){return mI(this.id,t,i,a,r,n)}getDistanceFromPoint(t,i,a){return To(this.id,t,i,a)}getCustomSkin(){return Hc(this.id)}getTargetPlayer(){const t=Vo(this.id);if(t!==o.PLAYER_ID)return I.getInstances().find(i=>i.id===t)}getLastShotVectors(){return Nc(this.id)}getWeapon(){return rc(this.id)}getWeaponData(t){return Qo(this.id,t)}getWeaponState(){return xo(this.id)}giveWeapon(t,i){return zo(this.id,t,i)}setAmmo(t,i){return jo(this.id,t,i)}getAmmo(){return Fo(this.id)}setArmedWeapon(t){return $o(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(o.PLAYER_ID,o.PLAYER_ID,St.CONNECT)}sendDeathMessage(t,i){return Vs(t===o.PLAYER_ID?t:t.id,this.id,i)}sendDeathMessageToPlayer(t,i,a){return Po(this.id,t===o.PLAYER_ID?t:t.id,i===o.PLAYER_ID?i:i.id,a)}setSpawnInfo(t,i,a,r,n,s,l,c,_,d,h,P){return t<0||t>o.NO_TEAM||i<0||i>311||i===74||c<0||d<0||P<0?!1:fl(this.id,t,i,a,r,n,s,l,c,_,d,h,P)}redirectDownload(t){return tf(this.id,t)}sendClientCheck(t,i,a,r){const n=[2,5,69,70,71,72];if(!n.includes(t))throw new Error(`[Player]: sendClientCheck valid types are ${n.toString()}`);return new Promise((s,l)=>{if(this.isPaused)return l("[Player]: An attempt to check the player client response, but the player paused the game");const c="[Player]: An attempt to check the player client response timed out",_=this.getPing(),d=(_>=200?0:_)+200;let h=null;const P=ci(({player:S,actionId:y,memAddr:N,data:V,next:H})=>(S!==this||(h&&(clearTimeout(h),h=null),s({actionId:y,memAddr:N,data:V})),H()));h=setTimeout(()=>{P(),l(c)},d),xl(this.id,t,i,a,r)})}selectTextDraw(t){Rm(this.id,t)}cancelSelectTextDraw(){jm(this.id)}beginObjectSelecting(){return Jp(this.id)}endObjectEditing(){return Qt(this.id)}getSurfingObject(){const t=Ec(this.id);if(t!==o.OBJECT_ID)return g.getInstance(t)}getSurfingPlayerObject(){const t=Dc(this.id);if(t!==o.OBJECT_ID)return g.getInstance(t,this)}isAttachedObjectSlotUsed(t){return of(this.id,t)}editAttachedObject(t){return Fp(this.id,t)}setAttachedObject(t,i,a,r=0,n=0,s=0,l=0,c=0,_=0,d=1,h=1,P=1,S=0,y=0){return this.isAttachedObjectSlotUsed(t)?0:sf(this.id,t,i,a,r,n,s,l,c,_,d,h,P,S,y)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?lf(this.id,t):!1}getAnimationFlags(){return samp.callNative("GetPlayerAnimationFlags","i",this.id)}getLastSyncedTrailerID(){return samp.callNative("GetPlayerLastSyncedTrailerID","i",this.id)}getLastSyncedVehicleID(){return samp.callNative("GetPlayerLastSyncedVehicleID","i",this.id)}toggleWidescreen(t){return Ul(this.id,t)}isWidescreenToggled(){return Wl(this.id)}getSpawnInfo(){return Pl(this.id)}getSkillLevel(t){return Kl(this.id,t)}isCheckpointActive(){return Zt(this.id)}getCheckpoint(){return Yt(this.id)}isRaceCheckpointActive(){return zt(this.id)}getRaceCheckpoint(){return Jt(this.id)}getWorldBounds(){return Zl(this.id)}isInModShop(){return hh(this.id)}getSirenState(){return uh(this.id)}getLandingGearState(){return mh(this.id)}getHydraReactorAngle(){return ph(this.id)}getTrainSpeed(){return fh(this.id)}getZAim(){return Yl(this.id)}getSurfingOffsets(){return zl(this.id)}getRotationQuat(){return Jl(this.id)}getDialogID(){return $l(this.id)}getSpectateID(){return Ql(this.id)}getSpectateType(){return ql(this.id)}getRawIp(){return Ml(this.id)}setGravity(t){return eo(this.id,t)}getGravity(){return to(this.id)}setAdmin(t){return vl(this.id,t)}isSpawned(){return io(this.id)}isControllable(){return ao(this.id)}isCameraTargetEnabled(){return ro(this.id)}toggleGhostMode(t){return no(this.id,t)}getGhostMode(){return so(this.id)}getBuildingsRemoved(){return lo(this.id)}getAttachedObject(t){return nf(this.id,t)}removeWeapon(t){return oo(this.id,t)}isUsingOfficialClient(){return _o(this.id)}allowWeapons(t){return mo(this.id,t)}areWeaponsAllowed(){return po(this.id)}gpci(t=this.charset){return Fl(this.id,t)}isCuffed(){return S_(this.id)}isInDriveByMode(){return A_(this.id)}isAndroid(){return this.isConnected()&&this[R].isAndroid}isPC(){return this.isConnected()&&!this[R].isAndroid}isUsingOmp(){return E_(this.id)}simulateCommand(t){return X.simulate(this,t)}static getInstance(t){return te.get(t)}static getInstances(){return[...te.values()]}}const[_i]=u({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,i,a,r){const n=I.getInstance(e),s=A.decodeFromBuf(r,n.charset);return{player:n,dialogId:t,response:i,listItem:a,buffer:r,inputText:s}}});_i(({next:e,player:t,dialogId:i,response:a,listItem:r,buffer:n,inputText:s})=>{const l=M.waitingQueue.get(t);return!l||l.showId!==i||l.resolve({response:a,listItem:r,buffer:n,inputText:s}),e()});class M{_id=-1;static showingIds=[];static maxDialogId=32767;dialog;static waitingQueue=new WeakMap;constructor(t={style:gt.MSGBOX,caption:"",info:"",button1:"",button2:""}){this.dialog=t}get style(){return this.dialog.style}set style(t){this.dialog.style=t}get caption(){return this.dialog.caption}set caption(t){this.dialog.caption=t}get info(){return this.dialog.info}set info(t){this.dialog.info=t}get button1(){return this.dialog.button1}set button1(t){this.dialog.button1=t}get button2(){return this.dialog.button2}set button2(t){this.dialog.button2=t}static delDialogTask(t,i=!1){const a=M.waitingQueue.get(t);if(!a)return!1;i&&a.reject("[Dialog]: player timeout does not respond or second request show dialog"),M.waitingQueue.delete(t);const r=M.showingIds.indexOf(a.showId);return r>-1&&M.showingIds.splice(r,1),!0}show(t){return new Promise((i,a)=>{for(M.close(t);this._id===-1||M.showingIds.includes(this._id);){if(M.showingIds.length>=M.maxDialogId){this._id=-1;break}this._id=Math.floor(Math.random()*(M.maxDialogId+1))}if(this._id===-1){a("[Dialog]: The maximum number of dialogs is reached");return}M.showingIds.push(this._id),M.waitingQueue.set(t,{resolve:i,reject:a,showId:this._id}),M.__inject__ShowPlayerDialog(t,this._id,this.dialog)}).catch(i=>Promise.reject(i)).finally(()=>M.delDialogTask(t))}static close(t){M.delDialogTask(t,!0),co(t.id)}static __inject__ShowPlayerDialog=iI}const[di]=u({name:"OnPlayerConnect",identifier:"i",beforeEach(e){const t=new I(e);return te.set(e,t),M.close(t),{player:t}}}),[hi]=u({name:"OnPlayerDisconnect",identifier:"ii",beforeEach(e,t){return{player:te.get(e),reason:t}},afterEach({player:e}){te.delete(e.id)}}),[ui]=u({name:"OnPlayerUpdate",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),[zI]=u({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const i=I.getInstance(e);return{player:i,text:A.decodeFromBuf(t,i.charset),buffer:t}}}),[JI]=u({name:"OnPlayerEnterExitModShop",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),enterExit:t,interior:i}}}),[$I]=u({name:"OnPlayerClickMap",identifier:"ifff",defaultValue:!1,beforeEach(e,t,i,a){return{player:I.getInstance(e),fX:t,fY:i,fZ:a}}}),[QI]=u({name:"OnPlayerClickPlayer",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:I.getInstance(e),clickedPlayer:I.getInstance(t),source:i}}}),[qI]=u({name:"OnPlayerDeath",identifier:"iii",beforeEach(e,t,i){const a=I.getInstance(t)||o.PLAYER_ID;return{player:I.getInstance(e),killer:a,reason:i}}}),[eP]=u({name:"OnPlayerGiveDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,r){return{player:I.getInstance(e),damage:I.getInstance(t),amount:i,weapon:a,bodyPart:r}}}),[tP]=u({name:"OnPlayerKeyStateChange",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),newKeys:t,oldKeys:i}}}),[iP]=u({name:"OnPlayerRequestClass",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),classId:t}}}),[aP]=u({name:"OnPlayerRequestSpawn",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),[rP]=u({name:"OnPlayerSpawn",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),[nP]=u({name:"OnPlayerStateChange",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),newState:t,oldState:i}}}),[sP]=u({name:"OnPlayerStreamIn",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),forPlayer:I.getInstance(t)}}}),[lP]=u({name:"OnPlayerStreamOut",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),forPlayer:I.getInstance(t)}}}),[oP]=u({name:"OnPlayerTakeDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,r){const n=I.getInstance(t)||o.PLAYER_ID;return{player:I.getInstance(e),damage:n,amount:i,weapon:a,bodyPart:r}}}),[cP]=u({name:"OnPlayerInteriorChange",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),newInteriorId:t,oldInteriorId:i}}}),[_P]=u({name:"OnPlayerRequestDownload",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),type:t,crc:i}}}),[dP]=u({name:"OnPlayerFinishedDownloading",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),virtualWorld:t}}}),[hP]=u({name:"OnPlayerWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,r,n,s){return{player:I.getInstance(e),weapon:t,hitType:i,hitId:a,fX:r,fY:n,fZ:s}}});let Ze=null;const W=new Map,Re=new Map;function mi(e){if(!e.isConnected()){W.has(e)&&(clearInterval(W.get(e)),W.delete(e),Re.delete(e));return}let t=Re.get(e)||1;if(t>=I.MAX_CHECK_ANDROID_DELAY){clearInterval(W.get(e)),W.delete(e),Re.delete(e),mt(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:i})=>{i===72&&(e[R].isAndroid=!1,W.has(e)&&(clearInterval(W.get(e)),W.delete(e),Re.delete(e)),mt(e,!1))}).catch(()=>{}),t++,Re.set(e,t)}const[uP,mP]=u({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[pP,fP]=u({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,i,a){return{player:e,pausedAt:t,now:i,diff:a}}}),[IP,PP]=u({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,i){return{player:e,newFps:t,oldFps:i}}}),[gP,mt]=u({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});di(({player:e,next:t})=>{if(!Ze&&I.getInstances().length&&(Ze=setInterval(()=>{I.getInstances().filter(a=>{const r=a.getState()!==$e.NONE;return!a.isPaused&&!a.isNpc()&&r}).forEach(a=>{Date.now()-a.lastUpdateTick>1e3&&(a[R].isPaused=!0,mP(a,a.lastUpdateTick))})},500)),e.isNpc())return e[R].isAndroid=!1,t();if(I.SKIP_CHECK_ANDROID)return e[R].isAndroid=!e.isUsingOfficialClient(),mt(e,e[R].isAndroid),t();mi(e);const i=setInterval(()=>mi(e),1e3);return W.set(e,i),t()}),hi(({player:e,next:t})=>(Ze&&I.getInstances().length<=1&&(clearInterval(Ze),Ze=null),W.has(e)&&(clearInterval(W.get(e)),W.delete(e),Re.delete(e)),t()));function yP(e){if(!I.isConnected(e.id))return;const t=Date.now();if(t-e.lastUpdateFpsTick>=1e3){const i=e.getDrunkLevel();if(i<100){e.setDrunkLevel(2e3),e[R].lastDrunkLevel=2e3,e[R].lastFps=0;return}e[R].lastUpdateFpsTick=t;const a=e.lastFps,r=e.lastDrunkLevel-i-1;e[R].lastFps=r,e[R].lastDrunkLevel=i,PP(e,r,a)}}ui(({player:e,next:t})=>{if(!e.isNpc()){const i=Date.now();e.isPaused&&(e[R].isPaused=!1,fP(e,e.lastUpdateTick,i,i-e.lastUpdateTick)),e[R].lastUpdateTick=i,yP(e)}return t()});const pt=Object.freeze({onConnect:di,onDisconnect:hi,onPause:uP,onResume:pP,onUpdate:ui,onText:zI,onEnterExitModShop:JI,onClickMap:$I,onClickPlayer:QI,onDeath:qI,onGiveDamage:eP,onKeyStateChange:tP,onRequestClass:iP,onRequestSpawn:aP,onSpawn:rP,onStateChange:nP,onStreamIn:sP,onStreamOut:lP,onTakeDamage:oP,onInteriorChange:cP,onRequestDownload:_P,onFinishedDownloading:dP,onCheckResponse:ci,onCommandReceived:NI,onCommandPerformed:bI,onCommandError:LI,onCommandText:X.on,offCommandText:X.off,onDialogResponse:_i,onLocaleChange:KI,onCharsetChange:ZI,onFpsUpdate:IP,onWeaponShot:hP,onAndroidCheck:gP,onCommandTextRaw:GI}),SP=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],AP=[[13,18,19,20,21,24],[1,3,4,5,6,7,13,17,19,20,142,143,144,145],[],[],[0,2,7,13,16,17,19,20,21],[0,1,14,18,19,20,21,23],[],[],[],[],[1,3,7,13,17,19,20,21,23,24],[],[],[],[],[1,3,7,17,18,19,23],[],[],[2,6,16,20,21],[],[1,3,4,5,19,21],[0,14,16,18,19,20,21,23],[7,13,17,19,20,21],[],[],[],[1,3,4,5,6,19,21],[],[],[],null,[],[],[],[],[],[1,3,6,7,13,17,19,20,21,22],[],[],[1,3,7,13,17,23,142,143,144,145],[],[],[],[],[],[],null,[],null,null,[],[],null,null,null,[],[],[],[],[],[],null,null,null,[],[],[],[],null,[],[],[],null,null,[],[],[],[6,7,17,18,19,20,21],[4,5,12,13,20,21,22,24],[],[],null,[],[],null,[],[],[],[],[0,2,4,5,6,13,16,18,19,20,24],[],[3,7,14,17,18,19,20,21,23,142,143,144,145],[0,4,5,6,16],null,[],[],[1,2,3,6,7,11,17,19,20,23,142,143],[],[],[],[13,19,20,21,24],[],[],[],[],[],[],[],[],null,null,[],[],[],[],[],[0,2,4,7,15,16,17,18,19,20,21],[2,3,7,16,17,18,19,20,23,142,143,144,145],[1,3,5,6,7,13,17,18,20,23,142,143,144,145],[],[],null,null,null,[],[],[],[1,7,14,15,17,18,20,21],[],[1,3,6,7,11,12,17,18,19,20,23],[],[],[],[],[100,101,106,122,123,124,125,126,127,178,179,180,185],[109,110,113,114,115,116,117,118,119,120,121],[103,104,105,107,108,128,181,182,183,184],null,null,[],[1,4,6,7,17,18,19,20,23,24,142,143,144,145],[],[14,15,18,19,20,21,144,145],[],[],[],[1,2,4,6,7,17,18,19,23,24,142,143,144,145],[0,3,16,18,19,20,21,142,143],[],[1,3,7,11,12,17,18,19,20,23,142,143,144,145],[1,3,4,5,6,18,19,20,23,142,143,144,145],[2,3,5,6,16,18,19,20,21,23],[],[],[],[],[],[],[88,89,90,91,92,93,94,95,163,164,165,166,167,168],[65,66,67,68,69,70,71,72,158,159,160,161,162,173],[26,27,28,29,30,31,32,33,138,139,140,141,169,170],[55,56,57,58,59,60,61,62,63,64,154,155,156,157],[34,35,36,37,38,39,40,41,146,147,148,149,171,172],[],[],[45,46,47,48,49,50,51,52,53,54,150,151,152,153],[],[102,129,130,131,132,133,186,187,188,189],[],null,null,[],[],[],[],[42,43,44,99,174,175,176,177],[134,135,136,137,190,191,192,193],[],[],[],[1,6,7,17,18,20,23],null,[],[],[],[0,1,2,3,6,7,13,14,15,16,17,18,19,20,21,22,23,24,142,143,144,145],null,[],[],[0,4,5,6,7,13,16,17,18,20,24,144,145],null,[],[],[],[],null,[],[],[],[],[4,5,6,7,13,17,18,20,22],[],[],[1,6,7,17,18,19,20,23,24,142,143,144,145],[],[],[],[],[],[],[],[]],EP=(e,t)=>{if(!ft(e))return!1;const i=AP[e-400];if(i===null)return!1;const a=t-1e3;return SP.includes(a)||i.includes(a)},ft=e=>e>=400&&e<=611,DP=(e,t)=>{if(t<0||t>2)return!1;const i=new Map([[483,0],[534,2],[535,2],[536,2],[558,2],[559,2],[560,2],[561,2],[562,2],[565,2],[567,2],[575,1],[576,2]]).get(e);return typeof i>"u"?!1:t<=i};class f{sourceInfo=null;isStatic=!1;static createdCount=0;_id=o.VEHICLE_ID;get id(){return this._id}constructor(t,i=!1){if(typeof t=="number"){const a=f.getInstance(t);if(a)return a;this._id=t,ie.set(this._id,this),this.isValid()&&f.createdCount++}else this.sourceInfo=t,this.isStatic=i}create(t=!1){if(this.id!==o.VEHICLE_ID)throw new Error("[Vehicle]: Unable to create again");if(!this.sourceInfo)throw new Error("[Vehicle]: Unable to create with only id");const{modelId:i,x:a,y:r,z:n,zAngle:s,color:l,respawnDelay:c,addSiren:_}=this.sourceInfo;if(!(!t&&!ft(i))){if(this.isStatic){if(typeof c>"u"){this._id=f.__inject__AddStaticVehicle(i,a,r,n,s,l[0],l[1]);return}this._id=f.__inject__AddStaticVehicleEx(i,a,r,n,s,l[0],l[1],c||-1,_||!1)}else this._id=f.__inject__CreateVehicle(i,a,r,n,s,l[0],l[1],c||-1,_||!1);if(this._id===o.VEHICLE_ID||f.createdCount===B.MAX_VEHICLES)throw new Error("[Vehicle]: Unable to create vehicle, maximum has been reached");f.createdCount++,ie.set(this._id,this)}}destroy(){if(this.id===o.VEHICLE_ID&&!C.skip)throw new Error("[Vehicle]: Unable to destroy the vehicle before create");C.skip||f.__inject__DestroyVehicle(this.id),f.createdCount--,ie.delete(this._id),this._id=o.VEHICLE_ID,f.getInstances().length||(f.createdCount=0)}addComponent(t){if(this.id===o.VEHICLE_ID)return 0;if(!EP(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return f.__inject__AddVehicleComponent(this.id,t)}removeComponent(t){if(this.getComponentInSlot(f.getComponentType(t))===0)throw new Error(`[Vehicle]: component id ${t} does not exist on this vehicle`);return f.__inject__RemoveVehicleComponent(this.id,t)}getComponentInSlot(t){return f.__inject__GetVehicleComponentInSlot(this.id,t)}linkToInterior(t){return this.id===o.VEHICLE_ID?0:f.__inject__LinkVehicleToInterior(this.id,t)}setVirtualWorld(t){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleVirtualWorld(this.id,t)}getVirtualWorld(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleVirtualWorld(this.id)}repair(){return this.id===o.VEHICLE_ID?0:f.__inject__RepairVehicle(this.id)}setPos(t,i,a){return this.id===o.VEHICLE_ID?!1:f.__inject__SetVehiclePos(this.id,t,i,a)}getPos(){return f.__inject__GetVehiclePos(this.id)}getHealth(){return f.__inject__GetVehicleHealth(this.id)}setHealth(t){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleHealth(this.id,t)}isPlayerIn(t){return this.id===o.VEHICLE_ID?!1:f.__inject__IsPlayerInVehicle(t.id,this.id)}putPlayerIn(t,i){if(this.id===o.VEHICLE_ID||i<0)return 0;if(i>4)throw new Error("[Vehicle]: If the seat is invalid or is taken, will cause a crash when they EXIT the vehicle.");return f.__inject__PutPlayerInVehicle(t.id,this.id,i)}getZAngle(){return f.__inject__GetVehicleZAngle(this.id)}setZAngle(t){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleZAngle(this.id,t)}setNumberPlate(t){if(this.id===o.VEHICLE_ID)return 0;if(t.length<1||t.length>32)throw new Error("[Vehicle]: The length of the number plate ranges up to 32 characters");if(!/^[a-zA-Z0-9]+$/.test(t))throw new Error("[Vehicle]: number plates only allow letters and numbers");return f.__inject__SetVehicleNumberPlate(this.id,t)}changeColors(t,i){return this.id===o.VEHICLE_ID?0:f.__inject__ChangeVehicleColors(this.id,t,i)}setVelocity(t,i,a){return this.id===o.VEHICLE_ID?!1:f.__inject__SetVehicleVelocity(this.id,t,i,a)}getVelocity(){return f.__inject__GetVehicleVelocity(this.id)}getSpeed(t=180){if(this.id===o.VEHICLE_ID)return 0;const{x:i,y:a,z:r}=this.getVelocity();return ct(i,a,r)*t}setAngularVelocity(t,i,a){return this.id===o.VEHICLE_ID?!1:f.__inject__SetVehicleAngularVelocity(this.id,t,i,a)}getDamageStatus(){return f.__inject__GetVehicleDamageStatus(this.id)}updateDamageStatus(t,i,a,r){return f.__inject__UpdateVehicleDamageStatus(this.id,t,i,a,r)}getDistanceFromPoint(t,i,a){return f.__inject__GetVehicleDistanceFromPoint(this.id,t,i,a)}getModel(){return f.__inject__GetVehicleModel(this.id)}static getModelInfo(t,i){return f.__inject__GetVehicleModelInfo(t,i)}getModelInfo(t){return f.getModelInfo(this.getModel(),t)}getRotation(){return f.__inject__GetVehicleRotation(this.id)}getRotationQuat(){return f.__inject__GetVehicleRotationQuat(this.id)}setRespawn(){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleToRespawn(this.id)}isStreamedIn(t){return this.id===o.VEHICLE_ID?!1:f.__inject__IsVehicleStreamedIn(this.id,t.id)}setParamsCarDoors(t,i,a,r){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleParamsCarDoors(this.id,t,i,a,r)}setParamsCarWindows(t,i,a,r){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleParamsCarWindows(this.id,t,i,a,r)}getParamsCarDoors(){return f.__inject__GetVehicleParamsCarDoors(this.id)}getParamsCarWindows(){return f.__inject__GetVehicleParamsCarWindows(this.id)}setParamsEx(t,i,a,r,n,s,l){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleParamsEx(this.id,t,i,a,r,n,s,l)}getParamsEx(){if(this.id===o.VEHICLE_ID)return{engine:-1,lights:-1,alarm:-1,doors:-1,bonnet:-1,boot:-1,objective:-1};const[t,i,a,r,n,s,l]=f.__inject__GetVehicleParamsEx(this.id);return{engine:t,lights:i,alarm:a,doors:r,bonnet:n,boot:s,objective:l}}toggleEngine(t){if(this.id===o.VEHICLE_ID)return 0;const{lights:i,alarm:a,doors:r,bonnet:n,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(t,i,a,r,n,s,l)}toggleLights(t){if(this.id===o.VEHICLE_ID)return 0;const{engine:i,alarm:a,doors:r,bonnet:n,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,t,a,r,n,s,l)}toggleAlarm(t){if(this.id===o.VEHICLE_ID)return 0;const{engine:i,lights:a,doors:r,bonnet:n,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,t,r,n,s,l)}toggleDoors(t){if(this.id===o.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,bonnet:n,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,r,t,n,s,l)}toggleBonnet(t){if(this.id===o.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,doors:n,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,r,n,t,s,l)}toggleBoot(t){if(this.id===o.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,doors:n,bonnet:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,r,n,s,t,l)}toggleObjective(t){if(this.id===o.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,doors:n,bonnet:s,boot:l}=this.getParamsEx();return this.setParamsEx(i,a,r,n,s,l,t)}getParamsSirenState(){return this.id===o.VEHICLE_ID?-2:f.__inject__GetVehicleParamsSirenState(this.id)}setParamsForPlayer(t,i,a){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleParamsForPlayer(this.id,t.id,i,a)}isTrailerAttached(){return this.id===o.VEHICLE_ID?!1:f.__inject__IsTrailerAttachedToVehicle(this.id)}changePaintjob(t){return this.id===o.VEHICLE_ID||!DP(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),f.__inject__ChangeVehiclePaintjob(this.id,t),1)}attachTrailer(t){return this.id===o.VEHICLE_ID?0:f.__inject__AttachTrailerToVehicle(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&f.__inject__DetachTrailerFromVehicle(this.id)}getTrailer(){return f.getInstance(Xt(this.id))}isValid(){return C.skip&&this.id!==o.VEHICLE_ID?!0:f.isValid(this.id)}getMatrix(){return f.__inject__GetVehicleMatrix(this.id)}getTrainSpeed(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleTrainSpeed(this.id)}getHydraReactorAngle(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleHydraReactorAngle(this.id)}getLandingGearState(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleLandingGearState(this.id)}getSirenState(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleSirenState(this.id)}getDriver(){return te.get(Kt(this.id))}getLastDriver(){return te.get(Wt(this.id))}isSirenEnabled(){return f.__inject__IsVehicleSirenEnabled(this.id)}toggleSirenEnabled(t){return this.id===o.VEHICLE_ID?0:f.__inject__ToggleVehicleSirenEnabled(this.id,t)}setParamsSirenState(t){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleParamsSirenState(this.id,t)}isDead(){return this.id===o.VEHICLE_ID?!0:f.__inject__IsVehicleDead(this.id)}setDead(t){return this.id===o.VEHICLE_ID?!1:f.__inject__SetVehicleDead(this.id,t)}setBeenOccupied(t){return this.id===o.VEHICLE_ID?!1:f.__inject__SetVehicleBeenOccupied(this.id,t)}getRespawnTick(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleRespawnTick(this.id)}setRespawnTick(t){return this.id===o.VEHICLE_ID?!1:f.__inject__SetVehicleRespawnTick(this.id,t)}isOccupied(){return this.id===o.VEHICLE_ID?!1:f.__inject__IsVehicleOccupied(this.id)}hasBeenOccupied(){return this.id===o.VEHICLE_ID?!1:f.__inject__HasVehicleBeenOccupied(this.id)}getOccupiedTick(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleOccupiedTick(this.id)}setOccupiedTick(t){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleOccupiedTick(this.id,t)}getCab(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleCab(this.id)}getRespawnDelay(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleRespawnDelay(this.id)}setRespawnDelay(t){return this.id===o.VEHICLE_ID?0:f.__inject__SetVehicleRespawnDelay(this.id,t)}getNumberPlate(){return f.__inject__GetVehicleNumberPlate(this.id)}getInterior(){return this.id===o.VEHICLE_ID?0:f.__inject__GetVehicleInterior(this.id)}getPaintjob(){return this.id===o.VEHICLE_ID?o.VEHICLE_ID:f.__inject__GetVehiclePaintjob(this.id)}getColors(){return f.__inject__GetVehicleColors(this.id)}setSpawnInfo(t,i,a,r,n,s,l,c=-2,_=-2,d=!1){return this.id===o.VEHICLE_ID||!d&&!ft(t)?0:f.__inject__SetVehicleSpawnInfo(this.id,t,i,a,r,n,D(s),D(l),c,_)}getSpawnInfo(){return f.__inject__GetVehicleSpawnInfo(this.id)}getRandomColorPair(){return f.__inject__GetRandomVehicleColorPair(this.getModel())}show(){return this.id===o.VEHICLE_ID?!1:f.__inject__ShowVehicle(this.id)}hide(){return this.id===o.VEHICLE_ID?!1:f.__inject__HideVehicle(this.id)}isHidden(){return this.id===o.VEHICLE_ID?!1:f.__inject__IsVehicleHidden(this.id)}getVehicleOccupant(t){return f.__inject__GetVehicleOccupant(this.id,t)}getVehicleMaxPassengers(){return f.__inject__GetVehicleMaxPassengers(this.getModel())}countVehicleOccupants(){return f.__inject__CountVehicleOccupants(this.getModel())}static getVehicleMaxPassengers(t){return f.__inject__GetVehicleMaxPassengers(t)}static getRandomColorPair(t){return f.__inject__GetRandomVehicleColorPair(t)}static getComponentType(t){return f.__inject__GetVehicleComponentType(t)}static colorIndexToColor(t,i=255){return f.__inject__VehicleColorIndexToColor(t,i)}static isValid(t){return f.__inject__IsValidVehicle(t)}static getModelsUsed(){return f.__inject__GetVehicleModelsUsed()}static getModelCount(t){return f.__inject__GetVehicleModelCount(t)}static getInstance(t){return ie.get(t)}static getInstances(){return[...ie.values()]}static __inject__AddStaticVehicle=lh;static __inject__AddStaticVehicleEx=oh;static __inject__CreateVehicle=Id;static __inject__DestroyVehicle=Pd;static __inject__AddVehicleComponent=Vd;static __inject__RemoveVehicleComponent=Bd;static __inject__GetVehicleComponentInSlot=zd;static __inject__LinkVehicleToInterior=xd;static __inject__SetVehicleVirtualWorld=rh;static __inject__GetVehicleVirtualWorld=nh;static __inject__RepairVehicle=$d;static __inject__SetVehiclePos=Sd;static __inject__GetVehiclePos=yd;static __inject__GetVehicleHealth=Ud;static __inject__SetVehicleHealth=Hd;static __inject__IsPlayerInVehicle=Jc;static __inject__PutPlayerInVehicle=Tc;static __inject__GetVehicleZAngle=Ad;static __inject__SetVehicleZAngle=Nd;static __inject__SetVehicleNumberPlate=Zd;static __inject__ChangeVehicleColors=Md;static __inject__SetVehicleVelocity=qd;static __inject__GetVehicleVelocity=Qd;static __inject__SetVehicleAngularVelocity=eh;static __inject__GetVehicleDamageStatus=th;static __inject__UpdateVehicleDamageStatus=ih;static __inject__GetVehicleDistanceFromPoint=Cd;static __inject__GetVehicleModel=Yd;static __inject__GetVehicleModelInfo=ah;static __inject__GetVehicleRotation=Ed;static __inject__GetVehicleRotationQuat=Dd;static __inject__SetVehicleToRespawn=Fd;static __inject__IsVehicleStreamedIn=gd;static __inject__SetVehicleParamsCarDoors=wd;static __inject__SetVehicleParamsCarWindows=Rd;static __inject__GetVehicleParamsCarDoors=Gd;static __inject__GetVehicleParamsCarWindows=jd;static __inject__SetVehicleParamsEx=vd;static __inject__GetVehicleParamsEx=Ld;static __inject__GetVehicleParamsSirenState=Od;static __inject__SetVehicleParamsForPlayer=Td;static __inject__IsTrailerAttachedToVehicle=Xd;static __inject__ChangeVehiclePaintjob=kd;static __inject__AttachTrailerToVehicle=Wd;static __inject__DetachTrailerFromVehicle=Kd;static __inject__GetVehicleTrailer=Xt;static __inject__GetVehicleMatrix=md;static __inject__GetVehicleTrainSpeed=ud;static __inject__GetVehicleHydraReactorAngle=hd;static __inject__GetVehicleLandingGearState=dd;static __inject__GetVehicleSirenState=_d;static __inject__GetVehicleDriver=Kt;static __inject__GetVehicleLastDriver=Wt;static __inject__IsVehicleSirenEnabled=ld;static __inject__ToggleVehicleSirenEnabled=nd;static __inject__SetVehicleParamsSirenState=sd;static __inject__IsVehicleDead=id;static __inject__SetVehicleDead=ad;static __inject__SetVehicleBeenOccupied=rd;static __inject__GetVehicleRespawnTick=ed;static __inject__SetVehicleRespawnTick=td;static __inject__IsVehicleOccupied=q_;static __inject__HasVehicleBeenOccupied=Q_;static __inject__GetVehicleOccupiedTick=J_;static __inject__SetVehicleOccupiedTick=$_;static __inject__GetVehicleCab=z_;static __inject__GetVehicleRespawnDelay=Y_;static __inject__SetVehicleRespawnDelay=Z_;static __inject__GetVehicleNumberPlate=X_;static __inject__GetVehicleInterior=K_;static __inject__GetVehiclePaintjob=W_;static __inject__GetVehicleColors=U_;static __inject__SetVehicleSpawnInfo=H_;static __inject__GetVehicleSpawnInfo=k_;static __inject__GetRandomVehicleColorPair=pd;static __inject__ShowVehicle=ch;static __inject__HideVehicle=_h;static __inject__IsVehicleHidden=dh;static __inject__GetVehicleOccupant=Ih;static __inject__GetVehicleMaxPassengers=Ph;static __inject__CountVehicleOccupants=gh;static __inject__GetVehicleComponentType=Jd;static __inject__VehicleColorIndexToColor=fd;static __inject__IsValidVehicle=sh;static __inject__GetVehicleModelsUsed=cd;static __inject__GetVehicleModelCount=od}x.onExit(({next:e})=>(f.getInstances().forEach(t=>t.destroy()),ie.clear(),e()));const[CP]=u({name:"OnVehicleDamageStatusUpdate",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{vehicle:f.getInstance(e),player:I.getInstance(t)}}}),[NP]=u({name:"OnVehicleDeath",identifier:"ii",beforeEach(e,t){return{vehicle:f.getInstance(e),killer:I.getInstance(t)}}}),[TP]=u({name:"OnVehicleMod",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),vehicle:f.getInstance(t),componentId:i}}}),[bP]=u({name:"OnVehiclePaintjob",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),vehicle:f.getInstance(t),paintjobId:i}}}),[vP]=u({name:"OnVehicleRespray",identifier:"iiii",beforeEach(e,t,i,a){return{player:I.getInstance(e),vehicle:f.getInstance(t),color:[i,a]}}}),[LP]=u({name:"OnVehicleSirenStateChange",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:I.getInstance(e),vehicle:f.getInstance(t),state:!!i}}}),[OP]=u({name:"OnVehicleSpawn",identifier:"i",beforeEach(e){return{vehicle:f.getInstance(e)}}}),[wP]=u({name:"OnVehicleStreamIn",identifier:"ii",beforeEach(e,t){return{vehicle:f.getInstance(e),forPlayer:I.getInstance(t)}}}),[GP]=u({name:"OnVehicleStreamOut",identifier:"ii",beforeEach(e,t){return{vehicle:f.getInstance(e),forPlayer:I.getInstance(t)}}}),[RP]=u({name:"OnPlayerEnterVehicle",identifier:"iii",beforeEach(e,t,i){return{player:I.getInstance(e),vehicle:f.getInstance(t),isPassenger:!!i}}}),[jP]=u({name:"OnPlayerExitVehicle",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),vehicle:f.getInstance(t)}}}),[FP]=u({name:"OnTrailerUpdate",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),vehicle:f.getInstance(t)}}}),[xP]=u({name:"OnUnoccupiedVehicleUpdate",identifier:"iiiffffff",beforeEach(e,t,i,a,r,n,s,l,c){return{vehicle:f.getInstance(e),player:I.getInstance(t),passengerSeat:i,newX:a,newY:r,newZ:n,velX:s,velY:l,velZ:c}}}),VP=Object.freeze({onDamageStatusUpdate:CP,onDeath:NP,onMod:TP,onPaintjob:bP,onRespray:vP,onSirenStateChange:LP,onSpawn:OP,onStreamIn:wP,onStreamOut:GP,onPlayerEnter:RP,onPlayerExit:jP,onTrailerUpdate:FP,onUnoccupiedUpdate:xP}),[Ae]=u({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:I.getInstance(i)}}}),[Ee]=u({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:I.getInstance(i)}}}),[BP]=u({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class E{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=yn;static setTickRate=Sn;static getPlayerTickRate(t){return An(t.id)}static setPlayerTickRate(t,i=50){return En(t.id,i)}static toggleChunkStream=Dn;static isToggleChunkStream=Cn;static getChunkTickRate(t,i=-1){return i instanceof I?Lt(t,i.id):Lt(t,i)}static setChunkTickRate(t,i,a=-1){return a instanceof I?Ot(t,i,a.id):Ot(t,i,a)}static getChunkSize=Nn;static setChunkSize=Tn;static getMaxItems=bn;static setMaxItems=vn;static getVisibleItems(t,i=-1){return i instanceof I?wt(t,i.id):wt(t,i)}static setVisibleItems(t,i,a=-1){return a instanceof I?Gt(t,i,a.id):Gt(t,i,a)}static getRadiusMultiplier(t,i=-1){return i instanceof I?Rt(t,i.id):Rt(t,i)}static setRadiusMultiplier(t,i,a=-1){return a instanceof I?jt(t,i,a.id):jt(t,i,a)}static getTypePriority=Ln;static setTypePriority=On;static getCellDistance=wn;static setCellDistance=Gn;static getCellSize=Rn;static setCellSize=jn;static toggleItemStatic=Fn;static isToggleItemStatic=xn;static toggleItemInvAreas=Vn;static isToggleItemInvAreas=Bn;static toggleItemCallbacks=Mn;static isToggleItemCallbacks=kn;static toggleErrorCallback=Hn;static isToggleErrorCallback=Un;static amxUnloadDestroyItems=Wn;static processActiveItems=Kn;static toggleIdleUpdate(t,i){return Xn(t.id,i)}static isToggleIdleUpdate(t){return Zn(t.id)}static toggleCameraUpdate(t,i){return Yn(t.id,i)}static isToggleCameraUpdate(t){return zn(t.id)}static toggleItemUpdate(t,i,a){return Jn(t.id,i,a)}static isToggleItemUpdate(t,i){return $n(t.id,i)}static getLastUpdateTime(){return Qn()}static update(t,i=-1){return qn(t.id,i)}static updateEx(t,i,a,r,n,s,l,c,_){return es(t.id,i,a,r,n,s,l,c,_)}static getDistanceToItem=Dr;static toggleItem(t,i,a,r){return Cr(t.id,i,a,r)}static isToggleItem(t,i,a){return Nr(t.id,i,a)}static toggleAllItems(t,i,a,r=[-1]){return Tr(t.id,i,a,r)}static getItemInternalID(t,i,a){return br(t.id,i,a)}static getItemStreamerID(t,i,a){return vr(t.id,i,a)}static isItemVisible(t,i,a){return Lr(t.id,i,a)}static destroyAllVisibleItems(t,i,a=1){return Or(t.id,i,a)}static countVisibleItems(t,i,a=1){return wr(t.id,i,a)}static destroyAllItems=Gr;static countItems=Rr;static getNearbyItems=jr;static getAllVisibleItems(t,i,a){return Fr(t.id,i,a)}static getItemPos=xr;static setItemPos=Vr;static getItemOffset=Br;static setItemOffset=Mr;static getFloatData=qa;static setFloatData=er;static getIntData=tr;static setIntData=ir;static getArrayData=ar;static setArrayData=rr;static isInArrayData=nr;static appendArrayData=sr;static removeArrayData=lr;static getArrayDataLength=vt;static getUpperBound=or;static onPluginError=BP}class K{sourceInfo=null;_id=p.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=K.getInstance(t);if(i)return i;this._id=t,ue.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerObject]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerObject]: Unable to create with only id");let{streamDistance:t,drawDistance:i,worldId:a,interiorId:r,playerId:n,areaId:s,priority:l}=this.sourceInfo;const{modelId:c,x:_,y:d,z:h,rx:P,ry:S,rz:y,extended:N}=this.sourceInfo;return t??=G.OBJECT_SD,i??=G.OBJECT_DD,l??=0,N?(typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=hr(c,_,d,h,P,S,y,t,i,a,r,n,s,l)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=kr(c,_,d,h,P,S,y,a,r,n,t,i,s,l)),ue.set(this._id,this),this}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[StreamerObject]: Unable to destroy the object before create");return C.skip||Hr(this.id),ue.delete(this.id),this._id=p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:K.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:E.getIntData(T.OBJECT,this._id,le.MODEL_ID)}getPos(){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Cannot get position before create");return Wr(this.id)}setPos(t,i,a){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Cannot set position before create");return Kr(this.id,t,i,a)}getRot(){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Cannot get rotation before create");return Xr(this.id)}setRot(t,i,a){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Cannot set rotation before create");return Zr(this.id,t,i,a)}move(t,i,a,r,n=-1e3,s=-1e3,l=-1e3){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Cannot start moving before create");if(r<0)throw new Error("[StreamerObject]: speed must not be less than 0");if(r>120*1e3)throw new Error("[StreamerObject]: speed more than 120 seconds, warn if it's not intentional");return this.isMoving()&&this.stop(),Yr(this.id,t,i,a,r,n,s,l)}stop(){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Cannot stop moving before create");return zr(this.id)}isMoving(){return this.id===p.INVALID_ID?!1:Jr(this.id)}attachCamera(t){if(this.id===p.INVALID_ID||t.id===o.PLAYER_ID)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return $r(t.id,this.id)}attachToObject(t,i,a,r,n,s,l,c=!0){if(this.id===p.INVALID_ID||t.id===p.INVALID_ID)throw new Error("[StreamerObject]: Cannot attachToObject before both are created");return Qr(this.id,t.id,i,a,r,n,s,l,c)}attachToPlayer(t,i,a,r,n,s,l){if(this.id===p.INVALID_ID||t.id===o.PLAYER_ID)throw new Error("[StreamerObject]: Cannot attachToPlayer before both are created");return qr(this.id,t.id,i,a,r,n,s,l)}attachToVehicle(t,i,a,r,n,s,l){if(this.id===p.INVALID_ID||t.id===o.VEHICLE_ID)throw new Error("[StreamerObject]: Cannot attachToVehicle before both are created");return en(this.id,t.id,i,a,r,n,s,l)}edit(t){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Unable to edit before create");return t.endObjectEditing(),tn(t.id,this.id)}isMaterialUsed(t){return this.id===p.INVALID_ID?!1:an(this.id,t)}removeMaterial(t){return this.id===p.INVALID_ID||!this.isMaterialUsed(t)?0:rn(this.id,t)}getMaterial(t){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Unable to get material before create");return hI(this.id,t)}setMaterial(t,i,a,r,n="#000"){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Unable to set material before create");return nn(this.id,t,i,a,r,D(n))}isMaterialTextUsed(t){return this.id===p.INVALID_ID?!1:sn(this.id,t)}removeMaterialText(t){return this.id===p.INVALID_ID||!this.isMaterialTextUsed(t)?0:ln(this.id,t)}getMaterialText(t){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Unable to get material text before create");return uI(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,i,a,r=nt.SIZE_256x128,n="Arial",s=24,l=1,c="#fff",_="#000",d=0){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Unable to set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),dI(t||"utf8",this.id,i,a,r,n,s,l,D(c),D(_),d)}getPlayerCameraTarget(t){const i=on(t.id);if(i!==o.OBJECT_ID)return ue.get(i)}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.OBJECT,this.id)}setNoCameraCollision(){return cn(this.id)}getNoCameraCollision(){return _n(this.id)}static isValid=Ur;static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.OBJECT,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ue.get(t)}static getInstances(){return[...ue.values()]}}x.onExit(({next:e})=>(K.getInstances().forEach(t=>t.destroy()),ue.clear(),e()));const[MP,kP]=u({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[HP,UP]=u({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Ae(({type:e,id:t,forPlayer:i,next:a})=>e===T.OBJECT?kP(i,K.getInstance(t)):a()),Ee(({type:e,id:t,forPlayer:i,next:a})=>e===T.OBJECT?UP(i,K.getInstance(t)):a());const[WP]=u({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:K.getInstance(e)}}}),[KP]=u({name:"OnPlayerEditDynamicObject",identifier:"iiiffffff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s,l,c){return{player:I.getInstance(e),object:K.getInstance(t),response:i,x:a,y:r,z:n,rX:s,rY:l,rZ:c}}}),[XP]=u({name:"OnPlayerSelectDynamicObject",identifier:"iiifff",beforeEach(e,t,i,a,r,n){return{player:I.getInstance(e),object:K.getInstance(t),modelId:i,x:a,y:r,z:n}}}),[ZP]=u({name:"OnPlayerShootDynamicObject",identifier:"iiifff",beforeEach(e,t,i,a,r,n){return{player:I.getInstance(e),object:K.getInstance(i),weapon:t,x:a,y:r,z:n}}}),YP=Object.freeze({onMoved:WP,onPlayerEdit:KP,onPlayerSelect:XP,onPlayerShoot:ZP,onStreamIn:MP,onStreamOut:HP});class Ce{sourceInfo=null;_id=p.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=Ce.getInstance(t);if(i)return i;this._id=t,fe.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerMapIcon]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerMapIcon]: Unable to create with only id");let{style:t,streamDistance:i,worldId:a,interiorId:r,playerId:n,areaId:s,priority:l}=this.sourceInfo;const{x:c,y:_,z:d,type:h,color:P,extended:S}=this.sourceInfo;if(h<0||h>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=st.LOCAL,i??=G.MAP_ICON_SD,l??=0,S?(typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=fr(c,_,d,h,D(P),t,i,a,r,n,s,l),fe.set(this._id,this),this):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=cr(c,_,d,h,D(P),a,r,n,i,t,s,l),fe.set(this._id,this),this)}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[StreamerMapIcon]: Unable to destroy the map icon before create");return C.skip||_r(this.id),fe.delete(this._id),this._id=p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:Ce.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerMapIcon]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.MAP_ICON,this.id)}static isValid=dr;static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.MAP_ICON,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return fe.get(t)}static getInstances(){return[...fe.values()]}}x.onExit(({next:e})=>(Ce.getInstances().forEach(t=>t.destroy()),fe.clear(),e()));const[zP,JP]=u({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[$P,QP]=u({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Ae(({type:e,id:t,forPlayer:i,next:a})=>e===T.MAP_ICON?JP(i,Ce.getInstance(t)):a()),Ee(({type:e,id:t,forPlayer:i,next:a})=>e===T.MAP_ICON?QP(i,Ce.getInstance(t)):a());const qP=Object.freeze({onStreamIn:zP,onStreamOut:$P});class Z{sourceInfo=null;_id=p.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=Z.getInstance(t);if(i)return i;this._id=t,Le.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerPickup]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerPickup]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{type:l,modelId:c,x:_,y:d,z:h,extended:P}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=G.PICKUP_SD,s??=0,P?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=Z.__inject__CreateDynamicPickupEx(c,l,_,d,h,t,i,a,r,n,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=Z.__inject__CreateDynamicPickup(c,l,_,d,h,i,a,r,t,n,s)),Le.set(this._id,this),this}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[StreamerPickup]: Unable to destroy the pickup before create");return C.skip||Z.__inject__DestroyDynamicPickup(this.id),Le.delete(this.id),this._id=p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:Z.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerPickup]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.PICKUP,this.id)}static isValid=un;static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.PICKUP,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Le.get(t)}static getInstances(){return[...Le.values()]}static __inject__CreateDynamicPickup=dn;static __inject__CreateDynamicPickupEx=ur;static __inject__DestroyDynamicPickup=hn}x.onExit(({next:e})=>(Z.getInstances().forEach(t=>t.destroy()),Le.clear(),e()));const[eg,tg]=u({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[ig,ag]=u({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Ae(({type:e,id:t,forPlayer:i,next:a})=>e===T.PICKUP?tg(i,Z.getInstance(t)):a()),Ee(({type:e,id:t,forPlayer:i,next:a})=>e===T.PICKUP?ag(i,Z.getInstance(t)):a());const[rg]=u({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),pickup:Z.getInstance(t)}}}),ng=Object.freeze({onPlayerPickUp:rg,onStreamIn:eg,onStreamOut:ig});class re{sourceInfo=null;_id=p.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=re.getInstance(t);if(i)return i;this._id=t,pe.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerCheckpoint]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerCheckpoint]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{size:l,x:c,y:_,z:d,extended:h}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=G.CP_SD,s??=0,h?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=mr(c,_,d,l,t,i,a,r,n,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=Za(c,_,d,l,i,a,r,t,n,s)),pe.set(this._id,this),this}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[StreamerCheckpoint]: Unable to destroy the checkpoint before create");return C.skip||Ya(this.id),pe.delete(this.id),this._id=p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:re.isValid(this.id)}togglePlayer(t,i){if(this.id===p.INVALID_ID)throw new Error("[StreamerCheckpoint]: Unable to toggle the player before create");return za(t.id,this.id,i),this}isPlayerIn(t){return this.id===p.INVALID_ID?!1:$a(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.CP,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.CP,this.id)}static isValid=bt;static togglePlayerAll(t,i){return Ja(t.id,i)}static getPlayerVisible(t){return pe.get(Qa(t.id))}static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.CP,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return pe.get(t)}static getInstances(){return[...pe.values()]}}x.onExit(({next:e})=>(re.getInstances().forEach(t=>t.destroy()),pe.clear(),e()));const[sg,lg]=u({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[og,cg]=u({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Ae(({type:e,id:t,forPlayer:i,next:a})=>e===T.CP?lg(i,re.getInstance(t)):a()),Ee(({type:e,id:t,forPlayer:i,next:a})=>e===T.CP?cg(i,re.getInstance(t)):a());const[_g]=u({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),cp:re.getInstance(t)}}}),[dg]=u({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),cp:re.getInstance(t)}}}),hg=Object.freeze({onPlayerEnter:_g,onPlayerLeave:dg,onStreamIn:sg,onStreamOut:og});class ne{sourceInfo=null;_id=p.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=ne.getInstance(t);if(i)return i;this._id=t,Ie.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerRaceCP]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerRaceCP]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{type:l,size:c,x:_,y:d,z:h,nextX:P,nextY:S,nextZ:y,extended:N}=this.sourceInfo;if(l<0||l>8)throw new Error("[StreamerRaceCP]: Invalid type");if(c<0)throw new Error("[StreamerRaceCP]: Invalid size");return t??=G.RACE_CP_SD,s??=0,N?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=pr(l,_,d,h,P,S,y,c,t,i,a,r,n,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=mn(l,_,d,h,P,S,y,c,i,a,r,t,n,s)),Ie.set(this._id,this),this}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[StreamerRaceCP]: Unable to destroy the checkpoint before create");return C.skip||pn(this.id),Ie.delete(this.id),this._id=-p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:ne.isValid(this.id)}togglePlayer(t,i){if(this.id===p.INVALID_ID)throw new Error("[StreamerRaceCP]: Unable to toggle the player before create");return fn(t.id,this.id,i),this}static togglePlayerAll(t,i){return In(t.id,i)}isPlayerIn(t){return this.id===p.INVALID_ID?!1:Pn(t.id,this.id)}static getPlayerVisible(t){return Ie.get(gn(t.id))}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.RACE_CP,this.id)}static isValid=bt;static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.RACE_CP,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Ie.get(t)}static getInstances(){return[...Ie.values()]}}x.onExit(({next:e})=>(ne.getInstances().forEach(t=>t.destroy()),Ie.clear(),e()));const[ug,mg]=u({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[pg,fg]=u({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Ae(({type:e,id:t,forPlayer:i,next:a})=>e===T.RACE_CP?mg(i,ne.getInstance(t)):a()),Ee(({type:e,id:t,forPlayer:i,next:a})=>e===T.RACE_CP?fg(i,ne.getInstance(t)):a());const[Ig]=u({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),raceCP:ne.getInstance(t)}}}),[Pg]=u({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),raceCp:ne.getInstance(t)}}}),gg=Object.freeze({onPlayerEnter:Ig,onPlayerLeave:Pg,onStreamIn:ug,onStreamOut:pg});class _e{sourceInfo=null;_id=p.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=_e.getInstance(t);if(i)return i;this._id=t,ce.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerActor]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerActor]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{modelId:l,x:c,y:_,z:d,r:h,invulnerable:P,health:S,extended:y}=this.sourceInfo;return t??=G.ACTOR_SD,s??=0,y?(typeof i=="number"?i=[0]:i??=[0],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=Er(l,c,_,d,h,P,S,t,i,a,r,n,s)):(Array.isArray(i)?i=0:i??=0,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=ia(l,c,_,d,h,P,S,i,a,r,t,n,s)),ce.set(this.id,this),this}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[StreamerActor]: Unable to destroy the actor before create");return C.skip||aa(this.id),ce.delete(this.id),this._id=p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:_e.isValid(this.id)}isStreamedIn(t){return this.id===p.INVALID_ID?!1:na(this.id,t.id)}getVirtualWorld(){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to get virtual world before create");return sa(this.id)}setVirtualWorld(t){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to set virtual world before create");return la(this.id,t)}applyAnimation(t,i,a=4.1,r=!1,n=!0,s=!0,l=!1,c=0){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to apply animation before create");if(!dt(t,i))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${i}`);return oa(this.id,t,i,a,r,n,s,l,c)}clearAnimations(){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to clear animation before create");return ca(this.id)}getFacingAngle(){return _a(this.id)}setFacingAngle(t){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to set facing angle before create");return da(this.id,t)}getPos(){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to get pos before create");return ha(this.id)}setPos(t,i,a){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to set pos before create");return ua(this.id,t,i,a)}getHealth(){return ma(this.id)}setHealth(t){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to set health before create");return pa(this.id,t)}isInvulnerable(){return this.id===p.INVALID_ID?!1:Ia(this.id)}setInvulnerable(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return fa(this.id,t)}getPlayerTarget(t){const i=Pa(t.id);return ce.get(i)}getPlayerCameraTarget(t){const i=ga(t.id);return ce.get(i)}getSkin(){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to get skin before create");return kt(this.id)}setSkin(t,i=!1){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to set skin before create");return!i&&(t<0||t>311||t===74)?!1:Ht(this.id,t)}getSpawnInfo(){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Ut(this.id)}getAnimation(){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to get animation before create");return ya(this.id)}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.ACTOR,this.id)}static isValid=ra;static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.ACTOR,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ce.get(t)}static getInstances(){return[...ce.values()]}}x.onExit(({next:e})=>(_e.getInstances().forEach(t=>t.destroy()),ce.clear(),e()));const[yg]=u({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:_e.getInstance(e),forPlayer:I.getInstance(t)}}}),[Sg]=u({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:_e.getInstance(e),forPlayer:I.getInstance(t)}}}),[Ag]=u({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,r){return{player:I.getInstance(e),actor:_e.getInstance(t),amount:i,weapon:a,bodyPart:r}}}),Eg=Object.freeze({onStreamIn:yg,onStreamOut:Sg,onPlayerGiveDamage:Ag});class Ne{sourceInfo=null;_id=p.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=Ne.getInstance(t);if(i)return i;this._id=t,ve.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to create again");if(!this.sourceInfo)throw new Error("[Streamer3DTextLabel]: Unable to create with only id");let{attachedPlayer:t,attachedVehicle:i,testLOS:a,streamDistance:r,worldId:n,interiorId:s,playerId:l,areaId:c,priority:_}=this.sourceInfo;const{charset:d,text:h,color:P,drawDistance:S,x:y,y:N,z:V,extended:H}=this.sourceInfo;return t??=o.PLAYER_ID,i??=o.VEHICLE_ID,r??=G.TEXT_3D_LABEL_SD,a??=!1,_??=0,H?(typeof n=="number"?n=[-1]:n??=[-1],typeof s=="number"?s=[-1]:s??=[-1],typeof l=="number"?l=[-1]:l??=[-1],typeof c=="number"?c=[-1]:c??=[-1],this._id=oI(h,D(P),y,N,V,S,t,i,a,r,n,s,l,c,_,d||"utf8")):(Array.isArray(n)?n=-1:n??=-1,Array.isArray(s)?s=-1:s??=-1,Array.isArray(l)?l=-1:l??=-1,Array.isArray(c)?c=-1:c??=-1,this._id=lI(d||"utf8",h,D(P),y,N,V,S,t,i,a,n,s,l,r,c,_)),ve.set(this.id,this),this}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[Streamer3DTextLabel]: Unable to destroy before create");return C.skip||ea(this.id),ve.delete(this.id),this._id=p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:Ne.isValid(this.id)}getColor(){if(this.id===p.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to get color before create");return this.sourceInfo?this.sourceInfo.color:E.getIntData(T.TEXT_3D_LABEL,this._id,le.COLOR)}getCharset(){if(this.id===p.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to get charset before create");return this.sourceInfo?.charset}getText(){return _I(this.id,this.sourceInfo?.charset||"utf8")}updateText(t,i,a){if(this.id===p.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to update text before create");let r="";return this.sourceInfo&&(r=a||this.sourceInfo.charset||"utf8",this.sourceInfo.charset=r),cI(this.id,D(t),i,r)}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.TEXT_3D_LABEL,this.id)}setOffsets(t,i,a){if(this.id===p.INVALID_ID)return 0;const r=E.setFloatData(T.TEXT_3D_LABEL,this.id,le.ATTACH_OFFSET_X,t);return E.setFloatData(T.TEXT_3D_LABEL,this.id,le.ATTACH_OFFSET_Y,i),E.setFloatData(T.TEXT_3D_LABEL,this.id,le.ATTACH_OFFSET_Z,a),this.sourceInfo&&(this.sourceInfo.x=t,this.sourceInfo.y=i,this.sourceInfo.z=a),r}attachToPlayer(t,i,a,r){if(this.id===p.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot attachToPlayer before created");const n=typeof t=="number"?t:t.id,s=E.setIntData(T.TEXT_3D_LABEL,this.id,le.ATTACHED_PLAYER,n);return n!==o.PLAYER_ID&&this.setOffsets(i,a,r),this.sourceInfo&&(this.sourceInfo.attachedPlayer=n),s}attachToVehicle(t,i,a,r){if(this.id===p.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot attachToVehicle before created");const n=typeof t=="number"?t:t.id,s=E.setIntData(T.TEXT_3D_LABEL,this.id,le.ATTACHED_VEHICLE,n);return n!==o.VEHICLE_ID&&this.setOffsets(i,a,r),this.sourceInfo&&(this.sourceInfo.attachedVehicle=n),s}static isValid=ta;static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.TEXT_3D_LABEL,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ve.get(t)}static getInstances(){return[...ve.values()]}}x.onExit(({next:e})=>(Ne.getInstances().forEach(t=>t.destroy()),ve.clear(),e()));const[Dg,Cg]=u({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Ng,Tg]=u({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Ae(({type:e,id:t,forPlayer:i,next:a})=>e===T.TEXT_3D_LABEL?Cg(i,Ne.getInstance(t)):a()),Ee(({type:e,id:t,forPlayer:i,next:a})=>e===T.TEXT_3D_LABEL?Tg(i,Ne.getInstance(t)):a());const bg=Object.freeze({onStreamIn:Dg,onStreamOut:Ng});class k{sourceInfo=null;_id=p.INVALID_ID;get type(){return this.sourceInfo?.type??void 0}get id(){return this._id}constructor(t){if(typeof t=="number"){const i=k.getInstance(t);if(i)return i;this._id=t,me.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerArea]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerArea]: Unable to create with only id");let{worldId:t,interiorId:i,playerId:a,priority:r}=this.sourceInfo;r??=0;const{type:n,extended:s}=this.sourceInfo;if(s)if(typeof t=="number"?t=[-1]:t??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],n==="circle"){const{x:l,y:c,size:_}=this.sourceInfo;if(_<0)throw new Error("[StreamerArea]: Invalid circle extend size");this._id=Ir(l,c,_,t,i,a,r)}else if(n==="cuboid"){const{minX:l,minY:c,minZ:_,maxX:d,maxY:h,maxZ:P}=this.sourceInfo;this._id=Sr(l,c,_,d,h,P,t,i,a,r)}else if(n==="cylinder"){const{x:l,y:c,minZ:_,maxZ:d,size:h}=this.sourceInfo;if(h<0)throw new Error("[StreamerArea]: Invalid cylinder extend size");this._id=Pr(l,c,_,d,h,t,i,a,r)}else if(n==="polygon"){const{points:l,minZ:c,maxZ:_}=this.sourceInfo;if(l.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon extended with asymmetrical points");this._id=Ar(l,c,_,t,i,a,r)}else if(n==="rectangle"){const{minX:l,minY:c,maxX:_,maxY:d}=this.sourceInfo;this._id=yr(l,c,_,d,t,i,a,r)}else{const{x:l,y:c,z:_,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere extended size");this._id=gr(l,c,_,d,t,i,a,r)}else if(Array.isArray(t)?t=-1:t??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,n==="circle"){const{x:l,y:c,size:_}=this.sourceInfo;if(_<0)throw new Error("[StreamerArea]: Invalid circle size");this._id=Sa(l,c,_,t,i,a,r)}else if(n==="cuboid"){const{minX:l,minY:c,minZ:_,maxX:d,maxY:h,maxZ:P}=this.sourceInfo;this._id=Ca(l,c,_,d,h,P,t,i,a,r)}else if(n==="cylinder"){const{x:l,y:c,minZ:_,maxZ:d,size:h}=this.sourceInfo;if(h<0)throw new Error("[StreamerArea]: Invalid cylinder size");this._id=Aa(l,c,_,d,h,t,i,a,r)}else if(n==="polygon"){const{points:l,minZ:c,maxZ:_}=this.sourceInfo;if(l.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon with asymmetrical points");this._id=Na(l,c,_,t,i,a,r)}else if(n==="rectangle"){const{minX:l,minY:c,maxX:_,maxY:d}=this.sourceInfo;this._id=Da(l,c,_,d,t,i,a,r)}else{const{x:l,y:c,z:_,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere size");this._id=Ea(l,c,_,d,t,i,a,r)}return me.set(this._id,this),this}destroy(){if(this.id===p.INVALID_ID&&!C.skip)throw new Error("[StreamerArea]: Unable to destroy the area before create");return C.skip||Ta(this.id),me.delete(this.id),this._id=p.INVALID_ID,this}isValid(){return C.skip&&this.id!==p.INVALID_ID?!0:k.isValid(this.id)}getType(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerArea]: Unable to get type before create");return va(this.id)}getPolygonPoints(){return La(this.id)}getPolygonNumberPoints(){if(this.id!==p.INVALID_ID)throw new Error("[StreamerArea]: Unable to getPolygonNumberPoints number before create");if(this.type!=="polygon")throw new Error("[StreamerArea]: getPolygonNumberPoints invalid area type");return Dt(this.id)}isPlayerIn(t,i=!1){return this.id===p.INVALID_ID?!1:Oa(t.id,this.id,i)}static isPlayerInAny(t,i=!1){return wa(t.id,i)}isAnyPlayerIn(t=!1){return this.id===p.INVALID_ID?!1:Ga(this.id,t)}static isAnyPlayerInAny(t=!1){return Ra(t)}static getPlayerAreas(t){return k.getPlayerAreasNumber(t)?ja(t.id).areas.map(i=>me.get(i)):[]}static getPlayerAreasNumber(t){return Ct(t.id)}isPointIn(t,i,a){return this.id===p.INVALID_ID?!1:Fa(this.id,t,i,a)}static isPointInAny(t,i,a){return xa(t,i,a)}isLineIn(t,i,a,r,n,s){return this.id===p.INVALID_ID?!1:Va(this.id,t,i,a,r,n,s)}static isLineInAny(t,i,a,r,n,s){return Ba(t,i,a,r,n,s)}static getForPoint(t,i,a){return k.getNumberForPoint(t,i,a)?Ma(t,i,a).areas.map(r=>k.getInstance(r)).filter(Boolean):[]}static getNumberForPoint(t,i,a){return Nt(t,i,a)}static getForLine(t,i,a,r,n,s){return k.getNumberForLine(t,i,a,r,n,s)?ka(t,i,a,r,n,s).areas.map(l=>k.getInstance(l)).filter(Boolean):[]}static getNumberForLine(t,i,a,r,n,s){return Tt(t,i,a,r,n,s)}attachToObject(t,i=0,a=0,r=0){if(this.id===p.INVALID_ID||t.id===p.INVALID_ID)throw new Error("[StreamerArea]: Unable to toggle attach to object before create");return Ha(this.id,t.id,rt.DYNAMIC,o.PLAYER_ID,i,a,r)}attachToPlayer(t,i=0,a=0,r=0){if(this.id===p.INVALID_ID||t.id===o.PLAYER_ID)throw new Error("[StreamerArea]: Unable to toggle attach to player before create");return Ua(this.id,t.id,i,a,r)}attachToVehicle(t,i=0,a=0,r=0){if(this.id===p.INVALID_ID||t.id===o.VEHICLE_ID)throw new Error("[StreamerArea]: Unable to toggle attach to vehicle before create");return Wa(this.id,t.id,i,a,r)}toggleSpectateMode(t){if(this.id===p.INVALID_ID)throw new Error("[StreamerArea]: Unable to toggle spectate mode before create");return Ka(this.id,t)}isToggleSpectateMode(){return this.id===p.INVALID_ID?!1:Xa(this.id)}toggleCallbacks(t=!0){if(this.id===p.INVALID_ID)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return E.toggleItemCallbacks(T.AREA,this.id,t)}isToggleCallbacks(){return this.id===p.INVALID_ID?!1:E.isToggleItemCallbacks(T.AREA,this.id)}static isValid=ba;static togglePlayerUpdate(t,i=!0){return E.toggleItemUpdate(t,T.AREA,i)}static hideForPlayer(t,i=-5e4){return E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?E.updateEx(t,a.x,a.y,a.z):E.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return me.get(t)}static getInstances(){return[...me.values()]}}x.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),me.clear(),e()));const[vg,Lg]=u({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Og,wg]=u({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Ae(({type:e,id:t,forPlayer:i,next:a})=>e===T.AREA?Lg(i,k.getInstance(t)):a()),Ee(({type:e,id:t,forPlayer:i,next:a})=>e===T.AREA?wg(i,k.getInstance(t)):a());const[Gg]=u({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),area:k.getInstance(t)}}}),[Rg]=u({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),area:k.getInstance(t)}}}),jg=Object.freeze({onStreamIn:vg,onStreamOut:Og,onPlayerEnter:Gg,onPlayerLeave:Rg});class F{_id=o.NPC_ID;_name="";get id(){return this._id}constructor(t){return this._id=samp.callNative("NPC_Create","s",t),this._name=t,this._id!==o.NPC_ID&&(this.getPlayer()||new I(this._id),be.set(this._id,this)),this}getPlayer(){return I.getInstance(this._id)}getName(){return this._name}destroy(){return C.skip||samp.callNative("NPC_Destroy","i",this._id),be.delete(this._id),this._id=o.NPC_ID,this}isValid(){return C.skip&&this._id!==o.NPC_ID?!0:F.isValid(this._id)}spawn(){return samp.callNative("NPC_Spawn","i",this._id),this}respawn(){return samp.callNative("NPC_Respawn","i",this._id),this}setPos(t,i,a){return samp.callNative("NPC_SetPos","ifff",this._id,t,i,a),this}setRot(t,i,a){return samp.callNative("NPC_SetRot","ifff",this._id,t,i,a),this}getRot(){const[t,i,a,r]=samp.callNative("NPC_GetRot","iFFF",this._id);return{rX:t,rY:i,rZ:a,ret:r}}setFacingAngle(t){return samp.callNative("NPC_SetFacingAngle","if",this._id,t),this}getFacingAngle(){const[t,i]=samp.callNative("NPC_GetFacingAngle","iF",this._id);return{angle:t,ret:i}}setVirtualWorld(t){return samp.callNative("NPC_SetVirtualWorld","ii",this._id,t),this}getVirtualWorld(){return samp.callNative("NPC_GetVirtualWorld","i",this._id)}move(t,i,a,r,n=Be.AUTO){return!!samp.callNative("NPC_Move","ifffif",this._id,t,i,a,r,n)}moveToPlayer(t,i,a=Be.AUTO){return!!samp.callNative("NPC_MoveToPlayer","iiif",this._id,t.id,i,a)}stopMove(){return samp.callNative("NPC_StopMove","i",this._id),this}isMoving(){return!!samp.callNative("NPC_IsMoving","i",this._id)}isMovingToPlayer(t){return!!samp.callNative("NPC_IsMovingToPlayer","ii",this._id,t.id)}setSkin(t){return samp.callNative("NPC_SetSkin","ii",this._id,t),this}getSkin(){return samp.callNative("NPC_GetSkin","i",this._id)}isStreamedIn(t){return!!samp.callNative("NPC_IsStreamedIn","ii",this._id,t.id)}isAnyStreamedIn(){return!!samp.callNative("NPC_IsAnyStreamedIn","i",this._id)}setInterior(t){return samp.callNative("NPC_SetInterior","ii",this._id,t),this}getInterior(){return samp.callNative("NPC_GetInterior","i",this._id)}setHealth(t){return samp.callNative("NPC_SetHealth","if",this._id,t),this}getHealth(){return samp.callNativeFloat("NPC_GetHealth","i",this._id)}setArmour(t){return samp.callNative("NPC_SetArmour","if",this._id,t),this}getArmour(){return samp.callNativeFloat("NPC_GetArmour","i",this._id)}isDead(){return!!samp.callNative("NPC_IsDead","i",this._id)}applyAnimation(t,i,a,r,n,s,l,c,_){return samp.callNative("NPC_ApplyAnimation","issfiiiiii",this._id,t,i,a,r,n,s,l,c,_),this}setWeapon(t){return samp.callNative("NPC_SetWeapon","ii",this._id,t),this}getWeapon(){return samp.callNative("NPC_GetWeapon","i",this._id)}setAmmo(t){return samp.callNative("NPC_SetAmmo","ii",this._id,t),this}getAmmo(){return samp.callNative("NPC_GetAmmo","i",this._id)}setKeys(t,i,a){return samp.callNative("NPC_SetKeys","iiii",this._id,t,i,a),this}getKeys(){const[t,i,a,r]=samp.callNative("NPC_GetKeys","iIII",this._id);return{upAndDown:t,leftAndDown:i,keys:a,ret:r}}setWeaponSkillLevel(t,i){return samp.callNative("NPC_SetWeaponSkillLevel","iii",this._id,t,i),this}getWeaponSkillLevel(t){return samp.callNative("NPC_GetWeaponSkillLevel","ii",this._id,t)}meleeAttack(t,i){return samp.callNative("NPC_MeleeAttack","iii",this._id,t,i),this}stopMeleeAttack(){return samp.callNative("NPC_StopMeleeAttack","i",this._id),this}isMeleeAttacking(){return!!samp.callNative("NPC_IsMeleeAttacking","i",this._id)}setFightingStyle(t){return samp.callNative("NPC_SetFightingStyle","ii",this._id,t),this}getFightingStyle(){return samp.callNative("NPC_GetFightingStyle","i",this._id)}enableReloading(t){return samp.callNative("NPC_EnableReloading","ii",this._id,t),this}isReloadEnabled(){return!!samp.callNative("NPC_IsReloadEnabled","i",this._id)}isReloading(){return!!samp.callNative("NPC_IsReloading","i",this._id)}enableInfiniteAmmo(t){return samp.callNative("NPC_EnableInfiniteAmmo","ii",this._id,t),this}isInfiniteAmmoEnabled(){return!!samp.callNative("NPC_IsInfiniteAmmoEnabled","i",this._id)}setWeaponState(t){return!!samp.callNative("NPC_SetWeaponState","ii",this._id,t)}getWeaponState(){return samp.callNative("NPC_GetWeaponState","i",this._id)}setAmmoInClip(t){return samp.callNative("NPC_SetAmmoInClip","ii",this._id,t),this}getAmmoInClip(){return samp.callNative("NPC_GetAmmoInClip","i",this._id)}shoot(t,i,a,r,n,s,l,c,_,d,h=ze.ALL){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,i,a,r,n,s,l,c,_,d,h),this}isShooting(){return!!samp.callNative("NPC_IsShooting","i",this._id)}aimAt(t,i,a,r,n,s,l,c,_,d=ze.ALL){return samp.callNative("NPC_AimAt","ifffiiifffi",this._id,t,i,a,r,n,s,l,c,_,d),this}aimAtPlayer(t,i,a,r,n,s,l,c,_,d,h=ze.ALL){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,i,a,r,n,s,l,c,_,d,h),this}stopAim(){return samp.callNative("NPC_StopAim","i",this._id),this}isAiming(){return!!samp.callNative("NPC_IsAiming","i",this._id)}isAimingAtPlayer(t){return!!samp.callNative("NPC_IsAimingAtPlayer","ii",this._id,t.id)}setWeaponAccuracy(t,i){return samp.callNative("NPC_SetWeaponAccuracy","iif",this._id,t,i),this}getWeaponAccuracy(t){return samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",this._id,t)}setWeaponReloadTime(t,i){return samp.callNative("NPC_SetWeaponReloadTime","iii",this._id,t,i)}getWeaponReloadTime(t){return samp.callNative("NPC_GetWeaponReloadTime","ii",this._id,t)}getWeaponActualReloadTime(t){return samp.callNative("NPC_GetWeaponActualReloadTime","ii",this._id,t)}setWeaponShootTime(t,i){return samp.callNative("NPC_SetWeaponShootTime","iii",this._id,t,i)}getWeaponShootTime(t){return samp.callNative("NPC_GetWeaponShootTime","ii",this._id,t)}setWeaponClipSize(t,i){return samp.callNative("NPC_SetWeaponClipSize","iii",this._id,t,i)}getWeaponClipSize(t){return samp.callNative("NPC_GetWeaponClipSize","ii",this._id,t)}getWeaponActualClipSize(t){return samp.callNative("NPC_GetWeaponActualClipSize","ii",this._id,t)}enterVehicle(t,i,a){return samp.callNative("NPC_EnterVehicle","iiii",this._id,t.id,i,a),this}exitVehicle(){return samp.callNative("NPC_ExitVehicle","i",this._id),this}putInVehicle(t,i){return samp.callNative("NPC_PutInVehicle","iii",this._id,t.id,i)}removeFromVehicle(){return samp.callNative("NPC_RemoveFromVehicle","i",this._id)}getVehicle(){return f.getInstance(this.getVehicleID())}getVehicleID(){return samp.callNative("NPC_GetVehicle","i",this._id)}getVehicleSeat(){return samp.callNative("NPC_GetVehicleSeat","i",this._id)}getEnteringVehicle(){return f.getInstance(this.getEnteringVehicleId())}getEnteringVehicleId(){return samp.callNative("NPC_GetEnteringVehicle","i",this._id)}getEnteringVehicleSeat(){return samp.callNative("NPC_GetEnteringVehicleSeat","i",this._id)}isEnteringVehicle(){return!!samp.callNative("NPC_IsEnteringVehicle","i",this._id)}useVehicleSiren(t=!0){return samp.callNative("NPC_UseVehicleSiren","ii",this._id,t)}isVehicleSirenUsed(){return!!samp.callNative("NPC_IsVehicleSirenUsed","i",this._id)}setVehicleHealth(t){return samp.callNative("NPC_SetVehicleHealth","if",this._id,t)}getVehicleHealth(){return samp.callNativeFloat("NPC_GetVehicleHealth","i",this._id)}setVehicleHydraThrusters(t){return samp.callNative("NPC_SetVehicleHydraThrusters","ii",this._id,t)}getVehicleHydraThrusters(){return samp.callNative("NPC_GetVehicleHydraThrusters","i",this._id)}setVehicleGearState(t){return samp.callNative("NPC_SetVehicleGearState","ii",this._id,t)}getVehicleGearState(){return samp.callNative("NPC_GetVehicleGearState","i",this._id)}setVehicleTrainSpeed(t){return samp.callNative("NPC_SetVehicleTrainSpeed","if",this._id,t)}getVehicleTrainSpeed(){return samp.callNativeFloat("NPC_GetVehicleTrainSpeed","i",this._id)}resetAnimation(){return samp.callNative("NPC_ResetAnimation","i",this._id)}setAnimation(t,i,a,r,n,s,l){return samp.callNative("NPC_SetAnimation","iifiiiii",this._id,t,i,a,r,n,s,l)}getAnimation(){const[t,i,a,r,n,s,l,c]=samp.callNative("NPC_GetAnimation","iIFIIIII",this._id);return{animationId:t,delta:i,loop:!!a,lockX:!!r,lockY:!!n,freeze:!!s,time:l,ret:c}}clearAnimations(){return samp.callNative("NPC_ClearAnimations","i",this._id)}setSpecialAction(t){return samp.callNative("NPC_SetSpecialAction","ii",this._id,t)}getSpecialAction(){return samp.callNative("NPC_SetSpecialAction","i",this._id)}startPlayback(t,i,a,r,n,s,l,c){return samp.callNative("NPC_StartPlayback","isiffffff",this._id,t,i,a,r,n,s,l,c)}startPlaybackEx(t,i,a,r,n,s,l,c){return samp.callNative("NPC_StartPlaybackEx","iiiffffff",this._id,t.id,i,a,r,n,s,l,c)}stopPlayback(){return samp.callNative("NPC_StopPlayback","i",this._id)}pausePlayback(t){return samp.callNative("NPC_PausePlayback","ii",this._id,t)}isPlayingPlayback(){return!!samp.callNative("NPC_IsPlayingPlayback","i",this._id)}isPlaybackPaused(){return!!samp.callNative("NPC_IsPlaybackPaused","i",this._id)}playNode(t,i=it.JOG,a=Be.AUTO,r=0,n=!0){return!!samp.callNative("NPC_PlayNode","iiiffi",this._id,t.id,i,a,r,n)}stopPlayingNode(){return!!samp.callNative("NPC_StopPlayingNode","i",this._id)}pausePlayingNode(){return!!samp.callNative("NPC_PausePlayingNode","i",this._id)}resumePlayingNode(){return!!samp.callNative("NPC_ResumePlayingNode","i",this._id)}isPlayingNodePaused(){return!!samp.callNative("NPC_IsPlayingNodePaused","i",this._id)}isPlayingNode(){return!!samp.callNative("NPC_IsPlayingNode","i",this._id)}changeNode(t,i){return samp.callNative("NPC_ChangeNode","iii",this._id,t.id,i)}updateNodePoint(t){return!!samp.callNative("NPC_UpdateNodePoint","ii",this._id,t)}setInvulnerable(t){return samp.callNative("NPC_SetInvulnerable","ii",this._id,t)}isInvulnerable(){return!!samp.callNative("NPC_IsInvulnerable","i",this._id)}setSurfingOffsets(t,i,a){return samp.callNative("NPC_SetSurfingOffsets","ifff",this._id,t,i,a)}getSurfingOffsets(){const[t,i,a,r]=samp.callNative("NPC_GetSurfingOffsets","iFFF",this._id);return{x:t,y:i,z:a,ret:r}}setSurfingVehicle(t){return samp.callNative("NPC_SetSurfingVehicle","ii",this._id,t.id)}getSurfingVehicle(){return f.getInstance(this.getSurfingVehicleId())}getSurfingVehicleId(){return samp.callNative("NPC_GetSurfingVehicle","i",this._id)}setSurfingObject(t){return t.isGlobal()?samp.callNative("NPC_SetSurfingObject","ii",this._id,t.id):0}getSurfingObject(){return g.getInstance(this.getSurfingObjectId())}getSurfingObjectId(){return samp.callNative("NPC_GetSurfingObject","i",this._id)}setSurfingPlayerObject(t){return t.isGlobal()?0:samp.callNative("NPC_SetSurfingPlayerObject","ii",this._id,t.id)}getSurfingPlayerObject(){return g.getInstance(this.getSurfingPlayerObjectId(),this.getPlayer())}_setSurfingPlayerObject(t){return samp.callNative("NPC_SetSurfingPlayerObject","ii",this._id,t)}getSurfingPlayerObjectId(){return samp.callNative("NPC_GetSurfingPlayerObject","i",this._id)}resetSurfingData(){return samp.callNative("NPC_ResetSurfingData","i",this._id)}setSurfingDynamicObject(t){return this._setSurfingPlayerObject(E.getItemInternalID(new I(this._id),T.OBJECT,t.id))}getSurfingDynamicObject(){return K.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return E.getItemStreamerID(new I(this._id),T.OBJECT,this.getSurfingPlayerObjectId())}isSpawned(){return!!samp.callNative("NPC_IsSpawned","i",this._id)}kill(t,i){return!!samp.callNative("NPC_Kill","iii",this._id,typeof t=="number"?t:t.id,i)}setVelocity(t,i,a){return!!samp.callNative("NPC_SetVelocity","ifff",this._id,t,i,a)}getVelocity(){const[t,i,a,r]=samp.callNative("NPC_GetVelocity","iFFF",this._id);return{x:t,y:i,z:a,ret:r}}getPlayerAimingAt(){const t=samp.callNative("NPC_GetPlayerAimingAt","i",this._id);return t!==o.PLAYER_ID?I.getInstance(t):null}getPlayerMovingTo(){const t=samp.callNative("NPC_GetPlayerMovingTo","i",this._id);return t!==o.PLAYER_ID?I.getInstance(t):null}static startRecordingPlayerData(t,i,a){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");Wc(t.id,i,a),t[R].isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");Kc(t.id),t[R].isRecording=!1}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return be.get(t)}static getInstances(){return[...be.values()]}}class Fe{_filePath="";_id=o.RECORD_ID;get id(){return this._id}get filePath(){return this._filePath}constructor(t){if(typeof t=="string"?(this._filePath=t,this._id=samp.callNative("NPC_LoadRecord","s",this._filePath)):this._id=t,oe.has(this._id))return oe.get(this._id)}unload(){const t=this._id;if(!C.skip){const i=!!samp.callNative("NPC_UnloadRecord","i",this._id);return i&&(this._id=o.RECORD_ID,this._filePath="",oe.delete(t)),i}return this._id=o.RECORD_ID,this._filePath="",oe.delete(t),!0}isValid(){return C.skip&&this._id!==o.RECORD_ID?!0:Fe.isValid(this._id)}static isValid(t){return!!samp.callNative("NPC_IsValidRecord","i",t)}static getCount(){return samp.callNative("NPC_GetRecordCount","")}static unloadAll(){const t=!!samp.callNative("NPC_UnloadAllRecords","");return t&&oe.clear(),t}static getInstance(t){return oe.get(t)}static getInstances(){return[...oe.values()]}}class je{_id=o.NODE_ID;get id(){return this._id}constructor(t){if(this._id=t,J.has(this._id))return J.get(this._id);J.set(this._id,this)}open(){samp.callNative("NPC_OpenNode","i",this._id)&&!J.has(this._id)&&J.set(this._id,this)}close(){if(!C.skip){const t=!!samp.callNative("NPC_CloseNode","i",this._id);return t&&(J.delete(this._id),this._id=o.NODE_ID),t}return J.delete(this._id),this._id=o.NODE_ID,!0}isOpen(){return C.skip&&this._id!==o.NODE_ID?!0:!!samp.callNative("NPC_IsNodeOpen","i",this._id)}getType(){return samp.callNative("NPC_GetNodeType","i",this._id)}setPoint(t){return!!samp.callNative("NPC_SetNodePoint","ii",this._id,t)}getPointPosition(){const[t,i,a,r]=samp.callNative("NPC_GetNodePointPosition","iFFF",this._id);return{x:t,y:i,z:a,ret:!!r}}getPointCount(){return samp.callNative("NPC_GetNodePointCount","i",this._id)}getInfo(){const[t,i,a,r]=samp.callNative("NPC_GetNodeInfo","iIII",this._id);return{vehNodes:t,pedNodes:i,naviNode:a,ret:!!r}}static getInstance(t){return J.get(t)}static getInstances(){return[...J.values()]}}class xe{_id=o.PATH_ID;get id(){return this._id}constructor(t){if(typeof t<"u"){if(he.has(t))return he.get(t);this._id=t}else this._id=samp.callNative("NPC_CreatePath","")}destroy(){const t=!!samp.callNative("NPC_DestroyPath","i",this._id);return t&&(this._id=o.PATH_ID,he.delete(this._id)),t}addPoint(t,i,a,r){return!!samp.callNative("NPC_AddPointToPath","iffff",this._id,t,i,a,r)}removePoint(t){return!!samp.callNative("NPC_RemovePointFromPath","ii",this._id,t)}clear(){return!!samp.callNative("NPC_ClearPath","i",this._id)}getPointCount(){return samp.callNative("NPC_GetPathPointCount","i",this._id)}getPoint(t){const[i,a,r,n,s]=samp.callNative("NPC_GetPathPoint","ii",this._id,t);return{x:i,y:a,z:r,stopRange:n,ret:s}}isValid(){return xe.isValid(this._id)}getCurrentPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}move(t=it.JOG,i=Be.AUTO,a=!1){return!!samp.callNative("NPC_MoveByPath","iiifi",this._id,this._id,t,i,a)}hasPointInRadius(t,i,a,r){return!!samp.callNative("NPC_HasPathPointInRange","iiffff",this._id,this._id,t,i,a,r)}static destroyAll(){const t=!!samp.callNative("NPC_DestroyAllPath","");return t&&he.clear(),t}static getCount(){return samp.callNative("NPC_GetPathCount","")}static isValid(t){return!!samp.callNative("NPC_IsValidPath","i",t)}static getInstance(t){return he.get(t)}static getInstances(){return[...he.values()]}}x.onExit(({next:e})=>(F.getInstances().forEach(t=>{t.isValid()&&t.destroy()}),be.clear(),je.getInstances().forEach(t=>{t.isOpen()&&t.close()}),J.clear(),xe.destroyAll(),he.clear(),Fe.getInstances().forEach(t=>{t.isValid()&&t.unload()}),oe.clear(),e()));const[Fg]=u({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:A.decodeFromBuf(t)}}}),[xg]=u({name:"OnNPCFinishMove",identifier:"i",beforeEach(e){return{npc:F.getInstance(e)}}}),[Vg]=u({name:"OnNPCCreate",identifier:"i",beforeEach(e){return{npc:F.getInstance(e)}}}),[Bg]=u({name:"OnNPCDestroy",identifier:"i",beforeEach(e){return{npc:F.getInstance(e)}},afterEach({npc:e}){be.delete(e.id)}}),[Mg]=u({name:"OnNPCWeaponStateChange",identifier:"iii",beforeEach(e,t,i){return{npc:F.getInstance(e),newState:t,oldState:i}}}),[kg]=u({name:"OnNPCTakeDamage",identifier:"iiiii",beforeEach(e,t,i,a,r){return{npc:F.getInstance(e),damager:I.getInstance(t),damage:i,weapon:a,bodyPart:r}}}),[Hg]=u({name:"OnNPCGiveDamage",identifier:"iiiii",beforeEach(e,t,i,a,r){return{npc:F.getInstance(e),damager:I.getInstance(t),damage:i,weapon:a,bodyPart:r}}}),[Ug]=u({name:"OnNPCDeath",identifier:"iii",beforeEach(e,t,i){const a=I.getInstance(t)||o.PLAYER_ID;return{npc:F.getInstance(e),killer:a,reason:i}}}),[Wg]=u({name:"OnNPCSpawn",identifier:"i",beforeEach(e){return{npc:F.getInstance(e)}}}),[Kg]=u({name:"OnNPCRespawn",identifier:"i",beforeEach(e){return{npc:F.getInstance(e)}}}),[Xg]=u({name:"OnNPCPlaybackStart",identifier:"ii",beforeEach(e,t){return{npc:F.getInstance(e),record:Fe.getInstance(t),recordId:t}}}),[Zg]=u({name:"OnNPCPlaybackEnd",identifier:"ii",beforeEach(e,t){return{npc:F.getInstance(e),record:Fe.getInstance(t),recordId:t}}}),[Yg]=u({name:"OnNPCWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,r,n,s){return{npc:F.getInstance(e),weapon:t,hitType:i,hitId:a,fX:r,fY:n,fZ:s}}}),[zg]=u({name:"OnNPCFinishNodePoint",identifier:"iii",beforeEach(e,t,i){return{npc:F.getInstance(e),node:je.getInstance(t),nodeId:t,pointId:i}}}),[Jg]=u({name:"OnNPCFinishNode",identifier:"ii",beforeEach(e,t){return{npc:F.getInstance(e),node:je.getInstance(t),nodeId:t}}}),[$g]=u({name:"OnNPCChangeNode",identifier:"iii",beforeEach(e,t,i){return{npc:F.getInstance(e),newNode:je.getInstance(t),oldNode:je.getInstance(i),newNodeId:t,oldNodeId:i}}}),[Qg]=u({name:"OnNPCFinishMovePath",identifier:"ii",beforeEach(e,t){return{npc:F.getInstance(e),path:xe.getInstance(t),pathId:t}}}),[qg]=u({name:"OnNPCFinishMovePathPoint",identifier:"iii",beforeEach(e,t,i){return{npc:F.getInstance(e),path:xe.getInstance(t),pathId:t,pointIndex:i}}}),ey=Object.freeze({onClientMessage:Fg,onFinishMove:xg,onCreate:Vg,onDestroy:Bg,onSpawn:Wg,onRespawn:Kg,onWeaponStateChange:Mg,onTakeDamage:kg,onGiveDamage:Hg,onDeath:Ug,onPlaybackStart:Xg,onPlaybackEnd:Zg,onWeaponShot:Yg,onFinishNodePoint:zg,onFinishNode:Jg,onChangeNode:$g,onFinishMovePath:Qg,onFinishMovePathPoint:qg});class ty{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return Gl()}static getPlayerNetworkStats(t){return wl(t.id)}static getBytesReceived(t){return Sl(t.id)}static getBytesSent(t){return El(t.id)}static getConnectionStatus(t){return Nl(t.id)}static getConnectedTime(t){return gl(t.id)}static getIpPort(t){return Tl(t.id)}static getMessagesReceived(t){return yl(t.id)}static getMessagesRecvPerSecond(t){return Dl(t.id)}static getMessagesSent(t){return Al(t.id)}static getPacketLossPercent(t){return Cl(t.id)}}class De{_text;_time;_style;get text(){return this._text}set text(t){this._text=t}get time(){return this._time}set time(t){this._time=t}get style(){return this._style}set style(t){this._style=t}constructor(t,i,a){this._text=t,this._time=i,this._style=a}static hideForAll(t){De.__inject__HideGameTextForAll(t)}static has(t,i){return De.__inject__HasGameText(t.id,i)}forAll(t="win1252"){De.__inject__GameTextForAll(A.encodeToBuf(A.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,i="win1252"){De.__inject__GameTextForPlayer(t.id,A.encodeToBuf(A.convertSpecialChar(this.text),i),this.time,this.style)}hideForPlayer(t){return De.__inject__HideGameTextForPlayer(t.id,this.style)}static __inject__HideGameTextForAll=xs;static __inject__HasGameText=Io;static __inject__GameTextForAll=Fs;static __inject__GameTextForPlayer=fo;static __inject__HideGameTextForPlayer=go}class j{_itemCount=0;get itemCount(){return this._itemCount}_id=o.MENU;get id(){return this._id}_title;get title(){return this._title}set title(t){this._title=t}_columns=1;get columns(){return this._columns}set columns(t){if(t!==1&&t!==2)throw new Error("[Menu]: The menu column number interval is between 1 and 2");this._columns=t}_x;get x(){return this._x}set x(t){this._x=t}_y;get y(){return this._y}set y(t){this._y=t}_col1width;get col1width(){return this._col1width}set col1width(t){this._col1width=t}_col2width;get col2width(){return this._col2width}set col2width(t){this._col2width=t}constructor(t,i,a,r,n,s){this._title=t,this.columns=i,this._x=a,this._y=r,this._col1width=n,this._col2width=s}create(){if(this._id!==o.MENU)throw new Error("[Menu]: Cannot be created twice");if(this._id=j.__inject__CreateMenu(this.title,this.columns,this.x,this.y,this.col1width,this.col2width),this.id===o.MENU||j.getInstances().length===B.MAX_MENUS)throw new Error("[Menu]: The maximum number of menus allowed to be created has been reached 128");return He.set(this._id,this),this}destroy(){if(this._id===o.MENU)throw new Error("[Menu]: Cannot destroy before create");return C.skip||j.__inject__DestroyMenu(this.id),He.delete(this._id),this._id=o.MENU,this}addItem(t,i){if(this._id===o.MENU)throw new Error("[Menu]: Cannot addItem before create");if(this._itemCount===B.MAX_MENU_ROW)throw new Error("[Menu]: The maximum number of items allowed to be added has been reached 12");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return j.__inject__AddMenuItem(this.id,t,i),this._itemCount++,this}setColumnHeader(t,i){if(this._id===o.MENU)throw new Error("[Menu]: Cannot setColumnHeader before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return j.__inject__SetMenuColumnHeader(this.id,t,i),this}disable(){if(this._id===o.MENU)throw new Error("[Menu]: Cannot disable menu before create");return j.__inject__DisableMenu(this.id),this}disableRow(t){if(this._id===o.MENU)throw new Error("[Menu]: Cannot disable row before create");if(t<0||t>this.itemCount-1)throw new Error("[Menu]: Wrong number of rows");j.__inject__DisableMenuRow(this.id,t)}isValid(){return C.skip&&this.id!==o.MENU?!0:j.isValid(this.id)}showForPlayer(t){if(this._id===o.MENU)throw new Error("[Menu]: Cannot show menu before create");return j.__inject__ShowMenuForPlayer(this.id,t.id)}hideForPlayer(t){if(this._id===o.MENU)throw new Error("[Menu]: Cannot hide menu before create");return j.__inject__HideMenuForPlayer(this.id,t.id)}isDisabled(){return this._id===o.MENU?!1:j.__inject__IsMenuDisabled(this.id)}isRowDisabled(t){return this._id===o.MENU||t<0||t>this._itemCount?!1:j.__inject__IsMenuRowDisabled(this.id,t)}getItems(t){return this._id===o.MENU?0:j.__inject__GetMenuItems(this.id,t)}getPos(){return this._id===o.MENU?{fX:this.x,fY:this.y}:j.__inject__GetMenuPos(this.id)}getColumnWidth(){return this.id===o.MENU?{fColumn1:this.col1width,fColumn2:this.col2width}:j.__inject__GetMenuColumnWidth(this.id)}getColumnHeader(t){if(this._id===o.MENU)throw new Error("[Menu]: Cannot get column header before create");return j.__inject__GetMenuColumnHeader(this.id,t)}getItem(t,i){if(this._id===o.MENU)throw new Error("[Menu]: Cannot get item before create");if(i<0||i>this.getItems(t)-1)throw new Error("[Menu]: invalid getItem range");return j.__inject__GetMenuItem(this.id,t,i)}static isValid(t){return j.__inject__IsValidMenu(t)}static getInstance(t){return He.get(t)}static getInstances(){return[...He.values()]}static getInstanceByPlayer(t){return this.getInstances().find(i=>i.id===$t(t.id))}static __inject__CreateMenu=Gh;static __inject__DestroyMenu=Rh;static __inject__AddMenuItem=jh;static __inject__SetMenuColumnHeader=Fh;static __inject__DisableMenu=Mh;static __inject__DisableMenuRow=kh;static __inject__IsValidMenu=Bh;static __inject__ShowMenuForPlayer=xh;static __inject__HideMenuForPlayer=Vh;static __inject__IsMenuDisabled=Nh;static __inject__IsMenuRowDisabled=Th;static __inject__GetMenuItems=bh;static __inject__GetMenuPos=vh;static __inject__GetMenuColumnWidth=Lh;static __inject__GetMenuColumnHeader=Oh;static __inject__GetMenuItem=wh;static __inject__GetPlayerMenu=$t}x.onExit(({next:e})=>(j.getInstances().forEach(t=>t.destroy()),He.clear(),e()));const[iy]=u({name:"OnPlayerExitedMenu",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),[ay]=u({name:"OnPlayerSelectedMenuRow",identifier:"ii",beforeEach(e,t){const i=I.getInstance(e),a=j.getInstanceByPlayer(i);return{player:i,menu:a,row:t}}}),ry=Object.freeze({onPlayerExited:iy,onPlayerSelectedRow:ay});class b{sourceInfo;_id=o.GANG_ZONE;get id(){return this._id}constructor(t){this.sourceInfo=t}create(){if(this.id!==o.GANG_ZONE)throw new Error("[GangZone]: Unable to create again");const{player:t}=this.sourceInfo;if(t){const{minX:i,minY:a,maxX:r,maxY:n}=this.sourceInfo;if(this._id=b.__inject__CreatePlayerGangZone(t.id,i,a,r,n),this.id===o.GANG_ZONE||b.getInstances(t).length===B.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to create player gangzone, maximum has been reached");const s=pt.onDisconnect(({player:l,next:c})=>{c(),l===this.sourceInfo.player&&(this.isValid()&&this.destroy(),s())});z.has(t)||z.set(t,new Map),z.get(t).set(this._id,this)}else{const{minX:i,minY:a,maxX:r,maxY:n}=this.sourceInfo;if(this._id=b.__inject__GangZoneCreate(i,a,r,n),this.id===o.GANG_ZONE||b.getInstances().length===B.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to create gangzone, maximum has been reached");ke.set(this.id,this)}return this}destroy(){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to destroy the gangzone before create");const{player:t}=this.sourceInfo;if(!t)C.skip||b.__inject__GangZoneDestroy(this.id),ke.delete(this.id);else if(C.skip||b.__inject__PlayerGangZoneDestroy(t.id,this.id),z.has(t)){const i=z.get(t);i.delete(this.id),i.size||z.delete(t)}this._id=o.GANG_ZONE}showForAll(t){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to show the gangzone before create");if(!this.sourceInfo.player)return b.__inject__GangZoneShowForAll(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be show for all.")}showForPlayer(t,i){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to show the gangzone before create");const a=this.sourceInfo.player;if(a)b.__inject__PlayerGangZoneShow(a.id,this.id,D(t));else if(i)b.__inject__GangZoneShowForPlayer(i.id,this.id,t);else throw new Error("[GangZone]: invalid player for show");return this}hideForAll(){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to hide the gangzone before create");if(!this.sourceInfo.player)return b.__inject__GangZoneHideForAll(this.id),this;throw new Error("[GangZone]: player's gangzone should not be hide for all.")}hideForPlayer(t){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to hide the gangzone before create");const i=this.sourceInfo.player;if(i)b.__inject__PlayerGangZoneHide(i.id,this.id);else if(t)b.__inject__GangZoneHideForPlayer(t.id,this.id);else throw new Error("[GangZone]: invalid player for hide");return this}flashForAll(t){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to flash the gangzone before create");if(!this.sourceInfo.player)return b.__inject__GangZoneFlashForAll(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be flash for all.")}flashForPlayer(t,i){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to flash the gangzone before create");const a=this.sourceInfo.player;if(a)b.__inject__PlayerGangZoneFlash(a.id,this.id,D(i));else if(t)b.__inject__GangZoneFlashForPlayer(t.id,this.id,i);else throw new Error("[GangZone]: invalid player for flash");return this}stopFlashForAll(){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");if(!this.sourceInfo.player)return b.__inject__GangZoneStopFlashForAll(this.id),this;throw new Error("[GangZone]: player's gangzone should not be stop flash for all.")}stopFlashForPlayer(t){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");const i=this.sourceInfo.player;if(i)b.__inject__PlayerGangZoneStopFlash(i.id,this.id);else if(t)b.__inject__GangZoneStopFlashForPlayer(t.id,this.id);else throw new Error("[GangZone]: invalid player for flash");return this}isValid(){if(C.skip&&this.id!==o.GANG_ZONE)return!0;if(this.id===o.GANG_ZONE)return!1;const t=this.sourceInfo.player;return t?b.isValidPlayer(t.id,this.id):b.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===o.GANG_ZONE)return!1;const i=this.sourceInfo.player;return i?b.__inject__IsPlayerInPlayerGangZone(i.id,this.id):b.__inject__IsPlayerInGangZone(t.id,this.id)}isVisibleForPlayer(t){if(this.id===o.GANG_ZONE)return!1;const i=this.sourceInfo.player;return i?b.__inject__IsPlayerGangZoneVisible(i.id,this.id):b.__inject__IsGangZoneVisibleForPlayer(t.id,this.id)}getColorForPlayer(t){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to get color before create");const i=this.sourceInfo.player;return i?b.__inject__PlayerGangZoneGetColor(i.id,this.id):b.__inject__GangZoneGetColorForPlayer(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to get flash color before create");const i=this.sourceInfo.player;return i?b.__inject__PlayerGangZoneGetFlashColor(i.id,this.id):b.__inject__GangZoneGetFlashColorForPlayer(t.id,this.id)}isFlashingForPlayer(t){if(this.id===o.GANG_ZONE)return!1;const i=this.sourceInfo.player;return i?b.__inject__IsPlayerGangZoneFlashing(i.id,this.id):b.__inject__IsGangZoneFlashingForPlayer(t.id,this.id)}getPos(){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to get position before create");const t=this.sourceInfo.player;return t?b.__inject__PlayerGangZoneGetPos(t.id,this.id):b.__inject__GangZoneGetPos(this.id)}useCheck(t){if(this.id===o.GANG_ZONE)throw new Error("[GangZone]: Unable to use check before create");const i=this.sourceInfo.player;return i?b.__inject__UsePlayerGangZoneCheck(i.id,this.id,t):b.__inject__UseGangZoneCheck(this.id,t),this}static isValidPlayer(t,i){return b.__inject__IsValidPlayerGangZone(t,i)}static isValidGlobal(t){return b.__inject__IsValidGangZone(t)}static getInstance(t,i){if(!i)return ke.get(t);if(i.id!==o.PLAYER_ID)return z.get(i)?.get(t)}static getInstances(t){return t?t.id===o.PLAYER_ID?[]:[...z.get(t)?.values()||[]]:[...ke.values()]}static getPlayersInstances(){return Array.from(z.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__GangZoneCreate=Su;static __inject__GangZoneDestroy=Au;static __inject__GangZoneShowForAll=Du;static __inject__GangZoneHideForAll=Nu;static __inject__GangZoneFlashForAll=bu;static __inject__GangZoneStopFlashForAll=Lu;static __inject__GangZoneGetPos=gu;static __inject__UseGangZoneCheck=yu;static __inject__CreatePlayerGangZone=Ou;static __inject__PlayerGangZoneDestroy=wu;static __inject__PlayerGangZoneShow=Gu;static __inject__GangZoneShowForPlayer=Eu;static __inject__PlayerGangZoneHide=Ru;static __inject__GangZoneHideForPlayer=Cu;static __inject__PlayerGangZoneFlash=ju;static __inject__GangZoneFlashForPlayer=Tu;static __inject__PlayerGangZoneStopFlash=Fu;static __inject__GangZoneStopFlashForPlayer=vu;static __inject__PlayerGangZoneGetPos=Uu;static __inject__UsePlayerGangZoneCheck=Wu;static __inject__IsPlayerInGangZone=mu;static __inject__IsPlayerInPlayerGangZone=Vu;static __inject__IsGangZoneVisibleForPlayer=pu;static __inject__IsPlayerGangZoneVisible=Bu;static __inject__GangZoneGetColorForPlayer=fu;static __inject__PlayerGangZoneGetColor=Mu;static __inject__GangZoneGetFlashColorForPlayer=Iu;static __inject__PlayerGangZoneGetFlashColor=ku;static __inject__IsGangZoneFlashingForPlayer=Pu;static __inject__IsPlayerGangZoneFlashing=Hu;static __inject__IsValidPlayerGangZone=xu;static __inject__IsValidGangZone=uu}x.onExit(({next:e})=>(b.getInstances().forEach(t=>t.destroy()),b.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),ke.clear(),z.clear(),e()));const[ny]=u({name:"OnPlayerEnterGangZone",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),gangZone:b.getInstance(t)}}}),[sy]=u({name:"OnPlayerLeaveGangZone",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),gangZone:b.getInstance(t)}}}),[ly]=u({name:"OnPlayerEnterPlayerGangZone",identifier:"ii",beforeEach(e,t){const i=I.getInstance(e);return{player:i,gangZone:b.getInstance(t,i)}}}),[oy]=u({name:"OnPlayerLeavePlayerGangZone",identifier:"ii",beforeEach(e,t){const i=I.getInstance(e);return{player:i,gangZone:b.getInstance(t,i)}}}),[cy]=u({name:"OnPlayerClickGangZone",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),gangZone:b.getInstance(t)}}}),[_y]=u({name:"OnPlayerClickPlayerGangZone",identifier:"ii",beforeEach(e,t){const i=I.getInstance(e);return{player:i,gangZone:b.getInstance(t,i)}}}),dy=Object.freeze({onPlayerEnterGlobal:ny,onPlayerLeaveGlobal:sy,onPlayerEnterPlayer:ly,onPlayerLeavePlayer:oy,onPlayerClickGlobal:cy,onPlayerClickPlayer:_y});class m{sourceInfo;_id=o.TEXT_DRAW;get id(){return this._id}constructor(t){this.sourceInfo=t}create(){if(this.id!==o.TEXT_DRAW)throw new Error("[TextDraw]: Unable to create again");const{x:t,y:i,text:a,player:r,charset:n="iso-8859-1"}=this.sourceInfo,s=A.encodeToBuf(A.convertSpecialChar(a),n);if(r){if(this._id=m.__inject__CreatePlayerTextDraw(r.id,t,i,s),this.id===o.TEXT_DRAW||m.getInstances(r).length===B.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to create textdraw, maximum has been reached");const l=pt.onDisconnect(({player:c,next:_})=>{const d=_();return c===r&&(this.isValid()&&this.destroy(),l()),d});$.has(r)||$.set(r,new Map),$.get(r).set(this._id,this)}else{if(this._id=m.__inject__TextDrawCreate(t,i,s),this.id===o.TEXT_DRAW||m.getInstances().length===B.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to create textdraw, maximum has been reached");Ue.set(this.id,this)}return this}destroy(){this.id===o.TEXT_DRAW&&m.beforeCreateWarn("destroy the textdraw");const{player:t}=this.sourceInfo;if(!t)C.skip||m.__inject__TextDrawDestroy(this.id),Ue.delete(this.id);else if(C.skip||m.__inject__PlayerTextDrawDestroy(t.id,this.id),$.has(t)){const i=$.get(t);i.delete(this.id),i.size||$.delete(t)}return this._id=o.TEXT_DRAW,this}setFont(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set font"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawFont(i.id,this.id,t):m.__inject__TextDrawFont(this.id,t),this}setColor(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set color"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawColor(i.id,this.id,t):m.__inject__TextDrawColor(this.id,t),this}setBoxColors(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set box color"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawBoxColor(i.id,this.id,t):m.__inject__TextDrawBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set background color"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawBackgroundColor(i.id,this.id,t):m.__inject__TextDrawBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set alignment"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawAlignment(i.id,this.id,t):m.__inject__TextDrawAlignment(this.id,t),this}setLetterSize(t,i){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set letter size"),this;const{player:a}=this.sourceInfo;return a?m.__inject__PlayerTextDrawLetterSize(a.id,this.id,t,i):m.__inject__TextDrawLetterSize(this.id,t,i),this}setOutline(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set outline model"),this;if(t<0)throw new Error("[TextDraw]: Invalid outline value");const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawSetOutline(i.id,this.id,t):m.__inject__TextDrawSetOutline(this.id,t),this}setPreviewModel(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set preview model"),this;this.setFont(Qe.MODEL_PREVIEW);const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawSetPreviewModel(i.id,this.id,t):m.__inject__TextDrawSetPreviewModel(this.id,t),this}setPreviewRot(t,i,a,r=1){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set preview rot"),this;this.setFont(Qe.MODEL_PREVIEW);const{player:n}=this.sourceInfo;return n?m.__inject__PlayerTextDrawSetPreviewRot(n.id,this.id,t,i,a,r):m.__inject__TextDrawSetPreviewRot(this.id,t,i,a,r),this}setPreviewVehColors(t,i){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set preview veh col"),this;this.setFont(Qe.MODEL_PREVIEW);const{player:a}=this.sourceInfo;return a?m.__inject__PlayerTextDrawSetPreviewVehicleColors(a.id,this.id,t,i):m.__inject__TextDrawSetPreviewVehicleColors(this.id,t,i),this}setProportional(t=!0){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set Proportional"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawSetProportional(i.id,this.id,t):m.__inject__TextDrawSetProportional(this.id,t),this}setSelectable(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set Selectable"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawSetSelectable(i.id,this.id,t):m.__inject__TextDrawSetSelectable(this.id,t),this}setShadow(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set shadow"),this;if(t<0)throw new Error("[TextDraw]: Invalid shadow value");const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawSetShadow(i.id,this.id,t):m.__inject__TextDrawSetShadow(this.id,t),this}setString(t,i){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set string"),this;if(t.length===0||t.length>1024)throw new Error("[TextDraw]: Invalid text length");const{player:a,charset:r="iso-8859-1"}=this.sourceInfo,n=A.encodeToBuf(A.convertSpecialChar(t),r);return a?m.__inject__PlayerTextDrawSetString(a.id,this.id,n):i?m.__inject__TextDrawSetStringForPlayer(this.id,i.id,n):m.__inject__TextDrawSetString(this.id,n),this}setTextSize(t,i){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set TextSize"),this;const{player:a}=this.sourceInfo;return a?m.__inject__PlayerTextDrawTextSize(a.id,this.id,t,i):m.__inject__TextDrawTextSize(this.id,t,i),this}useBox(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set TextSize"),this;const{player:i}=this.sourceInfo;return i?m.__inject__PlayerTextDrawUseBox(i.id,this.id,t):m.__inject__TextDrawUseBox(this.id,t),this}static beforeCreateWarn(t){throw new Error(`[TextDraw]: Unable to ${t} before create`)}show(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("show"),this;const i=this.sourceInfo.player;if(i)m.__inject__PlayerTextDrawShow(i.id,this.id);else if(t)m.__inject__TextDrawShowForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for show");return this}hide(t){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("hide"),this;const i=this.sourceInfo.player;if(i)m.__inject__PlayerTextDrawHide(i.id,this.id);else if(t)m.__inject__TextDrawHideForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for hide");return this}showAll(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("show"),this;if(!this.sourceInfo.player)return m.__inject__TextDrawShowForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be show for all.")}hideAll(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("hideAll"),this;if(!this.sourceInfo.player)return m.__inject__TextDrawHideForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be hide for all.")}isValid(){if(C.skip&&this.id!==o.TEXT_DRAW)return!0;const t=this.sourceInfo.player;return t?m.__inject__IsValidPlayerTextDraw(t.id,this.id):m.__inject__IsValidTextDraw(this.id)}isVisibleForPlayer(t){if(this.id===o.TEXT_DRAW)return!1;const{player:i}=this.sourceInfo;return i?m.__inject__IsPlayerTextDrawVisible(i.id,this.id):t?m.__inject__IsTextDrawVisibleForPlayer(t.id,this.id):!1}getString(){if(this.id===o.TEXT_DRAW)return this.sourceInfo.text;const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetString(t.id,this.id).str:m.__inject__TextDrawGetString(this.id).str}setPos(t,i){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("set position"),this;const a=this.sourceInfo.player;return a?m.__inject__PlayerTextDrawSetPos(a.id,this.id,t,i):m.__inject__TextDrawSetPos(this.id,t,i),this}getLetterSize(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get letter size");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetLetterSize(t.id,this.id):m.__inject__TextDrawGetLetterSize(this.id)}getTextSize(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get text size");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetTextSize(t.id,this.id):m.__inject__TextDrawGetTextSize(this.id)}getPos(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get position");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetPos(t.id,this.id):m.__inject__TextDrawGetPos(this.id)}getColor(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get color");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetColor(t.id,this.id):m.__inject__TextDrawGetColor(this.id)}getBoxColor(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get box color");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetBoxColor(t.id,this.id):m.__inject__TextDrawGetBoxColor(this.id)}getBackgroundColor(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get bg color");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetBackgroundColor(t.id,this.id):m.__inject__TextDrawGetBackgroundColor(this.id)}getShadow(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get shadow");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetShadow(t.id,this.id):m.__inject__TextDrawGetShadow(this.id)}getOutline(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get outline");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetOutline(t.id,this.id):m.__inject__TextDrawGetOutline(this.id)}getFont(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get font");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetFont(t.id,this.id):m.__inject__TextDrawGetFont(this.id)}isBox(){if(this.id===o.TEXT_DRAW)return!1;const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawIsBox(t.id,this.id):m.__inject__TextDrawIsBox(this.id)}isProportional(){if(this.id===o.TEXT_DRAW)return!1;const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawIsProportional(t.id,this.id):m.__inject__TextDrawIsProportional(this.id)}isSelectable(){if(this.id===o.TEXT_DRAW)return!1;const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawIsSelectable(t.id,this.id):m.__inject__TextDrawIsSelectable(this.id)}getAlignment(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get alignment");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetAlignment(t.id,this.id):m.__inject__TextDrawGetAlignment(this.id)}getPreviewModel(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get preview model");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetPreviewModel(t.id,this.id):m.__inject__TextDrawGetPreviewModel(this.id)}getPreviewRot(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get preview rotation");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetPreviewRot(t.id,this.id):m.__inject__TextDrawGetPreviewRot(this.id)}getPreviewVehColors(){if(this.id===o.TEXT_DRAW)return m.beforeCreateWarn("get preview vel colors");const t=this.sourceInfo.player;return t?m.__inject__PlayerTextDrawGetPreviewVehicleColors(t.id,this.id):m.__inject__TextDrawGetPreviewVehicleColors(this.id)}isGlobal(){return!this.getPlayer()}isPlayer(){return!this.isGlobal()}getPlayer(){return this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:o.PLAYER_ID}static getInstance(t,i){if(!i)return Ue.get(t);if(i.id!==o.PLAYER_ID)return $.get(i)?.get(t)}static getInstances(t){return t?t.id===o.PLAYER_ID?[]:[...$.get(t)?.values()||[]]:[...Ue.values()]}static getPlayersInstances(){return Array.from($.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__TextDrawCreate=hm;static __inject__CreatePlayerTextDraw=ip;static __inject__TextDrawDestroy=um;static __inject__PlayerTextDrawDestroy=ap;static __inject__TextDrawFont=Em;static __inject__PlayerTextDrawFont=up;static __inject__TextDrawColor=Im;static __inject__PlayerTextDrawColor=lp;static __inject__TextDrawBoxColor=gm;static __inject__PlayerTextDrawBoxColor=cp;static __inject__TextDrawBackgroundColor=Am;static __inject__PlayerTextDrawBackgroundColor=hp;static __inject__TextDrawAlignment=fm;static __inject__PlayerTextDrawAlignment=sp;static __inject__TextDrawLetterSize=mm;static __inject__PlayerTextDrawLetterSize=rp;static __inject__TextDrawSetOutline=Sm;static __inject__PlayerTextDrawSetOutline=dp;static __inject__TextDrawSetPreviewModel=Om;static __inject__PlayerTextDrawSetPreviewModel=gp;static __inject__TextDrawSetPreviewRot=wm;static __inject__PlayerTextDrawSetPreviewRot=yp;static __inject__TextDrawSetPreviewVehicleColors=Gm;static __inject__PlayerTextDrawSetPreviewVehicleColors=Sp;static __inject__TextDrawSetProportional=Dm;static __inject__PlayerTextDrawSetProportional=mp;static __inject__TextDrawSetSelectable=Cm;static __inject__PlayerTextDrawSetSelectable=pp;static __inject__TextDrawSetShadow=ym;static __inject__PlayerTextDrawSetShadow=_p;static __inject__PlayerTextDrawSetString=Pp;static __inject__TextDrawSetStringForPlayer=dm;static __inject__TextDrawSetString=Lm;static __inject__TextDrawTextSize=pm;static __inject__PlayerTextDrawTextSize=np;static __inject__PlayerTextDrawUseBox=op;static __inject__TextDrawUseBox=Pm;static __inject__PlayerTextDrawShow=fp;static __inject__TextDrawShowForPlayer=Nm;static __inject__PlayerTextDrawHide=Ip;static __inject__TextDrawHideForPlayer=Tm;static __inject__TextDrawShowForAll=bm;static __inject__TextDrawHideForAll=vm;static __inject__IsValidPlayerTextDraw=Fm;static __inject__IsValidTextDraw=Ku;static __inject__IsPlayerTextDrawVisible=xm;static __inject__IsTextDrawVisibleForPlayer=Xu;static __inject__PlayerTextDrawGetString=Vm;static __inject__TextDrawGetString=Zu;static __inject__PlayerTextDrawSetPos=Bm;static __inject__TextDrawSetPos=Yu;static __inject__PlayerTextDrawGetLetterSize=Mm;static __inject__TextDrawGetLetterSize=zu;static __inject__PlayerTextDrawGetTextSize=km;static __inject__TextDrawGetTextSize=Ju;static __inject__PlayerTextDrawGetPos=Hm;static __inject__TextDrawGetPos=$u;static __inject__PlayerTextDrawGetColor=Um;static __inject__TextDrawGetColor=Qu;static __inject__PlayerTextDrawGetBoxColor=Wm;static __inject__TextDrawGetBoxColor=qu;static __inject__PlayerTextDrawGetBackgroundColor=Km;static __inject__TextDrawGetBackgroundColor=em;static __inject__PlayerTextDrawGetShadow=Xm;static __inject__TextDrawGetShadow=tm;static __inject__PlayerTextDrawGetOutline=Zm;static __inject__TextDrawGetOutline=im;static __inject__PlayerTextDrawGetFont=Ym;static __inject__TextDrawGetFont=am;static __inject__PlayerTextDrawIsBox=zm;static __inject__TextDrawIsBox=rm;static __inject__PlayerTextDrawIsProportional=Jm;static __inject__TextDrawIsProportional=nm;static __inject__PlayerTextDrawIsSelectable=$m;static __inject__TextDrawIsSelectable=sm;static __inject__PlayerTextDrawGetAlignment=Qm;static __inject__TextDrawGetAlignment=lm;static __inject__PlayerTextDrawGetPreviewModel=qm;static __inject__TextDrawGetPreviewModel=om;static __inject__PlayerTextDrawGetPreviewRot=ep;static __inject__TextDrawGetPreviewRot=cm;static __inject__TextDrawGetPreviewVehicleColors=_m;static __inject__PlayerTextDrawGetPreviewVehicleColors=tp}x.onExit(({next:e})=>(m.getInstances().forEach(t=>t.destroy()),m.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),Ue.clear(),$.clear(),e()));const[hy]=u({name:"OnPlayerClickTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:I.getInstance(e),textDraw:t===o.TEXT_DRAW?t:m.getInstance(t)}}}),[uy]=u({name:"OnPlayerClickPlayerTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){const i=I.getInstance(e);return{player:i,textDraw:t===o.TEXT_DRAW?t:m.getInstance(t,i)}}}),my=Object.freeze({onPlayerClickGlobal:hy,onPlayerClickPlayer:uy});x.onExit(({next:e})=>(g.getInstances().forEach(t=>t.destroy()),g.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),Pe.clear(),Q.clear(),e()));const[py]=u({name:"OnPlayerSelectObject",identifier:"iiiifff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s){const l=I.getInstance(e),c=t!==Te.UNKNOWN&&t===Te.PLAYER_OBJECT,_=t!==Te.UNKNOWN&&t===Te.GLOBAL_OBJECT;return{player:l,type:t,isPlayerObject:c,isGlobal:_,objectMp:t===Te.GLOBAL_OBJECT?g.getInstance(i):g.getInstance(i,l),modelId:a,fX:r,fY:n,fZ:s}}}),[fy]=u({name:"OnPlayerEditObject",identifier:"iiiiffffff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s,l,c,_){const d=I.getInstance(e),h=t===1;return{player:d,isPlayerObject:h,isGlobal:!h,objectMp:h?g.getInstance(i,d):g.getInstance(i),response:a,fX:r,fY:n,fZ:s,fRotX:l,fRotY:c,fRotZ:_}}}),[Iy]=u({name:"OnPlayerEditAttachedObject",identifier:"iiiiifffffffff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s,l,c,_,d,h,P,S){return{player:I.getInstance(e),response:t,index:i,modelId:a,boneId:r,fOffsetX:n,fOffsetY:s,fOffsetZ:l,fRotX:c,fRotY:_,fRotZ:d,fScaleX:h,fScaleY:P,fScaleZ:S}}}),[Py]=u({name:"OnObjectMoved",identifier:"i",beforeEach(e){return{objectMp:g.getInstance(e)}}}),[gy]=u({name:"OnPlayerObjectMoved",identifier:"ii",beforeEach(e,t){const i=I.getInstance(e);return{player:i,playerObject:g.getInstance(t,i)}}}),yy=Object.freeze({onPlayerSelect:py,onPlayerEdit:fy,onPlayerEditAttached:Iy,onGlobalMoved:Py,onPlayerMoved:gy});class L{_id=o.ACTOR_ID;sourceInfo=null;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=L.getInstance(t);if(i)return i;this._id=t}else this.sourceInfo=t}create(){if(this._id!==o.ACTOR_ID)throw new Error("[Actor]: Cannot be created twice");const{skin:t,x:i,y:a,z:r,rotation:n}=this.sourceInfo;if(this._id=L.__inject__CreateActor(t,i,a,r,n),this._id===o.ACTOR_ID||L.getInstances().length===B.MAX_ACTORS)throw new Error("[Actor]: Maximum number of actors reached");return We.set(this._id,this),this}destroy(){if(this._id===o.ACTOR_ID)throw new Error("[Actor]: Cannot before create");return C.skip||L.__inject__DestroyActor(this._id),We.delete(this._id),this._id=o.ACTOR_ID,this}isStreamIn(t){return this._id===o.ACTOR_ID?!1:L.__inject__IsActorStreamedIn(this.id,t.id)}setVirtualWorld(t){return this._id===o.ACTOR_ID?!1:L.__inject__SetActorVirtualWorld(this.id,t)}getVirtualWorld(){return this._id===o.ACTOR_ID?0:L.__inject__GetActorVirtualWorld(this.id)}applyAnimation(t,i,a,r,n,s,l,c){return this._id===o.ACTOR_ID?!1:L.__inject__ApplyActorAnimation(this.id,t,i,a,r,n,s,l,c)}clearAnimations(){return this._id===o.ACTOR_ID?!1:L.__inject__ClearActorAnimations(this.id)}setPos(t,i,a){return this._id===o.ACTOR_ID?!1:L.__inject__SetActorPos(this.id,t,i,a)}getPos(){if(this._id===o.ACTOR_ID)throw new Error("[Actor]: Cannot getPos before create");return L.__inject__GetActorPos(this.id)}setFacingAngle(t){return this._id===o.ACTOR_ID?!1:L.__inject__SetActorFacingAngle(this.id,t)}getFacingAngle(){if(this._id===o.ACTOR_ID)throw new Error("[Actor]: Cannot getFacingAngle before create");return L.__inject__GetActorFacingAngle(this.id)}setHealth(t){return this._id===o.ACTOR_ID?!1:L.__inject__SetActorHealth(this.id,t)}getHealth(){if(this._id===o.ACTOR_ID)throw new Error("[Actor]: Cannot getHealth before create");return L.__inject__GetActorHealth(this.id)}setInvulnerable(t){return this._id===o.ACTOR_ID?!1:L.__inject__SetActorInvulnerable(this.id,t)}isInvulnerable(){return this._id===o.ACTOR_ID?!1:L.__inject__IsActorInvulnerable(this.id)}isValid(){return L.isValid(this._id)}setSkin(t){return this._id===o.ACTOR_ID?!1:L.__inject__SetActorSkin(this.id,t)}getSkin(){if(this._id===o.ACTOR_ID)throw new Error("[Actor]: Cannot getSkin before create");return this.sourceInfo?this.sourceInfo.skin:L.__inject__GetActorSkin(this.id)}getAnimation(){if(this._id===o.ACTOR_ID)throw new Error("[Actor]: Cannot getAnimation before create");return L.__inject__GetActorAnimation(this.id)}getSpawnInfo(){if(this._id===o.ACTOR_ID)throw new Error("[Actor]: Cannot getSpawnInfo before create");return L.__inject__GetActorSpawnInfo(this.id)}static isValid(t){return L.__inject__IsValidActor(t)}static getInstance(t){return We.get(t)}static getInstances(){return[...We.values()]}static __inject__ApplyActorAnimation=L_;static __inject__ClearActorAnimations=O_;static __inject__CreateActor=C_;static __inject__DestroyActor=N_;static __inject__GetActorAnimation=D_;static __inject__GetActorFacingAngle=j_;static __inject__GetActorHealth=x_;static __inject__GetActorPos=G_;static __inject__GetActorSkin=kt;static __inject__GetActorSpawnInfo=Ut;static __inject__GetActorVirtualWorld=v_;static __inject__IsActorInvulnerable=B_;static __inject__IsActorStreamedIn=T_;static __inject__IsValidActor=M_;static __inject__SetActorFacingAngle=R_;static __inject__SetActorHealth=F_;static __inject__SetActorInvulnerable=V_;static __inject__SetActorPos=w_;static __inject__SetActorSkin=Ht;static __inject__SetActorVirtualWorld=b_}x.onExit(({next:e})=>(L.getInstances().forEach(t=>t.destroy()),We.clear(),e()));const[Sy]=u({name:"OnPlayerGiveDamageActor",identifier:"iifii",defaultValue:!1,beforeEach(e,t,i,a,r){return{player:I.getInstance(e),actor:L.getInstance(t),amount:i,weapon:a,bodyPart:r}}}),[Ay]=u({name:"OnActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:L.getInstance(e),player:I.getInstance(t)}}}),[Ey]=u({name:"OnActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:L.getInstance(e),player:I.getInstance(t)}}}),Dy=Object.freeze({onPlayerGiveDamage:Sy,onStreamIn:Ay,onStreamOut:Ey});class Cy{static set(t,i,a,r,n){return yh(t.id,i,a,r,n)}static disable(t){return Sh(t.id)}static isPlayerIn(t){return Dh(t.id)}static isActive(t){return Zt(t.id)}static get(t){return Yt(t.id)}}const[Ny]=u({name:"OnPlayerEnterCheckpoint",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),[Ty]=u({name:"OnPlayerLeaveCheckpoint",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),by=Object.freeze({onPlayerEnter:Ny,onPlayerLeave:Ty});class vy{static set(t,i,a,r,n,s,l,c,_){return Ah(t.id,i,a,r,n,s,l,c,_)}static disable(t){return Eh(t.id)}static isPlayerIn(t){return Ch(t.id)}static isActive(t){return zt(t.id)}static get(t){return Jt(t.id)}}const[Ly]=u({name:"OnPlayerEnterRaceCheckpoint",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),[Oy]=u({name:"OnPlayerLeaveRaceCheckpoint",identifier:"i",beforeEach(e){return{player:I.getInstance(e)}}}),wy=Object.freeze({onPlayerEnter:Ly,onPlayerLeave:Oy});class w{sourceInfo=null;_id=o.PICKUP_ID;get id(){return this._id}constructor(t){typeof t=="number"?(this._id=t,Oe.set(this.id,this)):this.sourceInfo=t}create(){if(this.id!==o.PICKUP_ID||!this.sourceInfo)throw new Error("[Pickup]: Cannot be created twice");const{model:t,type:i,virtualWorld:a,x:r,y:n,z:s,isStatic:l}=this.sourceInfo;if(l)w.__inject__AddStaticPickup(t,i,r,n,s,a);else{if(this._id=w.__inject__CreatePickup(t,i,r,n,s,a),w.getInstances().length===B.MAX_PICKUPS||this._id===o.PICKUP_ID)throw new Error("[Pickup]: Maximum number of pickups reached");Oe.set(this.id,this)}return this}destroy(){if(this.sourceInfo&&this.sourceInfo.isStatic)throw new Error("[Pickup]: Cannot destroy static pickups");if(this.id===o.PICKUP_ID)throw new Error("[Pickup]: Cannot be destroyed twice");C.skip||w.__inject__DestroyPickup(this.id),Oe.delete(this.id)}isValid(){return this.id===o.PICKUP_ID?!1:w.isValid(this.id)}isStreamedIn(t){return this.id===o.PICKUP_ID?!1:w.__inject__IsPickupStreamedIn(t.id,this.id)}getPos(){return w.__inject__GetPickupPos(this.id)}getModel(){return this.id===o.PICKUP_ID?0:w.__inject__GetPickupModel(this.id)}getType(){return this.id===o.PICKUP_ID?0:w.__inject__GetPickupType(this.id)}getVirtualWorld(){return this.id===o.PICKUP_ID?0:w.__inject__GetPickupVirtualWorld(this.id)}setPos(t,i,a,r){return this.id===o.PICKUP_ID?!1:w.__inject__SetPickupPos(this.id,t,i,a,r)}setModel(t,i=!0){return this.id===o.PICKUP_ID?!1:w.__inject__SetPickupModel(this.id,t,i)}setType(t,i=!0){return this.id===o.PICKUP_ID?!1:w.__inject__SetPickupType(this.id,t,i)}setVirtualWorld(t){return this.id===o.PICKUP_ID?!1:w.__inject__SetPickupVirtualWorld(this.id,t)}showForPlayer(t){return this.id===o.PICKUP_ID?!1:w.__inject__ShowPickupForPlayer(t.id,this.id)}hideForPlayer(t){return this.id===o.PICKUP_ID?!1:w.__inject__HidePickupForPlayer(t.id,this.id)}isHiddenForPlayer(t){return this.id===o.PICKUP_ID?!1:w.__inject__IsPickupHiddenForPlayer(t.id,this.id)}static isValid(t){return t===o.PICKUP_ID?!1:w.__inject__IsValidPickup(t)}static getInstance(t){return Oe.get(t)}static getInstances(){return[...Oe.values()]}static __inject__CreatePickup=$f;static __inject__AddStaticPickup=Jf;static __inject__DestroyPickup=Qf;static __inject__IsPickupStreamedIn=Vf;static __inject__GetPickupPos=Bf;static __inject__GetPickupModel=Mf;static __inject__GetPickupType=kf;static __inject__GetPickupVirtualWorld=Hf;static __inject__SetPickupPos=Uf;static __inject__SetPickupModel=Wf;static __inject__SetPickupType=Kf;static __inject__SetPickupVirtualWorld=Xf;static __inject__ShowPickupForPlayer=Zf;static __inject__HidePickupForPlayer=Yf;static __inject__IsPickupHiddenForPlayer=zf;static __inject__IsValidPickup=xf}x.onExit(({next:e})=>(w.getInstances().forEach(t=>t.destroy()),Oe.clear(),e()));const[Gy]=u({name:"OnPlayerPickUpPickup",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),pickup:w.getInstance(t)}}}),[Ry]=u({name:"OnPickupStreamIn",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),pickup:w.getInstance(t)}}}),[jy]=u({name:"OnPickupStreamOut",identifier:"ii",beforeEach(e,t){return{player:I.getInstance(e),pickup:w.getInstance(t)}}}),Fy=Object.freeze({onPlayerPickUp:Gy,onStreamIn:Ry,onStreamOut:jy});class v{sourceInfo=null;_id=o._3DTEXT_ID;_player=null;get id(){return this._id}constructor(t,i){if(typeof t=="number"){i&&(this._player=i);const a=v.getInstance(t,i);if(a)return a;this._id=t,this.isGlobal()&&we.set(this._id,this)}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Error("[TextLabel]: Unable to create with only id");if(this.id!==o._3DTEXT_ID)throw new Error("[TextLabel]: Unable to create again");const{charset:t="utf8",text:i,color:a,x:r,y:n,z:s,drawDistance:l,virtualWorld:c,testLOS:_,attachedPlayer:d,attachedVehicle:h}=this.sourceInfo;if(this.isGlobal()){if(this._id=II(t,i,a,r,n,s,l,c,_),this.id===o._3DTEXT_ID||v.getInstances().length===B.MAX_3DTEXT_GLOBAL)throw new Error("[TextLabel]: Unable to create textLabel, maximum has been reached");return we.set(this._id,this),this}const P=this.getPlayerId();if(P===o.PLAYER_ID)return this;const S=this.getPlayer();if(this._id=PI(t,P,i,a,r,n,s,l,typeof d>"u"?o.PLAYER_ID:d.id,typeof h>"u"?o.VEHICLE_ID:h.id,_),this.id===o._3DTEXT_ID||v.getInstances(S).length===B.MAX_3DTEXT_PLAYER)throw new Error("[TextLabel]: Unable to create player textLabel, maximum has been reached");return q.has(S)||q.set(S,new Map),q.get(this.getPlayer()).set(this.id,this),this}destroy(){if(this.id===o._3DTEXT_ID)throw new Error("[TextLabel]: Unable to destroy the textLabel before create");if(this.isGlobal())C.skip||v.__inject__Delete3DTextLabel(this.id),we.delete(this.id);else{const t=this.getPlayerId();if(t===o.PLAYER_ID)return this;const i=this.getPlayer();if(C.skip||v.__inject__DeletePlayer3DTextLabel(t,this.id),q.has(i)){const a=q.get(i);a.delete(this.id),a.size===0&&q.delete(i)}}return this._id=o._3DTEXT_ID,this}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:o.PLAYER_ID}isValid(){return C.skip&&this.id!==o._3DTEXT_ID?!0:this.isGlobal()?v.isValid(this.id):v.isValid(this.id,this.getPlayerId())}attachToPlayer(t,i,a,r){if(this.id===o._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Error("[TextLabel]: Unable to attach to player, textLabel is not global");return v.__inject__Attach3DTextLabelToPlayer(this.id,t.id,i,a,r)}attachToVehicle(t,i,a,r){if(this.id===o._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Error("[TextLabel]: Unable to attach to vehicle, textLabel is not global");return v.__inject__Attach3DTextLabelToVehicle(this.id,t.id,i,a,r)}updateText(t,i,a="utf8"){return this.id===o._3DTEXT_ID?!1:this.isGlobal()?gI(a,this.id,t,i):yI(a,this.getPlayerId(),this.id,t,i)}isStreamedIn(t){if(this.id===o._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Error("[TextLabel]: Unable to check stream in, textLabel is not global");return v.__inject__Is3DTextLabelStreamedIn(this.id,t.id)}getText(t=this.sourceInfo?.charset||"utf8"){return this.isGlobal()?SI(t,this.id):AI(t,this.getPlayerId(),this.id)}getColor(){return this.isGlobal()?v.__inject__Get3DTextLabelColor(this.id):v.__inject__GetPlayer3DTextLabelColor(this.getPlayerId(),this.id)}getPos(){return this.isGlobal()?v.__inject__Get3DTextLabelPos(this.id):v.__inject__GetPlayer3DTextLabelPos(this.getPlayerId(),this.id)}setDrawDistance(t){return this.id===o._3DTEXT_ID?!1:this.isGlobal()?v.__inject__Set3DTextLabelDrawDistance(this.id,t):v.__inject__SetPlayer3DTextLabelDrawDistance(this.getPlayerId(),this.id,t)}getDrawDistance(){return this.isGlobal()?v.__inject__Get3DTextLabelDrawDistance(this.id):v.__inject__GetPlayer3DTextLabelDrawDistance(this.getPlayerId(),this.id)}getLOS(){return this.id===o._3DTEXT_ID?!1:this.isGlobal()?v.__inject__Get3DTextLabelLOS(this.id):v.__inject__GetPlayer3DTextLabelLOS(this.getPlayerId(),this.id)}setLOS(t){return this.id===o._3DTEXT_ID?!1:this.isGlobal()?v.__inject__Set3DTextLabelLOS(this.id,t):v.__inject__SetPlayer3DTextLabelLOS(this.getPlayerId(),this.id,t)}getVirtualWorld(){return this.id===o._3DTEXT_ID?0:this.isGlobal()?v.__inject__Get3DTextLabelVirtualWorld(this.id):v.__inject__GetPlayer3DTextLabelVirtualWorld(this.getPlayerId(),this.id)}setVirtualWorld(t){return this.id===o._3DTEXT_ID?!1:this.isGlobal()?v.__inject__Set3DTextLabelVirtualWorld(this.id,t):v.__inject__SetPlayer3DTextLabelVirtualWorld(this.getPlayerId(),this.id,t)}getAttachedData(){return this.isGlobal()?v.__inject__Get3DTextLabelAttachedData(this.id):v.__inject__GetPlayer3DTextLabelAttachedData(this.getPlayerId(),this.id)}static isValid(t,i){return i===o.PLAYER_ID?!1:typeof i>"u"?v.__inject__IsValid3DTextLabel(t):v.__inject__IsValidPlayer3DTextLabel(i,t)}static getInstance(t,i){if(!i)return we.get(t);if(i.id!==o.PLAYER_ID)return q.get(i)?.get(t)}static getInstances(t){return t?t.id===o.PLAYER_ID?[]:[...q.get(t)?.values()||[]]:[...we.values()]}static getPlayersInstances(){return Array.from(q.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__Delete3DTextLabel=qh;static __inject__Attach3DTextLabelToPlayer=eu;static __inject__Attach3DTextLabelToVehicle=tu;static __inject__Is3DTextLabelStreamedIn=Uh;static __inject__Get3DTextLabelColor=Wh;static __inject__Get3DTextLabelPos=Kh;static __inject__Set3DTextLabelDrawDistance=Xh;static __inject__Get3DTextLabelDrawDistance=Zh;static __inject__Get3DTextLabelLOS=Yh;static __inject__Set3DTextLabelLOS=zh;static __inject__Get3DTextLabelVirtualWorld=$h;static __inject__Set3DTextLabelVirtualWorld=Jh;static __inject__Get3DTextLabelAttachedData=Qh;static __inject__IsValid3DTextLabel=Hh;static __inject__DeletePlayer3DTextLabel=hu;static __inject__GetPlayer3DTextLabelColor=au;static __inject__GetPlayer3DTextLabelPos=ru;static __inject__SetPlayer3DTextLabelDrawDistance=nu;static __inject__GetPlayer3DTextLabelDrawDistance=su;static __inject__GetPlayer3DTextLabelLOS=lu;static __inject__SetPlayer3DTextLabelLOS=ou;static __inject__GetPlayer3DTextLabelVirtualWorld=cu;static __inject__SetPlayer3DTextLabelVirtualWorld=_u;static __inject__GetPlayer3DTextLabelAttachedData=du;static __inject__IsValidPlayer3DTextLabel=iu}x.onExit(({next:e})=>(v.getInstances().forEach(t=>t.destroy()),v.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),we.clear(),q.clear(),e()));function xy(e,t){return(e&t)===t}function Vy(e,t,i){return(e&i)===i&&(t&i)!==i}function By(e,t){return!!(e&t)}function My(e,t,i){return(e&i)!==i&&(t&i)===i}function ky(e){const t=new Set,i=e.prototype,a=Object.getOwnPropertyNames(i).filter(n=>typeof i[n]=="function"&&n!=="constructor").reduce((n,s)=>(n[s]=i[s],n),{});function r(n,s){if(t.has(n))throw new Error(`Method '${String(n)}' of class '${e.name}' has already been hooked. Each method can only be hooked once per defineHooks call. `);if(typeof Reflect.get(i,n)!="function")throw new Error(`Invalid method: ${String(n)}`);return Reflect.set(i,n,s),t.add(n),s}return[a,r]}export{L as Actor,Dy as ActorEvent,by as CheckPointEvent,Cy as Checkpoint,M as Dialog,Ne as Dynamic3DTextLabel,bg as Dynamic3DTextLabelEvent,_e as DynamicActor,Eg as DynamicActorEvent,k as DynamicArea,jg as DynamicAreaEvent,hg as DynamicCheckPointEvent,re as DynamicCheckpoint,Ce as DynamicMapIcon,qP as DynamicMapIconEvent,K as DynamicObject,YP as DynamicObjectEvent,Z as DynamicPickup,ng as DynamicPickupEvent,ne as DynamicRaceCP,gg as DynamicRaceCPEvent,x as GameMode,De as GameText,b as GangZone,dy as GangZoneEvent,A as I18n,j as Menu,ry as MenuEvent,ty as NetStats,F as Npc,ey as NpcEvent,je as NpcNode,xe as NpcPath,Fe as NpcRecord,g as ObjectMp,yy as ObjectMpEvent,Fy as PickUpEvent,w as Pickup,I as Player,pt as PlayerEvent,vy as RaceCheckpoint,wy as RaceCpEvent,E as Streamer,m as TextDraw,my as TextDrawEvent,v as TextLabel,f as Vehicle,VP as VehicleEvent,ei as animateLib,u as defineEvent,ky as defineHooks,qf as getAnimateDurationByLibName,xy as isHolding,Vy as isPressed,By as isPressing,My as isReleased,_t as isValidAnimateLib,dt as isValidAnimateName,D as rgba,is as useTrigger,as as withTriggerOptions};
|