@infernus/core 0.12.1 → 0.12.3
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 +99 -99
- package/dist/bundle.js +4 -4
- package/dist/bundle.mjs +4 -4
- package/package.json +1 -1
package/dist/bundle.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var ca=require("node:util"),Me=require("iconv-lite");function nt(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 _a(e,t){const a={},i=Object.keys(e);for(let n=0;n<i.length;n++){const r=i[n],s=e[r];a[t(s,r,e)]=s}return a}function be(e){return e==="__proto__"}function Pe(e,t){const a=Object.keys(t);for(let i=0;i<a.length;i++){const n=a[i];if(be(n))continue;const r=t[n],s=e[n];Array.isArray(r)?Array.isArray(s)?e[n]=Pe(s,r):e[n]=Pe([],r):nt(r)?nt(s)?e[n]=Pe(s,r):e[n]=Pe({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function ha(e,t){const a={...e};for(let i=0;i<t.length;i++){const n=t[i];delete a[n]}return a}const ua=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function ma(e){return Array.from(e.match(ua)??[])}function Ve(e){return ma(e).map(a=>a.toLowerCase()).join("_")}function pa(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function fa(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function ga(e){const t=[],a=e.length;if(a===0)return t;let i=0,n="",r="",s=!1;for(e.charCodeAt(0)===46&&(t.push(""),i++);i<a;){const l=e[i];r?l==="\\"&&i+1<a?(i++,n+=e[i]):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,i++}return n&&t.push(n),t}function He(e,t,a){if(e==null)return a;switch(typeof t){case"string":{if(be(t))return a;const i=e[t];return i===void 0?pa(t)?He(e,ga(t),a):a:i}case"number":case"symbol":{typeof t=="number"&&(t=fa(t));const i=e[t];return i===void 0?a:i}default:{if(Array.isArray(t))return Pa(e,t,a);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),be(t))return a;const i=e[t];return i===void 0?a:i}}}function Pa(e,t,a){if(t.length===0)return a;let i=e;for(let n=0;n<t.length;n++){if(i==null||be(t[n]))return a;i=i[t[n]]}return i===void 0?a:i}function Sa(e){return e instanceof Buffer}class E{constructor(t,a){this.defaultLocale=t,this.locales=a,this.defaultLocale=Ve(t),this.locales=E.snakeLocaleKeys(a)}addLocales=t=>{Pe(this.locales,E.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=ha(this.locales,t)};$t=(t,a,i=this.defaultLocale)=>{const n=this.locales[Ve(i)],r=He(this.locales[this.defaultLocale],t),s=He(n,t,r);if(s===void 0)throw new Error(`[i18n]: cannot find ${i}["${t}"]`);if(typeof s!="string")return JSON.stringify(s);let l=s;return a&&a.length&&(l=ca.format(l,...a)),l};static isValidate(t){if(!Me.encodingExists(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,a){return E.isValidate(a),[...Me.encode(t,a),0]}static decodeFromBuf(t,a="utf8"){E.isValidate(a);const i=Sa(t)?t:Buffer.from(E.getValidStr(t));return Me.decode(i,a)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return _a(t,(a,i)=>Ve(i))}static convertSpecialChar(t){const a={\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(i=>i in a?a[i]:i).join("")}}const F=new Map,rt=new Map;function ya(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function st(e,t,...a){const{defaultValue:i=!0,name:n,beforeEach:r,afterEach:s,throwOnError:l=!1}=e,o=F.get(n);if(!o||!o.length)return+i;const d=r?r(...a):{},c=[];let u=t;const p=g=>{if(u++,u<o.length){try{g&&Object.assign(d,g);const f={next:p,defaultValue:i,...d},y=o[u](f);return y instanceof Promise?(c.push(y),i):y}catch(f){const y=`executing event [name:${n},index:${u}] error:
|
|
2
|
-
${f}`;if(l)throw{error:f,message:y};console.log(y)}return i}return s&&(c.length?Promise.allSettled(c).then(()=>s(d)):s(d)),i};return ya(p(),i)}function h(e){const{name:t,identifier:a,isNative:i=!0}=e;if(F.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 d=-1;if(o.skipToNext){const c=F.get(t);if(c&&c.length){const u=c.indexOf(o.skipToNext);u>-1&&(d=u)}}return st(e,d,...o.args)}return st(e,-1,...l)}function r(l,o=!1){F.has(t)||F.set(t,[]);const d=F.get(t),c=(o?d.unshift(l):d.push(l))-1;return()=>{const u=F.get(t);if(!u)return;const p=u.length-1,g=p<c?p:c;for(let f=g;f>=0;f--)if(u[f]===l){u.splice(f,1);break}return u.length===0&&F.delete(t),u.length}}const s=[r,n];return i&&(typeof a<"u"&&samp.registerEvent(t,a),samp.on(t,n)),rt.set(t,n),s}function Ea(e){return rt.get(e)}function Ia(e){return Object.assign(e,{__trigger__:!0})}const Aa=e=>!!samp.callNative("IsValidNickName","s",e),Ca=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Na=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Ta=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),Da=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),va=e=>!!samp.callNative("IsValidServerRule","s",e),wa=e=>!!samp.callNative("RemoveServerRule","s",e),Ra=e=>{samp.callNative("AllowAdminTeleport","i",e)},La=()=>!!samp.callNative("IsAdminTeleportAllowed",""),ba=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Oa=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),Ga=()=>!!samp.callNative("AreAllAnimationsEnabled",""),Fa=e=>{samp.callNative("EnableAllAnimations","i",e)},Ba=e=>{const[t,a]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:a}},xa=e=>samp.callNative("GetConsoleVarAsInt","s",e),ka=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),Ma=()=>samp.callNative("GetWeather",""),Va=e=>samp.callNative("GetServerRuleFlags","s",e),Ha=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Ua=e=>!!samp.callNative("SetModeRestartTime","f",e),Wa=()=>samp.callNativeFloat("GetModeRestartTime",""),ja=(e,t,a)=>samp.callNative("GameTextForAll","aii",e,t,a),Ka=e=>{samp.callNative("HideGameTextForAll","i",e)},Za=(e,t,a)=>samp.callNative("SendDeathMessage","iii",e,t,a),Xa=()=>samp.callNative("GetMaxPlayers",""),Ue=(e,t,a)=>Math.sqrt(e*e+t*t+a*a),Ya=e=>samp.callNative("SetGameModeText","s",e),za=e=>samp.callNative("ShowNameTags","i",e),$a=e=>samp.callNative("ShowPlayerMarkers","i",e),Ja=e=>samp.callNative("SetWorldTime","i",e),Qa=()=>samp.callNative("GetWorldTime",""),qa=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),ei=e=>samp.callNative("SetWeather","i",e),ti=()=>samp.callNativeFloat("GetGravity",""),ai=e=>samp.callNative("SetGravity","f",e),ii=(e,t,a,i,n)=>samp.callNative("CreateExplosion","fffif",e,t,a,i,n),ni=e=>samp.callNative("EnableZoneNames","i",e),ri=()=>!!samp.callNative("UsePlayerPedAnims",""),si=()=>!!samp.callNative("DisableInteriorEnterExits",""),li=e=>samp.callNative("SetNameTagDrawDistance","f",e),oi=()=>samp.callNative("DisableNameTagLOS",""),di=e=>samp.callNative("LimitGlobalChatRadius","f",e),ci=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),_i=(e,t)=>samp.callNative("ConnectNPC","ss",e,t),hi=()=>samp.callNative("GetServerTickRate",""),ui=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),mi=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),pi=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},fi=()=>!!samp.callNative("ChatTextReplacementToggled",""),gi=e=>samp.callNative("GetWeaponSlot","i",e),Pi=e=>{const[t,a]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:a}},Si=()=>samp.callNative("GetAvailableClasses",""),yi=e=>{const t=samp.callNative("GetPlayerClass","iIIFFFFIIIIII",e),[a,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,u=0,p=0,g=0,f]=t;return{teamId:a,modelId:i,spawnX:n,spawnY:r,spawnZ:s,zAngle:l,weapon1:o,weapon1Ammo:d,weapon2:c,weapon2Ammo:u,weapon3:p,weapon3Ammo:g,ret:f}},Ei=(e,t,a,i,n,r,s,l,o,d,c,u,p)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p),Ii=e=>samp.callNative("SetTeamCount","i",e),Ai=(e,t,a,i,n,r,s,l,o,d,c)=>samp.callNative("AddPlayerClass","iffffiiiiii",e,t,a,i,n,r,s,l,o,d,c),Ci=(e,t,a,i,n,r,s,l,o,d,c,u)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,u),Ni=(e,t,a,i,n,r,s,l,o,d,c,u,p)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p),Ti=e=>!!samp.callNative("SpawnPlayer","i",e),Di=e=>{const[t,a=0,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,u=0,p=0,g]=samp.callNative("GetSpawnInfo","iIIFFFFIIIIII",e);return{teamId:t,modelId:a,spawnX:i,spawnY:n,spawnZ:r,zAngle:s,weapon1:l,weapon1Ammo:o,weapon2:d,weapon2Ammo:c,weapon3:u,weapon3Ammo:p,ret:g}},vi=e=>samp.callNative("NetStats_GetConnectedTime","i",e),wi=e=>samp.callNative("NetStats_MessagesReceived","i",e),Ri=e=>samp.callNative("NetStats_BytesReceived","i",e),Li=e=>samp.callNative("NetStats_MessagesSent","i",e),bi=e=>samp.callNative("NetStats_BytesSent","i",e),Oi=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Gi=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),Fi=e=>samp.callNative("NetStats_ConnectionStatus","i",e),Bi=e=>{const[t,a]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:a}},xi=e=>!!samp.callNative("IsPlayerAdmin","i",e),ki=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Mi=e=>!!samp.callNative("Kick","i",e),Vi=e=>!!samp.callNative("Ban","i",e),Hi=e=>{const[t,a]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:a}},Ui=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Wi=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),ji=e=>samp.callNative("UnBlockIpAddress","s",e),Ki=(e,t)=>{const[a,i]=samp.callNative("gpci","iAi",e,41);return{val:E.decodeFromBuf(E.getValidStr(a),t),ret:i}},Zi=(e,t,a,i,n)=>samp.callNative("SendClientCheck","iiiii",e,t,a,i,n),Xi=()=>{samp.callNative("ClearBanList","")},Yi=e=>!!samp.callNative("IsBanned","s",e),zi=e=>samp.callNative("GetPlayerRawIp","i",e),$i=e=>{const[t,a]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:a}},Ji=e=>{const[t,a]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:a}},I=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(i=>parseInt(i,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 a=0;return t.reverse().forEach((i,n)=>{i!==0&&(a+=Math.pow(16,n*2)*i)}),a},Qi=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),qi=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),en=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),tn=e=>samp.callNative("GetPlayerWeather","i",e),an=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetPlayerWorldBounds","iFFFF",e);return{xMax:t,xMin:a,yMax:i,yMin:n,ret:r}},nn=e=>samp.callNativeFloat("GetPlayerZAim","i",e),rn=e=>{const[t=0,a=0,i=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:a,fOffsetZ:i,ret:n}},sn=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetPlayerRotationQuat","iFFFF",e);return{w:t,x:a,y:i,z:n,ret:r}},ln=e=>samp.callNative("GetPlayerDialogID","i",e),on=e=>samp.callNative("GetPlayerSpectateID","i",e),dn=e=>samp.callNative("GetPlayerSpectateType","i",e),cn=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),_n=e=>samp.callNativeFloat("GetPlayerGravity","i",e),hn=e=>!!samp.callNative("IsPlayerSpawned","i",e),un=e=>!!samp.callNative("IsPlayerControllable","i",e),mn=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),pn=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),fn=e=>!!samp.callNative("GetPlayerGhostMode","i",e),gn=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),Pn=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),Sn=e=>!!samp.callNative("HidePlayerDialog","i",e),yn=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),En=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),In=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),An=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),Cn=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),Nn=(e,t,a,i)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,a,i),Tn=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Dn=(e,t,a,i)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,a,i),vn=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),wn=e=>!!samp.callNative("IsPlayerNPC","i",e),Rn=(e,t,a,i)=>!!samp.callNative("SetPlayerPos","ifff",e,t,a,i),Ln=(e,t,a,i)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,a,i),bn=e=>{const[t,a,i,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},On=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),Gn=e=>{const[t,a]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:a}},Fn=(e,t,a,i,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,a,i,n),Bn=(e,t,a,i)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,a,i),xn=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),kn=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Mn=e=>samp.callNative("GetPlayerInterior","i",e),Vn=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),Hn=e=>{const[t,a]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:a}},Un=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Wn=e=>{const[t,a]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:a}},jn=(e,t,a)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,a),Kn=e=>samp.callNative("GetPlayerAmmo","i",e),Zn=e=>samp.callNative("GetPlayerWeaponState","i",e),Xn=e=>samp.callNative("GetPlayerTargetPlayer","i",e),Yn=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},zn=e=>samp.callNative("GetPlayerTeam","i",e),$n=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Jn=e=>samp.callNative("GetPlayerScore","i",e),Qn=e=>samp.callNative("GetPlayerDrunkLevel","i",e),qn=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),er=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,I(t)),tr=e=>samp.callNative("GetPlayerColor","i",e),ar=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),ir=e=>samp.callNative("GetPlayerSkin","i",e),nr=(e,t,a)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,a),rr=e=>!!samp.callNative("ResetPlayerWeapons","i",e),sr=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),lr=(e,t)=>{const[a,i,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:a,ammo:i,ret:n}},or=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),dr=e=>!!samp.callNative("ResetPlayerMoney","i",e),cr=e=>samp.callNative("GetPlayerMoney","i",e),_r=e=>samp.callNative("GetPlayerState","i",e),hr=e=>samp.callNative("GetPlayerPing","i",e),ur=e=>samp.callNative("GetPlayerWeapon","i",e),mr=e=>{const[t,a,i,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:a,leftRight:i,ret:n}},pr=(e,t,a)=>!!samp.callNative("SetPlayerTime","iii",e,t,a),fr=e=>{const[t,a,i]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:a,ret:i}},gr=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),Pr=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Sr=e=>!!samp.callNative("ForceClassSelection","i",e),yr=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Er=e=>samp.callNative("GetPlayerWantedLevel","i",e),Ir=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Ar=e=>samp.callNative("GetPlayerFightingStyle","i",e),Cr=(e,t,a,i)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,a,i),Nr=e=>{const[t,a,i,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Tr=(e,t,a)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,a),Dr=(e,t,a,i,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,a,i,n,r,s),vr=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),wr=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Rr=(e,t,a)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,a),Lr=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),br=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),Or=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Gr=(e,t,a,i,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,a,i,n,r),Fr=e=>{const[t,a,i,n,r,s,l]=samp.callNative("GetPlayerLastShotVectors","iFFFFFF",e);return{fOriginX:t,fOriginY:a,fOriginZ:i,fHitPosX:n,fHitPosY:r,fHitPosZ:s,ret:l}},Br=(e,t,a)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,a),xr=e=>samp.callNative("GetPlayerVehicleID","i",e),kr=e=>samp.callNative("GetPlayerVehicleSeat","i",e),Mr=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),Vr=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),Hr=(e,t,a,i,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,a,i,n),Ur=(e,t,a,i,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,a,i,n,r,s,l,o,d),Wr=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),jr=e=>samp.callNative("GetPlayerAnimationIndex","i",e),Kr=e=>samp.callNative("GetPlayerSpecialAction","i",e),Zr=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),Xr=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),Yr=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),zr=e=>samp.callNative("GetPlayerVirtualWorld","i",e),$r=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),Jr=e=>samp.callNative("GetPlayerCustomSkin","i",e),Qr=(e,t,a,i,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,a,i,n,r),qr=(e,t,a)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,a),es=e=>!!samp.callNative("StopRecordingPlayerData","i",e),ts=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),as=(e,t,a)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,a),is=(e,t,a)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,a),ns=e=>!!samp.callNative("IsPlayerConnected","i",e),rs=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),ss=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),ls=(e,t,a,i,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,a,i,n),os=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),ds=(e,t,a)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,I(a));function cs(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const _s=(e,t,a)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,a),hs=(e,t,a,i)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,a,i),us=(e,t,a,i,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,a,i,n),ms=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),ps=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},fs=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:a,z:i,ret:n}},gs=e=>samp.callNative("GetPlayerCameraMode","i",e),Ps=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Ss=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),ys=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Es=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Is=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),As=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,a,i,n,r,s,l,o),Cs=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,a,i,n,r,s,l,o),Ns=e=>!!samp.callNative("IsPlayerCuffed","i",e),Ts=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Ds=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),vs=(e,t)=>samp.callNative("StartRecordingPlayback","is",e,t),ws=()=>samp.callNative("StopRecordingPlayback",""),Rs=()=>samp.callNative("PauseRecordingPlayback",""),Ls=()=>samp.callNative("ResumeRecordingPlayback",""),bs=e=>samp.callNative("GetActorSkin","i",e),Os=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Gs=e=>{const[t=0,a=0,i=0,n=0,r=0,s]=samp.callNative("GetActorSpawnInfo","iIFFFF",e);return{skinId:t,fX:a,fY:i,fZ:n,fAngle:r,ret:s}},Fs=e=>{const[t=0,a=0,i=0,n=0,r=0,s=0,l]=samp.callNative("GetVehicleSpawnInfo","iFFFFII",e);return{fX:t,fY:a,fZ:i,fRot:n,color1:r,color2:s,ret:l}},Bs=(e,t,a,i,n,r,s,l,o=-2,d=-2)=>samp.callNative("SetVehicleSpawnInfo","iiffffiiii",e,t,a,i,n,r,s,l,o,d),xs=e=>{const[t=0,a=0,i]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:a,ret:i}},ks=e=>samp.callNative("GetVehiclePaintjob","i",e),Ms=e=>samp.callNative("GetVehicleInterior","i",e),Vs=e=>{const[t,a]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:a}},Hs=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),Us=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Ws=e=>samp.callNative("GetVehicleCab","i",e),js=e=>samp.callNative("GetVehicleOccupiedTick","i",e),Ks=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Zs=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),Xs=e=>!!samp.callNative("IsVehicleOccupied","i",e),Ys=e=>samp.callNative("GetVehicleRespawnTick","i",e),zs=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),$s=e=>!!samp.callNative("IsVehicleDead","i",e),Js=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),Qs=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),qs=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),el=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),tl=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),al=e=>samp.callNative("GetVehicleModelCount","i",e),il=e=>samp.callNative("GetVehicleLastDriver","i",e),nl=e=>samp.callNative("GetVehicleDriver","i",e),rl=()=>samp.callNative("GetVehicleModelsUsed",""),sl=e=>samp.callNative("GetVehicleSirenState","i",e),ll=e=>samp.callNative("GetVehicleLandingGearState","i",e),ol=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),dl=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),cl=e=>{const[t=0,a=0,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c]=samp.callNative("GetVehicleMatrix","iFFFFFFFFF",e);return{rightX:t,rightY:a,rightZ:i,upX:n,upY:r,upZ:s,atX:l,atY:o,atZ:d,ret:c}},lt=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,a,i,n],ret:r}},_l=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),hl=(e,t,a,i,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),ul=e=>samp.callNative("DestroyVehicle","i",e),ml=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),pl=e=>{const[t,a,i,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:a,z:i,ret:n}},fl=(e,t,a,i)=>!!samp.callNative("SetVehiclePos","ifff",e,t,a,i),gl=e=>{const[t,a]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:a}},Pl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:a,y:i,z:n,ret:r}},Sl=(e,t,a,i)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,a,i),yl=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),El=(e,t,a,i)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,a,i),Il=()=>samp.callNative("ManualVehicleEngineAndLights",""),Al=(e,t,a,i,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,a,i,n,r,s,l),Cl=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Nl=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Tl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,a,i,n),Dl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},vl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,a,i,n),wl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Rl=e=>samp.callNative("SetVehicleToRespawn","i",e),Ll=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),bl=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),Ol=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Gl=(e,t,a)=>samp.callNative("ChangeVehicleColor","iii",e,I(t),I(a)),Fl=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),Bl=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),xl=e=>{const[t,a]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:a}},kl=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),Ml=e=>samp.callNative("DetachTrailerFromVehicle","i",e),Vl=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),Hl=e=>samp.callNative("GetVehicleTrailer","i",e),Ul=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Wl=e=>samp.callNative("GetVehicleModel","i",e),jl=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),Kl=e=>samp.callNative("GetVehicleComponentType","i",e),Zl=e=>samp.callNative("RepairVehicle","i",e),Xl=e=>{const[t,a,i,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Yl=(e,t,a,i)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,a,i),zl=(e,t,a,i)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,a,i),$l=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:a,lights:i,tires:n,ret:r}},Jl=(e,t,a,i,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,a,i,n),Ql=(e,t)=>{const[a,i,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},ql=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),eo=e=>samp.callNative("GetVehicleVirtualWorld","i",e),to=e=>!!samp.callNative("IsValidVehicle","i",e),ao=(e,t,a,i,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,a,i,n,I(r),I(s)),io=(e,t,a,i,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),no=e=>!!samp.callNative("ShowVehicle","i",e),ro=e=>!!samp.callNative("HideVehicle","i",e),so=e=>!!samp.callNative("IsVehicleHidden","i",e),lo=e=>!!samp.callNative("IsPlayerInModShop","i",e),oo=e=>samp.callNative("GetPlayerSirenState","i",e),co=e=>samp.callNative("GetPlayerLandingGearState","i",e),_o=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),ho=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),uo=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),ot=e=>samp.callNative("GetVehicleMaxPassengers","i",e),mo=e=>samp.callNative("CountVehicleOccupants","i",e),po=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),fo=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetPlayerCheckpoint","iFFFF",e);return{fX:t,fY:a,fZ:i,fSize:n,ret:r}},go=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),Po=e=>{const[t=0,a=0,i=0,n=0,r=0,s=0,l=0,o]=samp.callNative("GetPlayerRaceCheckpoint","iFFFFFFF",e);return{fX:t,fY:a,fZ:i,fNextX:n,fNextY:r,fNextZ:s,fSize:l,ret:o}},So=e=>!!samp.callNative("IsMenuDisabled","i",e),yo=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),Eo=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),Io=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:a,ret:i}},Ao=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:a,ret:i}},Co=(e,t)=>{const[a,i]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:a,ret:i}},No=(e,t,a)=>{const[i,n]=samp.callNative("GetMenuItem","iiiSi",e,t,a,31);return{item:i,ret:n}},To=(e,t,a,i,n,r)=>samp.callNative("CreateMenu","siffff",e,t,a,i,n,r),Do=e=>samp.callNative("DestroyMenu","i",e),vo=(e,t,a)=>samp.callNative("AddMenuItem","iis",e,t,a),wo=(e,t,a)=>samp.callNative("SetMenuColumnHeader","iis",e,t,a),Ro=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),Lo=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),bo=e=>!!samp.callNative("IsValidMenu","i",e),Oo=e=>samp.callNative("DisableMenu","i",e),Go=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),Fo=e=>samp.callNative("GetPlayerMenu","i",e),Bo=e=>!!samp.callNative("IsValidGangZone","i",e),xo=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),ko=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),Mo=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),Vo=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),Ho=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),Uo=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GangZoneGetPos","iFFFF",e);return{fMinX:t,fMinY:a,fMaxX:i,fMaxY:n,ret:r}},Wo=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},jo=(e,t,a,i)=>samp.callNative("GangZoneCreate","ffff",e,t,a,i),Ko=e=>samp.callNative("GangZoneDestroy","i",e),Zo=(e,t,a)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,I(a)),Xo=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,I(t)),Yo=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),zo=e=>samp.callNative("GangZoneHideForAll","i",e),$o=(e,t,a)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,I(a)),Jo=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,I(t)),Qo=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),qo=e=>samp.callNative("GangZoneStopFlashForAll","i",e),ed=(e,t,a,i,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,a,i,n),td=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),ad=(e,t,a)=>samp.callNative("PlayerGangZoneShow","iii",e,t,a),id=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),nd=(e,t,a)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,a),rd=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),sd=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),ld=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),od=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),dd=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),cd=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),_d=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),hd=(e,t)=>{const[a=0,i=0,n=0,r=0,s]=samp.callNative("PlayerGangZoneGetPos","iiFFFF",e,t);return{fMinX:a,fMinY:i,fMaxX:n,fMaxY:r,ret:s}},ud=(e,t,a)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,a)},md=e=>!!samp.callNative("IsValidTextDraw","i",e),pd=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),fd=e=>{const[t,a]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:a}},gd=(e,t,a)=>{samp.callNative("TextDrawSetPos","iff",e,t,a)},Pd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:a,ret:i}},Sd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:a,ret:i}},yd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:a,ret:i}},Ed=e=>samp.callNative("TextDrawGetColor","i",e),Id=e=>samp.callNative("TextDrawGetBoxColor","i",e),Ad=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Cd=e=>samp.callNative("TextDrawGetShadow","i",e),Nd=e=>samp.callNative("TextDrawGetOutline","i",e),Td=e=>samp.callNative("TextDrawGetFont","i",e),Dd=e=>!!samp.callNative("TextDrawIsBox","i",e),vd=e=>!!samp.callNative("TextDrawIsProportional","i",e),wd=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Rd=e=>samp.callNative("TextDrawGetAlignment","i",e),Ld=e=>samp.callNative("TextDrawGetPreviewModel","i",e),bd=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("TextDrawGetPreviewRot","iFFFF",e);return{fRotX:t,fRotY:a,fRotZ:i,fZoom:n,ret:r}},Od=e=>{const[t,a,i]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:a,ret:i}},Gd=(e,t,a)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,a)},Fd=(e,t,a)=>samp.callNative("TextDrawCreate","ffa",e,t,a),Bd=e=>samp.callNative("TextDrawDestroy","i",e),xd=(e,t,a)=>samp.callNative("TextDrawLetterSize","iff",e,t,a),kd=(e,t,a)=>samp.callNative("TextDrawTextSize","iff",e,t,a),Md=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),Vd=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,I(t)),Hd=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),Ud=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,I(t)),Wd=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),jd=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),Kd=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,I(t)),Zd=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),Xd=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),Yd=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),zd=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),$d=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),Jd=e=>samp.callNative("TextDrawShowForAll","i",e),Qd=e=>samp.callNative("TextDrawHideForAll","i",e),qd=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),ec=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),tc=(e,t,a,i,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,a,i,n)},ac=(e,t,a)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,I(t),I(a)),ic=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,I(t))},nc=e=>{samp.callNative("CancelSelectTextDraw","i",e)},rc=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),sc=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),lc=(e,t)=>{const[a,i]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:a,ret:i}},oc=(e,t,a,i)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,a,i)},dc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},cc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},_c=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:a,fY:i,ret:n}},hc=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),uc=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),mc=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),pc=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),fc=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),gc=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),Pc=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),Sc=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),yc=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Ec=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),Ic=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Ac=(e,t)=>{const[a=0,i=0,n=0,r=0]=samp.callNative("PlayerTextDrawGetPreviewRot","iiFFFF",e,t);return{fRotX:a,fRotY:i,fRotZ:n,fZoom:r}},Cc=(e,t)=>{const[a,i,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:a,color2:i,ret:n}},Nc=(e,t,a,i)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,a,i),Tc=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Dc=(e,t,a,i)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,a,i),vc=(e,t,a,i)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,a,i),wc=(e,t,a)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,a),Rc=(e,t,a)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,I(a)),Lc=(e,t,a)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,a),bc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,I(a)),Oc=(e,t,a)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,a),Gc=(e,t,a)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,a),Fc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,I(a)),Bc=(e,t,a)=>samp.callNative("PlayerTextDrawFont","iii",e,t,a),xc=(e,t,a)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,a),kc=(e,t,a)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,a),Mc=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),Vc=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),Hc=(e,t,a)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,a),Uc=(e,t,a)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,a),Wc=(e,t,a,i,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,a,i,n,r),jc=(e,t,a,i)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,a,i),Kc=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),Zc=e=>!!samp.callNative("BeginObjectSelecting","i",e),Xc=e=>!!samp.callNative("EndObjectEditing","i",e),Yc=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),zc=(e,t,a,i,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,a,i,n),$c=(e,t,a,i,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,a,i,n,r,s),Jc=(e,t)=>samp.callNative("RedirectDownload","is",e,t),Qc=e=>{const[t,a]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},qc=e=>{const[t,a]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},e_=(e,t)=>{const[a=0,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,u=0,p=0,g=0,f=0,y]=samp.callNative("GetPlayerAttachedObject","iiIIFFFFFFFFFII",e,t);return{modelId:a,bone:i,fX:n,fY:r,fZ:s,fRotX:l,fRotY:o,fRotZ:d,fScaleX:c,fScaleY:u,fScaleZ:p,materialColor1:g,materialColor2:f,ret:y}},t_=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f)=>samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,a,i,n,r,s,l,o,d,c,u,p,I(g),I(f)),a_=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),i_=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),dt=e=>!!samp.callNative("IsValidCustomModel","i",e),n_=e=>{if(!dt(e))return null;const[t,a,i]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:a,ret:i}};var ct=(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))(ct||{}),_t=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(_t||{}),We=(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))(We||{}),ht=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(ht||{}),ut=(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))(ut||{}),D=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_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||{}),mt=(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))(mt||{}),V=(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))(V||{}),pt=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(pt||{}),ft=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(ft||{}),H=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(H||{}),Oe=(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))(Oe||{}),gt=(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))(gt||{}),Ge=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(Ge||{}),Pt=(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))(Pt||{}),St=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(St||{}),yt=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(yt||{}),Et=(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))(Et||{}),It=(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))(It||{}),Se=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Se||{}),At=(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))(At||{}),Fe=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(Fe||{}),ye=(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))(ye||{}),Ct=(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))(Ct||{}),Nt=(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))(Nt||{}),Tt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Tt||{}),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||{}),Ee=(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))(Ee||{}),Dt=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(Dt||{}),vt=(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))(vt||{}),wt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(wt||{}),Rt=(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))(Rt||{}),Lt=(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.NITESTICK=3]="NITESTICK",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))(Lt||{}),bt=(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))(bt||{}),Ot=(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))(Ot||{}),Gt=(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))(Gt||{}),Ke=(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))(Ke||{}),Ft=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Ft||{}),Bt=(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))(Bt||{}),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||{}),S=(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))(S||{}),Be=(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))(Be||{}),xe=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(xe||{}),j=(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))(j||{}),xt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHt=2]="RIGHt",e))(xt||{}),Ze=(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))(Ze||{});const r_=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),s_=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),l_=(e,t,a,i,n,r=!0,s=100,l=0,o=-1,d=-1,c=v.ACTOR_SD,u=-1,p=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,a,i,n,r,s,l,o,d,c,u,p),o_=e=>samp.callNative("DestroyDynamicActor","i",e),d_=e=>!!samp.callNative("IsValidDynamicActor","i",e),c_=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),__=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),h_=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),u_=(e,t,a,i,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,a,i,n,r,s,l,o),m_=e=>samp.callNative("ClearDynamicActorAnimations","i",e),p_=e=>{const[t,a]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:a}},f_=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),g_=e=>{const[t,a,i,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},P_=(e,t,a,i)=>samp.callNative("SetDynamicActorPos","ifff",e,t,a,i),S_=e=>{const[t,a]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:a}},y_=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),E_=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),I_=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),A_=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),C_=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),N_=e=>{const[t,a,i=0,n=0,r=0,s=0,l=0,o=0,d]=samp.callNative("GetDynamicActorAnimation","iSSFIIIIIii",e,32,32);return{animLib:t,animName:a,fDelta:i,loop:n,lockX:r,lockY:s,freeze:l,time:o,ret:d}},T_=(e,t,a,i=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicCircle","fffiii",e,t,a,i,n,r),D_=(e,t,a,i,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,a,i,n,r,s,l),v_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,a,i,n,r,s),w_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,a,i,n,r,s),R_=(e,t,a,i,n,r,s=-1,l=-1,o=-1)=>samp.callNative("CreateDynamicCuboid","ffffffiii",e,t,a,i,n,r,s,l,o),L_=(e,t=Number.MIN_VALUE,a=Number.MAX_VALUE,i=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicPolygon","affiiii",e,t,a,e.length,i,n,r),b_=e=>samp.callNative("DestroyDynamicArea","i",e),O_=e=>!!samp.callNative("IsValidDynamicArea","i",e),G_=e=>samp.callNative("GetDynamicAreaType","i",e),F_=e=>{const[t,a]=samp.callNative("GetDynamicPolygonPoints","iAi",e,kt(e));return{points:t,ret:a}},kt=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),B_=(e,t,a=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,a),x_=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),k_=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),M_=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),V_=e=>{const[t,a]=samp.callNative("GetPlayerDynamicAreas","iAi",e,Mt(e));return{areas:t,ret:a}},Mt=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),H_=(e,t,a,i)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,a,i),U_=(e,t,a)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,a),W_=(e,t,a,i,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,a,i,n,r,s),j_=(e,t,a,i,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,a,i,n,r),K_=(e,t,a)=>{const[i,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,a,Vt(e,t,a));return{areas:i,ret:n}},Vt=(e,t,a)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,a),Z_=(e,t,a,i,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,a,i,n,r,Ht(e,t,a,i,n,r));return{areas:s,ret:l}},Ht=(e,t,a,i,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,a,i,n,r),X_=(e,t,a=xe.DYNAMIC,i=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,a,i,n,r,s),Y_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,a,i,n),z_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,a,i,n),$_=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),J_=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),Q_=(e,t,a,i,n=-1,r=-1,s=-1,l=v.CP_SD,o=-1,d=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,a,i,n,r,s,l,o,d),Ut=e=>samp.callNative("DestroyDynamicCP","i",e),Wt=e=>!!samp.callNative("IsValidDynamicCP","i",e),q_=(e,t,a)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,a),eh=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),th=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),ah=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),ih=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,a);return{val:i,ret:n}},nh=(e,t,a,i)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,a,i),rh=(e,t,a)=>samp.callNative("Streamer_GetIntData","iii",e,t,a),sh=(e,t,a,i)=>samp.callNative("Streamer_SetIntData","iiii",e,t,a,i),lh=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,a,jt(e,t,a));return{arrayData:i,ret:n}},oh=(e,t,a,i)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,a,i,i.length),dh=(e,t,a,i)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,a,i),ch=(e,t,a,i)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,a,i),_h=(e,t,a,i)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,a,i),jt=(e,t,a)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,a),hh=e=>samp.callNative("Streamer_GetUpperBound","i",e);var ke=(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))(ke||{});const uh=(e,t,a,i,n,r=-1,s=-1,l=-1,o=v.MAP_ICON_SD,d=0,c=-1,u=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,a,i,n,r,s,l,o,d,c,u),mh=e=>samp.callNative("DestroyDynamicMapIcon","i",e),ph=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),fh=(e,t,a,i,n,r,s,l=v.OBJECT_SD,o=v.OBJECT_DD,d=[-1],c=[-1],u=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p,g,d.length,c.length,u.length,p.length),gh=(e,t,a,i,n,r=v.PICKUP_SD,s=[-1],l=[-1],o=[-1],d=[-1],c=0)=>samp.callNative("CreateDynamicPickupEx","iiffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,s.length,l.length,o.length,d.length),Ph=(e,t,a,i,n=v.CP_SD,r=[-1],s=[-1],l=[-1],o=[-1],d=0)=>samp.callNative("CreateDynamicCPEx","fffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,r.length,s.length,l.length,o.length),Sh=(e,t,a,i,n,r,s,l,o=v.RACE_CP_SD,d=[-1],c=[-1],u=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p,g,d.length,c.length,u.length,p.length),yh=(e,t,a,i,n,r=ke.LOCAL,s=v.MAP_ICON_SD,l=[-1],o=[-1],d=[-1],c=[-1],u=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,l.length,o.length,d.length,c.length),Eh=(e,t,a,i=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicCircleEx","fffaaaiii",e,t,a,i,n,r,i.length,n.length,r.length),Ih=(e,t,a,i,n,r=[-1],s=[-1],l=[-1])=>samp.callNative("CreateDynamicCylinderEx","fffffaaaiii",e,t,a,i,n,r,s,l,r.length,s.length,l.length),Ah=(e,t,a,i,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicSphereEx","ffffaaaiii",e,t,a,i,n,r,s,n.length,r.length,s.length),Ch=(e,t,a,i,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicRectangleEx","ffffaaaiii",e,t,a,i,n,r,s,n.length,r.length,s.length),Nh=(e,t,a,i,n,r,s=[-1],l=[-1],o=[-1])=>samp.callNative("CreateDynamicCuboidEx","ffffffaaaiii",e,t,a,i,n,r,s,l,o,s.length,l.length,o.length),Th=(e,t=Number.MIN_VALUE,a=Number.MAX_VALUE,i=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicPolygonEx","affiaaaiii",e,t,a,e.length,i,n,r,i.length,n.length,r.length),Dh=(e,t,a,i,n,r=!0,s=100,l=v.ACTOR_SD,o=[0],d=[-1],c=[-1],u=[-1],p=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p,o.length,d.length,c.length,u.length),vh=(e,t,a,i,n,r=3)=>{const[s,l]=samp.callNative("Streamer_GetDistanceToItem","fffiiFi",e,t,a,i,n,r);return{distance:s,ret:l}},wh=(e,t,a,i)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,a,i),Rh=(e,t,a)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,a),Lh=(e,t,a,i=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,a,i,i.length),bh=(e,t,a)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,a),Oh=(e,t,a)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,a),Gh=(e,t,a)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,a),Fh=(e,t,a=1)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,a),Bh=(e,t,a=1)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,a),xh=(e,t=1)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),kh=(e,t=1)=>samp.callNative("Streamer_CountItems","ii",e,t),Mh=(e,t,a,i,n=32,r=300,s=-1)=>{const[l=[],o=0]=samp.callNative("Streamer_GetNearbyItems","fffiAifi",e,t,a,i,n,r,s);return l.slice(0,o)},Vh=(e,t,a=32)=>{const[i=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,a);return i.slice(0,n)},Hh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},Uh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,a,i,n),Wh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},jh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,a,i,n),Kh=(e,t,a,i,n,r,s,l=-1,o=-1,d=-1,c=v.OBJECT_SD,u=v.OBJECT_DD,p=-1,g=0)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,a,i,n,r,s,l,o,d,c,u,p,g),Zh=e=>samp.callNative("DestroyDynamicObject","i",e),Xh=e=>!!samp.callNative("IsValidDynamicObject","i",e),Yh=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},zh=(e,t,a,i)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,a,i),$h=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:a,rz:i,ret:n}},Jh=(e,t,a,i)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,a,i),Qh=(e,t,a,i,n,r=-1e3,s=-1e3,l=-1e3)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,a,i,n,r,s,l),qh=e=>samp.callNative("StopDynamicObject","i",e),eu=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),tu=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),au=(e,t,a,i,n,r,s,l,o=!0)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,a,i,n,r,s,l,o),iu=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,a,i,n,r,s,l),nu=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,a,i,n,r,s,l),ru=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),su=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),lu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),ou=(e,t,a,i,n,r=0)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,a,i,n,r),du=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),cu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),_u=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),hu=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),uu=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),mu=(e,t,a,i,n,r=-1,s=-1,l=-1,o=v.PICKUP_SD,d=-1,c=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,a,i,n,r,s,l,o,d,c),pu=e=>!!samp.callNative("DestroyDynamicPickup","i",e),fu=e=>!!samp.callNative("IsValidDynamicPickup","i",e),gu=(e,t,a,i,n,r,s,l,o=-1,d=-1,c=-1,u=v.RACE_CP_SD,p=-1,g=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,a,i,n,r,s,l,o,d,c,u,p,g),Pu=(e,t,a)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,a),Su=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),yu=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),Eu=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),Iu=()=>samp.callNative("Streamer_GetTickRate",""),Au=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),Cu=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),Nu=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),Tu=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),Du=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),Kt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Zt=(e,t,a=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,a),vu=e=>samp.callNative("Streamer_GetChunkSize","i",e),wu=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),Ru=e=>samp.callNative("Streamer_GetMaxItems","i",e),Lu=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),Xt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),Yt=(e,t,a=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,a),zt=(e,t=-1)=>{const[a,i]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:a,ret:i}},$t=(e,t,a=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,a),bu=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",Be.MAX_TYPES);return{priority:e,ret:t}},Ou=e=>samp.callNative("Streamer_SetTypePriority","ai",e,Be.MAX_TYPES),Gu=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},Fu=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Bu=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},xu=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),ku=(e,t,a)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,a),Mu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Vu=(e,t,a)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,a),Hu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Uu=(e,t,a)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,a),Wu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),ju=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Ku=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Zu=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),Xu=()=>samp.callNative("Streamer_ProcessActiveItems",""),Yu=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),zu=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),$u=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),Ju=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),Qu=(e,t,a)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,a),qu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),em=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},tm=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),am=(e,t,a,i,n=-1,r=-1,s=-1,l=-1,o=!0)=>samp.callNative("Streamer_UpdateEx","ifffiiiii",e,t,a,i,n,r,s,l,o),Jt=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}]]]),Xe=e=>{const t=Jt.get(e.toUpperCase());return t===void 0?!1:t},Ye=(e,t)=>{const a=Xe(e);if(a)return t==="null"?!0:a.some(i=>i.n===t)},im=(e,t)=>{const a=Xe(e);if(a)return a.find(i=>i.n===t)?.d},te=(e,t)=>{const a=t.replace("-","")==="utf8"?e:E.encodeToBuf(e,t);return[a instanceof Array?"a":"s",a]},Qt=(e,t,a)=>{const i=te(a,e.charset);return samp.callNative("SendClientMessage",`ii${i[0]}`,e.id,I(t),i[1])},nm=(e,t,a)=>(e.forEach(i=>Qt(i,t,a)),1),qt=(e,t,a)=>{const i=te(a,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${i[0]}`,e.id,t,i[1])},rm=(e,t,a)=>(e.forEach(i=>{qt(i,t,a)}),1),sm=(e,t,a)=>{const{charset:i}=e,{style:n,caption:r,info:s,button1:l,button2:o}=a,[d,c]=te(r||"",i),[,u]=te(s||"",i),[,p]=te(l||"",i),[,g]=te(o||"",i);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,n,c,u,p,g)},lm=e=>{const[t,a]=samp.callNative("GetPlayerName","iAi",e.id,V.MAX_PLAYER_NAME);return{name:E.decodeFromBuf(E.getValidStr(t),e.charset),ret:a}},om=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,E.encodeToBuf(t,e.charset)),dm=(e,t,a)=>{const i=E.encodeToBuf(t,a);return samp.callNative("BanEx","ia",e,i)},cm=(e,t="utf8")=>{const[a,i]=te(e,t);return samp.callNative("SendRconCommand",a,i)},_m=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f,y)=>{const w=E.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,a,i,n,r,s,l,o,d,c,u,p,g,f,y)},hm=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f,y)=>{const w=E.encodeToBuf(e,y);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",w,t,a,i,n,r,s,l,o,d,c,u,p,g,f,c.length,u.length,p.length,g.length)},um=(e,t,a,i)=>{const n=E.encodeToBuf(a,i);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},mm=(e,t)=>{const[a,i]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:E.decodeFromBuf(E.getValidStr(a),t),ret:i}},pm=(e,t,a,i,n,r,s,l,o,d,c)=>{const u=E.encodeToBuf(i,e),p=E.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,a,u,n,p,s,l,o,d,c)},fm=(e,t,a="utf8")=>{const[i,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:i,txdName:E.decodeFromBuf(E.getValidStr(n),a),textureName:E.decodeFromBuf(E.getValidStr(r),a),materialColor:s,ret:l}},gm=(e,t,a)=>{const[i,n,r,s,l,o,d,c,u]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),p=E.decodeFromBuf(i,a),g=E.decodeFromBuf(r,a);return{text:p,materialSize:n,fontFace:g,fontSize:s,bold:l,fontColor:o,backColor:d,textAlignment:c,ret:u}},Pm=(e,t,a,i,n,r)=>{const s=E.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,I(a),i,n)},ae=Symbol(),U=new Map,K=new Map,Ie=new Map,Ae=new Map,Ce=new Map,Ne=new Map,Te=new Map,De=new Map,Z=new Map,ue=new Map,Q=new Map,q=new Map,ie=new Map,ne=new Map,me=new Map,re=new Map,X=new Uint32Array(65536),Sm=(e,t)=>{const a=e.length,i=t.length,n=1<<a-1;let r=-1,s=0,l=a,o=a;for(;o--;)X[e.charCodeAt(o)]|=1<<o;for(o=0;o<i;o++){let d=X[t.charCodeAt(o)];const c=d|s;d|=(d&r)+r^r,s|=~(d|r),r&=d,s&n&&l++,r&n&&l--,s=s<<1|1,r=r<<1|~(c|s),s&=c}for(o=a;o--;)X[e.charCodeAt(o)]=0;return l},ym=(e,t)=>{const a=t.length,i=e.length,n=[],r=[],s=Math.ceil(a/32),l=Math.ceil(i/32);for(let f=0;f<s;f++)r[f]=-1,n[f]=0;let o=0;for(;o<l-1;o++){let f=0,y=-1;const w=o*32,O=Math.min(32,i)+w;for(let T=w;T<O;T++)X[e.charCodeAt(T)]|=1<<T;for(let T=0;T<a;T++){const J=X[t.charCodeAt(T)],W=r[T/32|0]>>>T&1,M=n[T/32|0]>>>T&1,at=J|f,it=((J|M)&y)+y^y|J|M;let ge=f|~(it|y),Le=y⁢ge>>>31^W&&(r[T/32|0]^=1<<T),Le>>>31^M&&(n[T/32|0]^=1<<T),ge=ge<<1|W,Le=Le<<1|M,y=Le|~(at|ge),f=ge&at}for(let T=w;T<O;T++)X[e.charCodeAt(T)]=0}let d=0,c=-1;const u=o*32,p=Math.min(32,i-u)+u;for(let f=u;f<p;f++)X[e.charCodeAt(f)]|=1<<f;let g=i;for(let f=0;f<a;f++){const y=X[t.charCodeAt(f)],w=r[f/32|0]>>>f&1,O=n[f/32|0]>>>f&1,T=y|d,J=((y|O)&c)+c^c|y|O;let W=d|~(J|c),M=c&J;g+=W>>>i-1&1,g-=M>>>i-1&1,W>>>31^w&&(r[f/32|0]^=1<<f),M>>>31^O&&(n[f/32|0]^=1<<f),W=W<<1|w,M=M<<1|O,c=M|~(T|W),d=W&T}for(let f=u;f<p;f++)X[e.charCodeAt(f)]=0;return g},ea=(e,t)=>{if(e.length<t.length){const a=t;t=e,e=a}return t.length===0?e.length:e.length<=32?Sm(e,t):ym(e,t)},Em=(e,t)=>{let a=1/0,i=0;for(let n=0;n<t.length;n++){const r=ea(e,t[n]);r<a&&(a=r,i=n)}return t[i]},se=new Map,le=new Map,ta=/[^/\s]+/gi,ve={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"}},[Im,Am]=h({name:"OnCommandReceived",isNative:!1,throwOnError:!0,beforeEach(e,t,a,i,n,r,s,l,o){return{player:e,command:t,cmdText:a,buffer:i,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[Cm,Nm]=h({name:"OnCommandPerformed",isNative:!1,beforeEach(e,t,a,i,n,r,s,l,o){return{player:e,command:t,cmdText:a,buffer:i,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[Tm,we]=h({name:"OnCommandError",isNative:!1,defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o,d){return{player:e,error:t,command:a,cmdText:i,buffer:n,strictMainCmd:r,noStrictMainCmd:s,hasStrict:l,hasNoStrict:o,subcommand:d,getSuggestion(){const c=Em(i,[...se.keys(),...le.keys()]),u=ea(i,c);return{suggestion:c,distance:u}}}}}),[Dm,vm]=h({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const a=U.get(e);let i=t,n="";return typeof t=="string"?(n=t,i=E.encodeToBuf(n,"utf-8")):n=E.decodeFromBuf(t,a.charset),{player:a,buffer:i,cmdText:n}}}),[wm,Rm]=h({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,a){return{player:e,buffer:t,cmdText:a}}});function Lm(e){const t=[];let a="";for(let i=0;i<e.length;i++)a+=e[i]+" ",t.push(a.trimEnd());return t.reverse()}Dm(({player:e,buffer:t,cmdText:a,next:i})=>{const n=Rm(e,t,a);if(n)return n;const r=a.match(ta),s=Lm(r),l=s.find(y=>se.has(y)),o=s.map(y=>y.toLowerCase()).find(y=>le.has(y)),d=!!l,c=!!o,u=r.join(" ");let p=[];const g=[[l,se,!0],[o,le,!1]],f=[u,a,t,l,o,d,c,p];if(d||c){const y=g[0][0]||g[1][0];p=u.replace(y,"").trim().split(" ")}else return we(e,ve.NOT_EXIST,...f);try{if(!Am(e,...f))return we(e,ve.RECEIVED_REJECTED,...f)}catch(y){const w=typeof y=="object"?y:{error:y};return we(e,{...ve.RECEIVED_THROW,...w},...f)}for(const[y,w,O]of g){if(!y)continue;const T=w.get(y),[,J]=T;if(!J(e,y,p,a,t,O))return we(e,ve.REJECTED,...f)}return Nm(e,u,a,t,l,o,d,c,p)?(i(),!0):we(e,ve.PERFORMED,...f)});function bm(e,t,a,i,n,r){return{player:e,mainCommand:t,subcommand:a,cmdText:i,buffer:n,isStrict:r}}class x{static caseSensitive=!1;constructor(){}static on(t,a){let i=x.caseSensitive,n,r;typeof t=="string"||t instanceof Array?(n=t,r=a):(n=t.command,r=t.run,typeof t.caseSensitive<"u"&&(i=t.caseSensitive));const s=Array.isArray(n)?n:[n],l=s.find(c=>!c.match(ta));if(l)return console.log(`error command ${l} format`),()=>{};const o=i?se:le,d=s.map(c=>{const u=c.replaceAll("/",""),p=i?u:u.toLowerCase();if(!o.has(p)){const f=h({name:i?"$"+p:p,isNative:!1,beforeEach:bm});o.set(p,f)}const[g]=o.get(p);return[p,g(r)]});return()=>{d.forEach(c=>{const[u,p]=c;p()===0&&o.delete(u)})}}static off(t){(Array.isArray(t)?t:[t]).forEach(a=>{let i=a.replaceAll("/","");se.has(i)&&(F.has(i)&&F.delete(i),se.has(i)&&se.delete(i)),i=i.toLowerCase(),le.has(i)&&(F.has(i)&&F.delete(i),le.has(i)&&le.delete(i))})}static enableCaseSensitive(){x.caseSensitive=!0}static disableCaseSensitive(){x.caseSensitive=!1}static isCaseSensitive(){return x.caseSensitive}static simulate(t,a){return vm(t.id,a)}}const[aa]=h({name:"OnClientCheckResponse",beforeEach(e,t,a,i){return{player:m.getInstance(e),actionId:t,memAddr:a,data:i}}}),[Om,Gm]=h({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,a){return{player:e,newLocale:t,oldLocale:a}}}),[Fm,Bm]=h({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,a){return{player:e,newCharset:t,oldCharset:a}}});class m{constructor(t){this.id=t;const a=m.getInstance(t);if(a)return a;U.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 a=this._charset;this._charset=t,Bm(this,t,a)}get locale(){return this._locale}set locale(t){const a=this._locale;this._locale=t,Gm(this,t,a)}sendClientMessage(t,a){return Qt(this,t,a)}static sendClientMessageToAll(t,a){nm(m.getInstances(),t,a)}sendMessageToPlayer(t,a){return qt(t,this.id,a)}sendMessageToAll(t){return rm(m.getInstances(),this.id,t)}isNpc(){return wn(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return Qn(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return qn(this.id,t)}allowTeleport(t){return En(this.id,t)}isTeleportAllowed(){return In(this.id)}enableCameraTarget(t){return Ps(this.id,t)}enableStuntBonus(t){return $r(this.id,t)}getInterior(){return Mn(this.id)}setInterior(t){return kn(this.id,t)}showNameTag(t,a){return _s(this.id,t.id,a)}setColor(t){return er(this.id,t)}getColor(){return tr(this.id)}setMarker(t,a){ds(this.id,t.id,a)}getMarker(t){return cs(this.id,t.id)}resetMoney(){return dr(this.id)}getMoney(){return cr(this.id)}giveMoney(t){return or(this.id,t)}resetWeapons(){return rr(this.id)}spawn(){return Ti(this.id)}setHealth(t){return Vn(this.id,t)}getHealth(){return Hn(this.id)}toggleClock(t){return gr(this.id,t)}toggleControllable(t){return Vr(this.id,t)}toggleSpectating(t){return ts(this.id,t)}spectatePlayer(t,a=Fe.NORMAL){return as(this.id,t.id,a)}spectateVehicle(t,a=Fe.NORMAL){return is(this.id,t.id,a)}forceClassSelection(){return Sr(this.id)}kick(){return Mi(this.id)}ban(){return Vi(this.id)}banEx(t,a){return dm(this.id,t,a)}isAdmin(){return xi(this.id)}isInRangeOfPoint(t,a,i,n){return Fn(this.id,t,a,i,n)}isStreamedIn(t){return xn(this.id,t.id)}setSkin(t,a=!1){return!a&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===je.DUCK?!1:ar(this.id,t)}getSkin(){return ir(this.id)}isInAnyVehicle(){return ss(this.id)}getSpecialAction(){return Kr(this.id)}setSpecialAction(t){return Zr(this.id,t)}setScore(t){return $n(this.id,t)}getScore(){return Jn(this.id)}getPing(){return hr(this.id)||0}setPos(t,a,i){return Rn(this.id,t,a,i)}getPos(){return bn(this.id)}isSpectating(){return this.getState()===ye.SPECTATING}isWasted(){return this.getState()===ye.WASTED}getState(){return _r(this.id)}getVersion(){return Ji(this.id)}setVirtualWorld(t){return Yr(this.id,t)}getVirtualWorld(){return zr(this.id)}removeFromVehicle(){return Mr(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return yr(this.id,t)}getWantedLevel(){return Er(this.id)}setFacingAngle(t){return On(this.id,t)}getFacingAngle(){return Gn(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return Pr(this.id,t)}getWeather(){return tn(this.id)}setTime(t,a){if(t<0||t>23)throw new Error("[Player]: The valid hour value is only 0 to 23");if(a<0||a>59)throw new Error("[Player]: The valid minute value is only 0 to 59");return pr(this.id,t,a)}getTime(){return fr(this.id)}removeBuilding(t,a,i,n,r){return Gr(this.id,t,a,i,n,r)}setTeam(t){t<0||t>D.NO_TEAM||Yn(this.id,t)}getTeam(){return zn(this.id)}setSkillLevel(t,a){if(a<0||a>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return Rr(this.id,t,a)}getName(){return lm(this)}setName(t){return om(this,t)}setVelocity(t,a,i){return Cr(this.id,t,a,i)}getVelocity(){return Nr(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return Ue(a,i,n)*t}getKeys(){return mr(this.id)}getIp(){return $i(this.id)}getFightingStyle(){return Ar(this.id)}setFightingStyle(t){return Ir(this.id,t)}setArmour(t){return Un(this.id,t)}getArmour(){return Wn(this.id)}setCameraBehind(){return ms(this.id)}setCameraPos(t,a,i){return hs(this.id,t,a,i)}setCameraLookAt(t,a,i,n=Se.CUT){return us(this.id,t,a,i,n)}getCameraAspectRatio(){return Es(this.id)}getCameraFrontVector(){return fs(this.id)}getCameraMode(){return gs(this.id)}getCameraPos(){return ps(this.id)}getCameraTargetPlayer(){const t=ys(this.id);return m.getInstances().find(a=>a.id===t)}getCameraTargetVehicle(){const t=Ss(this.id);return[...K.values()].find(a=>a.id===t)}getCameraZoom(){return Is(this.id)}playAudioStream(t,a=0,i=0,n=0,r=5){let s=!1;return(a!==0||i!==0||n!==0)&&(s=!0),Dr(this.id,t,a,i,n,r,s)}stopAudioStream(){return vr(this.id)}playSound(t,a=0,i=0,n=0){return Hr(this.id,t,a,i,n)}static getMaxPlayers(){return Xa()}playCrimeReport(t,a){if(a<3||a>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Tr(this.id,t.id,a)}interpolateCameraPos(t,a,i,n,r,s,l,o=Se.CUT){return As(this.id,t,a,i,n,r,s,l,o)}interpolateCameraLookAt(t,a,i,n,r,s,l,o=Se.CUT){return Cs(this.id,t,a,i,n,r,s,l,o)}createExplosion(t,a,i,n,r){if(n<0||n>13)throw new Error("[Player]: The valid explosion type value is only 0 to 13");return Qr(this.id,t,a,i,n,r)}static isConnected(t){return ns(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return Xr(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=xr(this.id);return[...K.values()].find(a=>a.id===t)}getVehicleSeat(){return kr(this.id)}getSurfingVehicle(){const t=Lr(this.id);if(t!==D.VEHICLE_ID)return[...K.values()].find(a=>a.id===t)}applyAnimation(t,a,i=4.1,n=!1,r=!0,s=!0,l=!1,o=0,d=!1){if(!Ye(t,a))throw new Error(`[Player]: Invalid anim library or name ${t} ${a}`);return Ur(this.id,t,a,i,n,r,s,l,o,+d)}clearAnimations(t=!1){return Wr(this.id,t)}getAnimationIndex(){return jr(this.id)}getAnimationName(t=this.getAnimationIndex()){const[a,i]=ui(t);return{index:t,animLib:a,animName:i}}setShopName(t){return wr(this.id,t)}setPosFindZ(t,a,i){return Ln(this.id,t,a,i)}setWorldBounds(t,a,i,n){return ls(this.id,t,a,i,n)}clearWorldBounds(){return os(this.id)}setChatBubble(t,a,i,n,r=this.charset){return Pm(this.id,t,a,i,n,r)}getDistanceFromPoint(t,a,i){return Bn(this.id,t,a,i)}getCustomSkin(){return Jr(this.id)}getTargetPlayer(){const t=Xn(this.id);if(t!==D.PLAYER_ID)return m.getInstances().find(a=>a.id===t)}getLastShotVectors(){return Fr(this.id)}getWeapon(){return ur(this.id)}getWeaponData(t){return lr(this.id,t)}getWeaponState(){return Zn(this.id)}giveWeapon(t,a){return nr(this.id,t,a)}setAmmo(t,a){return jn(this.id,t,a)}getAmmo(){return Kn(this.id)}setArmedWeapon(t){return sr(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(D.PLAYER_ID,D.PLAYER_ID,Ke.CONNECT)}sendDeathMessage(t,a){return Za(t===D.PLAYER_ID?t:t.id,this.id,a)}sendDeathMessageToPlayer(t,a,i){return Dn(this.id,t===D.PLAYER_ID?t:t.id,a===D.PLAYER_ID?a:a.id,i)}setSpawnInfo(t,a,i,n,r,s,l,o,d,c,u,p){return t<0||t>D.NO_TEAM||a<0||a>311||a===74||o<0||c<0||p<0?!1:Ni(this.id,t,a,i,n,r,s,l,o,d,c,u,p)}redirectDownload(t){return Jc(this.id,t)}sendClientCheck(t,a,i,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",d=this.getPing(),c=(d>=200?0:d)+200;let u=null;const p=aa(({player:g,actionId:f,memAddr:y,data:w,next:O})=>(g!==this||(u&&(clearTimeout(u),u=null),s({actionId:f,memAddr:y,data:w})),O()));u=setTimeout(()=>{p(),l(o)},c),Zi(this.id,t,a,i,n)})}selectTextDraw(t){ic(this.id,t)}cancelSelectTextDraw(){nc(this.id)}beginObjectSelecting(){return Zc(this.id)}endObjectEditing(){return Xc(this.id)}getSurfingObject(){const t=br(this.id);if(t!==D.OBJECT_ID)return Z.get(t)}getSurfingPlayerObject(){const t=Or(this.id);if(t!==D.OBJECT_ID)return Z.get(t)}isAttachedObjectSlotUsed(t){return i_(this.id,t)}editAttachedObject(t){return Kc(this.id,t)}setAttachedObject(t,a,i,n=0,r=0,s=0,l=0,o=0,d=0,c=1,u=1,p=1,g=0,f=0){return this.isAttachedObjectSlotUsed(t)?0:t_(this.id,t,a,i,n,r,s,l,o,d,c,u,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?a_(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 Qi(this.id,t)}isWidescreenToggled(){return qi(this.id)}getSpawnInfo(){return Di(this.id)}getSkillLevel(t){return en(this.id,t)}isCheckpointActive(){return po(this.id)}getCheckpoint(){return fo(this.id)}isRaceCheckpointActive(){return go(this.id)}getRaceCheckpoint(){return Po(this.id)}getWorldBounds(){return an(this.id)}isInModShop(){return lo(this.id)}getSirenState(){return oo(this.id)}getLandingGearState(){return co(this.id)}getHydraReactorAngle(){return _o(this.id)}getTrainSpeed(){return ho(this.id)}getZAim(){return nn(this.id)}getSurfingOffsets(){return rn(this.id)}getRotationQuat(){return sn(this.id)}getDialogID(){return ln(this.id)}getSpectateID(){return on(this.id)}getSpectateType(){return dn(this.id)}getRawIp(){return zi(this.id)}setGravity(t){return cn(this.id,t)}getGravity(){return _n(this.id)}setAdmin(t){return ki(this.id,t)}isSpawned(){return hn(this.id)}isControllable(){return un(this.id)}isCameraTargetEnabled(){return mn(this.id)}toggleGhostMode(t){return pn(this.id,t)}getGhostMode(){return fn(this.id)}getBuildingsRemoved(){return gn(this.id)}getAttachedObject(t){return e_(this.id,t)}removeWeapon(t){return Pn(this.id,t)}isUsingOfficialClient(){return yn(this.id)}allowWeapons(t){return An(this.id,t)}areWeaponsAllowed(){return Cn(this.id)}gpci(t=this.charset){return Ki(this.id,t)}isCuffed(){return Ns(this.id)}isInDriveByMode(){return Ts(this.id)}isAndroid(){return this.isConnected()&&this[ae].isAndroid}isPC(){return this.isConnected()&&!this[ae].isAndroid}isUsingOmp(){return Ds(this.id)}simulateCommand(t){return x.simulate(this,t)}static getInstance(t){return U.get(t)}static getInstances(){return[...U.values()]}}const[ia]=h({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,a,i,n){const r=m.getInstance(e),s=E.decodeFromBuf(n,r.charset);return{player:r,dialogId:t,response:a,listItem:i,buffer:n,inputText:s}}});ia(({next:e,player:t,dialogId:a,response:i,listItem:n,buffer:r,inputText:s})=>{const l=R.waitingQueue.get(t);return!l||l.showId!==a||l.resolve({response:i,listItem:n,buffer:r,inputText:s}),e()});class R{id=-1;static showingIds=[];static maxDialogId=32767;dialog;static waitingQueue=new WeakMap;constructor(t={style:We.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,a=!1){const i=R.waitingQueue.get(t);if(!i)return!1;a&&i.reject("[Dialog]: player timeout does not respond or second request show dialog"),R.waitingQueue.delete(t);const n=R.showingIds.indexOf(i.showId);return n>-1&&R.showingIds.splice(n,1),!0}show(t){return new Promise((a,i)=>{for(R.close(t);(this.id===-1||R.showingIds.includes(this.id))&&R.showingIds.length!==R.maxDialogId;)this.id=Math.floor(Math.random()*(R.maxDialogId+1));if(this.id===-1){i("[Dialog]: The maximum number of dialogs is reached");return}R.showingIds.push(this.id),R.waitingQueue.set(t,{resolve:a,reject:i,showId:this.id}),R.__inject__ShowPlayerDialog(t,this.id,this.dialog)}).catch(a=>Promise.reject(a)).finally(()=>R.delDialogTask(t))}static close(t){R.delDialogTask(t,!0),Sn(t.id)}static __inject__ShowPlayerDialog=sm}const[na]=h({name:"OnPlayerConnect",beforeEach(e){const t=new m(e);return U.set(e,t),R.close(t),{player:t}}}),[ra]=h({name:"OnPlayerDisconnect",beforeEach(e,t){return{player:U.get(e),reason:t}},afterEach({player:e}){U.delete(e.id)}}),[sa]=h({name:"OnPlayerUpdate",beforeEach(e){return{player:m.getInstance(e)}}}),[xm]=h({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const a=m.getInstance(e);return{player:a,text:E.decodeFromBuf(t,a.charset),buffer:t}}}),[km]=h({name:"OnPlayerEnterExitModShop",beforeEach(e,t,a){return{player:m.getInstance(e),enterExit:t,interior:a}}}),[Mm]=h({name:"OnPlayerClickMap",defaultValue:!1,beforeEach(e,t,a,i){return{player:m.getInstance(e),fX:t,fY:a,fZ:i}}}),[Vm]=h({name:"OnPlayerClickPlayer",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:a}}}),[Hm]=h({name:"OnPlayerDeath",beforeEach(e,t,a){return{player:m.getInstance(e),killer:m.getInstance(t)||D.PLAYER_ID,reason:a}}}),[Um]=h({name:"OnPlayerGiveDamage",defaultValue:!1,beforeEach(e,t,a,i,n){return{player:m.getInstance(e),damage:m.getInstance(t),amount:a,weapon:i,bodyPart:n}}}),[Wm]=h({name:"OnPlayerKeyStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newKeys:t,oldKeys:a}}}),[jm]=h({name:"OnPlayerRequestClass",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[Km]=h({name:"OnPlayerRequestSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Zm]=h({name:"OnPlayerSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Xm]=h({name:"OnPlayerStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newState:t,oldState:a}}}),[Ym]=h({name:"OnPlayerSteamIn",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[zm]=h({name:"OnPlayerSteamOut",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[$m]=h({name:"OnPlayerTakeDamage",defaultValue:!1,beforeEach(e,t,a,i,n){return{player:m.getInstance(e),damage:m.getInstance(t)||D.PLAYER_ID,amount:a,weapon:i,bodyPart:n}}}),[Jm]=h({name:"OnPlayerInteriorChange",beforeEach(e,t,a){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:a}}}),[Qm]=h({name:"OnPlayerRequestDownload",beforeEach(e,t,a){return{player:m.getInstance(e),type:t,crc:a}}}),[qm]=h({name:"OnPlayerFinishedDownloading",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[ep]=h({name:"OnPlayerWeaponShot",beforeEach(e,t,a,i,n,r,s){return{player:m.getInstance(e),weapon:t,hitType:a,hitId:i,fX:n,fY:r,fZ:s}}});let Re=null;const Y=new Map,ze=new Map;function la(e){if(!e.isConnected()){Y.has(e)&&clearInterval(Y.get(e));return}let t=ze.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(Y.get(e)),$e(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:a})=>{a===72&&(e[ae].isAndroid=!1,Y.has(e)&&clearInterval(Y.get(e)),$e(e,!1))}).catch(()=>{}),t++,ze.set(e,t)}const[tp,ap]=h({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[ip,np]=h({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,a,i){return{player:e,pausedAt:t,now:a,diff:i}}}),[rp,sp]=h({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,a){return{player:e,newFps:t,oldFps:a}}}),[lp,$e]=h({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});na(({player:e,next:t})=>{if(!Re&&m.getInstances().length&&(Re=setInterval(()=>{m.getInstances().filter(i=>{const n=i.getState()!==ye.NONE;return!i.isPaused&&!i.isNpc()&&n}).forEach(i=>{Date.now()-i.lastUpdateTick>1e3&&(i.isPaused=!0,ap(i,i.lastUpdateTick))})},500)),e.isNpc())return e[ae].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[ae].isAndroid=!e.isUsingOfficialClient(),$e(e,e[ae].isAndroid),t();la(e);const a=setInterval(()=>la(e),1e3);return Y.set(e,a),t()}),ra(({player:e,next:t})=>(Re&&m.getInstances().length<=1&&(clearInterval(Re),Re=null),Y.has(e)&&(clearInterval(Y.get(e)),Y.delete(e),ze.delete(e)),t()));function op(e){if(!m.isConnected(e.id))return;const t=Date.now();if(t-e.lastUpdateFpsTick>=1e3){const a=e.getDrunkLevel();if(a<100){e.setDrunkLevel(2e3),e.lastDrunkLevel=2e3,e.lastFps=0;return}e.lastUpdateFpsTick=t;const i=e.lastFps,n=e.lastDrunkLevel-a-1;e.lastFps=n,e.lastDrunkLevel=a,sp(e,n,i)}}sa(({player:e,next:t})=>{if(!e.isNpc()){const a=Date.now();e.isPaused&&(e.isPaused=!1,np(e,e.lastUpdateTick,a,a-e.lastUpdateTick)),e.lastUpdateTick=a,op(e)}return t()});const Je=Object.freeze({onConnect:na,onDisconnect:ra,onPause:tp,onResume:ip,onUpdate:sa,onText:xm,onEnterExitModShop:km,onClickMap:Mm,onClickPlayer:Vm,onDeath:Hm,onGiveDamage:Um,onKeyStateChange:Wm,onRequestClass:jm,onRequestSpawn:Km,onSpawn:Zm,onStateChange:Xm,onStreamIn:Ym,onStreamOut:zm,onTakeDamage:$m,onInteriorChange:Jm,onRequestDownload:Qm,onFinishedDownloading:qm,onCheckResponse:aa,onCommandReceived:Im,onCommandPerformed:Cm,onCommandError:Tm,onCommandText:x.on,offCommandText:x.off,onDialogResponse:ia,onLocaleChange:Om,onCharsetChange:Fm,onFpsUpdate:rp,onWeaponShot:ep,onAndroidCheck:lp,onCommandTextRaw:wm}),dp=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],cp=[[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],[],[],[],[],[],[],[],[]],_p=(e,t)=>{if(!Qe(e))return!1;const a=cp[e-400];if(a===null)return!1;const i=t-1e3;return dp.includes(i)||a.includes(i)},Qe=e=>e>=400&&e<=611,hp=(e,t)=>{if(t<0||t>2)return!1;const a=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 a===void 0?!1:t<=a},[oa]=h({name:"OnGameModeInit"}),[da]=h({name:"OnGameModeExit"}),[up]=h({name:"OnIncomingConnection",defaultValue:!1,beforeEach(e,t,a){return{playerId:e,ipAddress:t,port:a}}}),[mp]=h({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:E.decodeFromBuf(e)}}}),[pp]=h({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,a){return{ip:E.decodeFromBuf(e),password:E.decodeFromBuf(t),success:!!a,ipBuffer:e,passwordBuffer:t}}}),oe=[],pe=[],qe=new Map,et=async e=>{try{return await new Promise((t,a)=>{const i=oe.findIndex(l=>l.name===e);if(i===-1)return;const n=oe[i];function r(l){l.length&&qe.set(e,l),oe.splice(i,1),pe.push(n),setTimeout(t)}const s=n.load();s instanceof Promise?s.then(r).catch(a):r(s)})}catch(t){throw new Error(`[GameMode]: script ${e} load fail
|
|
3
|
-
err:${t}`)}},
|
|
4
|
-
${t}`)}},fp=async e=>{await tt(e),await et(e)};oa(async({next:e})=>{const t=oe.map(a=>a.name);for(const a of t)await et(a);return e()}),da(async({next:e})=>{const t=pe.map(a=>a.name);for(const a of t)await tt(a);return e()});const gp=function(e,...t){if(oe.some(a=>a.name===e.name)||pe.some(a=>a.name===e.name))throw new Error(`[GameMode]: script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),oe.push(e)};class L{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=oa;static onExit=da;static onIncomingConnection=up;static onRconCommand=mp;static onRconLoginAttempt=pp;static use(t,...a){return gp(t,...a),this}static loadUseScript=et;static reloadUseScript=fp;static unloadUseScript=tt;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 ei(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return Ja(t)}static getWorldTime=Qa;static setTeamCount=Ii;static sendRconCommand=cm;static addPlayerClass=Ai;static addPlayerClassEx=Ci;static createExplosion(t,a,i,n,r){if(n<0||n>13)throw new Error("[GameMode]: The valid explosion type value is only 0 to 13");return ii(t,a,i,n,r)}static manualVehicleEngineAndLights=Il;static blockIpAddress=Wi;static unBlockIpAddress=ji;static getServerTickRate=hi;static addSimpleModel(t,a,i,n,r){return this.checkSimpleModel(t,a,i,n,r)?zc(t,a,i,n,r):0}static addSimpleModelTimed(t,a,i,n,r,s,l){return this.checkSimpleModel(t,a,i,n,r,s,l)?$c(t,a,i,n,r,s,l):0}static checkSimpleModel(t,a,i,n,r,s,l){if(t<-1)throw new Error("[GameMode]: AddSimpleModel - Error virtual world");if(a<0)throw new Error("[GameMode]: AddSimpleModel - Error baseId");if(i>-1e3||i<-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=dt;static getCustomModePath=n_;static getConsoleVarAsString(t,a="utf8"){const{consoleVarBuf:i,ret:n}=Ba(t);return{consoleVar:E.decodeFromBuf(E.getValidStr(i),a),ret:n}}static getRestartTime=Wa;static setRestartTime=Ua;static allowAdminTeleport=Ra;static isAdminTeleportAllowed=La;static allowInteriorWeapons=ba;static areInteriorWeaponsAllowed=Oa;static areAllAnimationsEnabled=Ga;static enableAllAnimations=Fa;static enableStuntBonusForAll=mi;static enableVehicleFriendlyFire=qa;static enableZoneNames=ni;static disableInteriorEnterExits=si;static setGameModeText=Ya;static getGravity=ti;static setGravity=ai;static showNameTags=za;static disableNameTagLOS=oi;static usePlayerPedAnims=ri;static showPlayerMarkers=$a;static limitPlayerMarkerRadius=ci;static limitGlobalChatRadius=di;static setNameTagDrawDistance=li;static findModelFileNameFromCRC=Qc;static findTextureFileNameFromCRC=qc;static getWeaponName=Pi;static setObjectsDefaultCameraCollision=Yc;static vectorSize=Ue;static clearBanList=Xi;static isBanned=Yi;static isValidNickName=Aa;static allowNickNameCharacter=Ca;static isNickNameCharacterAllowed=Na;static addServerRule=Ta;static setServerRule=Da;static isValidServerRule=va;static removeServerRule=wa;static getWeaponSlot=gi;static getAvailableClasses=Si;static getPlayerClass=yi;static editPlayerClass=Ei;static toggleChatTextReplacement=pi;static chatTextReplacementToggled=fi;static getConsoleVarAsInt=xa;static getConsoleVarAsBool=ka;static getWeather=Ma;static getServerRuleFlag=Va;static setServerRuleFlags=Ha}const A={skip:!1};L.onInit(({next:e})=>(A.skip=!1,e())),L.onExit(({next:e})=>(A.skip=!0,e()));class C{sourceInfo=null;isStatic=!1;static createdCount=0;_id=-1;get id(){return this._id}constructor(t,a=!1){if(typeof t=="number"){const i=C.getInstance(t);if(i)return i;this._id=t,K.set(this._id,this),this.isValid()&&C.createdCount++}else this.sourceInfo=t,this.isStatic=a}create(t=!1){if(this.id!==-1)throw new Error("[Vehicle]: Unable to create again");if(!this.sourceInfo)throw new Error("[Vehicle]: Unable to create with only id");if(C.createdCount===V.MAX_VEHICLES)throw new Error("[Vehicle]: Unable to continue to create vehicle, maximum allowable quantity has been reached");const{modelId:a,x:i,y:n,z:r,zAngle:s,color:l,respawnDelay:o,addSiren:d}=this.sourceInfo;if(!(!t&&!Qe(a))){if(this.isStatic){if(o===void 0){this._id=C.__inject_AddStaticVehicle(a,i,n,r,s,l[0],l[1]);return}this._id=C.__inject_AddStaticVehicleEx(a,i,n,r,s,l[0],l[1],o||-1,d||!1)}else this._id=C.__inject_CreateVehicle(a,i,n,r,s,l[0],l[1],o||-1,d||!1);C.createdCount++,K.set(this._id,this)}}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Vehicle]: Unable to destroy the vehicle before create");A.skip||C.__inject_DestroyVehicle(this.id),C.createdCount--,K.delete(this._id),this._id=-1}addComponent(t){if(this.id===-1)return 0;if(!_p(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return bl(this.id,t)}removeComponent(t){if(this.getComponentInSlot(C.getComponentType(t))===0)throw new Error(`[Vehicle]: component id ${t} does not exist on this vehicle`);return Ol(this.id,t)}getComponentInSlot(t){return jl(this.id,t)}linkToInterior(t){return this.id===-1?0:Ll(this.id,t)}setVirtualWorld(t){return this.id===-1?0:ql(this.id,t)}getVirtualWorld(){return this.id===-1?0:eo(this.id)}repair(){return this.id===-1?0:Zl(this.id)}setPos(t,a,i){return this.id===-1?!1:fl(this.id,t,a,i)}getPos(){return pl(this.id)}getHealth(){return xl(this.id)}setHealth(t){return this.id===-1?0:Bl(this.id,t)}isPlayerIn(t){return this.id===-1?!1:rs(t.id,this.id)}putPlayerIn(t,a){if(this.id===-1||a<0)return 0;if(a>4)throw new Error("[Vehicle]: If the seat is invalid or is taken, will cause a crash when they EXIT the vehicle.");return Br(t.id,this.id,a)}getZAngle(){return gl(this.id)}setZAngle(t){return this.id===-1?0:yl(this.id,t)}setNumberPlate(t){if(this.id===-1)return 0;if(t.length<1||t.length>32)throw new Error("[Vehicle]: The length of the number plate ranges from 32 characters");if(!/^[a-zA-Z0-9]+$/.test(t))throw new Error("[Vehicle]: number plates only allow letters and numbers");return Ul(this.id,t)}changeColors(t,a){return this.id===-1?0:Gl(this.id,t,a)}setVelocity(t,a,i){return this.id===-1?!1:Yl(this.id,t,a,i)}getVelocity(){return Xl(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return Ue(a,i,n)*t}setAngularVelocity(t,a,i){return this.id===-1?!1:zl(this.id,t,a,i)}getDamageStatus(){return $l(this.id)}updateDamageStatus(t,a,i,n){return Jl(this.id,t,a,i,n)}getDistanceFromPoint(t,a,i){return Sl(this.id,t,a,i)}getModel(){return Wl(this.id)}static getModelInfo(t,a){return Ql(t,a)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return Pl(this.id)}setRespawn(){return this.id===-1?0:Rl(this.id)}isStreamedIn(t){return this.id===-1?!1:ml(this.id,t.id)}setParamsCarDoors(t,a,i,n){return this.id===-1?0:Tl(this.id,t,a,i,n)}setParamsCarWindows(t,a,i,n){return this.id===-1?0:vl(this.id,t,a,i,n)}getParamsCarDoors(){return Dl(this.id)}getParamsCarWindows(){return wl(this.id)}setParamsEx(t,a,i,n,r,s,l){return this.id===-1?0:Al(this.id,t,a,i,n,r,s,l)}getParamsEx(){if(this.id===-1)return{engine:-1,lights:-1,alarm:-1,doors:-1,bonnet:-1,boot:-1,objective:-1};const[t,a,i,n,r,s,l]=Cl(this.id);return{engine:t,lights:a,alarm:i,doors:n,bonnet:r,boot:s,objective:l}}toggleEngine(t){if(this.id===-1)return 0;const{lights:a,alarm:i,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(t,a,i,n,r,s,l)}toggleLights(t){if(this.id===-1)return 0;const{engine:a,alarm:i,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,t,i,n,r,s,l)}toggleAlarm(t){if(this.id===-1)return 0;const{engine:a,lights:i,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,t,n,r,s,l)}toggleDoors(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,n,t,r,s,l)}toggleBonnet(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,doors:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,n,r,t,s,l)}toggleBoot(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,doors:r,bonnet:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,n,r,s,t,l)}toggleObjective(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,doors:r,bonnet:s,boot:l}=this.getParamsEx();return this.setParamsEx(a,i,n,r,s,l,t)}getParamsSirenState(){return this.id===-1?-2:Nl(this.id)}setParamsForPlayer(t,a,i){return this.id===-1?0:El(this.id,t.id,a,i)}isTrailerAttached(){return this.id===-1?!1:Vl(this.id)}changePaintjob(t){return this.id===-1||!hp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),Fl(this.id,t),1)}attachTrailer(t){return this.id===-1?0:kl(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&Ml(this.id)}getTrailer(){return C.getInstance(Hl(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return cl(this.id)}getTrainSpeed(){return this.id===-1?0:dl(this.id)}getHydraReactorAngle(){return this.id===-1?0:ol(this.id)}getLandingGearState(){return this.id===-1?0:ll(this.id)}getSirenState(){return this.id===-1?0:sl(this.id)}getDriver(){return U.get(nl(this.id))}getLastDriver(){return U.get(il(this.id))}isSirenEnabled(){return tl(this.id)}toggleSirenEnabled(t){return this.id===-1?0:qs(this.id,t)}setParamsSirenState(t){return this.id===-1?0:el(this.id,t)}isDead(){return this.id===-1?!0:$s(this.id)}setDead(t){return this.id===-1?!1:Js(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:Qs(this.id,t)}getRespawnTick(){return this.id===-1?0:Ys(this.id)}setRespawnTick(t){return this.id===-1?!1:zs(this.id,t)}isOccupied(){return this.id===-1?!1:Xs(this.id)}hasBeenOccupied(){return this.id===-1?!1:Zs(this.id)}getOccupiedTick(){return this.id===-1?0:js(this.id)}setOccupiedTick(t){return this.id===-1?0:Ks(this.id,t)}getCab(){return this.id===-1?0:Ws(this.id)}getRespawnDelay(){return this.id===-1?0:Us(this.id)}setRespawnDelay(t){return this.id===-1?0:Hs(this.id,t)}getNumberPlate(){return Vs(this.id)}getInterior(){return this.id===-1?0:Ms(this.id)}getPaintjob(){return this.id===-1?-1:ks(this.id)}getColors(){return xs(this.id)}setSpawnInfo(t,a,i,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!Qe(t)?0:Bs(this.id,t,a,i,n,r,I(s),I(l),o,d)}getSpawnInfo(){return Fs(this.id)}getRandomColorPair(){return lt(this.getModel())}show(){return this.id===-1?!1:no(this.id)}hide(){return this.id===-1?!1:ro(this.id)}isHidden(){return this.id===-1?!1:so(this.id)}getVehicleOccupant(t){return uo(this.id,t)}getVehicleMaxPassengers(){return ot(this.getModel())}countVehicleOccupants(){return mo(this.getModel())}static getVehicleMaxPassengers=ot;static getRandomColorPair=lt;static getComponentType=Kl;static colorIndexToColor=_l;static isValid=to;static getModelsUsed=rl;static getModelCount=al;static getInstance(t){return K.get(t)}static getInstances(){return[...K.values()]}static __inject_AddStaticVehicle=ao;static __inject_AddStaticVehicleEx=io;static __inject_CreateVehicle=hl;static __inject_DestroyVehicle=ul}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),K.clear(),e()));const[Pp]=h({name:"OnVehicleDamageStatusUpdate",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[Sp]=h({name:"OnVehicleDeath",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[yp]=h({name:"OnVehicleMod",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:a}}}),[Ep]=h({name:"OnVehiclePaintjob",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:a}}}),[Ip]=h({name:"OnVehicleRespray",beforeEach(e,t,a,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[a,i]}}}),[Ap]=h({name:"OnVehicleSirenStateChange",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!a}}}),[Cp]=h({name:"OnVehicleSpawn",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[Np]=h({name:"OnVehicleStreamIn",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Tp]=h({name:"OnVehicleStreamOut",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Dp]=h({name:"OnPlayerEnterVehicle",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!a}}}),[vp]=h({name:"OnPlayerExitVehicle",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[wp]=h({name:"OnNpcEnterVehicle",beforeEach(e,t){return{vehicle:C.getInstance(e),seatId:t}}}),[Rp]=h({name:"OnNpcExitVehicle"}),[Lp]=h({name:"OnTrailerUpdate",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[bp]=h({name:"OnUnoccupiedVehicleUpdate",beforeEach(e,t,a,i,n,r,s,l,o){return{vehicle:C.getInstance(e),player:m.getInstance(t),passengerSeat:a,newX:i,newY:n,newZ:r,velX:s,velY:l,velZ:o}}}),Op=Object.freeze({onDamageStatusUpdate:Pp,onDeath:Sp,onMod:yp,onPaintjob:Ep,onRespray:Ip,onSirenStateChange:Ap,onSpawn:Cp,onStreamIn:Np,onStreamOut:Tp,onPlayerEnter:Dp,onPlayerExit:vp,onNpcEnter:wp,onNpcExit:Rp,onTrailerUpdate:Lp,onUnoccupiedUpdate:bp}),[de]=h({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[ce]=h({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[Gp]=h({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class P{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=Iu;static setTickRate=Au;static getPlayerTickRate(t){return Cu(t.id)}static setPlayerTickRate(t,a=50){return Nu(t.id,a)}static toggleChunkStream=Tu;static isToggleChunkStream=Du;static getChunkTickRate(t,a=-1){return a instanceof m?Kt(t,a.id):Kt(t,a)}static setChunkTickRate(t,a,i=-1){return i instanceof m?Zt(t,a,i.id):Zt(t,a,i)}static getChunkSize=vu;static setChunkSize=wu;static getMaxItems=Ru;static setMaxItems=Lu;static getVisibleItems(t,a=-1){return a instanceof m?Xt(t,a.id):Xt(t,a)}static setVisibleItems(t,a,i=-1){return i instanceof m?Yt(t,a,i.id):Yt(t,a,i)}static getRadiusMultiplier(t,a=-1){return a instanceof m?zt(t,a.id):zt(t,a)}static setRadiusMultiplier(t,a,i=-1){return i instanceof m?$t(t,i.id):$t(t,a,i)}static getTypePriority=bu;static setTypePriority=Ou;static getCellDistance=Gu;static setCellDistance=Fu;static getCellSize=Bu;static setCellSize=xu;static toggleItemStatic=ku;static isToggleItemStatic=Mu;static toggleItemInvAreas=Vu;static isToggleItemInvAreas=Hu;static toggleItemCallbacks=Uu;static isToggleItemCallbacks=Wu;static toggleErrorCallback=ju;static isToggleErrorCallback=Ku;static amxUnloadDestroyItems=Zu;static processActiveItems=Xu;static toggleIdleUpdate(t,a){return Yu(t.id,a)}static isToggleIdleUpdate(t){return zu(t.id)}static toggleCameraUpdate(t,a){return $u(t.id,a)}static isToggleCameraUpdate(t){return Ju(t.id)}static toggleItemUpdate(t,a,i){return Qu(t.id,a,i)}static isToggleItemUpdate(t,a){return qu(t.id,a)}static getLastUpdateTime(){return em()}static update(t,a=-1){return tm(t.id,a)}static updateEx(t,a,i,n,r,s,l,o,d){return am(t.id,a,i,n,r,s,l,o,d)}static getDistanceToItem=vh;static toggleItem(t,a,i,n){return wh(t.id,a,i,n)}static isToggleItem(t,a,i){return Rh(t.id,a,i)}static toggleAllItems(t,a,i,n=[-1]){return Lh(t.id,a,i,n)}static getItemInternalID(t,a,i){return bh(t.id,a,i)}static getItemStreamerID(t,a,i){return Oh(t.id,a,i)}static isItemVisible(t,a,i){return Gh(t.id,a,i)}static destroyAllVisibleItems(t,a,i=1){return Fh(t.id,a,i)}static countVisibleItems(t,a,i=1){return Bh(t.id,a,i)}static destroyAllItems=xh;static countItems=kh;static getNearbyItems=Mh;static getAllVisibleItems(t,a,i){return Vh(t.id,a,i)}static getItemPos=Hh;static setItemPos=Uh;static getItemOffset=Wh;static setItemOffset=jh;static getFloatData=ih;static setFloatData=nh;static getIntData=rh;static setIntData=sh;static getArrayData=lh;static setArrayData=oh;static isInArrayData=dh;static appendArrayData=ch;static removeArrayData=_h;static getArrayDataLength=jt;static getUpperBound=hh;static onPluginError=Gp}class B{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=B.getInstance(t);if(a)return a;this._id=t,Z.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,worldId:i,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{modelId:o,x:d,y:c,z:u,rx:p,ry:g,rz:f,extended:y}=this.sourceInfo;return t??=v.OBJECT_SD,a??=v.OBJECT_DD,l??=0,y?(typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=fh(o,d,c,u,p,g,f,t,a,i,n,r,s,l)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=Kh(o,d,c,u,p,g,f,i,n,r,t,a,s,l)),Z.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerObject]: Unable to destroy the object before create");return A.skip||Zh(this.id),Z.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.sourceInfo&&this.id!==-1?!0:B.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:P.getIntData(S.OBJECT,this._id,j.MODEL_ID)}getPos(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get position before create");return Yh(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return zh(this.id,t,a,i)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return $h(this.id)}setRot(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return Jh(this.id,t,a,i)}move(t,a,i,n,r=-1e3,s=-1e3,l=-1e3){if(this.id===-1)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(),Qh(this.id,t,a,i,n,r,s,l)}stop(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot stop moving before create");return qh(this.id)}isMoving(){return this.id===-1?!1:eu(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return tu(t.id,this.id)}attachToObject(t,a,i,n,r,s,l,o=!0){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToObject before both are created");return au(this.id,t.id,a,i,n,r,s,l,o)}attachToPlayer(t,a,i,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToPlayer before both are created");return iu(this.id,t.id,a,i,n,r,s,l)}attachToVehicle(t,a,i,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToVehicle before both are created");return nu(this.id,t.id,a,i,n,r,s,l)}edit(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to edit before create");return t.endObjectEditing(),ru(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:su(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:lu(this.id,t)}getMaterial(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material before create");return fm(this.id,t)}setMaterial(t,a,i,n,r="#000"){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material before create");return ou(this.id,t,a,i,n,I(r))}isMaterialTextUsed(t){return this.id===-1?!1:du(this.id,t)}removeMaterialText(t){return this.isMaterialTextUsed(t)?cu(this.id,t):0}getMaterialText(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material text before create");return gm(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,a,i,n=Ze.SIZE_256x128,r="Arial",s=24,l=1,o="#fff",d="#000",c=0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),pm(t||"utf8",this.id,a,i,n,r,s,l,I(o),I(d),c)}getPlayerCameraTarget(t){const a=_u(t.id);if(a!==D.OBJECT_ID)return Z.get(a)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.OBJECT,this.id)}setNoCameraCollision(){return hu(this.id)}getNoCameraCollision(){return uu(this.id)}static isValid=Xh;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.OBJECT,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Z.get(t)}static getInstances(){return[...Z.values()]}}L.onExit(({next:e})=>(B.getInstances().forEach(t=>t.destroy()),Z.clear(),e()));const[Fp,Bp]=h({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[xp,kp]=h({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.OBJECT?Bp(a,B.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.OBJECT?kp(a,B.getInstance(t)):i());const[Mp]=h({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:B.getInstance(e)}}}),[Vp]=h({name:"OnPlayerEditDynamicObject",identifier:"iiiiiiiii",defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o){return{player:m.getInstance(e),object:B.getInstance(t),response:a,x:i,y:n,z:r,rX:s,rY:l,rZ:o}}}),[Hp]=h({name:"OnPlayerSelectDynamicObject",identifier:"iiiiii",beforeEach(e,t,a,i,n,r){return{player:m.getInstance(e),object:B.getInstance(t),modelId:a,x:i,y:n,z:r}}}),[Up]=h({name:"OnPlayerShootDynamicObject",identifier:"iiiiii",beforeEach(e,t,a,i,n,r){return{player:m.getInstance(e),object:B.getInstance(a),weapon:t,x:i,y:n,z:r}}}),[Wp]=h({name:"OnPlayerEditAttachedObject",defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o,d,c,u,p,g){return{player:m.getInstance(e),response:t,index:a,modelId:i,boneId:n,fOffsetX:r,fOffsetY:s,fOffsetZ:l,fRotX:o,fRotY:d,fRotZ:c,fScaleX:u,fScaleY:p,fScaleZ:g}}}),jp=Object.freeze({onMoved:Mp,onPlayerEdit:Vp,onPlayerSelect:Hp,onPlayerShoot:Up,onPlayerEditAttached:Wp,onStreamIn:Fp,onStreamOut:xp});class _e{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=_e.getInstance(t);if(a)return a;this._id=t,ne.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,worldId:i,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{x:o,y:d,z:c,type:u,color:p,extended:g}=this.sourceInfo;if(u<0||u>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=ke.LOCAL,a??=v.MAP_ICON_SD,l??=0,g?(typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=yh(o,d,c,u,I(p),t,a,i,n,r,s,l),ne.set(this._id,this),this):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=uh(o,d,c,u,I(p),i,n,r,a,t,s,l),ne.set(this._id,this),this)}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerMapIcon]: Unable to destroy the map icon before create");return A.skip||mh(this.id),ne.delete(this._id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:_e.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerMapIcon]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.MAP_ICON,this.id)}static isValid=ph;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.MAP_ICON,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ne.get(t)}static getInstances(){return[...ne.values()]}}L.onExit(({next:e})=>(_e.getInstances().forEach(t=>t.destroy()),ne.clear(),e()));const[Kp,Zp]=h({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Xp,Yp]=h({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.MAP_ICON?Zp(a,_e.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.MAP_ICON?Yp(a,_e.getInstance(t)):i());const zp=Object.freeze({onStreamIn:Kp,onStreamOut:Xp});class k{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=k.getInstance(t);if(a)return a;this._id=t,me.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,modelId:o,x:d,y:c,z:u,extended:p}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=v.PICKUP_SD,s??=0,p?(typeof a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=k.__inject_CreateDynamicPickupEx(o,l,d,c,u,t,a,i,n,r,s)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=k.__inject_CreateDynamicPickup(o,l,d,c,u,a,i,n,t,r,s)),me.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerPickup]: Unable to destroy the pickup before create");return A.skip||k.__inject_DestroyDynamicPickup(this.id),me.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:k.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerPickup]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.PICKUP,this.id)}static isValid=fu;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.PICKUP,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return me.get(t)}static getInstances(){return[...me.values()]}static __inject_CreateDynamicPickup=mu;static __inject_CreateDynamicPickupEx=gh;static __inject_DestroyDynamicPickup=pu}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),me.clear(),e()));const[$p,Jp]=h({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Qp,qp]=h({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.PICKUP?Jp(a,k.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.PICKUP?qp(a,k.getInstance(t)):i());const[ef]=h({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:k.getInstance(t)}}}),tf=Object.freeze({onPlayerPickUp:ef,onStreamIn:$p,onStreamOut:Qp});class z{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=z.getInstance(t);if(a)return a;this._id=t,ie.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{size:l,x:o,y:d,z:c,extended:u}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=v.CP_SD,s??=0,u?(typeof a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=Ph(o,d,c,l,t,a,i,n,r,s)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=Q_(o,d,c,l,a,i,n,t,r,s)),ie.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerCheckpoint]: Unable to destroy the checkpoint before create");return A.skip||Ut(this.id),ie.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:z.isValid(this.id)}togglePlayer(t,a){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle the player before create");return q_(t.id,this.id,a),this}isPlayerIn(t){return this.id===-1?!1:th(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.CP,this.id)}static isValid=Wt;static togglePlayerAll(t,a){return eh(t.id,a)}static getPlayerVisible(t){return ie.get(ah(t.id))}static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.CP,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ie.get(t)}static getInstances(){return[...ie.values()]}}L.onExit(({next:e})=>(z.getInstances().forEach(t=>t.destroy()),ie.clear(),e()));const[af,nf]=h({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[rf,sf]=h({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.CP?nf(a,z.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.CP?sf(a,z.getInstance(t)):i());const[lf]=h({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),[of]=h({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),df=Object.freeze({onPlayerEnter:lf,onPlayerLeave:of,onStreamIn:af,onStreamOut:rf});class ${sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=$.getInstance(t);if(a)return a;this._id=t,re.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,size:o,x:d,y:c,z:u,nextX:p,nextY:g,nextZ:f,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 a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=Sh(l,d,c,u,p,g,f,o,t,a,i,n,r,s)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=gu(l,d,c,u,p,g,f,o,a,i,n,t,r,s)),re.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerRaceCP]: Unable to destroy the checkpoint before create");return A.skip||Ut(this.id),re.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:$.isValid(this.id)}togglePlayer(t,a){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle the player before create");return Pu(t.id,this.id,a),this}static togglePlayerAll(t,a){return Su(t.id,a)}isPlayerIn(t){return this.id===-1?!1:yu(t.id,this.id)}static getPlayerVisible(t){return re.get(Eu(t.id))}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.RACE_CP,this.id)}static isValid=Wt;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.RACE_CP,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return re.get(t)}static getInstances(){return[...re.values()]}}L.onExit(({next:e})=>($.getInstances().forEach(t=>t.destroy()),re.clear(),e()));const[cf,_f]=h({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[hf,uf]=h({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.RACE_CP?_f(a,$.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.RACE_CP?uf(a,$.getInstance(t)):i());const[mf]=h({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:$.getInstance(t)}}}),[pf]=h({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:$.getInstance(t)}}}),ff=Object.freeze({onPlayerEnter:mf,onPlayerLeave:pf,onStreamIn:cf,onStreamOut:hf});class ee{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=ee.getInstance(t);if(a)return a;this._id=t,Q.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{modelId:l,x:o,y:d,z:c,r:u,invulnerable:p,health:g,extended:f}=this.sourceInfo;return t??=v.ACTOR_SD,s??=0,f?(typeof a=="number"?a=[0]:a??=[0],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=Dh(l,o,d,c,u,p,g,t,a,i,n,r,s)):(Array.isArray(a)?a=0:a??=0,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=l_(l,o,d,c,u,p,g,a,i,n,t,r,s)),Q.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerActor]: Unable to destroy the actor before create");return A.skip||o_(this.id),Q.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:ee.isValid(this.id)}isStreamedIn(t){return this.id===-1?!1:c_(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return __(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return h_(this.id,t)}applyAnimation(t,a,i=4.1,n=!1,r=!0,s=!0,l=!1,o=0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to apply animation before create");if(!Ye(t,a))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${a}`);return u_(this.id,t,a,i,n,r,s,l,o)}clearAnimations(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to clear animation before create");return m_(this.id)}getFacingAngle(){return p_(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return f_(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return g_(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return P_(this.id,t,a,i)}getHealth(){return S_(this.id)}setHealth(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set health before create");return y_(this.id,t)}isInvulnerable(){return this.id===-1?!1:I_(this.id)}setInvulnerable(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return E_(this.id,t)}getPlayerTarget(t){const a=A_(t.id);return Q.get(a)}getPlayerCameraTarget(t){const a=C_(t.id);return Q.get(a)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return bs(this.id)}setSkin(t,a=!1){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set skin before create");return!a&&(t<0||t>311||t===74)?0:Os(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Gs(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return N_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.ACTOR,this.id)}static isValid=d_;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.ACTOR,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Q.get(t)}static getInstances(){return[...Q.values()]}}L.onExit(({next:e})=>(ee.getInstances().forEach(t=>t.destroy()),Q.clear(),e()));const[gf]=h({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[Pf]=h({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[Sf]=h({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,a,i,n){return{player:m.getInstance(e),actor:ee.getInstance(t),amount:a,weapon:i,bodyPart:n}}}),yf=Object.freeze({onStreamIn:gf,onStreamOut:Pf,onPlayerGiveDamage:Sf});class he{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=he.getInstance(t);if(a)return a;this._id=t,ue.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,testLos:i,streamDistance:n,worldId:r,interiorId:s,playerId:l,areaId:o,priority:d}=this.sourceInfo;const{charset:c,text:u,color:p,drawDistance:g,x:f,y,z:w,extended:O}=this.sourceInfo;return t??=D.PLAYER_ID,a??=D.VEHICLE_ID,n??=v.TEXT_3D_LABEL_SD,i??=!1,d??=0,O?(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=hm(u,I(p),f,y,w,g,t,a,i,n,r,s,l,o,d,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=_m(c||"utf8",u,I(p),f,y,w,g,t,a,i,r,s,l,n,o,d)),ue.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Streamer3DTextLabel]: Unable to destroy before create");return A.skip||r_(this.id),ue.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:he.isValid(this.id)}getColor(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get color before create");return this.sourceInfo?this.sourceInfo.color:P.getIntData(S.TEXT_3D_LABEL,this._id,j.COLOR)}getCharset(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get charset before create");return this.sourceInfo?.charset}getText(){return mm(this.id,this.sourceInfo?.charset||"utf8")}updateText(t,a,i){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to update text before create");let n="";return this.sourceInfo&&(n=i||this.sourceInfo.charset||"utf8",this.sourceInfo.charset=n),um(this.id,I(t),a,n)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.TEXT_3D_LABEL,this.id)}setOffsets(t,a,i){if(this.id===-1)return 0;const n=P.setFloatData(S.TEXT_3D_LABEL,this.id,j.ATTACH_OFFSET_X,t);return P.setFloatData(S.TEXT_3D_LABEL,this.id,j.ATTACH_OFFSET_Y,a),P.setFloatData(S.TEXT_3D_LABEL,this.id,j.ATTACH_OFFSET_Z,i),this.sourceInfo&&(this.sourceInfo.x=t,this.sourceInfo.y=a,this.sourceInfo.z=i),n}attachToPlayer(t,a,i,n){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToPlayer before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,j.ATTACHED_PLAYER,r);return r!==D.PLAYER_ID&&this.setOffsets(a,i,n),this.sourceInfo&&(this.sourceInfo.attachedPlayer=r),s}attachToVehicle(t,a,i,n){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToVehicle before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,j.ATTACHED_VEHICLE,r);return r!==D.VEHICLE_ID&&this.setOffsets(a,i,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=s_;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.TEXT_3D_LABEL,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ue.get(t)}static getInstances(){return[...ue.values()]}}L.onExit(({next:e})=>(he.getInstances().forEach(t=>t.destroy()),ue.clear(),e()));const[Ef,If]=h({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Af,Cf]=h({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.TEXT_3D_LABEL?If(a,he.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.TEXT_3D_LABEL?Cf(a,he.getInstance(t)):i());const Nf=Object.freeze({onStreamIn:Ef,onStreamOut:Af});class G{sourceInfo=null;_id=-1;get type(){return this.sourceInfo?.type}get id(){return this._id}constructor(t){if(typeof t=="number"){const a=G.getInstance(t);if(a)return a;this._id=t,q.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:a,playerId:i}=this.sourceInfo;const{type:n,extended:r}=this.sourceInfo;if(r)if(typeof t=="number"?t=[-1]:t??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],n==="circle"){const{x:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle extend size");this._id=Eh(s,l,o,t,a,i)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:u}=this.sourceInfo;this._id=Nh(s,l,o,d,c,u,t,a,i)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder extend size");this._id=Ih(s,l,o,d,c,t,a,i)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon extended with asymmetrical points");this._id=Th(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=Ch(s,l,o,d,t,a,i)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere extended size");this._id=Ah(s,l,o,d,t,a,i)}else if(Array.isArray(t)?t=-1:t??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,n==="circle"){const{x:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle size");this._id=T_(s,l,o,t,a,i)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:u}=this.sourceInfo;this._id=R_(s,l,o,d,c,u,t,a,i)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder size");this._id=D_(s,l,o,d,c,t,a,i)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon with asymmetrical points");this._id=L_(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=w_(s,l,o,d,t,a,i)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere size");this._id=v_(s,l,o,d,t,a,i)}return q.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerArea]: Unable to destroy the area before create");return A.skip||b_(this.id),q.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:G.isValid(this.id)}getType(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to get type before create");return G_(this.id)}getPolygonPoints(){return F_(this.id)}getPolygonNumberPoints(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to getPolygonNumberPoints number before create");if(this.type!=="polygon")throw new Error("[StreamerArea]: getPolygonNumberPoints invalid area type");return kt(this.id)}isPlayerIn(t,a=!1){return this.id===-1?!1:B_(t.id,this.id,a)}static isPlayerInAny(t,a=!1){return x_(t.id,a)}isAnyPlayerIn(t=!1){return this.id===-1?!1:k_(this.id,t)}static isAnyPlayerInAny(t=!1){return M_(t)}static getPlayerAreas(t){return G.getPlayerAreasNumber(t)?V_(t.id).areas.map(a=>q.get(a)):[]}static getPlayerAreasNumber(t){return Mt(t.id)}isPointIn(t,a,i){return this.id===-1?!1:H_(this.id,t,a,i)}static isPointInAny(t,a,i){return U_(t,a,i)}isLineIn(t,a,i,n,r,s){return this.id===-1?!1:W_(this.id,t,a,i,n,r,s)}static isLineInAny(t,a,i,n,r,s){return j_(t,a,i,n,r,s)}static getForPoint(t,a,i){return G.getNumberForPoint(t,a,i)?K_(t,a,i).areas.map(n=>G.getInstance(n)):[]}static getNumberForPoint(t,a,i){return Vt(t,a,i)}static getForLine(t,a,i,n,r,s){return G.getNumberForLine(t,a,i,n,r,s)?Z_(t,a,i,n,r,s).areas.map(l=>q.get(l)):[]}static getNumberForLine(t,a,i,n,r,s){return Ht(t,a,i,n,r,s)}attachToObject(t,a=0,i=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to object before create");return X_(this.id,t.id,xe.DYNAMIC,D.PLAYER_ID,a,i,n)}attachToPlayer(t,a=0,i=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to player before create");return Y_(this.id,t.id,a,i,n)}attachToVehicle(t,a=0,i=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to vehicle before create");return z_(this.id,t.id,a,i,n)}toggleSpectateMode(t){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle specate mode before create");return $_(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:J_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.AREA,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.AREA,this.id)}static isValid=O_;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.AREA,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return q.get(t)}static getInstances(){return[...q.values()]}}L.onExit(({next:e})=>(G.getInstances().forEach(t=>t.destroy()),q.clear(),e()));const[Tf,Df]=h({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[vf,wf]=h({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.AREA?Df(a,G.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.AREA?wf(a,G.getInstance(t)):i());const[Rf]=h({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),[Lf]=h({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),bf=Object.freeze({onStreamIn:Tf,onStreamOut:vf,onPlayerEnter:Rf,onPlayerLeave:Lf});class N{_id=D.PLAYER_ID;_name="";static recordStatus;get id(){return this._id}constructor(t){const a=samp.callNative("NPC_Create","s",t);if(this._id=a,this._name=t,a!==D.PLAYER_ID){U.has(a)&&new m(a);const i=N.getInstance(a);if(i)return i}return Ne.set(a,this),this}getName(){return this._name}destroy(){return A.skip||samp.callNative("NPC_Destroy","i",this._id),this}isValid(){return A.skip&&this._id!==-1?!0:N.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,a,i){return samp.callNative("NPC_SetPos","ifff",this._id,t,a,i),this}setRot(t,a,i){return samp.callNative("NPC_SetRot","ifff",this._id,t,a,i),this}getRot(){const[t,a,i,n]=samp.callNative("NPC_GetRot","iFFF",this._id);return{rX:t,rY:a,rZ:i,ret:n}}setFacingAngle(t){return samp.callNative("NPC_SetFacingAngle","if",this._id,t),this}getFacingAngle(){const[t,a]=samp.callNative("NPC_GetFacingAngle","iF",this._id);return{angle:t,ret:a}}setVirtualWorld(t){return samp.callNative("NPC_SetVirtualWorld","ii",this._id,t),this}getVirtualWorld(){return samp.callNative("NPC_GetVirtualWorld","i",this._id)}move(t,a,i,n,r=-1){return!!samp.callNative("NPC_Move","ifffif",this._id,t,a,i,n,r)}moveToPlayer(t,a,i=-1){return!!samp.callNative("NPC_MoveToPlayer","iiif",this._id,t.id,a,i)}stopMove(){return samp.callNative("NPC_StopMove","i",this._id),this}isMoving(){return!!samp.callNative("NPC_IsMoving","i",this._id)}setSkin(t){return samp.callNative("NPC_SetSkin","ii",this._id,t),this}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,a,i,n,r,s,l,o,d){return samp.callNative("NPC_ApplyAnimation","issfiiiiii",this._id,t,a,i,n,r,s,l,o,d),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,a,i){return samp.callNative("NPC_SetKeys","iiii",this._id,t,a,i),this}getKeys(){const[t,a,i,n]=samp.callNative("NPC_GetKeys","iIII",this._id);return{upAndDown:t,leftAndDown:a,keys:i,ret:n}}setWeaponSkillLevel(t,a){return samp.callNative("NPC_SetWeaponSkillLevel","iii",this._id,t,a),this}getWeaponSkillLevel(t){return samp.callNative("NPC_GetWeaponSkillLevel","ii",this._id,t)}meleeAttack(t,a){return samp.callNative("NPC_MeleeAttack","iii",this._id,t,a),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)}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,a,i,n,r,s,l,o,d,c,u){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,a,i,n,r,s,l,o,d,c,u),this}isShooting(){return!!samp.callNative("NPC_IsShooting","i",this._id)}aimAt(t,a,i,n,r,s,l,o,d,c){return samp.callNative("NPC_AimAt","ifffiiifffi",this._id,t,a,i,n,r,s,l,o,d,c),this}aimAtPlayer(t,a,i,n,r,s,l,o,d,c,u){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,a,i,n,r,s,l,o,d,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,a){return samp.callNative("NPC_SetWeaponAccuracy","iif",this._id,t,a),this}getWeaponAccuracy(t){return samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",this._id,t)}setWeaponReloadTime(t,a){return samp.callNative("NPC_SetWeaponReloadTime","iii",this._id,t,a)}getWeaponReloadTime(t){return samp.callNative("NPC_GetWeaponReloadTime","ii",this._id,t)}getWeaponActualReloadTime(t){return samp.callNative("NPC_GetWeaponActualReloadTime","ii",this._id,t)}setWeaponShootTime(t,a){return samp.callNative("NPC_SetWeaponShootTime","iii",this._id,t,a)}getWeaponShootTime(t){return samp.callNative("NPC_GetWeaponShootTime","ii",this._id,t)}setWeaponClipSize(t,a){return samp.callNative("NPC_SetWeaponClipSize","iii",this._id,t,a)}getWeaponClipSize(t){return samp.callNative("NPC_GetWeaponClipSize","ii",this._id,t)}getWeaponActualClipSize(t){return samp.callNative("NPC_GetWeaponActualClipSize","ii",this._id,t)}enterVehicle(t,a,i){return samp.callNative("NPC_EnterVehicle","iiii",this._id,t.id,a,i),this}exitVehicle(){return samp.callNative("NPC_ExitVehicle","i",this._id),this}putInVehicle(t,a){return samp.callNative("NPC_PutInVehicle","iii",this._id,t.id,a)}removeFromVehicle(){return samp.callNative("NPC_RemoveFromVehicle","i",this._id)}getVehicle(){return C.getInstance(this.getVehicleID())}getVehicleID(){return samp.callNative("NPC_GetVehicle","i",this._id)}getVehicleSeat(){return samp.callNative("NPC_GetVehicleSeat","i",this._id)}getEnteringVehicle(){return C.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,a,i,n,r,s,l){return samp.callNative("NPC_SetAnimation","iifiiiii",this._id,t,a,i,n,r,s,l)}getAnimation(){const[t,a,i,n,r,s,l,o]=samp.callNative("NPC_GetAnimation","iIFIIIII",this._id);return{animationId:t,delta:a,loop:!!i,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,a,i,n,r,s,l,o){return samp.callNative("NPC_StartPlayback","isiffffff",this._id,t,a,i,n,r,s,l,o)}startPlaybackEx(t,a,i,n,r,s,l,o){return samp.callNative("NPC_StartPlaybackEx","iiiffffff",this._id,t,a,i,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,a=Oe.JOG,i=Ge.AUTO,n=0,r=!0){return!!samp.callNative("NPC_PlayNode","iiiffi",this._id,t,a,i,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,a){return samp.callNative("NPC_ChangeNode","iii",this._id,t,a)}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,a,i){return samp.callNative("NPC_SetSurfingOffsets","ifff",this._id,t,a,i)}getSurfingOffsets(){const[t,a,i,n]=samp.callNative("NPC_GetSurfingOffsets","iFFF",this._id);return{x:t,y:a,z:i,ret:n}}setSurfingVehicle(t){return samp.callNative("NPC_SetSurfingVehicle","ii",this._id,t.id)}getSurfingVehicle(){return C.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(P.getItemInternalID(new m(this._id),S.OBJECT,t.id))}getSurfingDynamicObject(){return B.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return P.getItemStreamerID(new m(this._id),S.OBJECT,this.getSurfingPlayerObject())}static loadRecord(t){return samp.callNative("NPC_LoadRecord","s",t)}static unloadRecord(t){return!!samp.callNative("NPC_UnloadRecord","i",t)}static isValidRecord(t){return!!samp.callNative("NPC_IsValidRecord","i",t)}static getRecordCount(){return samp.callNative("NPC_GetRecordCount","")}static unloadAllRecords(){return!!samp.callNative("NPC_UnloadAllRecords","")}static createPath(){return samp.callNative("NPC_CreatePath","")}static destroyPath(t){return!!samp.callNative("NPC_DestroyPath","i",t)}static destroyAllPath(){return!!samp.callNative("NPC_DestroyAllPath","")}static getPathCount(){return samp.callNative("NPC_GetPathCount","")}static addPointToPath(t,a,i,n,r){return!!samp.callNative("NPC_AddPointToPath","iffff",t,a,i,n,r)}static removePointFromPath(t,a){return!!samp.callNative("NPC_RemovePointFromPath","ii",t,a)}static clearPath(t){return!!samp.callNative("NPC_ClearPath","i",t)}static getPathPointCount(t){return samp.callNative("NPC_GetPathPointCount","i",t)}static getPathPoint(t,a){const[i,n,r,s,l]=samp.callNative("NPC_GetPathPoint","ii",t,a);return{x:i,y:n,z:r,stopRange:s,ret:l}}static isValidPath(t){return!!samp.callNative("NPC_IsValidPath","i",t)}getCurrentPathPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}moveByPath(t,a=Oe.JOG,i=Ge.AUTO,n=!1){return!!samp.callNative("NPC_MoveByPath","iiifi",this._id,t,a,i,n)}hasPathPointInRadius(t,a,i,n,r){return!!samp.callNative("NPC_HasPathPointInRange","iiffff",this._id,t,a,i,n,r)}static openNode(t){return!!samp.callNative("NPC_OpenNode","i",t)}static closeNode(t){return!!samp.callNative("NPC_CloseNode","i",t)}static isNodeOpen(t){return!!samp.callNative("NPC_IsNodeOpen","i",t)}static getNodeType(t){return samp.callNative("NPC_GetNodeType","i",t)}static setNodePoint(t,a){return!!samp.callNative("NPC_SetNodePoint","ii",t,a)}static getNodePointPosition(t){const[a,i,n,r]=samp.callNative("NPC_GetNodePointPosition","iFFF",t);return{x:a,y:i,z:n,ret:!!r}}static getNodePointCount(t){return samp.callNative("NPC_GetNodePointCount","i",t)}static getNodeInfo(t){const[a,i,n,r]=samp.callNative("NPC_GetNodePointPosition","iIII",t);return{vehNodes:a,pedNodes:i,naviNode:n,ret:!!r}}static connect=_i;static startRecordingPlayerData(t,a,i){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");qr(t.id,a,i),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");es(t.id),t.isRecording=!1}static startRecordingPlayback(t,a){if(N.recordStatus>=H.START)throw new Error("[NpcFunc]: The current status cannot be replayed");vs(t,a),N.recordStatus=H.START}static stopRecordingPlayback(){if(N.recordStatus<H.START)throw new Error("[NpcFunc]: The current status cannot be stopped");ws(),N.recordStatus=H.NONE}static pauseRecordingPlayback(){if(N.recordStatus!==H.START)throw new Error("[NpcFunc]: The current status cannot be paused");Rs(),N.recordStatus=H.PAUSE}static resumeRecordingPlayback(){if(N.recordStatus!==H.PAUSE)throw new Error("[NpcFunc]: The current status cannot be paused");Ls(),N.recordStatus=H.START}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return Ne.get(t)}static getInstances(){return[...Ne.values()]}}L.onExit(({next:e})=>(Ne.clear(),e()));const[Of]=h({name:"OnNpcConnect",beforeEach(e){return{myPlayerId:e}}}),[Gf]=h({name:"OnNpcDisconnect",beforeEach(e){return{reason:e}}}),[Ff]=h({name:"OnNpcModeInit"}),[Bf]=h({name:"OnNpcModeExit"}),[xf]=h({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:E.decodeFromBuf(t)}}}),[kf]=h({name:"OnNPCFinishMove",beforeEach(e){return{npc:N.getInstance(e)}}}),[Mf]=h({name:"OnNPCCreate",beforeEach(e){return{npc:N.getInstance(e)}}}),[Vf]=h({name:"OnNPCDestroy",beforeEach(e){return{npc:N.getInstance(e)}},afterEach({npc:e}){Ne.delete(e.id)}}),[Hf]=h({name:"OnNPCWeaponStateChange",beforeEach(e,t,a){return{npc:N.getInstance(e),newState:t,oldState:a}}}),[Uf]=h({name:"OnNPCTakeDamage",beforeEach(e,t,a,i,n){return{npc:N.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Wf]=h({name:"OnNPCGiveDamage",beforeEach(e,t,a,i,n){return{npc:N.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[jf]=h({name:"OnNPCDeath",beforeEach(e,t,a){return{npc:N.getInstance(e),killer:t,reason:a}}}),[Kf]=h({name:"OnNpcSpawn",beforeEach(e){return{npc:N.getInstance(e)}}}),[Zf]=h({name:"OnNpcRespawn",beforeEach(e){return{npc:N.getInstance(e)}}}),[Xf]=h({name:"OnNPCPlaybackStart",beforeEach(e,t){return{npc:N.getInstance(e),recordId:t}}}),[Yf]=h({name:"OnNPCPlaybackEnd",beforeEach(e,t){return{npc:N.getInstance(e),recordId:t}}}),[zf]=h({name:"OnNPCWeaponShot",beforeEach(e,t,a,i,n,r,s){return{npc:N.getInstance(e),weapon:t,hitType:a,hitId:i,fX:n,fY:r,fZ:s}}}),[$f]=h({name:"OnNPCFinishNodePoint",beforeEach(e,t,a){return{npc:N.getInstance(e),nodeId:t,pointId:a}}}),[Jf]=h({name:"OnNPCFinishNode",beforeEach(e,t){return{npc:N.getInstance(e),nodeId:t}}}),[Qf]=h({name:"OnNPCChangeNode",beforeEach(e,t,a){return{npc:N.getInstance(e),newNodeId:t,oldNodeId:a}}}),[qf]=h({name:"OnNPCFinishMovePath",beforeEach(e,t){return{npc:N.getInstance(e),pathId:t}}}),[eg]=h({name:"OnNPCFinishMovePathPoint",beforeEach(e,t,a){return{npc:N.getInstance(e),pathId:t,pointIndex:a}}}),tg=Object.freeze({onConnect:Of,onDisconnect:Gf,onModeInit:Ff,onModeExit:Bf,onClientMessage:xf,onFinishMove:kf,onCreate:Mf,onDestroy:Vf,onSpawn:Kf,onRespawn:Zf,onWeaponStateChange:Hf,onTakeDamage:Uf,onGiveDamage:Wf,onDeath:jf,onPlaybackStart:Xf,onPlaybackEnd:Yf,onWeaponShot:zf,onFinishNodePoint:$f,onFinishNode:Jf,onChangeNode:Qf,onFinishMovePath:qf,onFinishMovePathPoint:eg});class ag{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return Ui()}static getPlayerNetworkStats(t){return Hi(t.id)}static getBytesReceived(t){return Ri(t.id)}static getBytesSent(t){return bi(t.id)}static getConnectionStatus(t){return Fi(t.id)}static getConnectedTime(t){return vi(t.id)}static getIpPort(t){return Bi(t.id)}static getMessagesReceived(t){return wi(t.id)}static getMessagesRecvPerSecond(t){return Oi(t.id)}static getMessagesSent(t){return Li(t.id)}static getPacketLossPercent(t){return Gi(t.id)}}class ig{_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,a,i){this._text=t,this._time=a,this._style=i}static hideForAll(t){Ka(t)}static has(t,a){return Tn(t.id,a)}forAll(t="win1252"){ja(E.encodeToBuf(E.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,a="win1252"){Nn(t.id,E.encodeToBuf(E.convertSpecialChar(this.text),a),this.time,this.style)}hideForPlayer(t){return vn(t.id,this.style)}}class fe{_itemCount=0;get itemCount(){return this._itemCount}_id=-1;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,a,i,n,r,s){this._title=t,this.columns=a,this._x=i,this._y=n,this._col1width=r,this._col2width=s}create(){if(this._id!==-1)throw new Error("[Menu]: Cannot be created twice");if(fe.getInstances().length===V.MAX_MENUS)throw new Error("[Menu]: The maximum number of menus allowed to be created has been reached 128");return this._id=To(this.title,this.columns,this.x,this.y,this.col1width,this.col2width),Ce.set(this._id,this),this}destroy(){if(this._id===-1)throw new Error("[Menu]: Cannot destroy before create");return A.skip||Do(this.id),Ce.delete(this._id),this._id=-1,this}addItem(t,a){if(this._id===-1)throw new Error("[Menu]: Cannot addItem before create");if(this._itemCount===V.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 vo(this.id,t,a),this._itemCount++,this}setColumnHeader(t,a){if(this._id===-1)throw new Error("[Menu]: Cannot setColumnHeader before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return wo(this.id,t,a),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return Oo(this.id),this}disableRow(t){if(this._id===-1)throw new Error("[Menu]: Cannot disable row before create");if(t<0||t>this.itemCount-1)throw new Error("[Menu]: Wrong number of rows");Go(this.id,t)}isValid(){return A.skip&&this.id!==-1?!0:fe.isValid(this.id)}showForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot show menu before create");return Ro(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return Lo(this.id,t.id)}isDisabled(){return this._id===-1?!1:So(this.id)}isRowDisabled(t){return this._id===-1||t<0||t>this._itemCount?!1:yo(this.id,t)}getItems(t){return this._id===-1?0:Eo(this.id,t)}getPos(){return this._id===-1?{fX:this.x,fY:this.y}:Io(this.id)}getColumnWidth(){return this.id===-1?{fColumn1:this.col1width,fColumn2:this.col2width}:Ao(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return Co(this.id,t)}getItem(t,a){if(this._id===-1)throw new Error("[Menu]: Cannot get item before create");if(a<0||a>this.getItems(t)-1)throw new Error("[Menu]: invalid getItem range");return No(this.id,t,a)}static isValid=bo;static getInstance(t){return Ce.get(t)}static getInstances(){return[...Ce.values()]}static getInstanceByPlayer(t){return this.getInstances().find(a=>a.id===Fo(t.id))}}L.onExit(({next:e})=>(fe.getInstances().forEach(t=>t.destroy()),Ce.clear(),e()));const[ng]=h({name:"OnPlayerExitedMenu",beforeEach(e){return{player:m.getInstance(e)}}}),[rg]=h({name:"OnPlayerSelectedMenuRow",beforeEach(e,t){const a=m.getInstance(e),i=fe.getInstanceByPlayer(a);return{player:a,menu:i,row:t}}}),sg=Object.freeze({onPlayerExited:ng,onPlayerSelectedRow:rg});class b{sourceInfo;constructor(t){this.sourceInfo=t}_id=-1;get id(){return this._id}create(){if(this.id!==-1)throw new Error("[GangZone]: Unable to create again");const{player:t}=this.sourceInfo;if(t){if(b.getInstances(!1).length===V.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:a,minY:i,maxX:n,maxY:r}=this.sourceInfo;this._id=ed(t.id,a,i,n,r);const s=Je.onDisconnect(({player:l,next:o})=>{o(),l===this.sourceInfo.player&&(this.isValid()&&this.destroy(),s())});Ae.set(this.id,this)}else{if(b.getInstances(!0).length===V.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:a,minY:i,maxX:n,maxY:r}=this.sourceInfo;this._id=jo(a,i,n,r),Ie.set(this.id,this)}}destroy(){if(this.id===-1)throw new Error("[GangZone]: Unable to destroy the gangzone before create");const{player:t}=this.sourceInfo;t?(A.skip||td(t.id,this.id),Ae.delete(this.id)):(A.skip||Ko(this.id),Ie.delete(this.id)),this._id=-1}showForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");if(!this.sourceInfo.player)return Xo(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be show for all.")}showForPlayer(t,a){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");const i=this.sourceInfo.player;if(i)ad(i.id,this.id,I(t));else if(a)Zo(a.id,this.id,t);else throw new Error("[GangZone]: invalid player for show");return this}hideForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");if(!this.sourceInfo.player)return zo(this.id),this;throw new Error("[GangZone]: player's gangzone should not be hide for all.")}hideForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");const a=this.sourceInfo.player;if(a)id(a.id,this.id);else if(t)Yo(t.id,this.id);else throw new Error("[GangZone]: invalid player for hide");return this}flashForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");if(!this.sourceInfo.player)return Jo(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be flash for all.")}flashForPlayer(t,a){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");const i=this.sourceInfo.player;if(i)nd(i.id,this.id,I(a));else if(t)$o(t.id,this.id,a);else throw new Error("[GangZone]: invalid player for flash");return this}stopFlashForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");if(!this.sourceInfo.player)return qo(this.id),this;throw new Error("[GangZone]: player's gangzone should not be stop flash for all.")}stopFlashForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");const a=this.sourceInfo.player;if(a)rd(a.id,this.id);else if(t)Qo(t.id,this.id);else throw new Error("[GangZone]: invalid player for flash");return this}isValid(){if(A.skip&&this.id!==-1)return!0;if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?b.isValidPlayer(t.id,this.id):b.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?ld(a.id,this.id):xo(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?od(a.id,this.id):ko(t.id,this.id)}getColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get color before create");const a=this.sourceInfo.player;return a?dd(a.id,this.id):Mo(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get flash color before create");const a=this.sourceInfo.player;return a?cd(a.id,this.id):Vo(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?_d(a.id,this.id):Ho(t.id,this.id)}getPos(){if(this.id===-1)throw new Error("[GangZone]: Unable to get position before create");const t=this.sourceInfo.player;return t?hd(t.id,this.id):Uo(this.id)}useCheck(t){if(this.id===-1)throw new Error("[GangZone]: Unable to use check before create");const a=this.sourceInfo.player;return a?ud(a.id,this.id,t):Wo(this.id,t),this}static isValidPlayer=sd;static isValidGlobal=Bo;static getInstance(t,a){return a?Ie.get(t):Ae.get(t)}static getInstances(t){return t?[...Ie.values()]:[...Ae.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),Ie.clear(),Ae.clear(),e()));const[lg]=h({name:"OnPlayerEnterGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[og]=h({name:"OnPlayerLeaveGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[dg]=h({name:"OnPlayerEnterPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[cg]=h({name:"OnPlayerLeavePlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[_g]=h({name:"OnPlayerClickGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[hg]=h({name:"OnPlayerClickPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),ug=Object.freeze({onPlayerEnterGlobal:lg,onPlayerLeaveGlobal:og,onPlayerEnterPlayer:dg,onPlayerLeavePlayer:cg,onPlayerClickGlobal:_g,onPlayerClickPlayer:hg});class _{sourceInfo;_id=-1;get id(){return this._id}constructor(t){this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[TextDraw]: Unable to create again");const{x:t,y:a,text:i,player:n,charset:r="iso-8859-1"}=this.sourceInfo,s=E.encodeToBuf(E.convertSpecialChar(i),r);if(n){if(_.getInstances(!1).length===V.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__CreatePlayerTextDraw(n.id,t,a,s);const l=Je.onDisconnect(({player:o,next:d})=>{const c=d();return o===n&&(this.isValid()&&this.destroy(),l()),c});De.set(this.id,this)}else{if(_.getInstances(!0).length===V.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__TextDrawCreate(t,a,s),Te.set(this.id,this)}return this}destroy(){this.id===-1&&_.beforeCreateWarn("destroy the textdraw");const{player:t}=this.sourceInfo;return t?(A.skip||_.__inject__PlayerTextDrawDestroy(t.id,this.id),De.delete(this.id)):(A.skip||_.__inject__TextDrawDestroy(this.id),Te.delete(this.id)),this._id=-1,this}setFont(t){if(this.id===-1)return _.beforeCreateWarn("set font"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawFont(a.id,this.id,t):_.__inject__TextDrawFont(this.id,t),this}setColor(t){if(this.id===-1)return _.beforeCreateWarn("set color"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawColor(a.id,this.id,t):_.__inject__TextDrawColor(this.id,t),this}setBoxColors(t){if(this.id===-1)return _.beforeCreateWarn("set box color"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawBoxColor(a.id,this.id,t):_.__inject__TextDrawBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===-1)return _.beforeCreateWarn("set background color"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawBackgroundColor(a.id,this.id,t):_.__inject__TextDrawBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===-1)return _.beforeCreateWarn("set alignment"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawAlignment(a.id,this.id,t):_.__inject__TextDrawAlignment(this.id,t),this}setLetterSize(t,a){if(this.id===-1)return _.beforeCreateWarn("set letter size"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawLetterSize(i.id,this.id,t,a):_.__inject__TextDrawLetterSize(this.id,t,a),this}setOutline(t){if(this.id===-1)return _.beforeCreateWarn("set outline model"),this;if(t<0)throw new Error("[TextDraw]: Invalid outline value");const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetOutline(a.id,this.id,t):_.__inject__TextDrawSetOutline(this.id,t),this}setPreviewModel(t){if(this.id===-1)return _.beforeCreateWarn("set preview model"),this;this.setFont(Ee.MODEL_PREVIEW);const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetPreviewModel(a.id,this.id,t):_.__inject__TextDrawSetPreviewModel(this.id,t),this}setPreviewRot(t,a,i,n=1){if(this.id===-1)return _.beforeCreateWarn("set preview rot"),this;this.setFont(Ee.MODEL_PREVIEW);const{player:r}=this.sourceInfo;return r?_.__inject__PlayerTextDrawSetPreviewRot(r.id,this.id,t,a,i,n):_.__inject__TextDrawSetPreviewRot(this.id,t,a,i,n),this}setPreviewVehColors(t,a){if(this.id===-1)return _.beforeCreateWarn("set preview veh col"),this;this.setFont(Ee.MODEL_PREVIEW);const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetPreviewVehicleColors(i.id,this.id,t,a):_.__inject__TextDrawSetPreviewVehicleColors(this.id,t,a),this}setProportional(t=!0){if(this.id===-1)return _.beforeCreateWarn("set Proportional"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetProportional(a.id,this.id,t):_.__inject__TextDrawSetProportional(this.id,t),this}setSelectable(t){if(this.id===-1)return _.beforeCreateWarn("set Selectable"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetSelectable(a.id,this.id,t):_.__inject__TextDrawSetSelectable(this.id,t),this}setShadow(t){if(this.id===-1)return _.beforeCreateWarn("set shadow"),this;if(t<0)throw new Error("[TextDraw]: Invalid shadow value");const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetShadow(a.id,this.id,t):_.__inject__TextDrawSetShadow(this.id,t),this}setString(t,a){if(this.id===-1)return _.beforeCreateWarn("set string"),this;if(t.length===0||t.length>1024)throw new Error("[TextDraw]: Invalid text length");const{player:i,charset:n="iso-8859-1"}=this.sourceInfo,r=E.encodeToBuf(E.convertSpecialChar(t),n);return i?_.__inject__PlayerTextDrawSetString(i.id,this.id,r):a?_.__inject__TextDrawSetStringForPlayer(this.id,a.id,r):_.__inject__TextDrawSetString(this.id,r),this}setTextSize(t,a){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawTextSize(i.id,this.id,t,a):_.__inject__TextDrawTextSize(this.id,t,a),this}useBox(t){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawUseBox(a.id,this.id,t):_.__inject__TextDrawUseBox(this.id,t),this}static beforeCreateWarn(t){throw new Error(`[TextDraw]: Unable to ${t} before create`)}show(t){if(this.id===-1)return _.beforeCreateWarn("show"),this;const a=this.sourceInfo.player;if(a)_.__inject__PlayerTextDrawShow(a.id,this.id);else if(t)_.__inject__TextDrawShowForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for show");return this}hide(t){if(this.id===-1)return _.beforeCreateWarn("hide"),this;const a=this.sourceInfo.player;if(a)_.__inject__PlayerTextDrawHide(a.id,this.id);else if(t)_.__inject__TextDrawHideForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for hide");return this}showAll(){if(this.id===-1)return _.beforeCreateWarn("show"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawShowForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be show for all.")}hideAll(){if(this.id===-1)return _.beforeCreateWarn("hideAll"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawHideForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be hide for all.")}isValid(){if(A.skip&&this.id!==-1)return!0;const t=this.sourceInfo.player;return t?_.__inject__IsValidPlayerTextDraw(t.id,this.id):_.__inject__IsValidTextDraw(this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const{player:a}=this.sourceInfo;return a?_.__inject__IsPlayerTextDrawVisible(a.id,this.id):t?_.__inject__IsTextDrawVisibleForPlayer(t.id,this.id):!1}getString(){if(this.id===-1)return this.sourceInfo.text;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetString(t.id,this.id).str:_.__inject__TextDrawGetString(this.id).str}setPos(t,a){if(this.id===-1)return _.beforeCreateWarn("set position"),this;const i=this.sourceInfo.player;return i?_.__inject__PlayerTextDrawSetPos(i.id,this.id,t,a):_.__inject__TextDrawSetPos(this.id,t,a),this}getLetterSize(){if(this.id===-1)return _.beforeCreateWarn("get letter size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetLetterSize(t.id,this.id):_.__inject__TextDrawGetLetterSize(this.id)}getTextSize(){if(this.id===-1)return _.beforeCreateWarn("get text size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetTextSize(t.id,this.id):_.__inject__TextDrawGetTextSize(this.id)}getPos(){if(this.id===-1)return _.beforeCreateWarn("get position");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPos(t.id,this.id):_.__inject__TextDrawGetPos(this.id)}getColor(){if(this.id===-1)return _.beforeCreateWarn("get color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetColor(t.id,this.id):_.__inject__TextDrawGetColor(this.id)}getBoxColor(){if(this.id===-1)return _.beforeCreateWarn("get box color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBoxColor(t.id,this.id):_.__inject__TextDrawGetBoxColor(this.id)}getBackgroundColor(){if(this.id===-1)return _.beforeCreateWarn("get bg color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBackgroundColor(t.id,this.id):_.__inject__TextDrawGetBackgroundColor(this.id)}getShadow(){if(this.id===-1)return _.beforeCreateWarn("get shadow");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetShadow(t.id,this.id):_.__inject__TextDrawGetShadow(this.id)}getOutline(){if(this.id===-1)return _.beforeCreateWarn("get outline");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetOutline(t.id,this.id):_.__inject__TextDrawGetOutline(this.id)}getFont(){if(this.id===-1)return _.beforeCreateWarn("get font");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetFont(t.id,this.id):_.__inject__TextDrawGetFont(this.id)}isBox(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsBox(t.id,this.id):_.__inject__TextDrawIsBox(this.id)}isProportional(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsProportional(t.id,this.id):_.__inject__TextDrawIsProportional(this.id)}isSelectable(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsSelectable(t.id,this.id):_.__inject__TextDrawIsSelectable(this.id)}getAlignment(){if(this.id===-1)return _.beforeCreateWarn("get alignment");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetAlignment(t.id,this.id):_.__inject__TextDrawGetAlignment(this.id)}getPreviewModel(){if(this.id===-1)return _.beforeCreateWarn("get preview model");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewModel(t.id,this.id):_.__inject__TextDrawGetPreviewModel(this.id)}getPreviewRot(){if(this.id===-1)return _.beforeCreateWarn("get preview rotation");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewRot(t.id,this.id):_.__inject__TextDrawGetPreviewRot(this.id)}getPreviewVehColors(){if(this.id===-1)return _.beforeCreateWarn("get preview vel colors");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewVehicleColors(t.id,this.id):_.__inject__TextDrawGetPreviewVehicleColors(this.id)}isGlobal(){return!!this.sourceInfo.player}static getInstance(t,a){return a?Te.get(t):De.get(t)}static getInstances(t){return t?[...Te.values()]:[...De.values()]}static __inject__TextDrawCreate=Fd;static __inject__CreatePlayerTextDraw=Nc;static __inject__TextDrawDestroy=Bd;static __inject__PlayerTextDrawDestroy=Tc;static __inject__TextDrawFont=Zd;static __inject__PlayerTextDrawFont=Bc;static __inject__TextDrawColor=Vd;static __inject__PlayerTextDrawColor=Rc;static __inject__TextDrawBoxColor=Ud;static __inject__PlayerTextDrawBoxColor=bc;static __inject__TextDrawBackgroundColor=Kd;static __inject__PlayerTextDrawBackgroundColor=Fc;static __inject__TextDrawAlignment=Md;static __inject__PlayerTextDrawAlignment=wc;static __inject__TextDrawLetterSize=xd;static __inject__PlayerTextDrawLetterSize=Dc;static __inject__TextDrawSetOutline=jd;static __inject__PlayerTextDrawSetOutline=Gc;static __inject__TextDrawSetPreviewModel=ec;static __inject__PlayerTextDrawSetPreviewModel=Uc;static __inject__TextDrawSetPreviewRot=tc;static __inject__PlayerTextDrawSetPreviewRot=Wc;static __inject__TextDrawSetPreviewVehicleColors=ac;static __inject__PlayerTextDrawSetPreviewVehicleColors=jc;static __inject__TextDrawSetProportional=Xd;static __inject__PlayerTextDrawSetProportional=xc;static __inject__TextDrawSetSelectable=Yd;static __inject__PlayerTextDrawSetSelectable=kc;static __inject__TextDrawSetShadow=Wd;static __inject__PlayerTextDrawSetShadow=Oc;static __inject__PlayerTextDrawSetString=Hc;static __inject__TextDrawSetStringForPlayer=Gd;static __inject__TextDrawSetString=qd;static __inject__TextDrawTextSize=kd;static __inject__PlayerTextDrawTextSize=vc;static __inject__PlayerTextDrawUseBox=Lc;static __inject__TextDrawUseBox=Hd;static __inject__PlayerTextDrawShow=Mc;static __inject__TextDrawShowForPlayer=zd;static __inject__PlayerTextDrawHide=Vc;static __inject__TextDrawHideForPlayer=$d;static __inject__TextDrawShowForAll=Jd;static __inject__TextDrawHideForAll=Qd;static __inject__IsValidPlayerTextDraw=rc;static __inject__IsValidTextDraw=md;static __inject__IsPlayerTextDrawVisible=sc;static __inject__IsTextDrawVisibleForPlayer=pd;static __inject__PlayerTextDrawGetString=lc;static __inject__TextDrawGetString=fd;static __inject__PlayerTextDrawSetPos=oc;static __inject__TextDrawSetPos=gd;static __inject__PlayerTextDrawGetLetterSize=dc;static __inject__TextDrawGetLetterSize=Pd;static __inject__PlayerTextDrawGetTextSize=cc;static __inject__TextDrawGetTextSize=Sd;static __inject__PlayerTextDrawGetPos=_c;static __inject__TextDrawGetPos=yd;static __inject__PlayerTextDrawGetColor=hc;static __inject__TextDrawGetColor=Ed;static __inject__PlayerTextDrawGetBoxColor=uc;static __inject__TextDrawGetBoxColor=Id;static __inject__PlayerTextDrawGetBackgroundColor=mc;static __inject__TextDrawGetBackgroundColor=Ad;static __inject__PlayerTextDrawGetShadow=pc;static __inject__TextDrawGetShadow=Cd;static __inject__PlayerTextDrawGetOutline=fc;static __inject__TextDrawGetOutline=Nd;static __inject__PlayerTextDrawGetFont=gc;static __inject__TextDrawGetFont=Td;static __inject__PlayerTextDrawIsBox=Pc;static __inject__TextDrawIsBox=Dd;static __inject__PlayerTextDrawIsProportional=Sc;static __inject__TextDrawIsProportional=vd;static __inject__PlayerTextDrawIsSelectable=yc;static __inject__TextDrawIsSelectable=wd;static __inject__PlayerTextDrawGetAlignment=Ec;static __inject__TextDrawGetAlignment=Rd;static __inject__PlayerTextDrawGetPreviewModel=Ic;static __inject__TextDrawGetPreviewModel=Ld;static __inject__PlayerTextDrawGetPreviewRot=Ac;static __inject__TextDrawGetPreviewRot=bd;static __inject__TextDrawGetPreviewVehicleColors=Od;static __inject__PlayerTextDrawGetPreviewVehicleColors=Cc}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Te.clear(),De.clear(),e()));const[mg]=h({name:"OnPlayerClickTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[pg]=h({name:"OnPlayerClickPlayerTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!1)}}}),fg=Object.freeze({onPlayerClickGlobal:mg,onPlayerClickPlayer:pg});function gg(e,t){return(e&t)===t}function Pg(e,t,a){return(e&a)===a&&(t&a)!==a}function Sg(e,t){return!!(e&t)}function yg(e,t,a){return(e&a)!==a&&(t&a)===a}function Eg(e){const t=new Set,a=e.prototype,i=Object.getOwnPropertyNames(a).filter(r=>typeof a[r]=="function"&&r!=="constructor").reduce((r,s)=>(r[s]=a[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(a,r)!="function")throw new Error(`Invalid method: ${String(r)}`);return Reflect.set(a,r,s),t.add(r),s}return[i,n]}exports.ArtworkEnum=ct,exports.BodyPartsEnum=Ct,exports.BoneIdsEnum=Nt,exports.BulletHitTypesEnum=Ot,exports.CameraCutStylesEnum=Se,exports.CameraModesEnum=At,exports.CarModTypeEnum=vt,exports.ClickSourcesEnum=_t,exports.ConnectionStatusEnum=ut,exports.DamageDeathReasonEnum=Ke,exports.Dialog=R,exports.DialogStylesEnum=We,exports.Dynamic3DTextLabel=he,exports.Dynamic3DTextLabelEvent=Nf,exports.DynamicActor=ee,exports.DynamicActorEvent=yf,exports.DynamicArea=G,exports.DynamicAreaEvent=bf,exports.DynamicCheckPointEvent=df,exports.DynamicCheckpoint=z,exports.DynamicMapIcon=_e,exports.DynamicMapIconEvent=zp,exports.DynamicObject=B,exports.DynamicObjectEvent=jp,exports.DynamicPickup=k,exports.DynamicPickupEvent=tf,exports.DynamicRaceCP=$,exports.DynamicRaceCPEvent=ff,exports.E_STREAMER=j,exports.EditResponseTypesEnum=ht,exports.FightingStylesEnum=Et,exports.ForceSyncEnum=Tt,exports.GameMode=L,exports.GameText=ig,exports.GangZone=b,exports.GangZoneEvent=ug,exports.I18n=E,exports.InvalidEnum=D,exports.KeysEnum=mt,exports.LimitsEnum=V,exports.MapIconStyles=ke,exports.MapIconStylesEnum=It,exports.MarkerModesEnum=pt,exports.MaterialTextAlign=xt,exports.MaterialTextSizes=Ze,exports.Menu=fe,exports.MenuEvent=sg,exports.NPCEntityCheckEnum=gt,exports.NPCMoveSpeedEnum=Ge,exports.NPCMoveTypeEnum=Oe,exports.NPCPlaybackEnum=ft,exports.NPCRecordStatusEnum=H,exports.NetStats=ag,exports.Npc=N,exports.NpcEvent=tg,exports.ObjectMaterialAlignmentEnum=St,exports.ObjectMaterialTextSizeEnum=Pt,exports.Player=m,exports.PlayerEvent=Je,exports.PlayerStateEnum=ye,exports.RecordTypesEnum=Ft,exports.SelectObjectTypesEnum=yt,exports.SpecialActionsEnum=je,exports.SpectateModesEnum=Fe,exports.Streamer=P,exports.StreamerAreaTypes=Bt,exports.StreamerDistances=v,exports.StreamerItemTypes=S,exports.StreamerMiscellaneous=Be,exports.StreamerObjectTypes=xe,exports.TextDraw=_,exports.TextDrawAlignEnum=Dt,exports.TextDrawEvent=fg,exports.TextDrawFontsEnum=Ee,exports.Vehicle=C,exports.VehicleEvent=Op,exports.VehicleModelInfoEnum=Rt,exports.VehicleParamsEnum=wt,exports.WeaponEnum=Lt,exports.WeaponSkillsEnum=bt,exports.WeaponStatesEnum=Gt,exports.animateLib=Jt,exports.defineEvent=h,exports.defineHooks=Eg,exports.getAnimateDurationByLibName=im,exports.isHolding=gg,exports.isPressed=Pg,exports.isPressing=Sg,exports.isReleased=yg,exports.isValidAnimateLib=Xe,exports.isValidAnimateName=Ye,exports.rgba=I,exports.useTrigger=Ea,exports.withTriggerOptions=Ia;
|
|
1
|
+
"use strict";var gi=require("node:util"),Pi=require("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 Si(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 Ve(e){return e==="__proto__"}function Ee(e,t){const i=Object.keys(t);for(let a=0;a<i.length;a++){const n=i[a];if(Ve(n))continue;const r=t[n],s=e[n];Array.isArray(r)?Array.isArray(s)?e[n]=Ee(s,r):e[n]=Ee([],r):ct(r)?ct(s)?e[n]=Ee(s,r):e[n]=Ee({},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 Ii=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function Ei(e){return Array.from(e.match(Ii)??[])}function Xe(e){return Ei(e).map(i=>i.toLowerCase()).join("_")}function Ai(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function Ci(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function Ni(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 Ye(e,t,i){if(e==null)return i;switch(typeof t){case"string":{if(Ve(t))return i;const a=e[t];return a===void 0?Ai(t)?Ye(e,Ni(t),i):i:a}case"number":case"symbol":{typeof t=="number"&&(t=Ci(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),Ve(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||Ve(t[n]))return i;a=a[t[n]]}return a===void 0?i:a}const{encode:Di,decode:vi,encodingExists:wi}=Pi;function Ri(e){return e instanceof Buffer}class I{constructor(t,i){this.defaultLocale=t,this.locales=i,this.defaultLocale=Xe(t),this.locales=I.snakeLocaleKeys(i)}addLocales=t=>{Ee(this.locales,I.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=yi(this.locales,t)};$t=(t,i,a=this.defaultLocale)=>{const n=this.locales[Xe(a)],r=Ye(this.locales[this.defaultLocale],t),s=Ye(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=gi.format(l,...i)),l};static isValidate(t){if(!wi(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,i){return I.isValidate(i),[...Di(t,i),0]}static decodeFromBuf(t,i="utf8"){I.isValidate(i);const a=Ri(t)?t:Buffer.from(I.getValidStr(t));return vi(a,i)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return Si(t,(i,a)=>Xe(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 _t=(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))(_t||{}),ht=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(ht||{}),ze=(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))(ze||{}),ut=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(ut||{}),mt=(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))(mt||{}),N=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_ID",e[e.NPC_ID=-1]="NPC_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))(N||{}),pt=(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))(pt||{}),F=(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))(F||{}),ft=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(ft||{}),gt=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(gt||{}),Pt=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(Pt||{}),He=(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))(He||{}),Ae=(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))(Ae||{}),pe=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(pe||{}),St=(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))(St||{}),yt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(yt||{}),It=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(It||{}),Et=(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))(Et||{}),At=(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))(At||{}),Ce=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Ce||{}),Ct=(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))(Ct||{}),Ue=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(Ue||{}),Ne=(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))(Ne||{}),Nt=(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))(Nt||{}),Tt=(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))(Tt||{}),Dt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Dt||{}),$e=(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))($e||{}),Te=(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))(Te||{}),vt=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(vt||{}),wt=(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))(wt||{}),Rt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(Rt||{}),Lt=(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))(Lt||{}),bt=(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))(bt||{}),Ot=(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))(Ot||{}),Gt=(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))(Gt||{}),Ft=(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))(Ft||{}),Je=(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))(Je||{}),Bt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Bt||{}),xt=(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))(xt||{}),D=(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))(D||{}),S=(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))(S||{}),We=(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))(We||{}),je=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(je||{}),W=(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))(W||{}),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 Mt=-1,Li=-1,bi=-1,Oi=-1,Gi=0,Fi=-1e3,Bi=-1e3,xi=-1e3,ki=0,Vt=32,Mi=300,Vi=!0,Ke=1,Hi=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),Ui=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),Wi=(e,t,i,a,n,r=!0,s=100,l=0,o=-1,d=-1,c=D.ACTOR_SD,h=-1,p=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,i,a,n,r,s,l,o,d,c,h,p),ji=e=>samp.callNative("DestroyDynamicActor","i",e),Ki=e=>!!samp.callNative("IsValidDynamicActor","i",e),Zi=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),Xi=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),Yi=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),zi=(e,t,i,a,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,i,a,n,r,s,l,o),$i=e=>samp.callNative("ClearDynamicActorAnimations","i",e),Ji=e=>{const[t,i]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:i}},Qi=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),qi=e=>{const[t,i,a,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},ea=(e,t,i,a)=>samp.callNative("SetDynamicActorPos","ifff",e,t,i,a),ta=e=>{const[t,i]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:i}},ia=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),aa=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),na=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),ra=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),sa=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),la=e=>{const[t,i,a=0,n=0,r=0,s=0,l=0,o=0,d]=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:d}},oa=(e,t,i,a=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicCircle","fffiii",e,t,i,a,n,r),da=(e,t,i,a,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,i,a,n,r,s,l),ca=(e,t,i,a,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,i,a,n,r,s),_a=(e,t,i,a,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,i,a,n,r,s),ha=(e,t,i,a,n,r,s=-1,l=-1,o=-1)=>samp.callNative("CreateDynamicCuboid","ffffffiii",e,t,i,a,n,r,s,l,o),ua=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicPolygon","affiiii",e,t,i,e.length,a,n,r),ma=e=>samp.callNative("DestroyDynamicArea","i",e),pa=e=>!!samp.callNative("IsValidDynamicArea","i",e),fa=e=>samp.callNative("GetDynamicAreaType","i",e),ga=e=>{const[t,i]=samp.callNative("GetDynamicPolygonPoints","iAi",e,Ht(e));return{points:t,ret:i}},Ht=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),ya=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),Ia=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),Ea=e=>{const[t,i]=samp.callNative("GetPlayerDynamicAreas","iAi",e,Ut(e));return{areas:t,ret:i}},Ut=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),Aa=(e,t,i,a)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,i,a),Ca=(e,t,i)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,i),Na=(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),Da=(e,t,i)=>{const[a,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,i,Wt(e,t,i));return{areas:a,ret:n}},Wt=(e,t,i)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,i),va=(e,t,i,a,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,i,a,n,r,jt(e,t,i,a,n,r));return{areas:s,ret:l}},jt=(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),La=(e,t,i=0,a=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,i,a,n),ba=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),Oa=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),Ga=(e,t,i,a,n=-1,r=-1,s=-1,l=D.CP_SD,o=-1,d=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,i,a,n,r,s,l,o,d),Fa=e=>samp.callNative("DestroyDynamicCP","i",e),Kt=e=>!!samp.callNative("IsValidDynamicCP","i",e),Ba=(e,t,i)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,i),xa=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),ka=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),Ma=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),Va=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,i);return{val:a,ret:n}},Ha=(e,t,i,a)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,i,a),Ua=(e,t,i)=>samp.callNative("Streamer_GetIntData","iii",e,t,i),Wa=(e,t,i,a)=>samp.callNative("Streamer_SetIntData","iiii",e,t,i,a),ja=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,i,Zt(e,t,i));return{arrayData:a,ret:n}},Ka=(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),Xa=(e,t,i,a)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,i,a),Ya=(e,t,i,a)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,i,a),Zt=(e,t,i)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,i),za=e=>samp.callNative("Streamer_GetUpperBound","i",e);var Ze=(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))(Ze||{});const $a=(e,t,i,a,n,r=-1,s=-1,l=-1,o=D.MAP_ICON_SD,d=0,c=-1,h=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,i,a,n,r,s,l,o,d,c,h),Ja=e=>samp.callNative("DestroyDynamicMapIcon","i",e),Qa=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),qa=(e,t,i,a,n,r,s,l=D.OBJECT_SD,o=D.OBJECT_DD,d=[-1],c=[-1],h=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),en=(e,t,i,a,n,r=D.PICKUP_SD,s=[-1],l=[-1],o=[-1],d=[-1],c=0)=>samp.callNative("CreateDynamicPickupEx","iiffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,s.length,l.length,o.length,d.length),tn=(e,t,i,a,n=D.CP_SD,r=[-1],s=[-1],l=[-1],o=[-1],d=0)=>samp.callNative("CreateDynamicCPEx","fffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,r.length,s.length,l.length,o.length),an=(e,t,i,a,n,r,s,l,o=D.RACE_CP_SD,d=[-1],c=[-1],h=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),nn=(e,t,i,a,n,r=Ze.LOCAL,s=D.MAP_ICON_SD,l=[-1],o=[-1],d=[-1],c=[-1],h=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,l.length,o.length,d.length,c.length),rn=(e,t,i,a=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicCircleEx","fffaaaiii",e,t,i,a,n,r,a.length,n.length,r.length),sn=(e,t,i,a,n,r=[-1],s=[-1],l=[-1])=>samp.callNative("CreateDynamicCylinderEx","fffffaaaiii",e,t,i,a,n,r,s,l,r.length,s.length,l.length),ln=(e,t,i,a,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicSphereEx","ffffaaaiii",e,t,i,a,n,r,s,n.length,r.length,s.length),on=(e,t,i,a,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicRectangleEx","ffffaaaiii",e,t,i,a,n,r,s,n.length,r.length,s.length),dn=(e,t,i,a,n,r,s=[-1],l=[-1],o=[-1])=>samp.callNative("CreateDynamicCuboidEx","ffffffaaaiii",e,t,i,a,n,r,s,l,o,s.length,l.length,o.length),cn=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicPolygonEx","affiaaaiii",e,t,i,e.length,a,n,r,a.length,n.length,r.length),_n=(e,t,i,a,n,r=!0,s=100,l=D.ACTOR_SD,o=[0],d=[-1],c=[-1],h=[-1],p=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p,o.length,d.length,c.length,h.length),hn=(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}},un=(e,t,i,a)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,i,a),mn=(e,t,i)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,i),pn=(e,t,i,a=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,i,a,a.length),fn=(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),yn=(e,t,i=Ke)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,i),In=(e,t=Ke)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),En=(e,t=Ke)=>samp.callNative("Streamer_CountItems","ii",e,t),An=(e,t,i,a,n=Vt,r=Mi,s=Mt)=>{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=Vt)=>{const[a=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,i);return a.slice(0,n)},Nn=(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),Dn=(e,t)=>{const[i,a,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},vn=(e,t,i,a,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,i,a,n),wn=(e,t,i,a,n,r,s,l=Mt,o=Li,d=bi,c=D.OBJECT_SD,h=D.OBJECT_DD,p=Oi,g=Gi)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,i,a,n,r,s,l,o,d,c,h,p,g),Rn=e=>samp.callNative("DestroyDynamicObject","i",e),Ln=e=>!!samp.callNative("IsValidDynamicObject","i",e),bn=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},On=(e,t,i,a)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,i,a),Gn=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:i,rz:a,ret:n}},Fn=(e,t,i,a)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,i,a),Bn=(e,t,i,a,n,r=Fi,s=Bi,l=xi)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,i,a,n,r,s,l),xn=e=>samp.callNative("StopDynamicObject","i",e),kn=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),Mn=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),Vn=(e,t,i,a,n,r,s,l,o=Vi)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,i,a,n,r,s,l,o),Hn=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,i,a,n,r,s,l),Un=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,i,a,n,r,s,l),Wn=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),jn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),Kn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),Zn=(e,t,i,a,n,r=ki)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,i,a,n,r),Xn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),Yn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),zn=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),$n=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),Jn=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),Qn=(e,t,i,a,n,r=-1,s=-1,l=-1,o=D.PICKUP_SD,d=-1,c=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,i,a,n,r,s,l,o,d,c),qn=e=>!!samp.callNative("DestroyDynamicPickup","i",e),er=e=>!!samp.callNative("IsValidDynamicPickup","i",e),tr=(e,t,i,a,n,r,s,l,o=-1,d=-1,c=-1,h=D.RACE_CP_SD,p=-1,g=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,i,a,n,r,s,l,o,d,c,h,p,g),ir=e=>samp.callNative("DestroyDynamicRaceCP","i",e),ar=(e,t,i)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,i),nr=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),rr=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),sr=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),lr=()=>samp.callNative("Streamer_GetTickRate",""),or=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),dr=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),cr=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),_r=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),hr=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),Xt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Yt=(e,t,i=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,i),ur=e=>samp.callNative("Streamer_GetChunkSize","i",e),mr=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),pr=e=>samp.callNative("Streamer_GetMaxItems","i",e),fr=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),zt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),$t=(e,t,i=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,i),Jt=(e,t=-1)=>{const[i,a]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:i,ret:a}},Qt=(e,t,i=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,i),gr=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",We.MAX_TYPES);return{priority:e,ret:t}},Pr=e=>samp.callNative("Streamer_SetTypePriority","ai",e,We.MAX_TYPES),Sr=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},yr=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Ir=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},Er=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Ar=(e,t,i)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,i),Cr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Nr=(e,t,i)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,i),Tr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Dr=(e,t,i)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,i),vr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),wr=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Rr=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Lr=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),br=()=>samp.callNative("Streamer_ProcessActiveItems",""),Or=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Gr=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),Fr=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),Br=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),xr=(e,t,i)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,i),kr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),Mr=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},Vr=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),Hr=(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),B=new Map,qt=new Map;function Ur(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function ei(e,t,...i){const{defaultValue:a=!0,name:n,beforeEach:r,afterEach:s,throwOnError:l=!1}=e,o=B.get(n);if(!o||!o.length)return+a;const d=r?r(...i):{},c=[];let h=t;const p=g=>{if(h++,h<o.length){try{g&&Object.assign(d,g);const f={next:p,defaultValue:a,...d},y=o[h](f);return y instanceof Promise?(c.push(y),a):y}catch(f){const y=`executing event [name:${n},index:${h}] error:
|
|
2
|
+
${f}`;if(l)throw{error:f,message:y};console.log(y)}return a}return s&&(c.length?Promise.allSettled(c).then(()=>s(d)):s(d)),a};return Ur(p(),a)}function u(e){const{name:t,identifier:i,isNative:a=!0}=e;if(B.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 d=-1;if(o.skipToNext){const c=B.get(t);if(c&&c.length){const h=c.indexOf(o.skipToNext);h>-1&&(d=h)}}return ei(e,d,...o.args)}return ei(e,-1,...l)}function r(l,o=!1){B.has(t)||B.set(t,[]);const d=B.get(t),c=(o?d.unshift(l):d.push(l))-1;return()=>{const h=B.get(t);if(!h)return;const p=h.length-1,g=p<c?p:c;for(let f=g;f>=0;f--)if(h[f]===l){h.splice(f,1);break}return h.length===0&&B.delete(t),h.length}}const s=[r,n];return a&&(typeof i<"u"&&samp.registerEvent(t,i),samp.on(t,n)),qt.set(t,n),s}function Wr(e){return qt.get(e)}function jr(e){return Object.assign(e,{__trigger__:!0})}const Kr=e=>!!samp.callNative("IsValidNickName","s",e),Zr=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Xr=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Yr=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),zr=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),$r=e=>!!samp.callNative("IsValidServerRule","s",e),Jr=e=>!!samp.callNative("RemoveServerRule","s",e),Qr=e=>{samp.callNative("AllowAdminTeleport","i",e)},qr=()=>!!samp.callNative("IsAdminTeleportAllowed",""),es=e=>{samp.callNative("AllowInteriorWeapons","i",e)},ts=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),is=()=>!!samp.callNative("AreAllAnimationsEnabled",""),as=e=>{samp.callNative("EnableAllAnimations","i",e)},ns=e=>{const[t,i]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:i}},rs=e=>samp.callNative("GetConsoleVarAsInt","s",e),ss=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),ls=()=>samp.callNative("GetWeather",""),os=e=>samp.callNative("GetServerRuleFlags","s",e),ds=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),cs=e=>!!samp.callNative("SetModeRestartTime","f",e),_s=()=>samp.callNativeFloat("GetModeRestartTime",""),hs=(e,t,i)=>samp.callNative("GameTextForAll","aii",e,t,i),us=e=>{samp.callNative("HideGameTextForAll","i",e)},ms=(e,t,i)=>samp.callNative("SendDeathMessage","iii",e,t,i),ps=()=>samp.callNative("GetMaxPlayers",""),qe=(e,t,i)=>Math.sqrt(e*e+t*t+i*i),fs=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),ys=()=>samp.callNative("GetWorldTime",""),Is=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),Es=e=>samp.callNative("SetWeather","i",e),As=()=>samp.callNativeFloat("GetGravity",""),Cs=e=>samp.callNative("SetGravity","f",e),Ns=(e,t,i,a,n)=>samp.callNative("CreateExplosion","fffif",e,t,i,a,n),Ts=e=>samp.callNative("EnableZoneNames","i",e),Ds=()=>!!samp.callNative("UsePlayerPedAnims",""),vs=()=>!!samp.callNative("DisableInteriorEnterExits",""),ws=e=>samp.callNative("SetNameTagDrawDistance","f",e),Rs=()=>samp.callNative("DisableNameTagLOS",""),Ls=e=>samp.callNative("LimitGlobalChatRadius","f",e),bs=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),Os=()=>samp.callNative("GetServerTickRate",""),Gs=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),Fs=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),Bs=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},xs=()=>!!samp.callNative("ChatTextReplacementToggled",""),ks=e=>samp.callNative("GetWeaponSlot","i",e),Ms=e=>{const[t,i]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:i}},Vs=()=>samp.callNative("GetAvailableClasses",""),Hs=e=>{const t=samp.callNative("GetPlayerClass","iIIFFFFIIIIII",e),[i,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,h=0,p=0,g=0,f]=t;return{teamId:i,modelId:a,spawnX:n,spawnY:r,spawnZ:s,zAngle:l,weapon1:o,weapon1Ammo:d,weapon2:c,weapon2Ammo:h,weapon3:p,weapon3Ammo:g,ret:f}},Us=(e,t,i,a,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p),Ws=e=>samp.callNative("SetTeamCount","i",e),js=(e,t,i,a,n,r,s,l,o,d,c)=>samp.callNative("AddPlayerClass","iffffiiiiii",e,t,i,a,n,r,s,l,o,d,c),Ks=(e,t,i,a,n,r,s,l,o,d,c,h)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,i,a,n,r,s,l,o,d,c,h),Zs=(e,t,i,a,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p),Xs=e=>!!samp.callNative("SpawnPlayer","i",e),Ys=e=>{const[t,i=0,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,h=0,p=0,g]=samp.callNative("GetSpawnInfo","iIIFFFFIIIIII",e);return{teamId:t,modelId:i,spawnX:a,spawnY:n,spawnZ:r,zAngle:s,weapon1:l,weapon1Ammo:o,weapon2:d,weapon2Ammo:c,weapon3:h,weapon3Ammo:p,ret:g}},zs=e=>samp.callNative("NetStats_GetConnectedTime","i",e),$s=e=>samp.callNative("NetStats_MessagesReceived","i",e),Js=e=>samp.callNative("NetStats_BytesReceived","i",e),Qs=e=>samp.callNative("NetStats_MessagesSent","i",e),qs=e=>samp.callNative("NetStats_BytesSent","i",e),el=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),tl=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),il=e=>samp.callNative("NetStats_ConnectionStatus","i",e),al=e=>{const[t,i]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:i}},nl=e=>!!samp.callNative("IsPlayerAdmin","i",e),rl=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),sl=e=>!!samp.callNative("Kick","i",e),ll=e=>!!samp.callNative("Ban","i",e),ol=e=>{const[t,i]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:i}},dl=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},cl=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),_l=e=>samp.callNative("UnBlockIpAddress","s",e),hl=(e,t)=>{const[i,a]=samp.callNative("gpci","iAi",e,41);return{val:I.decodeFromBuf(I.getValidStr(i),t),ret:a}},ul=(e,t,i,a,n)=>samp.callNative("SendClientCheck","iiiii",e,t,i,a,n),ml=()=>{samp.callNative("ClearBanList","")},pl=e=>!!samp.callNative("IsBanned","s",e),fl=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}},E=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),yl=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),Il=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),El=e=>samp.callNative("GetPlayerWeather","i",e),Al=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),Nl=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}},Dl=e=>samp.callNative("GetPlayerDialogID","i",e),vl=e=>samp.callNative("GetPlayerSpectateID","i",e),wl=e=>samp.callNative("GetPlayerSpectateType","i",e),Rl=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),Ll=e=>samp.callNativeFloat("GetPlayerGravity","i",e),bl=e=>!!samp.callNative("IsPlayerSpawned","i",e),Ol=e=>!!samp.callNative("IsPlayerControllable","i",e),Gl=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),Fl=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),Bl=e=>!!samp.callNative("GetPlayerGhostMode","i",e),xl=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),kl=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),Ml=e=>!!samp.callNative("HidePlayerDialog","i",e),Vl=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),Hl=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),Ul=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),Wl=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),jl=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),Kl=(e,t,i,a)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,i,a),Zl=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Xl=(e,t,i,a)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,i,a),Yl=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),zl=e=>!!samp.callNative("IsPlayerNPC","i",e),$l=(e,t,i,a)=>!!samp.callNative("SetPlayerPos","ifff",e,t,i,a),Jl=(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}},ql=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),eo=e=>{const[t,i]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:i}},to=(e,t,i,a,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,i,a,n),io=(e,t,i,a)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,i,a),ao=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),no=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),ro=e=>samp.callNative("GetPlayerInterior","i",e),so=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),lo=e=>{const[t,i]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:i}},oo=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),co=e=>{const[t,i]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:i}},_o=(e,t,i)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,i),ho=e=>samp.callNative("GetPlayerAmmo","i",e),uo=e=>samp.callNative("GetPlayerWeaponState","i",e),mo=e=>samp.callNative("GetPlayerTargetPlayer","i",e),po=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},fo=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),yo=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),Io=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,E(t)),Eo=e=>samp.callNative("GetPlayerColor","i",e),Ao=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),Co=e=>samp.callNative("GetPlayerSkin","i",e),No=(e,t,i)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,i),To=e=>!!samp.callNative("ResetPlayerWeapons","i",e),Do=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),vo=(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),Lo=e=>samp.callNative("GetPlayerMoney","i",e),bo=e=>samp.callNative("GetPlayerState","i",e),Oo=e=>samp.callNative("GetPlayerPing","i",e),Go=e=>samp.callNative("GetPlayerWeapon","i",e),Fo=e=>{const[t,i,a,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:i,leftRight:a,ret:n}},Bo=(e,t,i)=>!!samp.callNative("SetPlayerTime","iii",e,t,i),xo=e=>{const[t,i,a]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:i,ret:a}},ko=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),Mo=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Vo=e=>!!samp.callNative("ForceClassSelection","i",e),Ho=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Uo=e=>samp.callNative("GetPlayerWantedLevel","i",e),Wo=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),jo=e=>samp.callNative("GetPlayerFightingStyle","i",e),Ko=(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}},Xo=(e,t,i)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,i),Yo=(e,t,i,a,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,i,a,n,r,s),zo=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),$o=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Jo=(e,t,i)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,i),Qo=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),qo=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),ed=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),td=(e,t,i,a,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,i,a,n,r),id=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}},ad=(e,t,i)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,i),nd=e=>samp.callNative("GetPlayerVehicleID","i",e),rd=e=>samp.callNative("GetPlayerVehicleSeat","i",e),sd=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),ld=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),od=(e,t,i,a,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,i,a,n),dd=(e,t,i,a,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,i,a,n,r,s,l,o,d),cd=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),_d=e=>samp.callNative("GetPlayerAnimationIndex","i",e),hd=e=>samp.callNative("GetPlayerSpecialAction","i",e),ud=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),md=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),pd=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),fd=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),yd=(e,t,i)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,i),Id=e=>!!samp.callNative("StopRecordingPlayerData","i",e),Ed=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),Ad=(e,t,i)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,i),Cd=(e,t,i)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,i),Nd=e=>!!samp.callNative("IsPlayerConnected","i",e),Td=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),Dd=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),vd=(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,E(i));function Ld(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const bd=(e,t,i)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,i),Od=(e,t,i,a)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,i,a),Gd=(e,t,i,a,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,i,a,n),Fd=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),Bd=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},xd=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:i,z:a,ret:n}},kd=e=>samp.callNative("GetPlayerCameraMode","i",e),Md=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Vd=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),Hd=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Ud=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Wd=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),jd=(e,t,i,a,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,i,a,n,r,s,l,o),Kd=(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),Xd=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Yd=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),zd=e=>samp.callNative("GetActorSkin","i",e),$d=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Jd=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}},qd=(e,t,i,a,n,r,s,l,o=-2,d=-2)=>samp.callNative("SetVehicleSpawnInfo","iiffffiiii",e,t,i,a,n,r,s,l,o,d),ec=e=>{const[t=0,i=0,a]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:i,ret:a}},tc=e=>samp.callNative("GetVehiclePaintjob","i",e),ic=e=>samp.callNative("GetVehicleInterior","i",e),ac=e=>{const[t,i]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:i}},nc=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),rc=e=>samp.callNative("GetVehicleRespawnDelay","i",e),sc=e=>samp.callNative("GetVehicleCab","i",e),lc=e=>samp.callNative("GetVehicleOccupiedTick","i",e),oc=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),dc=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),cc=e=>!!samp.callNative("IsVehicleOccupied","i",e),_c=e=>samp.callNative("GetVehicleRespawnTick","i",e),hc=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),uc=e=>!!samp.callNative("IsVehicleDead","i",e),mc=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),pc=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),fc=(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),yc=e=>samp.callNative("GetVehicleLastDriver","i",e),Ic=e=>samp.callNative("GetVehicleDriver","i",e),Ec=()=>samp.callNative("GetVehicleModelsUsed",""),Ac=e=>samp.callNative("GetVehicleSirenState","i",e),Cc=e=>samp.callNative("GetVehicleLandingGearState","i",e),Nc=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),Tc=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),Dc=e=>{const[t=0,i=0,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c]=samp.callNative("GetVehicleMatrix","iFFFFFFFFF",e);return{rightX:t,rightY:i,rightZ:a,upX:n,upY:r,upZ:s,atX:l,atY:o,atZ:d,ret:c}},ti=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,i,a,n],ret:r}},vc=(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,E(r),E(s),l,o),Rc=e=>samp.callNative("DestroyVehicle","i",e),Lc=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),bc=e=>{const[t,i,a,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:i,z:a,ret:n}},Oc=(e,t,i,a)=>!!samp.callNative("SetVehiclePos","ifff",e,t,i,a),Gc=e=>{const[t,i]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:i}},Fc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:n,ret:r}},Bc=(e,t,i,a)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,i,a),xc=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),kc=(e,t,i,a)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,i,a),Mc=()=>samp.callNative("ManualVehicleEngineAndLights",""),Vc=(e,t,i,a,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,i,a,n,r,s,l),Hc=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Uc=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Wc=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,i,a,n),jc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},Kc=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,i,a,n),Zc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},Xc=e=>samp.callNative("SetVehicleToRespawn","i",e),Yc=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),zc=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),$c=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Jc=(e,t,i)=>samp.callNative("ChangeVehicleColor","iii",e,E(t),E(i)),Qc=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),qc=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),e_=e=>{const[t,i]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:i}},t_=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),i_=e=>samp.callNative("DetachTrailerFromVehicle","i",e),a_=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),n_=e=>samp.callNative("GetVehicleTrailer","i",e),r_=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),s_=e=>samp.callNative("GetVehicleModel","i",e),l_=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),o_=e=>samp.callNative("GetVehicleComponentType","i",e),d_=e=>samp.callNative("RepairVehicle","i",e),c_=e=>{const[t,i,a,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:i,z:a,ret:n}},__=(e,t,i,a)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,i,a),h_=(e,t,i,a)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,i,a),u_=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:i,lights:a,tires:n,ret:r}},m_=(e,t,i,a,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,i,a,n),p_=(e,t)=>{const[i,a,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},f_=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),g_=e=>samp.callNative("GetVehicleVirtualWorld","i",e),P_=e=>!!samp.callNative("IsValidVehicle","i",e),S_=(e,t,i,a,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,i,a,n,E(r),E(s)),y_=(e,t,i,a,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,i,a,n,E(r),E(s),l,o),I_=e=>!!samp.callNative("ShowVehicle","i",e),E_=e=>!!samp.callNative("HideVehicle","i",e),A_=e=>!!samp.callNative("IsVehicleHidden","i",e),C_=e=>!!samp.callNative("IsPlayerInModShop","i",e),N_=e=>samp.callNative("GetPlayerSirenState","i",e),T_=e=>samp.callNative("GetPlayerLandingGearState","i",e),D_=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),v_=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),w_=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),ii=e=>samp.callNative("GetVehicleMaxPassengers","i",e),R_=e=>samp.callNative("CountVehicleOccupants","i",e),L_=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),b_=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}},O_=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),G_=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}},F_=e=>!!samp.callNative("IsMenuDisabled","i",e),B_=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),x_=(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}},M_=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:i,ret:a}},V_=(e,t)=>{const[i,a]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:i,ret:a}},H_=(e,t,i)=>{const[a,n]=samp.callNative("GetMenuItem","iiiSi",e,t,i,31);return{item:a,ret:n}},U_=(e,t,i,a,n,r)=>samp.callNative("CreateMenu","siffff",e,t,i,a,n,r),W_=e=>samp.callNative("DestroyMenu","i",e),j_=(e,t,i)=>samp.callNative("AddMenuItem","iis",e,t,i),K_=(e,t,i)=>samp.callNative("SetMenuColumnHeader","iis",e,t,i),Z_=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),X_=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),Y_=e=>!!samp.callNative("IsValidMenu","i",e),z_=e=>samp.callNative("DisableMenu","i",e),$_=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),J_=e=>samp.callNative("GetPlayerMenu","i",e),Q_=e=>!!samp.callNative("IsValidGangZone","i",e),q_=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),eh=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),th=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),ih=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),ah=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),nh=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}},rh=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},sh=(e,t,i,a)=>samp.callNative("GangZoneCreate","ffff",e,t,i,a),lh=e=>samp.callNative("GangZoneDestroy","i",e),oh=(e,t,i)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,E(i)),dh=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,E(t)),ch=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),_h=e=>samp.callNative("GangZoneHideForAll","i",e),hh=(e,t,i)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,E(i)),uh=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,E(t)),mh=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),ph=e=>samp.callNative("GangZoneStopFlashForAll","i",e),fh=(e,t,i,a,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,i,a,n),gh=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),Ph=(e,t,i)=>samp.callNative("PlayerGangZoneShow","iii",e,t,i),Sh=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),yh=(e,t,i)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,i),Ih=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),Eh=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),Ah=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),Ch=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),Nh=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),Th=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),Dh=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),vh=(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}},wh=(e,t,i)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,i)},Rh=e=>!!samp.callNative("IsValidTextDraw","i",e),Lh=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),bh=e=>{const[t,i]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:i}},Oh=(e,t,i)=>{samp.callNative("TextDrawSetPos","iff",e,t,i)},Gh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:i,ret:a}},Fh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:i,ret:a}},Bh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:i,ret:a}},xh=e=>samp.callNative("TextDrawGetColor","i",e),kh=e=>samp.callNative("TextDrawGetBoxColor","i",e),Mh=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Vh=e=>samp.callNative("TextDrawGetShadow","i",e),Hh=e=>samp.callNative("TextDrawGetOutline","i",e),Uh=e=>samp.callNative("TextDrawGetFont","i",e),Wh=e=>!!samp.callNative("TextDrawIsBox","i",e),jh=e=>!!samp.callNative("TextDrawIsProportional","i",e),Kh=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Zh=e=>samp.callNative("TextDrawGetAlignment","i",e),Xh=e=>samp.callNative("TextDrawGetPreviewModel","i",e),Yh=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}},zh=e=>{const[t,i,a]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:i,ret:a}},$h=(e,t,i)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,i)},Jh=(e,t,i)=>samp.callNative("TextDrawCreate","ffa",e,t,i),Qh=e=>samp.callNative("TextDrawDestroy","i",e),qh=(e,t,i)=>samp.callNative("TextDrawLetterSize","iff",e,t,i),eu=(e,t,i)=>samp.callNative("TextDrawTextSize","iff",e,t,i),tu=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),iu=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,E(t)),au=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),nu=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,E(t)),ru=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),su=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),lu=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,E(t)),ou=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),du=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),cu=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),_u=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),hu=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),uu=e=>samp.callNative("TextDrawShowForAll","i",e),mu=e=>samp.callNative("TextDrawHideForAll","i",e),pu=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),fu=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),gu=(e,t,i,a,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,i,a,n)},Pu=(e,t,i)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,E(t),E(i)),Su=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,E(t))},yu=e=>{samp.callNative("CancelSelectTextDraw","i",e)},Iu=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),Eu=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),Au=(e,t)=>{const[i,a]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:i,ret:a}},Cu=(e,t,i,a)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,i,a)},Nu=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},Tu=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},Du=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:i,fY:a,ret:n}},vu=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),wu=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),Ru=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),Lu=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),bu=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),Ou=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),Gu=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),Fu=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),Bu=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),xu=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),ku=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Mu=(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}},Vu=(e,t)=>{const[i,a,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:i,color2:a,ret:n}},Hu=(e,t,i,a)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,i,a),Uu=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Wu=(e,t,i,a)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,i,a),ju=(e,t,i,a)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,i,a),Ku=(e,t,i)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,i),Zu=(e,t,i)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,E(i)),Xu=(e,t,i)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,i),Yu=(e,t,i)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,E(i)),zu=(e,t,i)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,i),$u=(e,t,i)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,i),Ju=(e,t,i)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,E(i)),Qu=(e,t,i)=>samp.callNative("PlayerTextDrawFont","iii",e,t,i),qu=(e,t,i)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,i),em=(e,t,i)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,i),tm=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),im=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),am=(e,t,i)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,i),nm=(e,t,i)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,i),rm=(e,t,i,a,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,i,a,n,r),sm=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,i,a),lm=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),om=e=>!!samp.callNative("BeginObjectSelecting","i",e),dm=e=>!!samp.callNative("EndObjectEditing","i",e),cm=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),_m=(e,t,i,a,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,i,a,n),hm=(e,t,i,a,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,i,a,n,r,s),um=(e,t)=>samp.callNative("RedirectDownload","is",e,t),mm=e=>{const[t,i]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},pm=e=>{const[t,i]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},fm=(e,t)=>{const[i=0,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,h=0,p=0,g=0,f=0,y]=samp.callNative("GetPlayerAttachedObject","iiIIFFFFFFFFFII",e,t);return{modelId:i,bone:a,fX:n,fY:r,fZ:s,fRotX:l,fRotY:o,fRotZ:d,fScaleX:c,fScaleY:h,fScaleZ:p,materialColor1:g,materialColor2:f,ret:y}},gm=(e,t,i,a,n,r,s,l,o,d,c,h,p,g,f)=>samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,i,a,n,r,s,l,o,d,c,h,p,E(g),E(f)),Pm=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),Sm=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),ai=e=>!!samp.callNative("IsValidCustomModel","i",e),ym=e=>{if(!ai(e))return null;const[t,i,a]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:i,ret:a}},ni=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}]]]),et=e=>{const t=ni.get(e.toUpperCase());return t===void 0?!1:t},tt=(e,t)=>{const i=et(e);if(i)return t==="null"?!0:i.some(a=>a.n===t)},Im=(e,t)=>{const i=et(e);if(i)return i.find(a=>a.n===t)?.d},ee=(e,t)=>{const i=t.replace("-","")==="utf8"?e:I.encodeToBuf(e,t);return[i instanceof Array?"a":"s",i]},ri=(e,t,i)=>{const a=ee(i,e.charset);return samp.callNative("SendClientMessage",`ii${a[0]}`,e.id,E(t),a[1])},Em=(e,t,i)=>(e.forEach(a=>ri(a,t,i)),1),si=(e,t,i)=>{const a=ee(i,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${a[0]}`,e.id,t,a[1])},Am=(e,t,i)=>(e.forEach(a=>{si(a,t,i)}),1),Cm=(e,t,i)=>{const{charset:a}=e,{style:n,caption:r,info:s,button1:l,button2:o}=i,[d,c]=ee(r||"",a),[,h]=ee(s||"",a),[,p]=ee(l||"",a),[,g]=ee(o||"",a);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,n,c,h,p,g)},Nm=e=>{const[t,i]=samp.callNative("GetPlayerName","iAi",e.id,F.MAX_PLAYER_NAME);return{name:I.decodeFromBuf(I.getValidStr(t),e.charset),ret:i}},Tm=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,I.encodeToBuf(t,e.charset)),Dm=(e,t,i)=>{const a=I.encodeToBuf(t,i);return samp.callNative("BanEx","ia",e,a)},vm=(e,t="utf8")=>{const[i,a]=ee(e,t);return samp.callNative("SendRconCommand",i,a)},wm=(e,t,i,a,n,r,s,l,o,d,c,h,p,g,f,y)=>{const w=I.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,i,a,n,r,s,l,o,d,c,h,p,g,f,y)},Rm=(e,t,i,a,n,r,s,l,o,d,c,h,p,g,f,y)=>{const w=I.encodeToBuf(e,y);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",w,t,i,a,n,r,s,l,o,d,c,h,p,g,f,c.length,h.length,p.length,g.length)},Lm=(e,t,i,a)=>{const n=I.encodeToBuf(i,a);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},bm=(e,t)=>{const[i,a]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:I.decodeFromBuf(I.getValidStr(i),t),ret:a}},Om=(e,t,i,a,n,r,s,l,o,d,c)=>{const h=I.encodeToBuf(a,e),p=I.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,i,h,n,p,s,l,o,d,c)},Gm=(e,t,i="utf8")=>{const[a,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:a,txdName:I.decodeFromBuf(I.getValidStr(n),i),textureName:I.decodeFromBuf(I.getValidStr(r),i),materialColor:s,ret:l}},Fm=(e,t,i)=>{const[a,n,r,s,l,o,d,c,h]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),p=I.decodeFromBuf(a,i),g=I.decodeFromBuf(r,i);return{text:p,materialSize:n,fontFace:g,fontSize:s,bold:l,fontColor:o,backColor:d,textAlignment:c,ret:h}},Bm=(e,t,i,a,n,r)=>{const s=I.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,E(i),a,n)},te=Symbol(),j=new Map,K=new Map,De=new Map,ve=new Map,we=new Map,Re=new Map,Z=new Map,ie=new Map,ae=new Map,Le=new Map,be=new Map,X=new Map,fe=new Map,Q=new Map,ne=new Map,re=new Map,se=new Map,ge=new Map,le=new Map,Y=new Uint32Array(65536),xm=(e,t)=>{const i=e.length,a=t.length,n=1<<i-1;let r=-1,s=0,l=i,o=i;for(;o--;)Y[e.charCodeAt(o)]|=1<<o;for(o=0;o<a;o++){let d=Y[t.charCodeAt(o)];const c=d|s;d|=(d&r)+r^r,s|=~(d|r),r&=d,s&n&&l++,r&n&&l--,s=s<<1|1,r=r<<1|~(c|s),s&=c}for(o=i;o--;)Y[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 f=0;f<s;f++)r[f]=-1,n[f]=0;let o=0;for(;o<l-1;o++){let f=0,y=-1;const w=o*32,G=Math.min(32,a)+w;for(let T=w;T<G;T++)Y[e.charCodeAt(T)]|=1<<T;for(let T=0;T<i;T++){const J=Y[t.charCodeAt(T)],U=r[T/32|0]>>>T&1,H=n[T/32|0]>>>T&1,ot=J|f,dt=((J|H)&y)+y^y|J|H;let Ie=f|~(dt|y),Me=y&dt;Ie>>>31^U&&(r[T/32|0]^=1<<T),Me>>>31^H&&(n[T/32|0]^=1<<T),Ie=Ie<<1|U,Me=Me<<1|H,y=Me|~(ot|Ie),f=Ie&ot}for(let T=w;T<G;T++)Y[e.charCodeAt(T)]=0}let d=0,c=-1;const h=o*32,p=Math.min(32,a-h)+h;for(let f=h;f<p;f++)Y[e.charCodeAt(f)]|=1<<f;let g=a;for(let f=0;f<i;f++){const y=Y[t.charCodeAt(f)],w=r[f/32|0]>>>f&1,G=n[f/32|0]>>>f&1,T=y|d,J=((y|G)&c)+c^c|y|G;let U=d|~(J|c),H=c&J;g+=U>>>a-1&1,g-=H>>>a-1&1,U>>>31^w&&(r[f/32|0]^=1<<f),H>>>31^G&&(n[f/32|0]^=1<<f),U=U<<1|w,H=H<<1|G,c=H|~(T|U),d=U&T}for(let f=h;f<p;f++)Y[e.charCodeAt(f)]=0;return g},li=(e,t)=>{if(e.length<t.length){const i=t;t=e,e=i}return t.length===0?e.length:e.length<=32?xm(e,t):km(e,t)},Mm=(e,t)=>{let i=1/0,a=0;for(let n=0;n<t.length;n++){const r=li(e,t[n]);r<i&&(i=r,a=n)}return t[a]},oe=new Map,de=new Map,oi=/[^/\s]+/gi,Oe={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"}},[Vm,Hm]=u({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}}}),[Um,Wm]=u({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}}}),[jm,Ge]=u({name:"OnCommandError",isNative:!1,defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o,d){return{player:e,error:t,command:i,cmdText:a,buffer:n,strictMainCmd:r,noStrictMainCmd:s,hasStrict:l,hasNoStrict:o,subcommand:d,getSuggestion(){const c=Mm(a,[...oe.keys(),...de.keys()]),h=li(a,c);return{suggestion:c,distance:h}}}}}),[Km,Zm]=u({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const i=j.get(e);let a=t,n="";return typeof t=="string"?(n=t,a=I.encodeToBuf(n,"utf-8")):n=I.decodeFromBuf(t,i.charset),{player:i,buffer:a,cmdText:n}}}),[Xm,Ym]=u({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,i){return{player:e,buffer:t,cmdText:i}}});function zm(e){const t=[];let i="";for(let a=0;a<e.length;a++)i+=e[a]+" ",t.push(i.trimEnd());return t.reverse()}Km(({player:e,buffer:t,cmdText:i,next:a})=>{const n=Ym(e,t,i);if(n)return n;const r=i.match(oi),s=zm(r),l=s.find(y=>oe.has(y)),o=s.map(y=>y.toLowerCase()).find(y=>de.has(y)),d=!!l,c=!!o,h=r.join(" ");let p=[];const g=[[l,oe,!0],[o,de,!1]],f=[h,i,t,l,o,d,c,p];if(d||c){const y=g[0][0]||g[1][0];p=h.replace(y,"").trim().split(" ")}else return Ge(e,Oe.NOT_EXIST,...f);try{if(!Hm(e,...f))return Ge(e,Oe.RECEIVED_REJECTED,...f)}catch(y){const w=typeof y=="object"?y:{error:y};return Ge(e,{...Oe.RECEIVED_THROW,...w},...f)}for(const[y,w,G]of g){if(!y)continue;const T=w.get(y),[,J]=T;if(!J(e,y,p,i,t,G))return Ge(e,Oe.REJECTED,...f)}return Wm(e,h,i,t,l,o,d,c,p)?(a(),!0):Ge(e,Oe.PERFORMED,...f)});function $m(e,t,i,a,n,r){return{player:e,mainCommand:t,subcommand:i,cmdText:a,buffer:n,isStrict:r}}class M{static caseSensitive=!1;constructor(){}static on(t,i){let a=M.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(c=>!c.match(oi));if(l)return console.log(`error command ${l} format`),()=>{};const o=a?oe:de,d=s.map(c=>{const h=c.replaceAll("/",""),p=a?h:h.toLowerCase();if(!o.has(p)){const f=u({name:a?"$"+p:p,isNative:!1,beforeEach:$m});o.set(p,f)}const[g]=o.get(p);return[p,g(r)]});return()=>{d.forEach(c=>{const[h,p]=c;p()===0&&o.delete(h)})}}static off(t){(Array.isArray(t)?t:[t]).forEach(i=>{let a=i.replaceAll("/","");oe.has(a)&&(B.has(a)&&B.delete(a),oe.has(a)&&oe.delete(a)),a=a.toLowerCase(),de.has(a)&&(B.has(a)&&B.delete(a),de.has(a)&&de.delete(a))})}static enableCaseSensitive(){M.caseSensitive=!0}static disableCaseSensitive(){M.caseSensitive=!1}static isCaseSensitive(){return M.caseSensitive}static simulate(t,i){return Zm(t.id,i)}}const[di]=u({name:"OnClientCheckResponse",identifier:"iiii",beforeEach(e,t,i,a){return{player:m.getInstance(e),actionId:t,memAddr:i,data:a}}}),[Jm,Qm]=u({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,i){return{player:e,newLocale:t,oldLocale:i}}}),[qm,ep]=u({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,i){return{player:e,newCharset:t,oldCharset:i}}});class m{constructor(t){if(this.id=t,t<0||t>=F.MAX_PLAYERS)throw new Error(`Invalid player ID: ${t} (valid range: 0-${F.MAX_PLAYERS-1})`);const i=m.getInstance(t);if(i)return i;j.set(t,this)}[te]={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,ep(this,t,i)}get locale(){return this._locale}set locale(t){const i=this._locale;this._locale=t,Qm(this,t,i)}sendClientMessage(t,i){return ri(this,t,i)}static sendClientMessageToAll(t,i){Em(m.getInstances(),t,i)}sendMessageToPlayer(t,i){return si(t,this.id,i)}sendMessageToAll(t){return Am(m.getInstances(),this.id,t)}isNpc(){return zl(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 yo(this.id,t)}allowTeleport(t){return Hl(this.id,t)}isTeleportAllowed(){return Ul(this.id)}enableCameraTarget(t){return Md(this.id,t)}enableStuntBonus(t){return gd(this.id,t)}getInterior(){return ro(this.id)}setInterior(t){return no(this.id,t)}showNameTag(t,i){return bd(this.id,t.id,i)}setColor(t){return Io(this.id,t)}getColor(){return Eo(this.id)}setMarker(t,i){Rd(this.id,t.id,i)}getMarker(t){return Ld(this.id,t.id)}resetMoney(){return Ro(this.id)}getMoney(){return Lo(this.id)}giveMoney(t){return wo(this.id,t)}resetWeapons(){return To(this.id)}spawn(){return Xs(this.id)}setHealth(t){return so(this.id,t)}getHealth(){return lo(this.id)}toggleClock(t){return ko(this.id,t)}toggleControllable(t){return ld(this.id,t)}toggleSpectating(t){return Ed(this.id,t)}spectatePlayer(t,i=Ue.NORMAL){return Ad(this.id,t.id,i)}spectateVehicle(t,i=Ue.NORMAL){return Cd(this.id,t.id,i)}forceClassSelection(){return Vo(this.id)}kick(){return sl(this.id)}ban(){return ll(this.id)}banEx(t,i){return Dm(this.id,t,i)}isAdmin(){return nl(this.id)}isInRangeOfPoint(t,i,a,n){return to(this.id,t,i,a,n)}isStreamedIn(t){return ao(this.id,t.id)}setSkin(t,i=!1){return!i&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===$e.DUCK?!1:Ao(this.id,t)}getSkin(){return Co(this.id)}isInAnyVehicle(){return Dd(this.id)}getSpecialAction(){return hd(this.id)}setSpecialAction(t){return ud(this.id,t)}setScore(t){return go(this.id,t)}getScore(){return Po(this.id)}getPing(){return Oo(this.id)||0}setPos(t,i,a){return $l(this.id,t,i,a)}getPos(){return Ql(this.id)}isSpectating(){return this.getState()===Ne.SPECTATING}isWasted(){return this.getState()===Ne.WASTED}getState(){return bo(this.id)}getVersion(){return Pl(this.id)}setVirtualWorld(t){return pd(this.id,t)}getVirtualWorld(){return fd(this.id)}removeFromVehicle(){return sd(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return Ho(this.id,t)}getWantedLevel(){return Uo(this.id)}setFacingAngle(t){return ql(this.id,t)}getFacingAngle(){return eo(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return Mo(this.id,t)}getWeather(){return El(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 Bo(this.id,t,i)}getTime(){return xo(this.id)}removeBuilding(t,i,a,n,r){return td(this.id,t,i,a,n,r)}setTeam(t){t<0||t>N.NO_TEAM||po(this.id,t)}getTeam(){return fo(this.id)}setSkillLevel(t,i){if(i<0||i>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return Jo(this.id,t,i)}getName(){return Nm(this)}setName(t){return Tm(this,t)}setVelocity(t,i,a){return Ko(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 qe(i,a,n)*t}getKeys(){return Fo(this.id)}getIp(){return gl(this.id)}getFightingStyle(){return jo(this.id)}setFightingStyle(t){return Wo(this.id,t)}setArmour(t){return oo(this.id,t)}getArmour(){return co(this.id)}setCameraBehind(){return Fd(this.id)}setCameraPos(t,i,a){return Od(this.id,t,i,a)}setCameraLookAt(t,i,a,n=Ce.CUT){return Gd(this.id,t,i,a,n)}getCameraAspectRatio(){return Ud(this.id)}getCameraFrontVector(){return xd(this.id)}getCameraMode(){return kd(this.id)}getCameraPos(){return Bd(this.id)}getCameraTargetPlayer(){const t=Hd(this.id);return m.getInstances().find(i=>i.id===t)}getCameraTargetVehicle(){const t=Vd(this.id);return[...K.values()].find(i=>i.id===t)}getCameraZoom(){return Wd(this.id)}playAudioStream(t,i=0,a=0,n=0,r=5){let s=!1;return(i!==0||a!==0||n!==0)&&(s=!0),Yo(this.id,t,i,a,n,r,s)}stopAudioStream(){return zo(this.id)}playSound(t,i=0,a=0,n=0){return od(this.id,t,i,a,n)}static getMaxPlayers(){return ps()}playCrimeReport(t,i){if(i<3||i>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Xo(this.id,t.id,i)}interpolateCameraPos(t,i,a,n,r,s,l,o=Ce.CUT){return jd(this.id,t,i,a,n,r,s,l,o)}interpolateCameraLookAt(t,i,a,n,r,s,l,o=Ce.CUT){return Kd(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 Nd(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return md(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=nd(this.id);return[...K.values()].find(i=>i.id===t)}getVehicleSeat(){return rd(this.id)}getSurfingVehicle(){const t=Qo(this.id);if(t!==N.VEHICLE_ID)return[...K.values()].find(i=>i.id===t)}applyAnimation(t,i,a=4.1,n=!1,r=!0,s=!0,l=!1,o=0,d=!1){if(!tt(t,i))throw new Error(`[Player]: Invalid anim library or name ${t} ${i}`);return dd(this.id,t,i,a,n,r,s,l,o,+d)}clearAnimations(t=!1){return cd(this.id,t)}getAnimationIndex(){return _d(this.id)}getAnimationName(t=this.getAnimationIndex()){const[i,a]=Gs(t);return{index:t,animLib:i,animName:a}}setShopName(t){return $o(this.id,t)}setPosFindZ(t,i,a){return Jl(this.id,t,i,a)}setWorldBounds(t,i,a,n){return vd(this.id,t,i,a,n)}clearWorldBounds(){return wd(this.id)}setChatBubble(t,i,a,n,r=this.charset){return Bm(this.id,t,i,a,n,r)}getDistanceFromPoint(t,i,a){return io(this.id,t,i,a)}getCustomSkin(){return Pd(this.id)}getTargetPlayer(){const t=mo(this.id);if(t!==N.PLAYER_ID)return m.getInstances().find(i=>i.id===t)}getLastShotVectors(){return id(this.id)}getWeapon(){return Go(this.id)}getWeaponData(t){return vo(this.id,t)}getWeaponState(){return uo(this.id)}giveWeapon(t,i){return No(this.id,t,i)}setAmmo(t,i){return _o(this.id,t,i)}getAmmo(){return ho(this.id)}setArmedWeapon(t){return Do(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(N.PLAYER_ID,N.PLAYER_ID,Je.CONNECT)}sendDeathMessage(t,i){return ms(t===N.PLAYER_ID?t:t.id,this.id,i)}sendDeathMessageToPlayer(t,i,a){return Xl(this.id,t===N.PLAYER_ID?t:t.id,i===N.PLAYER_ID?i:i.id,a)}setSpawnInfo(t,i,a,n,r,s,l,o,d,c,h,p){return t<0||t>N.NO_TEAM||i<0||i>311||i===74||o<0||c<0||p<0?!1:Zs(this.id,t,i,a,n,r,s,l,o,d,c,h,p)}redirectDownload(t){return um(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",d=this.getPing(),c=(d>=200?0:d)+200;let h=null;const p=di(({player:g,actionId:f,memAddr:y,data:w,next:G})=>(g!==this||(h&&(clearTimeout(h),h=null),s({actionId:f,memAddr:y,data:w})),G()));h=setTimeout(()=>{p(),l(o)},c),ul(this.id,t,i,a,n)})}selectTextDraw(t){Su(this.id,t)}cancelSelectTextDraw(){yu(this.id)}beginObjectSelecting(){return om(this.id)}endObjectEditing(){return dm(this.id)}getSurfingObject(){const t=qo(this.id);if(t!==N.OBJECT_ID)return X.get(t)}getSurfingPlayerObject(){const t=ed(this.id);if(t!==N.OBJECT_ID)return X.get(t)}isAttachedObjectSlotUsed(t){return Sm(this.id,t)}editAttachedObject(t){return lm(this.id,t)}setAttachedObject(t,i,a,n=0,r=0,s=0,l=0,o=0,d=0,c=1,h=1,p=1,g=0,f=0){return this.isAttachedObjectSlotUsed(t)?0:gm(this.id,t,i,a,n,r,s,l,o,d,c,h,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?Pm(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 yl(this.id)}getSpawnInfo(){return Ys(this.id)}getSkillLevel(t){return Il(this.id,t)}isCheckpointActive(){return L_(this.id)}getCheckpoint(){return b_(this.id)}isRaceCheckpointActive(){return O_(this.id)}getRaceCheckpoint(){return G_(this.id)}getWorldBounds(){return Al(this.id)}isInModShop(){return C_(this.id)}getSirenState(){return N_(this.id)}getLandingGearState(){return T_(this.id)}getHydraReactorAngle(){return D_(this.id)}getTrainSpeed(){return v_(this.id)}getZAim(){return Cl(this.id)}getSurfingOffsets(){return Nl(this.id)}getRotationQuat(){return Tl(this.id)}getDialogID(){return Dl(this.id)}getSpectateID(){return vl(this.id)}getSpectateType(){return wl(this.id)}getRawIp(){return fl(this.id)}setGravity(t){return Rl(this.id,t)}getGravity(){return Ll(this.id)}setAdmin(t){return rl(this.id,t)}isSpawned(){return bl(this.id)}isControllable(){return Ol(this.id)}isCameraTargetEnabled(){return Gl(this.id)}toggleGhostMode(t){return Fl(this.id,t)}getGhostMode(){return Bl(this.id)}getBuildingsRemoved(){return xl(this.id)}getAttachedObject(t){return fm(this.id,t)}removeWeapon(t){return kl(this.id,t)}isUsingOfficialClient(){return Vl(this.id)}allowWeapons(t){return Wl(this.id,t)}areWeaponsAllowed(){return jl(this.id)}gpci(t=this.charset){return hl(this.id,t)}isCuffed(){return Zd(this.id)}isInDriveByMode(){return Xd(this.id)}isAndroid(){return this.isConnected()&&this[te].isAndroid}isPC(){return this.isConnected()&&!this[te].isAndroid}isUsingOmp(){return Yd(this.id)}simulateCommand(t){return M.simulate(this,t)}static getInstance(t){return j.get(t)}static getInstances(){return[...j.values()]}}const[ci]=u({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,i,a,n){const r=m.getInstance(e),s=I.decodeFromBuf(n,r.charset);return{player:r,dialogId:t,response:i,listItem:a,buffer:n,inputText:s}}});ci(({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:ze.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),Ml(t.id)}static __inject__ShowPlayerDialog=Cm}const[_i]=u({name:"OnPlayerConnect",identifier:"i",beforeEach(e){const t=new m(e);return j.set(e,t),R.close(t),{player:t}}}),[hi]=u({name:"OnPlayerDisconnect",identifier:"ii",beforeEach(e,t){return{player:j.get(e),reason:t}},afterEach({player:e}){j.delete(e.id)}}),[ui]=u({name:"OnPlayerUpdate",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[tp]=u({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const i=m.getInstance(e);return{player:i,text:I.decodeFromBuf(t,i.charset),buffer:t}}}),[ip]=u({name:"OnPlayerEnterExitModShop",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),enterExit:t,interior:i}}}),[ap]=u({name:"OnPlayerClickMap",identifier:"ifff",defaultValue:!1,beforeEach(e,t,i,a){return{player:m.getInstance(e),fX:t,fY:i,fZ:a}}}),[np]=u({name:"OnPlayerClickPlayer",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:i}}}),[rp]=u({name:"OnPlayerDeath",identifier:"iii",beforeEach(e,t,i){const a=m.getInstance(t)||N.PLAYER_ID;return{player:m.getInstance(e),killer:a,reason:i}}}),[sp]=u({name:"OnPlayerGiveDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:m.getInstance(e),damage:m.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),[lp]=u({name:"OnPlayerKeyStateChange",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),newKeys:t,oldKeys:i}}}),[op]=u({name:"OnPlayerRequestClass",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[dp]=u({name:"OnPlayerRequestSpawn",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[cp]=u({name:"OnPlayerSpawn",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[_p]=u({name:"OnPlayerStateChange",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),newState:t,oldState:i}}}),[hp]=u({name:"OnPlayerStreamIn",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[up]=u({name:"OnPlayerStreamOut",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[mp]=u({name:"OnPlayerTakeDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){const r=m.getInstance(t)||N.PLAYER_ID;return{player:m.getInstance(e),damage:r,amount:i,weapon:a,bodyPart:n}}}),[pp]=u({name:"OnPlayerInteriorChange",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:i}}}),[fp]=u({name:"OnPlayerRequestDownload",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),type:t,crc:i}}}),[gp]=u({name:"OnPlayerFinishedDownloading",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[Pp]=u({name:"OnPlayerWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,n,r,s){return{player:m.getInstance(e),weapon:t,hitType:i,hitId:a,fX:n,fY:r,fZ:s}}});let Fe=null;const x=new Map,Pe=new Map;function mi(e){if(!e.isConnected()){x.has(e)&&(clearInterval(x.get(e)),x.delete(e),Pe.delete(e));return}let t=Pe.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(x.get(e)),x.delete(e),Pe.delete(e),it(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:i})=>{i===72&&(e[te].isAndroid=!1,x.has(e)&&(clearInterval(x.get(e)),x.delete(e),Pe.delete(e)),it(e,!1))}).catch(()=>{}),t++,Pe.set(e,t)}const[Sp,yp]=u({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[Ip,Ep]=u({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,i,a){return{player:e,pausedAt:t,now:i,diff:a}}}),[Ap,Cp]=u({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,i){return{player:e,newFps:t,oldFps:i}}}),[Np,it]=u({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});_i(({player:e,next:t})=>{if(!Fe&&m.getInstances().length&&(Fe=setInterval(()=>{m.getInstances().filter(a=>{const n=a.getState()!==Ne.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[te].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[te].isAndroid=!e.isUsingOfficialClient(),it(e,e[te].isAndroid),t();mi(e);const i=setInterval(()=>mi(e),1e3);return x.set(e,i),t()}),hi(({player:e,next:t})=>(Fe&&m.getInstances().length<=1&&(clearInterval(Fe),Fe=null),x.has(e)&&(clearInterval(x.get(e)),x.delete(e),Pe.delete(e)),t()));function Tp(e){if(!m.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,Cp(e,n,a)}}ui(({player:e,next:t})=>{if(!e.isNpc()){const i=Date.now();e.isPaused&&(e.isPaused=!1,Ep(e,e.lastUpdateTick,i,i-e.lastUpdateTick)),e.lastUpdateTick=i,Tp(e)}return t()});const at=Object.freeze({onConnect:_i,onDisconnect:hi,onPause:Sp,onResume:Ip,onUpdate:ui,onText:tp,onEnterExitModShop:ip,onClickMap:ap,onClickPlayer:np,onDeath:rp,onGiveDamage:sp,onKeyStateChange:lp,onRequestClass:op,onRequestSpawn:dp,onSpawn:cp,onStateChange:_p,onStreamIn:hp,onStreamOut:up,onTakeDamage:mp,onInteriorChange:pp,onRequestDownload:fp,onFinishedDownloading:gp,onCheckResponse:di,onCommandReceived:Vm,onCommandPerformed:Um,onCommandError:jm,onCommandText:M.on,offCommandText:M.off,onDialogResponse:ci,onLocaleChange:Jm,onCharsetChange:qm,onFpsUpdate:Ap,onWeaponShot:Pp,onAndroidCheck:Np,onCommandTextRaw:Xm}),Dp=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],vp=[[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],[],[],[],[],[],[],[],[]],wp=(e,t)=>{if(!nt(e))return!1;const i=vp[e-400];if(i===null)return!1;const a=t-1e3;return Dp.includes(a)||i.includes(a)},nt=e=>e>=400&&e<=611,Rp=(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},[pi]=u({name:"OnGameModeInit",identifier:""}),[fi]=u({name:"OnGameModeExit",identifier:""}),[Lp]=u({name:"OnIncomingConnection",identifier:"isi",defaultValue:!1,beforeEach(e,t,i){return{playerId:e,ipAddress:t,port:i}}}),[bp]=u({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:I.decodeFromBuf(e)}}}),[Op]=u({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,i){return{ip:I.decodeFromBuf(e),password:I.decodeFromBuf(t),success:!!i,ipBuffer:e,passwordBuffer:t}}}),ce=[],Se=[],rt=new Map,st=async e=>{try{return await new Promise((t,i)=>{const a=ce.findIndex(l=>l.name===e);if(a===-1)return;const n=ce[a];function r(l){l.length&&rt.set(e,l),ce.splice(a,1),Se.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}`)}},lt=async e=>{try{return await new Promise((t,i)=>{const a=Se.findIndex(o=>o.name===e);if(a===-1)return;const n=Se[a],r=rt.get(e);r&&(r.forEach(o=>o()),rt.delete(e));function s(){Se.splice(a,1),ce.push(n),setTimeout(t)}const l=n.unload();l instanceof Promise?l.then(s).catch(i):s()})}catch(t){throw new Error(`[GameMode]: script ${e} unload fail
|
|
4
|
+
${t}`)}},Gp=async e=>{await lt(e),await st(e)};pi(async({next:e})=>{const t=ce.map(i=>i.name);for(const i of t)await st(i);return e()}),fi(async({next:e})=>{const t=Se.map(i=>i.name);for(const i of t)await lt(i);return e()});const Fp=function(e,...t){if(ce.some(i=>i.name===e.name)||Se.some(i=>i.name===e.name))throw new Error(`[GameMode]: script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),ce.push(e)};class L{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=pi;static onExit=fi;static onIncomingConnection=Lp;static onRconCommand=bp;static onRconLoginAttempt=Op;static use(t,...i){return Fp(t,...i),this}static loadUseScript=st;static reloadUseScript=Gp;static unloadUseScript=lt;static enableCmdCaseSensitive=M.enableCaseSensitive;static disableCmdCaseSensitive=M.disableCaseSensitive;static isCmdCaseSensitive=M.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 Es(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=ys;static setTeamCount=Ws;static sendRconCommand=vm;static addPlayerClass=js;static addPlayerClassEx=Ks;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 Ns(t,i,a,n,r)}static manualVehicleEngineAndLights=Mc;static blockIpAddress=cl;static unBlockIpAddress=_l;static getServerTickRate=Os;static addSimpleModel(t,i,a,n,r){return this.checkSimpleModel(t,i,a,n,r)?_m(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)?hm(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=ai;static getCustomModePath=ym;static getConsoleVarAsString(t,i="utf8"){const{consoleVarBuf:a,ret:n}=ns(t);return{consoleVar:I.decodeFromBuf(I.getValidStr(a),i),ret:n}}static getRestartTime=_s;static setRestartTime=cs;static allowAdminTeleport=Qr;static isAdminTeleportAllowed=qr;static allowInteriorWeapons=es;static areInteriorWeaponsAllowed=ts;static areAllAnimationsEnabled=is;static enableAllAnimations=as;static enableStuntBonusForAll=Fs;static enableVehicleFriendlyFire=Is;static enableZoneNames=Ts;static disableInteriorEnterExits=vs;static setGameModeText=fs;static getGravity=As;static setGravity=Cs;static showNameTags=gs;static disableNameTagLOS=Rs;static usePlayerPedAnims=Ds;static showPlayerMarkers=Ps;static limitPlayerMarkerRadius=bs;static limitGlobalChatRadius=Ls;static setNameTagDrawDistance=ws;static findModelFileNameFromCRC=mm;static findTextureFileNameFromCRC=pm;static getWeaponName=Ms;static setObjectsDefaultCameraCollision=cm;static vectorSize=qe;static clearBanList=ml;static isBanned=pl;static isValidNickName=Kr;static allowNickNameCharacter=Zr;static isNickNameCharacterAllowed=Xr;static addServerRule=Yr;static setServerRule=zr;static isValidServerRule=$r;static removeServerRule=Jr;static getWeaponSlot=ks;static getAvailableClasses=Vs;static getPlayerClass=Hs;static editPlayerClass=Us;static toggleChatTextReplacement=Bs;static chatTextReplacementToggled=xs;static getConsoleVarAsInt=rs;static getConsoleVarAsBool=ss;static getWeather=ls;static getServerRuleFlag=os;static setServerRuleFlags=ds}const A={skip:!1};L.onInit(({next:e})=>(A.skip=!1,e())),L.onExit(({next:e})=>(A.skip=!0,e()));class C{sourceInfo=null;isStatic=!1;static createdCount=0;_id=-1;get id(){return this._id}constructor(t,i=!1){if(typeof t=="number"){const a=C.getInstance(t);if(a)return a;this._id=t,K.set(this._id,this),this.isValid()&&C.createdCount++}else this.sourceInfo=t,this.isStatic=i}create(t=!1){if(this.id!==-1)throw new Error("[Vehicle]: Unable to create again");if(!this.sourceInfo)throw new Error("[Vehicle]: Unable to create with only id");if(C.createdCount===F.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:d}=this.sourceInfo;if(!(!t&&!nt(i))){if(this.isStatic){if(o===void 0){this._id=C.__inject_AddStaticVehicle(i,a,n,r,s,l[0],l[1]);return}this._id=C.__inject_AddStaticVehicleEx(i,a,n,r,s,l[0],l[1],o||-1,d||!1)}else this._id=C.__inject_CreateVehicle(i,a,n,r,s,l[0],l[1],o||-1,d||!1);C.createdCount++,K.set(this._id,this)}}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Vehicle]: Unable to destroy the vehicle before create");A.skip||C.__inject_DestroyVehicle(this.id),C.createdCount--,K.delete(this._id),this._id=-1}addComponent(t){if(this.id===-1)return 0;if(!wp(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return zc(this.id,t)}removeComponent(t){if(this.getComponentInSlot(C.getComponentType(t))===0)throw new Error(`[Vehicle]: component id ${t} does not exist on this vehicle`);return $c(this.id,t)}getComponentInSlot(t){return l_(this.id,t)}linkToInterior(t){return this.id===-1?0:Yc(this.id,t)}setVirtualWorld(t){return this.id===-1?0:f_(this.id,t)}getVirtualWorld(){return this.id===-1?0:g_(this.id)}repair(){return this.id===-1?0:d_(this.id)}setPos(t,i,a){return this.id===-1?!1:Oc(this.id,t,i,a)}getPos(){return bc(this.id)}getHealth(){return e_(this.id)}setHealth(t){return this.id===-1?0:qc(this.id,t)}isPlayerIn(t){return this.id===-1?!1:Td(t.id,this.id)}putPlayerIn(t,i){if(this.id===-1||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 ad(t.id,this.id,i)}getZAngle(){return Gc(this.id)}setZAngle(t){return this.id===-1?0:xc(this.id,t)}setNumberPlate(t){if(this.id===-1)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 r_(this.id,t)}changeColors(t,i){return this.id===-1?0:Jc(this.id,t,i)}setVelocity(t,i,a){return this.id===-1?!1:__(this.id,t,i,a)}getVelocity(){return c_(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:n}=this.getVelocity();return qe(i,a,n)*t}setAngularVelocity(t,i,a){return this.id===-1?!1:h_(this.id,t,i,a)}getDamageStatus(){return u_(this.id)}updateDamageStatus(t,i,a,n){return m_(this.id,t,i,a,n)}getDistanceFromPoint(t,i,a){return Bc(this.id,t,i,a)}getModel(){return s_(this.id)}static getModelInfo(t,i){return p_(t,i)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return Fc(this.id)}setRespawn(){return this.id===-1?0:Xc(this.id)}isStreamedIn(t){return this.id===-1?!1:Lc(this.id,t.id)}setParamsCarDoors(t,i,a,n){return this.id===-1?0:Wc(this.id,t,i,a,n)}setParamsCarWindows(t,i,a,n){return this.id===-1?0:Kc(this.id,t,i,a,n)}getParamsCarDoors(){return jc(this.id)}getParamsCarWindows(){return Zc(this.id)}setParamsEx(t,i,a,n,r,s,l){return this.id===-1?0:Vc(this.id,t,i,a,n,r,s,l)}getParamsEx(){if(this.id===-1)return{engine:-1,lights:-1,alarm:-1,doors:-1,bonnet:-1,boot:-1,objective:-1};const[t,i,a,n,r,s,l]=Hc(this.id);return{engine:t,lights:i,alarm:a,doors:n,bonnet:r,boot:s,objective:l}}toggleEngine(t){if(this.id===-1)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===-1)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===-1)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===-1)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===-1)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===-1)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===-1)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===-1?-2:Uc(this.id)}setParamsForPlayer(t,i,a){return this.id===-1?0:kc(this.id,t.id,i,a)}isTrailerAttached(){return this.id===-1?!1:a_(this.id)}changePaintjob(t){return this.id===-1||!Rp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),Qc(this.id,t),1)}attachTrailer(t){return this.id===-1?0:t_(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&i_(this.id)}getTrailer(){return C.getInstance(n_(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return Dc(this.id)}getTrainSpeed(){return this.id===-1?0:Tc(this.id)}getHydraReactorAngle(){return this.id===-1?0:Nc(this.id)}getLandingGearState(){return this.id===-1?0:Cc(this.id)}getSirenState(){return this.id===-1?0:Ac(this.id)}getDriver(){return j.get(Ic(this.id))}getLastDriver(){return j.get(yc(this.id))}isSirenEnabled(){return Pc(this.id)}toggleSirenEnabled(t){return this.id===-1?0:fc(this.id,t)}setParamsSirenState(t){return this.id===-1?0:gc(this.id,t)}isDead(){return this.id===-1?!0:uc(this.id)}setDead(t){return this.id===-1?!1:mc(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:pc(this.id,t)}getRespawnTick(){return this.id===-1?0:_c(this.id)}setRespawnTick(t){return this.id===-1?!1:hc(this.id,t)}isOccupied(){return this.id===-1?!1:cc(this.id)}hasBeenOccupied(){return this.id===-1?!1:dc(this.id)}getOccupiedTick(){return this.id===-1?0:lc(this.id)}setOccupiedTick(t){return this.id===-1?0:oc(this.id,t)}getCab(){return this.id===-1?0:sc(this.id)}getRespawnDelay(){return this.id===-1?0:rc(this.id)}setRespawnDelay(t){return this.id===-1?0:nc(this.id,t)}getNumberPlate(){return ac(this.id)}getInterior(){return this.id===-1?0:ic(this.id)}getPaintjob(){return this.id===-1?-1:tc(this.id)}getColors(){return ec(this.id)}setSpawnInfo(t,i,a,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!nt(t)?0:qd(this.id,t,i,a,n,r,E(s),E(l),o,d)}getSpawnInfo(){return Qd(this.id)}getRandomColorPair(){return ti(this.getModel())}show(){return this.id===-1?!1:I_(this.id)}hide(){return this.id===-1?!1:E_(this.id)}isHidden(){return this.id===-1?!1:A_(this.id)}getVehicleOccupant(t){return w_(this.id,t)}getVehicleMaxPassengers(){return ii(this.getModel())}countVehicleOccupants(){return R_(this.getModel())}static getVehicleMaxPassengers=ii;static getRandomColorPair=ti;static getComponentType=o_;static colorIndexToColor=vc;static isValid=P_;static getModelsUsed=Ec;static getModelCount=Sc;static getInstance(t){return K.get(t)}static getInstances(){return[...K.values()]}static __inject_AddStaticVehicle=S_;static __inject_AddStaticVehicleEx=y_;static __inject_CreateVehicle=wc;static __inject_DestroyVehicle=Rc}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),K.clear(),e()));const[Bp]=u({name:"OnVehicleDamageStatusUpdate",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[xp]=u({name:"OnVehicleDeath",identifier:"ii",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[kp]=u({name:"OnVehicleMod",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:i}}}),[Mp]=u({name:"OnVehiclePaintjob",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:i}}}),[Vp]=u({name:"OnVehicleRespray",identifier:"iiii",beforeEach(e,t,i,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[i,a]}}}),[Hp]=u({name:"OnVehicleSirenStateChange",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!i}}}),[Up]=u({name:"OnVehicleSpawn",identifier:"i",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[Wp]=u({name:"OnVehicleStreamIn",identifier:"ii",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[jp]=u({name:"OnVehicleStreamOut",identifier:"ii",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Kp]=u({name:"OnPlayerEnterVehicle",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!i}}}),[Zp]=u({name:"OnPlayerExitVehicle",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Xp]=u({name:"OnTrailerUpdate",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Yp]=u({name:"OnUnoccupiedVehicleUpdate",identifier:"iiiffffff",beforeEach(e,t,i,a,n,r,s,l,o){return{vehicle:C.getInstance(e),player:m.getInstance(t),passengerSeat:i,newX:a,newY:n,newZ:r,velX:s,velY:l,velZ:o}}}),zp=Object.freeze({onDamageStatusUpdate:Bp,onDeath:xp,onMod:kp,onPaintjob:Mp,onRespray:Vp,onSirenStateChange:Hp,onSpawn:Up,onStreamIn:Wp,onStreamOut:jp,onPlayerEnter:Kp,onPlayerExit:Zp,onTrailerUpdate:Xp,onUnoccupiedUpdate:Yp}),[_e]=u({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:m.getInstance(i)}}}),[he]=u({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:m.getInstance(i)}}}),[$p]=u({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class P{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=lr;static setTickRate=or;static getPlayerTickRate(t){return dr(t.id)}static setPlayerTickRate(t,i=50){return cr(t.id,i)}static toggleChunkStream=_r;static isToggleChunkStream=hr;static getChunkTickRate(t,i=-1){return i instanceof m?Xt(t,i.id):Xt(t,i)}static setChunkTickRate(t,i,a=-1){return a instanceof m?Yt(t,i,a.id):Yt(t,i,a)}static getChunkSize=ur;static setChunkSize=mr;static getMaxItems=pr;static setMaxItems=fr;static getVisibleItems(t,i=-1){return i instanceof m?zt(t,i.id):zt(t,i)}static setVisibleItems(t,i,a=-1){return a instanceof m?$t(t,i,a.id):$t(t,i,a)}static getRadiusMultiplier(t,i=-1){return i instanceof m?Jt(t,i.id):Jt(t,i)}static setRadiusMultiplier(t,i,a=-1){return a instanceof m?Qt(t,i,a.id):Qt(t,i,a)}static getTypePriority=gr;static setTypePriority=Pr;static getCellDistance=Sr;static setCellDistance=yr;static getCellSize=Ir;static setCellSize=Er;static toggleItemStatic=Ar;static isToggleItemStatic=Cr;static toggleItemInvAreas=Nr;static isToggleItemInvAreas=Tr;static toggleItemCallbacks=Dr;static isToggleItemCallbacks=vr;static toggleErrorCallback=wr;static isToggleErrorCallback=Rr;static amxUnloadDestroyItems=Lr;static processActiveItems=br;static toggleIdleUpdate(t,i){return Or(t.id,i)}static isToggleIdleUpdate(t){return Gr(t.id)}static toggleCameraUpdate(t,i){return Fr(t.id,i)}static isToggleCameraUpdate(t){return Br(t.id)}static toggleItemUpdate(t,i,a){return xr(t.id,i,a)}static isToggleItemUpdate(t,i){return kr(t.id,i)}static getLastUpdateTime(){return Mr()}static update(t,i=-1){return Vr(t.id,i)}static updateEx(t,i,a,n,r,s,l,o,d){return Hr(t.id,i,a,n,r,s,l,o,d)}static getDistanceToItem=hn;static toggleItem(t,i,a,n){return un(t.id,i,a,n)}static isToggleItem(t,i,a){return mn(t.id,i,a)}static toggleAllItems(t,i,a,n=[-1]){return pn(t.id,i,a,n)}static getItemInternalID(t,i,a){return fn(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 yn(t.id,i,a)}static destroyAllItems=In;static countItems=En;static getNearbyItems=An;static getAllVisibleItems(t,i,a){return Cn(t.id,i,a)}static getItemPos=Nn;static setItemPos=Tn;static getItemOffset=Dn;static setItemOffset=vn;static getFloatData=Va;static setFloatData=Ha;static getIntData=Ua;static setIntData=Wa;static getArrayData=ja;static setArrayData=Ka;static isInArrayData=Za;static appendArrayData=Xa;static removeArrayData=Ya;static getArrayDataLength=Zt;static getUpperBound=za;static onPluginError=$p}class k{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=k.getInstance(t);if(i)return i;this._id=t,X.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:d,y:c,z:h,rx:p,ry:g,rz:f,extended:y}=this.sourceInfo;return t??=D.OBJECT_SD,i??=D.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=qa(o,d,c,h,p,g,f,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,d,c,h,p,g,f,a,n,r,t,i,s,l)),X.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerObject]: Unable to destroy the object before create");return A.skip||Rn(this.id),X.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:k.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:P.getIntData(S.OBJECT,this._id,W.MODEL_ID)}getPos(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get position before create");return bn(this.id)}setPos(t,i,a){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return On(this.id,t,i,a)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return Gn(this.id)}setRot(t,i,a){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return Fn(this.id,t,i,a)}move(t,i,a,n,r=-1e3,s=-1e3,l=-1e3){if(this.id===-1)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(),Bn(this.id,t,i,a,n,r,s,l)}stop(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot stop moving before create");return xn(this.id)}isMoving(){return this.id===-1?!1:kn(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return Mn(t.id,this.id)}attachToObject(t,i,a,n,r,s,l,o=!0){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToObject before both are created");return Vn(this.id,t.id,i,a,n,r,s,l,o)}attachToPlayer(t,i,a,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToPlayer before both are created");return Hn(this.id,t.id,i,a,n,r,s,l)}attachToVehicle(t,i,a,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToVehicle before both are created");return Un(this.id,t.id,i,a,n,r,s,l)}edit(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to edit before create");return t.endObjectEditing(),Wn(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:jn(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:Kn(this.id,t)}getMaterial(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material before create");return Gm(this.id,t)}setMaterial(t,i,a,n,r="#000"){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material before create");return Zn(this.id,t,i,a,n,E(r))}isMaterialTextUsed(t){return this.id===-1?!1:Xn(this.id,t)}removeMaterialText(t){return this.id===-1||!this.isMaterialTextUsed(t)?0:Yn(this.id,t)}getMaterialText(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material text before create");return Fm(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",d="#000",c=0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),Om(t||"utf8",this.id,i,a,n,r,s,l,E(o),E(d),c)}getPlayerCameraTarget(t){const i=zn(t.id);if(i!==N.OBJECT_ID)return X.get(i)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.OBJECT,this.id)}setNoCameraCollision(){return $n(this.id)}getNoCameraCollision(){return Jn(this.id)}static isValid=Ln;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.OBJECT,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return X.get(t)}static getInstances(){return[...X.values()]}}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),X.clear(),e()));const[Jp,Qp]=u({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[qp,ef]=u({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.OBJECT?Qp(i,k.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.OBJECT?ef(i,k.getInstance(t)):a());const[tf]=u({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:k.getInstance(e)}}}),[af]=u({name:"OnPlayerEditDynamicObject",identifier:"iiiiiiiii",defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o){return{player:m.getInstance(e),object:k.getInstance(t),response:i,x:a,y:n,z:r,rX:s,rY:l,rZ:o}}}),[nf]=u({name:"OnPlayerSelectDynamicObject",identifier:"iiiiii",beforeEach(e,t,i,a,n,r){return{player:m.getInstance(e),object:k.getInstance(t),modelId:i,x:a,y:n,z:r}}}),[rf]=u({name:"OnPlayerShootDynamicObject",identifier:"iiiiii",beforeEach(e,t,i,a,n,r){return{player:m.getInstance(e),object:k.getInstance(i),weapon:t,x:a,y:n,z:r}}}),[sf]=u({name:"OnPlayerEditAttachedObject",identifier:"iiiiifffffffff",defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o,d,c,h,p,g){return{player:m.getInstance(e),response:t,index:i,modelId:a,boneId:n,fOffsetX:r,fOffsetY:s,fOffsetZ:l,fRotX:o,fRotY:d,fRotZ:c,fScaleX:h,fScaleY:p,fScaleZ:g}}}),lf=Object.freeze({onMoved:tf,onPlayerEdit:af,onPlayerSelect:nf,onPlayerShoot:rf,onPlayerEditAttached:sf,onStreamIn:Jp,onStreamOut:qp});class ue{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=ue.getInstance(t);if(i)return i;this._id=t,se.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:d,z:c,type:h,color:p,extended:g}=this.sourceInfo;if(h<0||h>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=Ze.LOCAL,i??=D.MAP_ICON_SD,l??=0,g?(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=nn(o,d,c,h,E(p),t,i,a,n,r,s,l),se.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=$a(o,d,c,h,E(p),a,n,r,i,t,s,l),se.set(this._id,this),this)}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerMapIcon]: Unable to destroy the map icon before create");return A.skip||Ja(this.id),se.delete(this._id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:ue.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerMapIcon]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.MAP_ICON,this.id)}static isValid=Qa;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.MAP_ICON,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return se.get(t)}static getInstances(){return[...se.values()]}}L.onExit(({next:e})=>(ue.getInstances().forEach(t=>t.destroy()),se.clear(),e()));const[of,df]=u({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[cf,_f]=u({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.MAP_ICON?df(i,ue.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.MAP_ICON?_f(i,ue.getInstance(t)):a());const hf=Object.freeze({onStreamIn:of,onStreamOut:cf});class V{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=V.getInstance(t);if(i)return i;this._id=t,ge.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:d,y:c,z:h,extended:p}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=D.PICKUP_SD,s??=0,p?(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=V.__inject_CreateDynamicPickupEx(o,l,d,c,h,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=V.__inject_CreateDynamicPickup(o,l,d,c,h,i,a,n,t,r,s)),ge.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerPickup]: Unable to destroy the pickup before create");return A.skip||V.__inject_DestroyDynamicPickup(this.id),ge.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:V.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerPickup]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.PICKUP,this.id)}static isValid=er;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.PICKUP,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ge.get(t)}static getInstances(){return[...ge.values()]}static __inject_CreateDynamicPickup=Qn;static __inject_CreateDynamicPickupEx=en;static __inject_DestroyDynamicPickup=qn}L.onExit(({next:e})=>(V.getInstances().forEach(t=>t.destroy()),ge.clear(),e()));const[uf,mf]=u({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[pf,ff]=u({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.PICKUP?mf(i,V.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.PICKUP?ff(i,V.getInstance(t)):a());const[gf]=u({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:V.getInstance(t)}}}),Pf=Object.freeze({onPlayerPickUp:gf,onStreamIn:uf,onStreamOut:pf});class z{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=z.getInstance(t);if(i)return i;this._id=t,re.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:d,z:c,extended:h}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=D.CP_SD,s??=0,h?(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=tn(o,d,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=Ga(o,d,c,l,i,a,n,t,r,s)),re.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerCheckpoint]: Unable to destroy the checkpoint before create");return A.skip||Fa(this.id),re.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:z.isValid(this.id)}togglePlayer(t,i){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle the player before create");return Ba(t.id,this.id,i),this}isPlayerIn(t){return this.id===-1?!1:ka(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.CP,this.id)}static isValid=Kt;static togglePlayerAll(t,i){return xa(t.id,i)}static getPlayerVisible(t){return re.get(Ma(t.id))}static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.CP,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return re.get(t)}static getInstances(){return[...re.values()]}}L.onExit(({next:e})=>(z.getInstances().forEach(t=>t.destroy()),re.clear(),e()));const[Sf,yf]=u({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[If,Ef]=u({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.CP?yf(i,z.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.CP?Ef(i,z.getInstance(t)):a());const[Af]=u({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),[Cf]=u({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),Nf=Object.freeze({onPlayerEnter:Af,onPlayerLeave:Cf,onStreamIn:Sf,onStreamOut:If});class ${sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=$.getInstance(t);if(i)return i;this._id=t,le.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:d,y:c,z:h,nextX:p,nextY:g,nextZ:f,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??=D.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=an(l,d,c,h,p,g,f,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=tr(l,d,c,h,p,g,f,o,i,a,n,t,r,s)),le.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerRaceCP]: Unable to destroy the checkpoint before create");return A.skip||ir(this.id),le.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:$.isValid(this.id)}togglePlayer(t,i){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle the player before create");return ar(t.id,this.id,i),this}static togglePlayerAll(t,i){return nr(t.id,i)}isPlayerIn(t){return this.id===-1?!1:rr(t.id,this.id)}static getPlayerVisible(t){return le.get(sr(t.id))}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.RACE_CP,this.id)}static isValid=Kt;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.RACE_CP,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return le.get(t)}static getInstances(){return[...le.values()]}}L.onExit(({next:e})=>($.getInstances().forEach(t=>t.destroy()),le.clear(),e()));const[Tf,Df]=u({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[vf,wf]=u({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.RACE_CP?Df(i,$.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.RACE_CP?wf(i,$.getInstance(t)):a());const[Rf]=u({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:$.getInstance(t)}}}),[Lf]=u({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:$.getInstance(t)}}}),bf=Object.freeze({onPlayerEnter:Rf,onPlayerLeave:Lf,onStreamIn:Tf,onStreamOut:vf});class q{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=q.getInstance(t);if(i)return i;this._id=t,Q.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:d,z:c,r:h,invulnerable:p,health:g,extended:f}=this.sourceInfo;return t??=D.ACTOR_SD,s??=0,f?(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=_n(l,o,d,c,h,p,g,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=Wi(l,o,d,c,h,p,g,i,a,n,t,r,s)),Q.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerActor]: Unable to destroy the actor before create");return A.skip||ji(this.id),Q.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:q.isValid(this.id)}isStreamedIn(t){return this.id===-1?!1:Zi(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return Xi(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return Yi(this.id,t)}applyAnimation(t,i,a=4.1,n=!1,r=!0,s=!0,l=!1,o=0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to apply animation before create");if(!tt(t,i))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${i}`);return zi(this.id,t,i,a,n,r,s,l,o)}clearAnimations(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to clear animation before create");return $i(this.id)}getFacingAngle(){return Ji(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return Qi(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return qi(this.id)}setPos(t,i,a){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return ea(this.id,t,i,a)}getHealth(){return ta(this.id)}setHealth(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set health before create");return ia(this.id,t)}isInvulnerable(){return this.id===-1?!1:na(this.id)}setInvulnerable(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return aa(this.id,t)}getPlayerTarget(t){const i=ra(t.id);return Q.get(i)}getPlayerCameraTarget(t){const i=sa(t.id);return Q.get(i)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return zd(this.id)}setSkin(t,i=!1){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set skin before create");return!i&&(t<0||t>311||t===74)?0:$d(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Jd(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return la(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.ACTOR,this.id)}static isValid=Ki;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.ACTOR,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Q.get(t)}static getInstances(){return[...Q.values()]}}L.onExit(({next:e})=>(q.getInstances().forEach(t=>t.destroy()),Q.clear(),e()));const[Of]=u({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:q.getInstance(e),forPlayer:m.getInstance(t)}}}),[Gf]=u({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:q.getInstance(e),forPlayer:m.getInstance(t)}}}),[Ff]=u({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:m.getInstance(e),actor:q.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),Bf=Object.freeze({onStreamIn:Of,onStreamOut:Gf,onPlayerGiveDamage:Ff});class me{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=me.getInstance(t);if(i)return i;this._id=t,fe.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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:d}=this.sourceInfo;const{charset:c,text:h,color:p,drawDistance:g,x:f,y,z:w,extended:G}=this.sourceInfo;return t??=N.PLAYER_ID,i??=N.VEHICLE_ID,n??=D.TEXT_3D_LABEL_SD,a??=!1,d??=0,G?(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=Rm(h,E(p),f,y,w,g,t,i,a,n,r,s,l,o,d,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=wm(c||"utf8",h,E(p),f,y,w,g,t,i,a,r,s,l,n,o,d)),fe.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Streamer3DTextLabel]: Unable to destroy before create");return A.skip||Hi(this.id),fe.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:me.isValid(this.id)}getColor(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get color before create");return this.sourceInfo?this.sourceInfo.color:P.getIntData(S.TEXT_3D_LABEL,this._id,W.COLOR)}getCharset(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get charset before create");return this.sourceInfo?.charset}getText(){return bm(this.id,this.sourceInfo?.charset||"utf8")}updateText(t,i,a){if(this.id===-1)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),Lm(this.id,E(t),i,n)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.TEXT_3D_LABEL,this.id)}setOffsets(t,i,a){if(this.id===-1)return 0;const n=P.setFloatData(S.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_X,t);return P.setFloatData(S.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_Y,i),P.setFloatData(S.TEXT_3D_LABEL,this.id,W.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===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToPlayer before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,W.ATTACHED_PLAYER,r);return r!==N.PLAYER_ID&&this.setOffsets(i,a,n),this.sourceInfo&&(this.sourceInfo.attachedPlayer=r),s}attachToVehicle(t,i,a,n){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToVehicle before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,W.ATTACHED_VEHICLE,r);return r!==N.VEHICLE_ID&&this.setOffsets(i,a,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=Ui;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.TEXT_3D_LABEL,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return fe.get(t)}static getInstances(){return[...fe.values()]}}L.onExit(({next:e})=>(me.getInstances().forEach(t=>t.destroy()),fe.clear(),e()));const[xf,kf]=u({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Mf,Vf]=u({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.TEXT_3D_LABEL?kf(i,me.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.TEXT_3D_LABEL?Vf(i,me.getInstance(t)):a());const Hf=Object.freeze({onStreamIn:xf,onStreamOut:Mf});class O{sourceInfo=null;_id=-1;get type(){return this.sourceInfo?.type??void 0}get id(){return this._id}constructor(t){if(typeof t=="number"){const i=O.getInstance(t);if(i)return i;this._id=t,ne.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)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}=this.sourceInfo;const{type:n,extended:r}=this.sourceInfo;if(r)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:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle extend size");this._id=rn(s,l,o,t,i,a)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:h}=this.sourceInfo;this._id=dn(s,l,o,d,c,h,t,i,a)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder extend size");this._id=sn(s,l,o,d,c,t,i,a)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon extended with asymmetrical points");this._id=cn(s,l,o,t,i,a)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=on(s,l,o,d,t,i,a)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere extended size");this._id=ln(s,l,o,d,t,i,a)}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:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle size");this._id=oa(s,l,o,t,i,a)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:h}=this.sourceInfo;this._id=ha(s,l,o,d,c,h,t,i,a)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder size");this._id=da(s,l,o,d,c,t,i,a)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon with asymmetrical points");this._id=ua(s,l,o,t,i,a)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=_a(s,l,o,d,t,i,a)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere size");this._id=ca(s,l,o,d,t,i,a)}return ne.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerArea]: Unable to destroy the area before create");return A.skip||ma(this.id),ne.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:O.isValid(this.id)}getType(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to get type before create");return fa(this.id)}getPolygonPoints(){return ga(this.id)}getPolygonNumberPoints(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to getPolygonNumberPoints number before create");if(this.type!=="polygon")throw new Error("[StreamerArea]: getPolygonNumberPoints invalid area type");return Ht(this.id)}isPlayerIn(t,i=!1){return this.id===-1?!1:Pa(t.id,this.id,i)}static isPlayerInAny(t,i=!1){return Sa(t.id,i)}isAnyPlayerIn(t=!1){return this.id===-1?!1:ya(this.id,t)}static isAnyPlayerInAny(t=!1){return Ia(t)}static getPlayerAreas(t){return O.getPlayerAreasNumber(t)?Ea(t.id).areas.map(i=>ne.get(i)):[]}static getPlayerAreasNumber(t){return Ut(t.id)}isPointIn(t,i,a){return this.id===-1?!1:Aa(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===-1?!1:Na(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 O.getNumberForPoint(t,i,a)?Da(t,i,a).areas.map(n=>O.getInstance(n)).filter(Boolean):[]}static getNumberForPoint(t,i,a){return Wt(t,i,a)}static getForLine(t,i,a,n,r,s){return O.getNumberForLine(t,i,a,n,r,s)?va(t,i,a,n,r,s).areas.map(l=>O.getInstance(l)).filter(Boolean):[]}static getNumberForLine(t,i,a,n,r,s){return jt(t,i,a,n,r,s)}attachToObject(t,i=0,a=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to object before create");return wa(this.id,t.id,je.DYNAMIC,N.PLAYER_ID,i,a,n)}attachToPlayer(t,i=0,a=0,n=0){if(this.id===-1||t.id===-1)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===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to vehicle before create");return La(this.id,t.id,i,a,n)}toggleSpectateMode(t){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle spectate mode before create");return ba(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:Oa(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.AREA,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.AREA,this.id)}static isValid=pa;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.AREA,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ne.get(t)}static getInstances(){return[...ne.values()]}}L.onExit(({next:e})=>(O.getInstances().forEach(t=>t.destroy()),ne.clear(),e()));const[Uf,Wf]=u({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[jf,Kf]=u({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.AREA?Wf(i,O.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.AREA?Kf(i,O.getInstance(t)):a());const[Zf]=u({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:O.getInstance(t)}}}),[Xf]=u({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:O.getInstance(t)}}}),Yf=Object.freeze({onStreamIn:Uf,onStreamOut:jf,onPlayerEnter:Zf,onPlayerLeave:Xf});class v{_id=N.PLAYER_ID;_name="";get id(){return this._id}constructor(t){if(this._id=samp.callNative("NPC_Create","s",t),this._name=t,this._id!==N.PLAYER_ID){new m(this._id);const i=v.getInstance(this._id);if(i)return i}return Re.set(this._id,this),this}getName(){return this._name}destroy(){return A.skip||samp.callNative("NPC_Destroy","i",this._id),this}isValid(){return A.skip&&this._id!==-1?!0:v.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=pe.AUTO){return!!samp.callNative("NPC_Move","ifffif",this._id,t,i,a,n,r)}moveToPlayer(t,i,a=pe.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)}setSkin(t){return samp.callNative("NPC_SetSkin","ii",this._id,t),this}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,d){return samp.callNative("NPC_ApplyAnimation","issfiiiiii",this._id,t,i,a,n,r,s,l,o,d),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)}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,d,c,h=Ae.ALL){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,i,a,n,r,s,l,o,d,c,h),this}isShooting(){return!!samp.callNative("NPC_IsShooting","i",this._id)}aimAt(t,i,a,n,r,s,l,o,d,c=Ae.ALL){return samp.callNative("NPC_AimAt","ifffiiifffi",this._id,t,i,a,n,r,s,l,o,d,c),this}aimAtPlayer(t,i,a,n,r,s,l,o,d,c,h=Ae.ALL){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,i,a,n,r,s,l,o,d,c,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 C.getInstance(this.getVehicleID())}getVehicleID(){return samp.callNative("NPC_GetVehicle","i",this._id)}getVehicleSeat(){return samp.callNative("NPC_GetVehicleSeat","i",this._id)}getEnteringVehicle(){return C.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=He.JOG,a=pe.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 C.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(P.getItemInternalID(new m(this._id),S.OBJECT,t.id))}getSurfingDynamicObject(){return k.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return P.getItemStreamerID(new m(this._id),S.OBJECT,this.getSurfingPlayerObject())}static startRecordingPlayerData(t,i,a){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");yd(t.id,i,a),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");Id(t.id),t.isRecording=!1}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return Re.get(t)}static getInstances(){return[...Re.values()]}}class xe{_filePath="";_id=-1;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,ae.has(this._id))return ae.get(this._id)}unload(){const t=this._id,i=!!samp.callNative("NPC_UnloadRecord","i",this._id);return i&&(this._id=-1,this._filePath="",ae.delete(t)),i}isValid(){return xe.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&&ae.clear(),t}static getInstance(t){return ae.get(t)}static getInstances(){return[...ae.values()]}}class Be{_id=-1;get id(){return this._id}constructor(t){if(this._id=t,Z.has(this._id))return Z.get(this._id);Z.set(this._id,this)}open(){samp.callNative("NPC_OpenNode","i",this._id)&&!Z.has(this._id)&&Z.set(this._id,this)}close(){const t=!!samp.callNative("NPC_CloseNode","i",this._id);return t&&Z.delete(this._id),t}isOpen(){return!!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 Z.get(t)}static getInstances(){return[...Z.values()]}}class ke{_id=-1;get id(){return this._id}constructor(t){if(typeof t<"u"){if(ie.has(t))return ie.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=-1,ie.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 ke.isValid(this._id)}getCurrentPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}move(t=He.JOG,i=pe.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&&ie.clear(),t}static getCount(){return samp.callNative("NPC_GetPathCount","")}static isValid(t){return!!samp.callNative("NPC_IsValidPath","i",t)}static getInstance(t){return ie.get(t)}static getInstances(){return[...ie.values()]}}L.onExit(({next:e})=>(Re.clear(),Z.clear(),ie.clear(),ae.clear(),e()));const[zf]=u({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:I.decodeFromBuf(t)}}}),[$f]=u({name:"OnNPCFinishMove",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[Jf]=u({name:"OnNPCCreate",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[Qf]=u({name:"OnNPCDestroy",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}},afterEach({npc:e}){Re.delete(e.id)}}),[qf]=u({name:"OnNPCWeaponStateChange",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),newState:t,oldState:i}}}),[eg]=u({name:"OnNPCTakeDamage",identifier:"iiiii",beforeEach(e,t,i,a,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[tg]=u({name:"OnNPCGiveDamage",identifier:"iiiii",beforeEach(e,t,i,a,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[ig]=u({name:"OnNPCDeath",identifier:"iii",beforeEach(e,t,i){const a=m.getInstance(t)||N.PLAYER_ID;return{npc:v.getInstance(e),killer:a,reason:i}}}),[ag]=u({name:"OnNpcSpawn",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[ng]=u({name:"OnNpcRespawn",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[rg]=u({name:"OnNPCPlaybackStart",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),record:xe.getInstance(t),recordId:t}}}),[sg]=u({name:"OnNPCPlaybackEnd",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),record:xe.getInstance(t),recordId:t}}}),[lg]=u({name:"OnNPCWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,n,r,s){return{npc:v.getInstance(e),weapon:t,hitType:i,hitId:a,fX:n,fY:r,fZ:s}}}),[og]=u({name:"OnNPCFinishNodePoint",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),node:Be.getInstance(t),nodeId:t,pointId:i}}}),[dg]=u({name:"OnNPCFinishNode",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),node:Be.getInstance(t),nodeId:t}}}),[cg]=u({name:"OnNPCChangeNode",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),newNode:Be.getInstance(t),oldNode:Be.getInstance(i),newNodeId:t,oldNodeId:i}}}),[_g]=u({name:"OnNPCFinishMovePath",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),path:ke.getInstance(t),pathId:t}}}),[hg]=u({name:"OnNPCFinishMovePathPoint",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),path:ke.getInstance(t),pathId:t,pointIndex:i}}}),ug=Object.freeze({onClientMessage:zf,onFinishMove:$f,onCreate:Jf,onDestroy:Qf,onSpawn:ag,onRespawn:ng,onWeaponStateChange:qf,onTakeDamage:eg,onGiveDamage:tg,onDeath:ig,onPlaybackStart:rg,onPlaybackEnd:sg,onWeaponShot:lg,onFinishNodePoint:og,onFinishNode:dg,onChangeNode:cg,onFinishMovePath:_g,onFinishMovePathPoint:hg});class mg{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return dl()}static getPlayerNetworkStats(t){return ol(t.id)}static getBytesReceived(t){return Js(t.id)}static getBytesSent(t){return qs(t.id)}static getConnectionStatus(t){return il(t.id)}static getConnectedTime(t){return zs(t.id)}static getIpPort(t){return al(t.id)}static getMessagesReceived(t){return $s(t.id)}static getMessagesRecvPerSecond(t){return el(t.id)}static getMessagesSent(t){return Qs(t.id)}static getPacketLossPercent(t){return tl(t.id)}}class pg{_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){us(t)}static has(t,i){return Zl(t.id,i)}forAll(t="win1252"){hs(I.encodeToBuf(I.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,i="win1252"){Kl(t.id,I.encodeToBuf(I.convertSpecialChar(this.text),i),this.time,this.style)}hideForPlayer(t){return Yl(t.id,this.style)}}class ye{_itemCount=0;get itemCount(){return this._itemCount}_id=-1;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!==-1)throw new Error("[Menu]: Cannot be created twice");if(ye.getInstances().length===F.MAX_MENUS)throw new Error("[Menu]: The maximum number of menus allowed to be created has been reached 128");return this._id=U_(this.title,this.columns,this.x,this.y,this.col1width,this.col2width),we.set(this._id,this),this}destroy(){if(this._id===-1)throw new Error("[Menu]: Cannot destroy before create");return A.skip||W_(this.id),we.delete(this._id),this._id=-1,this}addItem(t,i){if(this._id===-1)throw new Error("[Menu]: Cannot addItem before create");if(this._itemCount===F.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_(this.id,t,i),this._itemCount++,this}setColumnHeader(t,i){if(this._id===-1)throw new Error("[Menu]: Cannot setColumnHeader before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return K_(this.id,t,i),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return z_(this.id),this}disableRow(t){if(this._id===-1)throw new Error("[Menu]: Cannot disable row before create");if(t<0||t>this.itemCount-1)throw new Error("[Menu]: Wrong number of rows");$_(this.id,t)}isValid(){return A.skip&&this.id!==-1?!0:ye.isValid(this.id)}showForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot show menu before create");return Z_(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return X_(this.id,t.id)}isDisabled(){return this._id===-1?!1:F_(this.id)}isRowDisabled(t){return this._id===-1||t<0||t>this._itemCount?!1:B_(this.id,t)}getItems(t){return this._id===-1?0:x_(this.id,t)}getPos(){return this._id===-1?{fX:this.x,fY:this.y}:k_(this.id)}getColumnWidth(){return this.id===-1?{fColumn1:this.col1width,fColumn2:this.col2width}:M_(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return V_(this.id,t)}getItem(t,i){if(this._id===-1)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 H_(this.id,t,i)}static isValid=Y_;static getInstance(t){return we.get(t)}static getInstances(){return[...we.values()]}static getInstanceByPlayer(t){return this.getInstances().find(i=>i.id===J_(t.id))}}L.onExit(({next:e})=>(ye.getInstances().forEach(t=>t.destroy()),we.clear(),e()));const[fg]=u({name:"OnPlayerExitedMenu",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[gg]=u({name:"OnPlayerSelectedMenuRow",identifier:"ii",beforeEach(e,t){const i=m.getInstance(e),a=ye.getInstanceByPlayer(i);return{player:i,menu:a,row:t}}}),Pg=Object.freeze({onPlayerExited:fg,onPlayerSelectedRow:gg});class b{sourceInfo;constructor(t){this.sourceInfo=t}_id=-1;get id(){return this._id}create(){if(this.id!==-1)throw new Error("[GangZone]: Unable to create again");const{player:t}=this.sourceInfo;if(t){if(b.getInstances(!1).length===F.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=fh(t.id,i,a,n,r);const s=at.onDisconnect(({player:l,next:o})=>{o(),l===this.sourceInfo.player&&(this.isValid()&&this.destroy(),s())});ve.set(this.id,this)}else{if(b.getInstances(!0).length===F.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=sh(i,a,n,r),De.set(this.id,this)}}destroy(){if(this.id===-1)throw new Error("[GangZone]: Unable to destroy the gangzone before create");const{player:t}=this.sourceInfo;t?(A.skip||gh(t.id,this.id),ve.delete(this.id)):(A.skip||lh(this.id),De.delete(this.id)),this._id=-1}showForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");if(!this.sourceInfo.player)return dh(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be show for all.")}showForPlayer(t,i){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");const a=this.sourceInfo.player;if(a)Ph(a.id,this.id,E(t));else if(i)oh(i.id,this.id,t);else throw new Error("[GangZone]: invalid player for show");return this}hideForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");if(!this.sourceInfo.player)return _h(this.id),this;throw new Error("[GangZone]: player's gangzone should not be hide for all.")}hideForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");const i=this.sourceInfo.player;if(i)Sh(i.id,this.id);else if(t)ch(t.id,this.id);else throw new Error("[GangZone]: invalid player for hide");return this}flashForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");if(!this.sourceInfo.player)return uh(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be flash for all.")}flashForPlayer(t,i){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");const a=this.sourceInfo.player;if(a)yh(a.id,this.id,E(i));else if(t)hh(t.id,this.id,i);else throw new Error("[GangZone]: invalid player for flash");return this}stopFlashForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");if(!this.sourceInfo.player)return ph(this.id),this;throw new Error("[GangZone]: player's gangzone should not be stop flash for all.")}stopFlashForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");const i=this.sourceInfo.player;if(i)Ih(i.id,this.id);else if(t)mh(t.id,this.id);else throw new Error("[GangZone]: invalid player for flash");return this}isValid(){if(A.skip&&this.id!==-1)return!0;if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?b.isValidPlayer(t.id,this.id):b.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?Ah(i.id,this.id):q_(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?Ch(i.id,this.id):eh(t.id,this.id)}getColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get color before create");const i=this.sourceInfo.player;return i?Nh(i.id,this.id):th(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get flash color before create");const i=this.sourceInfo.player;return i?Th(i.id,this.id):ih(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?Dh(i.id,this.id):ah(t.id,this.id)}getPos(){if(this.id===-1)throw new Error("[GangZone]: Unable to get position before create");const t=this.sourceInfo.player;return t?vh(t.id,this.id):nh(this.id)}useCheck(t){if(this.id===-1)throw new Error("[GangZone]: Unable to use check before create");const i=this.sourceInfo.player;return i?wh(i.id,this.id,t):rh(this.id,t),this}static isValidPlayer=Eh;static isValidGlobal=Q_;static getInstance(t,i){return i?De.get(t):ve.get(t)}static getInstances(t){return t?[...De.values()]:[...ve.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),De.clear(),ve.clear(),e()));const[Sg]=u({name:"OnPlayerEnterGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[yg]=u({name:"OnPlayerLeaveGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[Ig]=u({name:"OnPlayerEnterPlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[Eg]=u({name:"OnPlayerLeavePlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[Ag]=u({name:"OnPlayerClickGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[Cg]=u({name:"OnPlayerClickPlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),Ng=Object.freeze({onPlayerEnterGlobal:Sg,onPlayerLeaveGlobal:yg,onPlayerEnterPlayer:Ig,onPlayerLeavePlayer:Eg,onPlayerClickGlobal:Ag,onPlayerClickPlayer:Cg});class _{sourceInfo;_id=-1;get id(){return this._id}constructor(t){this.sourceInfo=t}create(){if(this.id!==-1)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=I.encodeToBuf(I.convertSpecialChar(a),r);if(n){if(_.getInstances(!1).length===F.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__CreatePlayerTextDraw(n.id,t,i,s);const l=at.onDisconnect(({player:o,next:d})=>{const c=d();return o===n&&(this.isValid()&&this.destroy(),l()),c});be.set(this.id,this)}else{if(_.getInstances(!0).length===F.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__TextDrawCreate(t,i,s),Le.set(this.id,this)}return this}destroy(){this.id===-1&&_.beforeCreateWarn("destroy the textdraw");const{player:t}=this.sourceInfo;return t?(A.skip||_.__inject__PlayerTextDrawDestroy(t.id,this.id),be.delete(this.id)):(A.skip||_.__inject__TextDrawDestroy(this.id),Le.delete(this.id)),this._id=-1,this}setFont(t){if(this.id===-1)return _.beforeCreateWarn("set font"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawFont(i.id,this.id,t):_.__inject__TextDrawFont(this.id,t),this}setColor(t){if(this.id===-1)return _.beforeCreateWarn("set color"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawColor(i.id,this.id,t):_.__inject__TextDrawColor(this.id,t),this}setBoxColors(t){if(this.id===-1)return _.beforeCreateWarn("set box color"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawBoxColor(i.id,this.id,t):_.__inject__TextDrawBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===-1)return _.beforeCreateWarn("set background color"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawBackgroundColor(i.id,this.id,t):_.__inject__TextDrawBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===-1)return _.beforeCreateWarn("set alignment"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawAlignment(i.id,this.id,t):_.__inject__TextDrawAlignment(this.id,t),this}setLetterSize(t,i){if(this.id===-1)return _.beforeCreateWarn("set letter size"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawLetterSize(a.id,this.id,t,i):_.__inject__TextDrawLetterSize(this.id,t,i),this}setOutline(t){if(this.id===-1)return _.beforeCreateWarn("set outline model"),this;if(t<0)throw new Error("[TextDraw]: Invalid outline value");const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetOutline(i.id,this.id,t):_.__inject__TextDrawSetOutline(this.id,t),this}setPreviewModel(t){if(this.id===-1)return _.beforeCreateWarn("set preview model"),this;this.setFont(Te.MODEL_PREVIEW);const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetPreviewModel(i.id,this.id,t):_.__inject__TextDrawSetPreviewModel(this.id,t),this}setPreviewRot(t,i,a,n=1){if(this.id===-1)return _.beforeCreateWarn("set preview rot"),this;this.setFont(Te.MODEL_PREVIEW);const{player:r}=this.sourceInfo;return r?_.__inject__PlayerTextDrawSetPreviewRot(r.id,this.id,t,i,a,n):_.__inject__TextDrawSetPreviewRot(this.id,t,i,a,n),this}setPreviewVehColors(t,i){if(this.id===-1)return _.beforeCreateWarn("set preview veh col"),this;this.setFont(Te.MODEL_PREVIEW);const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetPreviewVehicleColors(a.id,this.id,t,i):_.__inject__TextDrawSetPreviewVehicleColors(this.id,t,i),this}setProportional(t=!0){if(this.id===-1)return _.beforeCreateWarn("set Proportional"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetProportional(i.id,this.id,t):_.__inject__TextDrawSetProportional(this.id,t),this}setSelectable(t){if(this.id===-1)return _.beforeCreateWarn("set Selectable"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetSelectable(i.id,this.id,t):_.__inject__TextDrawSetSelectable(this.id,t),this}setShadow(t){if(this.id===-1)return _.beforeCreateWarn("set shadow"),this;if(t<0)throw new Error("[TextDraw]: Invalid shadow value");const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetShadow(i.id,this.id,t):_.__inject__TextDrawSetShadow(this.id,t),this}setString(t,i){if(this.id===-1)return _.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=I.encodeToBuf(I.convertSpecialChar(t),n);return a?_.__inject__PlayerTextDrawSetString(a.id,this.id,r):i?_.__inject__TextDrawSetStringForPlayer(this.id,i.id,r):_.__inject__TextDrawSetString(this.id,r),this}setTextSize(t,i){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawTextSize(a.id,this.id,t,i):_.__inject__TextDrawTextSize(this.id,t,i),this}useBox(t){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawUseBox(i.id,this.id,t):_.__inject__TextDrawUseBox(this.id,t),this}static beforeCreateWarn(t){throw new Error(`[TextDraw]: Unable to ${t} before create`)}show(t){if(this.id===-1)return _.beforeCreateWarn("show"),this;const i=this.sourceInfo.player;if(i)_.__inject__PlayerTextDrawShow(i.id,this.id);else if(t)_.__inject__TextDrawShowForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for show");return this}hide(t){if(this.id===-1)return _.beforeCreateWarn("hide"),this;const i=this.sourceInfo.player;if(i)_.__inject__PlayerTextDrawHide(i.id,this.id);else if(t)_.__inject__TextDrawHideForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for hide");return this}showAll(){if(this.id===-1)return _.beforeCreateWarn("show"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawShowForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be show for all.")}hideAll(){if(this.id===-1)return _.beforeCreateWarn("hideAll"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawHideForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be hide for all.")}isValid(){if(A.skip&&this.id!==-1)return!0;const t=this.sourceInfo.player;return t?_.__inject__IsValidPlayerTextDraw(t.id,this.id):_.__inject__IsValidTextDraw(this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const{player:i}=this.sourceInfo;return i?_.__inject__IsPlayerTextDrawVisible(i.id,this.id):t?_.__inject__IsTextDrawVisibleForPlayer(t.id,this.id):!1}getString(){if(this.id===-1)return this.sourceInfo.text;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetString(t.id,this.id).str:_.__inject__TextDrawGetString(this.id).str}setPos(t,i){if(this.id===-1)return _.beforeCreateWarn("set position"),this;const a=this.sourceInfo.player;return a?_.__inject__PlayerTextDrawSetPos(a.id,this.id,t,i):_.__inject__TextDrawSetPos(this.id,t,i),this}getLetterSize(){if(this.id===-1)return _.beforeCreateWarn("get letter size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetLetterSize(t.id,this.id):_.__inject__TextDrawGetLetterSize(this.id)}getTextSize(){if(this.id===-1)return _.beforeCreateWarn("get text size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetTextSize(t.id,this.id):_.__inject__TextDrawGetTextSize(this.id)}getPos(){if(this.id===-1)return _.beforeCreateWarn("get position");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPos(t.id,this.id):_.__inject__TextDrawGetPos(this.id)}getColor(){if(this.id===-1)return _.beforeCreateWarn("get color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetColor(t.id,this.id):_.__inject__TextDrawGetColor(this.id)}getBoxColor(){if(this.id===-1)return _.beforeCreateWarn("get box color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBoxColor(t.id,this.id):_.__inject__TextDrawGetBoxColor(this.id)}getBackgroundColor(){if(this.id===-1)return _.beforeCreateWarn("get bg color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBackgroundColor(t.id,this.id):_.__inject__TextDrawGetBackgroundColor(this.id)}getShadow(){if(this.id===-1)return _.beforeCreateWarn("get shadow");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetShadow(t.id,this.id):_.__inject__TextDrawGetShadow(this.id)}getOutline(){if(this.id===-1)return _.beforeCreateWarn("get outline");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetOutline(t.id,this.id):_.__inject__TextDrawGetOutline(this.id)}getFont(){if(this.id===-1)return _.beforeCreateWarn("get font");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetFont(t.id,this.id):_.__inject__TextDrawGetFont(this.id)}isBox(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsBox(t.id,this.id):_.__inject__TextDrawIsBox(this.id)}isProportional(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsProportional(t.id,this.id):_.__inject__TextDrawIsProportional(this.id)}isSelectable(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsSelectable(t.id,this.id):_.__inject__TextDrawIsSelectable(this.id)}getAlignment(){if(this.id===-1)return _.beforeCreateWarn("get alignment");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetAlignment(t.id,this.id):_.__inject__TextDrawGetAlignment(this.id)}getPreviewModel(){if(this.id===-1)return _.beforeCreateWarn("get preview model");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewModel(t.id,this.id):_.__inject__TextDrawGetPreviewModel(this.id)}getPreviewRot(){if(this.id===-1)return _.beforeCreateWarn("get preview rotation");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewRot(t.id,this.id):_.__inject__TextDrawGetPreviewRot(this.id)}getPreviewVehColors(){if(this.id===-1)return _.beforeCreateWarn("get preview vel colors");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewVehicleColors(t.id,this.id):_.__inject__TextDrawGetPreviewVehicleColors(this.id)}isGlobal(){return!!this.sourceInfo.player}static getInstance(t,i){return i?Le.get(t):be.get(t)}static getInstances(t){return t?[...Le.values()]:[...be.values()]}static __inject__TextDrawCreate=Jh;static __inject__CreatePlayerTextDraw=Hu;static __inject__TextDrawDestroy=Qh;static __inject__PlayerTextDrawDestroy=Uu;static __inject__TextDrawFont=ou;static __inject__PlayerTextDrawFont=Qu;static __inject__TextDrawColor=iu;static __inject__PlayerTextDrawColor=Zu;static __inject__TextDrawBoxColor=nu;static __inject__PlayerTextDrawBoxColor=Yu;static __inject__TextDrawBackgroundColor=lu;static __inject__PlayerTextDrawBackgroundColor=Ju;static __inject__TextDrawAlignment=tu;static __inject__PlayerTextDrawAlignment=Ku;static __inject__TextDrawLetterSize=qh;static __inject__PlayerTextDrawLetterSize=Wu;static __inject__TextDrawSetOutline=su;static __inject__PlayerTextDrawSetOutline=$u;static __inject__TextDrawSetPreviewModel=fu;static __inject__PlayerTextDrawSetPreviewModel=nm;static __inject__TextDrawSetPreviewRot=gu;static __inject__PlayerTextDrawSetPreviewRot=rm;static __inject__TextDrawSetPreviewVehicleColors=Pu;static __inject__PlayerTextDrawSetPreviewVehicleColors=sm;static __inject__TextDrawSetProportional=du;static __inject__PlayerTextDrawSetProportional=qu;static __inject__TextDrawSetSelectable=cu;static __inject__PlayerTextDrawSetSelectable=em;static __inject__TextDrawSetShadow=ru;static __inject__PlayerTextDrawSetShadow=zu;static __inject__PlayerTextDrawSetString=am;static __inject__TextDrawSetStringForPlayer=$h;static __inject__TextDrawSetString=pu;static __inject__TextDrawTextSize=eu;static __inject__PlayerTextDrawTextSize=ju;static __inject__PlayerTextDrawUseBox=Xu;static __inject__TextDrawUseBox=au;static __inject__PlayerTextDrawShow=tm;static __inject__TextDrawShowForPlayer=_u;static __inject__PlayerTextDrawHide=im;static __inject__TextDrawHideForPlayer=hu;static __inject__TextDrawShowForAll=uu;static __inject__TextDrawHideForAll=mu;static __inject__IsValidPlayerTextDraw=Iu;static __inject__IsValidTextDraw=Rh;static __inject__IsPlayerTextDrawVisible=Eu;static __inject__IsTextDrawVisibleForPlayer=Lh;static __inject__PlayerTextDrawGetString=Au;static __inject__TextDrawGetString=bh;static __inject__PlayerTextDrawSetPos=Cu;static __inject__TextDrawSetPos=Oh;static __inject__PlayerTextDrawGetLetterSize=Nu;static __inject__TextDrawGetLetterSize=Gh;static __inject__PlayerTextDrawGetTextSize=Tu;static __inject__TextDrawGetTextSize=Fh;static __inject__PlayerTextDrawGetPos=Du;static __inject__TextDrawGetPos=Bh;static __inject__PlayerTextDrawGetColor=vu;static __inject__TextDrawGetColor=xh;static __inject__PlayerTextDrawGetBoxColor=wu;static __inject__TextDrawGetBoxColor=kh;static __inject__PlayerTextDrawGetBackgroundColor=Ru;static __inject__TextDrawGetBackgroundColor=Mh;static __inject__PlayerTextDrawGetShadow=Lu;static __inject__TextDrawGetShadow=Vh;static __inject__PlayerTextDrawGetOutline=bu;static __inject__TextDrawGetOutline=Hh;static __inject__PlayerTextDrawGetFont=Ou;static __inject__TextDrawGetFont=Uh;static __inject__PlayerTextDrawIsBox=Gu;static __inject__TextDrawIsBox=Wh;static __inject__PlayerTextDrawIsProportional=Fu;static __inject__TextDrawIsProportional=jh;static __inject__PlayerTextDrawIsSelectable=Bu;static __inject__TextDrawIsSelectable=Kh;static __inject__PlayerTextDrawGetAlignment=xu;static __inject__TextDrawGetAlignment=Zh;static __inject__PlayerTextDrawGetPreviewModel=ku;static __inject__TextDrawGetPreviewModel=Xh;static __inject__PlayerTextDrawGetPreviewRot=Mu;static __inject__TextDrawGetPreviewRot=Yh;static __inject__TextDrawGetPreviewVehicleColors=zh;static __inject__PlayerTextDrawGetPreviewVehicleColors=Vu}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Le.clear(),be.clear(),e()));const[Tg]=u({name:"OnPlayerClickTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===N.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[Dg]=u({name:"OnPlayerClickPlayerTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===N.TEXT_DRAW?t:_.getInstance(t,!1)}}}),vg=Object.freeze({onPlayerClickGlobal:Tg,onPlayerClickPlayer:Dg});function wg(e,t){return(e&t)===t}function Rg(e,t,i){return(e&i)===i&&(t&i)!==i}function Lg(e,t){return!!(e&t)}function bg(e,t,i){return(e&i)!==i&&(t&i)===i}function Og(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]}exports.ArtworkEnum=_t,exports.BodyPartsEnum=Nt,exports.BoneIdsEnum=Tt,exports.BulletHitTypesEnum=Gt,exports.CameraCutStylesEnum=Ce,exports.CameraModesEnum=Ct,exports.CarModTypeEnum=wt,exports.ClickSourcesEnum=ht,exports.ConnectionStatusEnum=mt,exports.DamageDeathReasonEnum=Je,exports.Dialog=R,exports.DialogStylesEnum=ze,exports.Dynamic3DTextLabel=me,exports.Dynamic3DTextLabelEvent=Hf,exports.DynamicActor=q,exports.DynamicActorEvent=Bf,exports.DynamicArea=O,exports.DynamicAreaEvent=Yf,exports.DynamicCheckPointEvent=Nf,exports.DynamicCheckpoint=z,exports.DynamicMapIcon=ue,exports.DynamicMapIconEvent=hf,exports.DynamicObject=k,exports.DynamicObjectEvent=lf,exports.DynamicPickup=V,exports.DynamicPickupEvent=Pf,exports.DynamicRaceCP=$,exports.DynamicRaceCPEvent=bf,exports.E_STREAMER=W,exports.EditResponseTypesEnum=ut,exports.FightingStylesEnum=Et,exports.ForceSyncEnum=Dt,exports.GameMode=L,exports.GameText=pg,exports.GangZone=b,exports.GangZoneEvent=Ng,exports.I18n=I,exports.InvalidEnum=N,exports.KeysEnum=pt,exports.LimitsEnum=F,exports.MapIconStyles=Ze,exports.MapIconStylesEnum=At,exports.MarkerModesEnum=ft,exports.MaterialTextAlign=kt,exports.MaterialTextSizes=Qe,exports.Menu=ye,exports.MenuEvent=Pg,exports.NPCEntityCheckEnum=Ae,exports.NPCMoveSpeedEnum=pe,exports.NPCMoveTypeEnum=He,exports.NPCPlaybackEnum=gt,exports.NPCRecordStatusEnum=Pt,exports.NetStats=mg,exports.Npc=v,exports.NpcEvent=ug,exports.NpcNode=Be,exports.NpcPath=ke,exports.NpcRecord=xe,exports.ObjectMaterialAlignmentEnum=yt,exports.ObjectMaterialTextSizeEnum=St,exports.Player=m,exports.PlayerEvent=at,exports.PlayerStateEnum=Ne,exports.RecordTypesEnum=Bt,exports.SelectObjectTypesEnum=It,exports.SpecialActionsEnum=$e,exports.SpectateModesEnum=Ue,exports.Streamer=P,exports.StreamerAreaTypes=xt,exports.StreamerDistances=D,exports.StreamerItemTypes=S,exports.StreamerMiscellaneous=We,exports.StreamerObjectTypes=je,exports.TextDraw=_,exports.TextDrawAlignEnum=vt,exports.TextDrawEvent=vg,exports.TextDrawFontsEnum=Te,exports.Vehicle=C,exports.VehicleEvent=zp,exports.VehicleModelInfoEnum=Lt,exports.VehicleParamsEnum=Rt,exports.WeaponEnum=bt,exports.WeaponSkillsEnum=Ot,exports.WeaponStatesEnum=Ft,exports.animateLib=ni,exports.defineEvent=u,exports.defineHooks=Og,exports.getAnimateDurationByLibName=Im,exports.isHolding=wg,exports.isPressed=Rg,exports.isPressing=Lg,exports.isReleased=bg,exports.isValidAnimateLib=et,exports.isValidAnimateName=tt,exports.rgba=E,exports.useTrigger=Wr,exports.withTriggerOptions=jr;
|