@infernus/core 0.12.0 → 0.12.2

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.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import sa from"node:util";import{encodingExists as la,encode as oa,decode as da}from"iconv-lite";function tt(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 ca(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 Le(e){return e==="__proto__"}function Se(e,t){const a=Object.keys(t);for(let i=0;i<a.length;i++){const n=a[i];if(Le(n))continue;const r=t[n],s=e[n];Array.isArray(r)?Array.isArray(s)?e[n]=Se(s,r):e[n]=Se([],r):tt(r)?tt(s)?e[n]=Se(s,r):e[n]=Se({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function _a(e,t){const a={...e};for(let i=0;i<t.length;i++){const n=t[i];delete a[n]}return a}const ha=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function ua(e){return Array.from(e.match(ha)??[])}function xe(e){return ua(e).map(a=>a.toLowerCase()).join("_")}function ma(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function pa(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function fa(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 ke(e,t,a){if(e==null)return a;switch(typeof t){case"string":{if(Le(t))return a;const i=e[t];return i===void 0?ma(t)?ke(e,fa(t),a):a:i}case"number":case"symbol":{typeof t=="number"&&(t=pa(t));const i=e[t];return i===void 0?a:i}default:{if(Array.isArray(t))return ga(e,t,a);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),Le(t))return a;const i=e[t];return i===void 0?a:i}}}function ga(e,t,a){if(t.length===0)return a;let i=e;for(let n=0;n<t.length;n++){if(i==null||Le(t[n]))return a;i=i[t[n]]}return i===void 0?a:i}function Sa(e){return e instanceof Buffer}class I{constructor(t,a){this.defaultLocale=t,this.locales=a,this.defaultLocale=xe(t),this.locales=I.snakeLocaleKeys(a)}addLocales=t=>{Se(this.locales,I.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=_a(this.locales,t)};$t=(t,a,i=this.defaultLocale)=>{const n=this.locales[xe(i)],r=ke(this.locales[this.defaultLocale],t),s=ke(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=sa.format(l,...a)),l};static isValidate(t){if(!la(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,a){return I.isValidate(a),[...oa(t,a),0]}static decodeFromBuf(t,a="utf8"){I.isValidate(a);const i=Sa(t)?t:Buffer.from(I.getValidStr(t));return da(i,a)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return ca(t,(a,i)=>xe(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,at=new Map;function ya(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function it(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 h=t;const p=g=>{if(h++,h<o.length){try{g&&Object.assign(d,g);const f={next:p,defaultValue:i,...d},y=o[h](f);return y instanceof Promise?(c.push(y),i):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 i}return s&&(c.length?Promise.allSettled(c).then(()=>s(d)):s(d)),i};return ya(p(),i)}function u(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 h=c.indexOf(o.skipToNext);h>-1&&(d=h)}}return it(e,d,...o.args)}return it(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 h=F.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&&F.delete(t),h.length}}const s=[r,n];return i&&(typeof a<"u"&&samp.registerEvent(t,a),samp.on(t,n)),at.set(t,n),s}function Pa(e){return at.get(e)}function Ia(e){return Object.assign(e,{__trigger__:!0})}const Ea=e=>!!samp.callNative("IsValidNickName","s",e),Aa=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Ca=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Ta=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),Na=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),Da=e=>!!samp.callNative("IsValidServerRule","s",e),va=e=>!!samp.callNative("RemoveServerRule","s",e),wa=e=>{samp.callNative("AllowAdminTeleport","i",e)},Ra=()=>!!samp.callNative("IsAdminTeleportAllowed",""),La=e=>{samp.callNative("AllowInteriorWeapons","i",e)},ba=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),Oa=()=>!!samp.callNative("AreAllAnimationsEnabled",""),Ga=e=>{samp.callNative("EnableAllAnimations","i",e)},Fa=e=>{const[t,a]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:a}},Ba=e=>samp.callNative("GetConsoleVarAsInt","s",e),xa=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),ka=()=>samp.callNative("GetWeather",""),Ma=e=>samp.callNative("GetServerRuleFlags","s",e),Ha=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Va=e=>!!samp.callNative("SetModeRestartTime","f",e),Ua=()=>samp.callNativeFloat("GetModeRestartTime",""),Wa=(e,t,a)=>samp.callNative("GameTextForAll","aii",e,t,a),ja=e=>{samp.callNative("HideGameTextForAll","i",e)},Ka=(e,t,a)=>samp.callNative("SendDeathMessage","iii",e,t,a),Za=()=>samp.callNative("GetMaxPlayers",""),Me=(e,t,a)=>Math.sqrt(e*e+t*t+a*a),Xa=e=>samp.callNative("SetGameModeText","s",e),Ya=e=>samp.callNative("ShowNameTags","i",e),za=e=>samp.callNative("ShowPlayerMarkers","i",e),$a=e=>samp.callNative("SetWorldTime","i",e),Ja=()=>samp.callNative("GetWorldTime",""),Qa=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),qa=e=>samp.callNative("SetWeather","i",e),ei=()=>samp.callNativeFloat("GetGravity",""),ti=e=>samp.callNative("SetGravity","f",e),ai=(e,t,a,i,n)=>samp.callNative("CreateExplosion","fffif",e,t,a,i,n),ii=e=>samp.callNative("EnableZoneNames","i",e),ni=()=>!!samp.callNative("UsePlayerPedAnims",""),ri=()=>!!samp.callNative("DisableInteriorEnterExits",""),si=e=>samp.callNative("SetNameTagDrawDistance","f",e),li=()=>samp.callNative("DisableNameTagLOS",""),oi=e=>samp.callNative("LimitGlobalChatRadius","f",e),di=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),ci=(e,t)=>samp.callNative("ConnectNPC","ss",e,t),_i=()=>samp.callNative("GetServerTickRate",""),hi=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),ui=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),mi=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},pi=()=>!!samp.callNative("ChatTextReplacementToggled",""),fi=e=>samp.callNative("GetWeaponSlot","i",e),gi=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,h=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:h,weapon3:p,weapon3Ammo:g,ret:f}},Pi=(e,t,a,i,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p),Ii=e=>samp.callNative("SetTeamCount","i",e),Ei=(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),Ai=(e,t,a,i,n,r,s,l,o,d,c,h)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,h),Ci=(e,t,a,i,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p),Ti=e=>!!samp.callNative("SpawnPlayer","i",e),Ni=e=>{const[t,a=0,i=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:a,spawnX:i,spawnY:n,spawnZ:r,zAngle:s,weapon1:l,weapon1Ammo:o,weapon2:d,weapon2Ammo:c,weapon3:h,weapon3Ammo:p,ret:g}},Di=e=>samp.callNative("NetStats_GetConnectedTime","i",e),vi=e=>samp.callNative("NetStats_MessagesReceived","i",e),wi=e=>samp.callNative("NetStats_BytesReceived","i",e),Ri=e=>samp.callNative("NetStats_MessagesSent","i",e),Li=e=>samp.callNative("NetStats_BytesSent","i",e),bi=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Oi=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),Gi=e=>samp.callNative("NetStats_ConnectionStatus","i",e),Fi=e=>{const[t,a]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:a}},Bi=e=>!!samp.callNative("IsPlayerAdmin","i",e),xi=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),ki=e=>!!samp.callNative("Kick","i",e),Mi=e=>!!samp.callNative("Ban","i",e),Hi=e=>{const[t,a]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:a}},Vi=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Ui=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),Wi=e=>samp.callNative("UnBlockIpAddress","s",e),ji=(e,t)=>{const[a,i]=samp.callNative("gpci","iAi",e,41);return{val:I.decodeFromBuf(I.getValidStr(a),t),ret:i}},Ki=(e,t,a,i,n)=>samp.callNative("SendClientCheck","iiiii",e,t,a,i,n),Zi=()=>{samp.callNative("ClearBanList","")},Xi=e=>!!samp.callNative("IsBanned","s",e),Yi=e=>samp.callNative("GetPlayerRawIp","i",e),zi=e=>{const[t,a]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:a}},$i=e=>{const[t,a]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:a}},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(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},Ji=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),Qi=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),qi=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),en=e=>samp.callNative("GetPlayerWeather","i",e),tn=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}},an=e=>samp.callNativeFloat("GetPlayerZAim","i",e),nn=e=>{const[t=0,a=0,i=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:a,fOffsetZ:i,ret:n}},rn=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}},sn=e=>samp.callNative("GetPlayerDialogID","i",e),ln=e=>samp.callNative("GetPlayerSpectateID","i",e),on=e=>samp.callNative("GetPlayerSpectateType","i",e),dn=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),cn=e=>samp.callNativeFloat("GetPlayerGravity","i",e),_n=e=>!!samp.callNative("IsPlayerSpawned","i",e),hn=e=>!!samp.callNative("IsPlayerControllable","i",e),un=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),mn=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),pn=e=>!!samp.callNative("GetPlayerGhostMode","i",e),fn=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),gn=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),Sn=e=>!!samp.callNative("HidePlayerDialog","i",e),yn=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),Pn=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),In=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),En=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),An=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),Cn=(e,t,a,i)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,a,i),Tn=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Nn=(e,t,a,i)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,a,i),Dn=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),vn=e=>!!samp.callNative("IsPlayerNPC","i",e),wn=(e,t,a,i)=>!!samp.callNative("SetPlayerPos","ifff",e,t,a,i),Rn=(e,t,a,i)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,a,i),Ln=e=>{const[t,a,i,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},bn=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),On=e=>{const[t,a]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:a}},Gn=(e,t,a,i,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,a,i,n),Fn=(e,t,a,i)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,a,i),Bn=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),xn=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),kn=e=>samp.callNative("GetPlayerInterior","i",e),Mn=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),Hn=e=>{const[t,a]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:a}},Vn=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Un=e=>{const[t,a]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:a}},Wn=(e,t,a)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,a),jn=e=>samp.callNative("GetPlayerAmmo","i",e),Kn=e=>samp.callNative("GetPlayerWeaponState","i",e),Zn=e=>samp.callNative("GetPlayerTargetPlayer","i",e),Xn=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},Yn=e=>samp.callNative("GetPlayerTeam","i",e),zn=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),$n=e=>samp.callNative("GetPlayerScore","i",e),Jn=e=>samp.callNative("GetPlayerDrunkLevel","i",e),Qn=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),qn=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,E(t)),er=e=>samp.callNative("GetPlayerColor","i",e),tr=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),ar=e=>samp.callNative("GetPlayerSkin","i",e),ir=(e,t,a)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,a),nr=e=>!!samp.callNative("ResetPlayerWeapons","i",e),rr=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),sr=(e,t)=>{const[a,i,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:a,ammo:i,ret:n}},lr=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),or=e=>!!samp.callNative("ResetPlayerMoney","i",e),dr=e=>samp.callNative("GetPlayerMoney","i",e),cr=e=>samp.callNative("GetPlayerState","i",e),_r=e=>samp.callNative("GetPlayerPing","i",e),hr=e=>samp.callNative("GetPlayerWeapon","i",e),ur=e=>{const[t,a,i,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:a,leftRight:i,ret:n}},mr=(e,t,a)=>!!samp.callNative("SetPlayerTime","iii",e,t,a),pr=e=>{const[t,a,i]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:a,ret:i}},fr=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),gr=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Sr=e=>!!samp.callNative("ForceClassSelection","i",e),yr=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Pr=e=>samp.callNative("GetPlayerWantedLevel","i",e),Ir=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Er=e=>samp.callNative("GetPlayerFightingStyle","i",e),Ar=(e,t,a,i)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,a,i),Cr=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),Nr=(e,t,a,i,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,a,i,n,r,s),Dr=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),vr=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),wr=(e,t,a)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,a),Rr=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),Lr=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),br=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Or=(e,t,a,i,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,a,i,n,r),Gr=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}},Fr=(e,t,a)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,a),Br=e=>samp.callNative("GetPlayerVehicleID","i",e),xr=e=>samp.callNative("GetPlayerVehicleSeat","i",e),kr=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),Mr=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),Hr=(e,t,a,i,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,a,i,n),Vr=(e,t,a,i,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,a,i,n,r,s,l,o,d),Ur=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),Wr=e=>samp.callNative("GetPlayerAnimationIndex","i",e),jr=e=>samp.callNative("GetPlayerSpecialAction","i",e),Kr=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),Zr=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),Xr=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),Yr=e=>samp.callNative("GetPlayerVirtualWorld","i",e),zr=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),$r=e=>samp.callNative("GetPlayerCustomSkin","i",e),Jr=(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),qr=e=>!!samp.callNative("StopRecordingPlayerData","i",e),es=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),ts=(e,t,a)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,a),as=(e,t,a)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,a),is=e=>!!samp.callNative("IsPlayerConnected","i",e),ns=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),rs=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),ss=(e,t,a,i,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,a,i,n),ls=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),os=(e,t,a)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,E(a));function ds(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const cs=(e,t,a)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,a),_s=(e,t,a,i)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,a,i),hs=(e,t,a,i,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,a,i,n),us=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),ms=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},ps=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:a,z:i,ret:n}},fs=e=>samp.callNative("GetPlayerCameraMode","i",e),gs=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Ss=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),ys=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Ps=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Is=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),Es=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,a,i,n,r,s,l,o),As=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,a,i,n,r,s,l,o),Cs=e=>!!samp.callNative("IsPlayerCuffed","i",e),Ts=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Ns=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),Ds=(e,t)=>samp.callNative("StartRecordingPlayback","is",e,t),vs=()=>samp.callNative("StopRecordingPlayback",""),ws=()=>samp.callNative("PauseRecordingPlayback",""),Rs=()=>samp.callNative("ResumeRecordingPlayback",""),Ls=e=>samp.callNative("GetActorSkin","i",e),bs=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Os=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}},Gs=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}},Fs=(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),Bs=e=>{const[t=0,a=0,i]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:a,ret:i}},xs=e=>samp.callNative("GetVehiclePaintjob","i",e),ks=e=>samp.callNative("GetVehicleInterior","i",e),Ms=e=>{const[t,a]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:a}},Hs=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),Vs=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Us=e=>samp.callNative("GetVehicleCab","i",e),Ws=e=>samp.callNative("GetVehicleOccupiedTick","i",e),js=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Ks=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),Zs=e=>!!samp.callNative("IsVehicleOccupied","i",e),Xs=e=>samp.callNative("GetVehicleRespawnTick","i",e),Ys=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),zs=e=>!!samp.callNative("IsVehicleDead","i",e),$s=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),Js=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),Qs=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),qs=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),el=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),tl=e=>samp.callNative("GetVehicleModelCount","i",e),al=e=>samp.callNative("GetVehicleLastDriver","i",e),il=e=>samp.callNative("GetVehicleDriver","i",e),nl=()=>samp.callNative("GetVehicleModelsUsed",""),rl=e=>samp.callNative("GetVehicleSirenState","i",e),sl=e=>samp.callNative("GetVehicleLandingGearState","i",e),ll=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),ol=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),dl=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}},nt=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,a,i,n],ret:r}},cl=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),_l=(e,t,a,i,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,a,i,n,E(r),E(s),l,o),hl=e=>samp.callNative("DestroyVehicle","i",e),ul=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),ml=e=>{const[t,a,i,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:a,z:i,ret:n}},pl=(e,t,a,i)=>!!samp.callNative("SetVehiclePos","ifff",e,t,a,i),fl=e=>{const[t,a]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:a}},gl=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),Pl=(e,t,a,i)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,a,i),Il=()=>samp.callNative("ManualVehicleEngineAndLights",""),El=(e,t,a,i,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,a,i,n,r,s,l),Al=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Cl=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Tl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,a,i,n),Nl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Dl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,a,i,n),vl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},wl=e=>samp.callNative("SetVehicleToRespawn","i",e),Rl=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),Ll=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),bl=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Ol=(e,t,a)=>samp.callNative("ChangeVehicleColor","iii",e,E(t),E(a)),Gl=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),Fl=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),Bl=e=>{const[t,a]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:a}},xl=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),kl=e=>samp.callNative("DetachTrailerFromVehicle","i",e),Ml=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),Hl=e=>samp.callNative("GetVehicleTrailer","i",e),Vl=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Ul=e=>samp.callNative("GetVehicleModel","i",e),Wl=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),jl=e=>samp.callNative("GetVehicleComponentType","i",e),Kl=e=>samp.callNative("RepairVehicle","i",e),Zl=e=>{const[t,a,i,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Xl=(e,t,a,i)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,a,i),Yl=(e,t,a,i)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,a,i),zl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:a,lights:i,tires:n,ret:r}},$l=(e,t,a,i,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,a,i,n),Jl=(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),ql=e=>samp.callNative("GetVehicleVirtualWorld","i",e),eo=e=>!!samp.callNative("IsValidVehicle","i",e),to=(e,t,a,i,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,a,i,n,E(r),E(s)),ao=(e,t,a,i,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,a,i,n,E(r),E(s),l,o),io=e=>!!samp.callNative("ShowVehicle","i",e),no=e=>!!samp.callNative("HideVehicle","i",e),ro=e=>!!samp.callNative("IsVehicleHidden","i",e),so=e=>!!samp.callNative("IsPlayerInModShop","i",e),lo=e=>samp.callNative("GetPlayerSirenState","i",e),oo=e=>samp.callNative("GetPlayerLandingGearState","i",e),co=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),_o=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),ho=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),rt=e=>samp.callNative("GetVehicleMaxPassengers","i",e),uo=e=>samp.callNative("CountVehicleOccupants","i",e),mo=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),po=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}},fo=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),go=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),Po=(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}},Eo=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:a,ret:i}},Ao=(e,t)=>{const[a,i]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:a,ret:i}},Co=(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),No=e=>samp.callNative("DestroyMenu","i",e),Do=(e,t,a)=>samp.callNative("AddMenuItem","iis",e,t,a),vo=(e,t,a)=>samp.callNative("SetMenuColumnHeader","iis",e,t,a),wo=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),Ro=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),Lo=e=>!!samp.callNative("IsValidMenu","i",e),bo=e=>samp.callNative("DisableMenu","i",e),Oo=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),Go=e=>samp.callNative("GetPlayerMenu","i",e),Fo=e=>!!samp.callNative("IsValidGangZone","i",e),Bo=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),xo=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),ko=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),Mo=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),Ho=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),Vo=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}},Uo=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},Wo=(e,t,a,i)=>samp.callNative("GangZoneCreate","ffff",e,t,a,i),jo=e=>samp.callNative("GangZoneDestroy","i",e),Ko=(e,t,a)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,E(a)),Zo=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,E(t)),Xo=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),Yo=e=>samp.callNative("GangZoneHideForAll","i",e),zo=(e,t,a)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,E(a)),$o=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,E(t)),Jo=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),Qo=e=>samp.callNative("GangZoneStopFlashForAll","i",e),qo=(e,t,a,i,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,a,i,n),ed=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),td=(e,t,a)=>samp.callNative("PlayerGangZoneShow","iii",e,t,a),ad=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),id=(e,t,a)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,a),nd=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),rd=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),sd=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),ld=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),od=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),dd=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),cd=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),_d=(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}},hd=(e,t,a)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,a)},ud=e=>!!samp.callNative("IsValidTextDraw","i",e),md=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),pd=e=>{const[t,a]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:a}},fd=(e,t,a)=>{samp.callNative("TextDrawSetPos","iff",e,t,a)},gd=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}},Pd=e=>samp.callNative("TextDrawGetColor","i",e),Id=e=>samp.callNative("TextDrawGetBoxColor","i",e),Ed=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Ad=e=>samp.callNative("TextDrawGetShadow","i",e),Cd=e=>samp.callNative("TextDrawGetOutline","i",e),Td=e=>samp.callNative("TextDrawGetFont","i",e),Nd=e=>!!samp.callNative("TextDrawIsBox","i",e),Dd=e=>!!samp.callNative("TextDrawIsProportional","i",e),vd=e=>!!samp.callNative("TextDrawIsSelectable","i",e),wd=e=>samp.callNative("TextDrawGetAlignment","i",e),Rd=e=>samp.callNative("TextDrawGetPreviewModel","i",e),Ld=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}},bd=e=>{const[t,a,i]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:a,ret:i}},Od=(e,t,a)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,a)},Gd=(e,t,a)=>samp.callNative("TextDrawCreate","ffa",e,t,a),Fd=e=>samp.callNative("TextDrawDestroy","i",e),Bd=(e,t,a)=>samp.callNative("TextDrawLetterSize","iff",e,t,a),xd=(e,t,a)=>samp.callNative("TextDrawTextSize","iff",e,t,a),kd=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),Md=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,E(t)),Hd=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),Vd=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,E(t)),Ud=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),Wd=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),jd=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,E(t)),Kd=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),Zd=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),Xd=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),Yd=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),zd=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),$d=e=>samp.callNative("TextDrawShowForAll","i",e),Jd=e=>samp.callNative("TextDrawHideForAll","i",e),Qd=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),qd=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),ec=(e,t,a,i,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,a,i,n)},tc=(e,t,a)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,E(t),E(a)),ac=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,E(t))},ic=e=>{samp.callNative("CancelSelectTextDraw","i",e)},nc=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),rc=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),sc=(e,t)=>{const[a,i]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:a,ret:i}},lc=(e,t,a,i)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,a,i)},oc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},dc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},cc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:a,fY:i,ret:n}},_c=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),hc=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),uc=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),mc=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),pc=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),fc=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),gc=(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),Pc=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),Ic=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Ec=(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}},Ac=(e,t)=>{const[a,i,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:a,color2:i,ret:n}},Cc=(e,t,a,i)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,a,i),Tc=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Nc=(e,t,a,i)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,a,i),Dc=(e,t,a,i)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,a,i),vc=(e,t,a)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,a),wc=(e,t,a)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,E(a)),Rc=(e,t,a)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,a),Lc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,E(a)),bc=(e,t,a)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,a),Oc=(e,t,a)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,a),Gc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,E(a)),Fc=(e,t,a)=>samp.callNative("PlayerTextDrawFont","iii",e,t,a),Bc=(e,t,a)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,a),xc=(e,t,a)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,a),kc=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),Mc=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),Hc=(e,t,a)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,a),Vc=(e,t,a)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,a),Uc=(e,t,a,i,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,a,i,n,r),Wc=(e,t,a,i)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,a,i),jc=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),Kc=e=>!!samp.callNative("BeginObjectSelecting","i",e),Zc=e=>!!samp.callNative("EndObjectEditing","i",e),Xc=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),Yc=(e,t,a,i,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,a,i,n),zc=(e,t,a,i,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,a,i,n,r,s),$c=(e,t)=>samp.callNative("RedirectDownload","is",e,t),Jc=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}},qc=(e,t)=>{const[a=0,i=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:a,bone:i,fX:n,fY:r,fZ:s,fRotX:l,fRotY:o,fRotZ:d,fScaleX:c,fScaleY:h,fScaleZ:p,materialColor1:g,materialColor2:f,ret:y}},e_=(e,t,a,i,n,r,s,l,o,d,c,h,p,g,f)=>samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,a,i,n,r,s,l,o,d,c,h,p,E(g),E(f)),t_=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),a_=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),st=e=>!!samp.callNative("IsValidCustomModel","i",e),i_=e=>{if(!st(e))return null;const[t,a,i]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:a,ret:i}};var lt=(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))(lt||{}),ot=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(ot||{}),He=(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))(He||{}),dt=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(dt||{}),ct=(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))(ct||{}),N=(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))(N||{}),_t=(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))(_t||{}),H=(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))(H||{}),ht=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(ht||{}),ut=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(ut||{}),V=(e=>(e[e.none=0]="none",e[e.start=1]="start",e[e.pause=2]="pause",e))(V||{}),mt=(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))(mt||{}),pt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(pt||{}),ft=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(ft||{}),gt=(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))(gt||{}),St=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(St||{}),ye=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(ye||{}),yt=(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))(yt||{}),be=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(be||{}),Pe=(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))(Pe||{}),Pt=(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))(Pt||{}),It=(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))(It||{}),Et=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Et||{}),Ve=(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))(Ve||{}),Ie=(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))(Ie||{}),At=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(At||{}),Ct=(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))(Ct||{}),Tt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(Tt||{}),Nt=(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))(Nt||{}),Dt=(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))(Dt||{}),vt=(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))(vt||{}),wt=(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))(wt||{}),Rt=(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))(Rt||{}),Ue=(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))(Ue||{}),Lt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Lt||{}),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||{}),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||{}),P=(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))(P||{}),Oe=(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))(Oe||{}),Ge=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(Ge||{}),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||{}),Ot=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHt=2]="RIGHt",e))(Ot||{}),We=(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))(We||{});const n_=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),r_=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),s_=(e,t,a,i,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,a,i,n,r,s,l,o,d,c,h,p),l_=e=>samp.callNative("DestroyDynamicActor","i",e),o_=e=>!!samp.callNative("IsValidDynamicActor","i",e),d_=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),c_=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),__=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),h_=(e,t,a,i,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,a,i,n,r,s,l,o),u_=e=>samp.callNative("ClearDynamicActorAnimations","i",e),m_=e=>{const[t,a]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:a}},p_=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),f_=e=>{const[t,a,i,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},g_=(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),P_=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),I_=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),E_=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),A_=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),C_=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),N_=(e,t,a,i,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,a,i,n,r,s,l),D_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,a,i,n,r,s),v_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,a,i,n,r,s),w_=(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),R_=(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),L_=e=>samp.callNative("DestroyDynamicArea","i",e),b_=e=>!!samp.callNative("IsValidDynamicArea","i",e),O_=e=>samp.callNative("GetDynamicAreaType","i",e),G_=e=>{const[t,a]=samp.callNative("GetDynamicPolygonPoints","iAi",e,Gt(e));return{points:t,ret:a}},Gt=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),F_=(e,t,a=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,a),B_=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),x_=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),k_=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),M_=e=>{const[t,a]=samp.callNative("GetPlayerDynamicAreas","iAi",e,Ft(e));return{areas:t,ret:a}},Ft=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),H_=(e,t,a,i)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,a,i),V_=(e,t,a)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,a),U_=(e,t,a,i,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,a,i,n,r,s),W_=(e,t,a,i,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,a,i,n,r),j_=(e,t,a)=>{const[i,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,a,Bt(e,t,a));return{areas:i,ret:n}},Bt=(e,t,a)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,a),K_=(e,t,a,i,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,a,i,n,r,xt(e,t,a,i,n,r));return{areas:s,ret:l}},xt=(e,t,a,i,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,a,i,n,r),Z_=(e,t,a=Ge.DYNAMIC,i=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,a,i,n,r,s),X_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,a,i,n),Y_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,a,i,n),z_=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),$_=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),J_=(e,t,a,i,n=-1,r=-1,s=-1,l=D.CP_SD,o=-1,d=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,a,i,n,r,s,l,o,d),kt=e=>samp.callNative("DestroyDynamicCP","i",e),Mt=e=>!!samp.callNative("IsValidDynamicCP","i",e),Q_=(e,t,a)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,a),q_=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),eh=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),th=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),ah=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,a);return{val:i,ret:n}},ih=(e,t,a,i)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,a,i),nh=(e,t,a)=>samp.callNative("Streamer_GetIntData","iii",e,t,a),rh=(e,t,a,i)=>samp.callNative("Streamer_SetIntData","iiii",e,t,a,i),sh=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,a,Ht(e,t,a));return{arrayData:i,ret:n}},lh=(e,t,a,i)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,a,i,i.length),oh=(e,t,a,i)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,a,i),dh=(e,t,a,i)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,a,i),ch=(e,t,a,i)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,a,i),Ht=(e,t,a)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,a),_h=e=>samp.callNative("Streamer_GetUpperBound","i",e);var Fe=(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))(Fe||{});const hh=(e,t,a,i,n,r=-1,s=-1,l=-1,o=D.MAP_ICON_SD,d=0,c=-1,h=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,a,i,n,r,s,l,o,d,c,h),uh=e=>samp.callNative("DestroyDynamicMapIcon","i",e),mh=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),ph=(e,t,a,i,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,a,i,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),fh=(e,t,a,i,n,r=D.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),gh=(e,t,a,i,n=D.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=D.RACE_CP_SD,d=[-1],c=[-1],h=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),yh=(e,t,a,i,n,r=Fe.LOCAL,s=D.MAP_ICON_SD,l=[-1],o=[-1],d=[-1],c=[-1],h=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,h,l.length,o.length,d.length,c.length),Ph=(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),Eh=(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),Ah=(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),Ch=(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),Nh=(e,t,a,i,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,a,i,n,r,s,l,o,d,c,h,p,o.length,d.length,c.length,h.length),Dh=(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}},vh=(e,t,a,i)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,a,i),wh=(e,t,a)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,a),Rh=(e,t,a,i=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,a,i,i.length),Lh=(e,t,a)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,a),bh=(e,t,a)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,a),Oh=(e,t,a)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,a),Gh=(e,t,a=1)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,a),Fh=(e,t,a=1)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,a),Bh=(e,t=1)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),xh=(e,t=1)=>samp.callNative("Streamer_CountItems","ii",e,t),kh=(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)},Mh=(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}},Vh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,a,i,n),Uh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},Wh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,a,i,n),jh=(e,t,a,i,n,r,s,l=-1,o=-1,d=-1,c=D.OBJECT_SD,h=D.OBJECT_DD,p=-1,g=0)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,a,i,n,r,s,l,o,d,c,h,p,g),Kh=e=>samp.callNative("DestroyDynamicObject","i",e),Zh=e=>!!samp.callNative("IsValidDynamicObject","i",e),Xh=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Yh=(e,t,a,i)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,a,i),zh=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:a,rz:i,ret:n}},$h=(e,t,a,i)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,a,i),Jh=(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),qh=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),eu=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),tu=(e,t,a,i,n,r,s,l,o=!0)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,a,i,n,r,s,l,o),au=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,a,i,n,r,s,l),iu=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,a,i,n,r,s,l),nu=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),ru=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),su=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),lu=(e,t,a,i,n,r=0)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,a,i,n,r),ou=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),du=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),cu=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),_u=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),hu=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),uu=(e,t,a,i,n,r=-1,s=-1,l=-1,o=D.PICKUP_SD,d=-1,c=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,a,i,n,r,s,l,o,d,c),mu=e=>!!samp.callNative("DestroyDynamicPickup","i",e),pu=e=>!!samp.callNative("IsValidDynamicPickup","i",e),fu=(e,t,a,i,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,a,i,n,r,s,l,o,d,c,h,p,g),gu=(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),Pu=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),Iu=()=>samp.callNative("Streamer_GetTickRate",""),Eu=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),Au=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),Cu=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),Tu=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),Nu=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),Vt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Ut=(e,t,a=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,a),Du=e=>samp.callNative("Streamer_GetChunkSize","i",e),vu=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),wu=e=>samp.callNative("Streamer_GetMaxItems","i",e),Ru=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),Wt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),jt=(e,t,a=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,a),Kt=(e,t=-1)=>{const[a,i]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:a,ret:i}},Zt=(e,t,a=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,a),Lu=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",Oe.MAX_TYPES);return{priority:e,ret:t}},bu=e=>samp.callNative("Streamer_SetTypePriority","ai",e,Oe.MAX_TYPES),Ou=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},Gu=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Fu=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},Bu=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),xu=(e,t,a)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,a),ku=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Mu=(e,t,a)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,a),Hu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Vu=(e,t,a)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,a),Uu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),Wu=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),ju=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Ku=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),Zu=()=>samp.callNative("Streamer_ProcessActiveItems",""),Xu=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Yu=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),zu=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),$u=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),Ju=(e,t,a)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,a),Qu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),qu=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},em=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),tm=(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),te=Symbol(),J=new Map,j=new Map,Ee=new Map,Ae=new Map,Ce=new Map,Be=new Map,Te=new Map,Ne=new Map,K=new Map,ue=new Map,Q=new Map,q=new Map,ae=new Map,ie=new Map,me=new Map,ne=new Map,[Xt]=u({name:"OnGameModeInit"}),[Yt]=u({name:"OnGameModeExit"}),[am]=u({name:"OnIncomingConnection",defaultValue:!1,beforeEach(e,t,a){return{playerId:e,ipAddress:t,port:a}}}),[im]=u({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:I.decodeFromBuf(e)}}}),[nm]=u({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,a){return{ip:I.decodeFromBuf(e),password:I.decodeFromBuf(t),success:!!a,ipBuffer:e,passwordBuffer:t}}}),re=[],pe=[],je=new Map,Ke=async e=>{try{return await new Promise((t,a)=>{const i=re.findIndex(l=>l.name===e);if(i===-1)return;const n=re[i];function r(l){l.length&&je.set(e,l),re.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}`)}},Ze=async e=>{try{return await new Promise((t,a)=>{const i=pe.findIndex(o=>o.name===e);if(i===-1)return;const n=pe[i],r=je.get(e);r&&(r.forEach(o=>o()),je.delete(e));function s(){pe.splice(i,1),re.push(n),setTimeout(t)}const l=n.unload();l instanceof Promise?l.then(s).catch(a):s()})}catch(t){throw new Error(`[GameMode]: script ${e} unload fail
4
- ${t}`)}},rm=async e=>{await Ze(e),await Ke(e)};Xt(async({next:e})=>{const t=re.map(a=>a.name);for(const a of t)await Ke(a);return e()}),Yt(async({next:e})=>{const t=pe.map(a=>a.name);for(const a of t)await Ze(a);return e()});const sm=function(e,...t){if(re.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),re.push(e)},se=(e,t)=>{const a=t.replace("-","")==="utf8"?e:I.encodeToBuf(e,t);return[a instanceof Array?"a":"s",a]},zt=(e,t,a)=>{const i=se(a,e.charset);return samp.callNative("SendClientMessage",`ii${i[0]}`,e.id,E(t),i[1])},lm=(e,t,a)=>(e.forEach(i=>zt(i,t,a)),1),$t=(e,t,a)=>{const i=se(a,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${i[0]}`,e.id,t,i[1])},om=(e,t,a)=>(e.forEach(i=>{$t(i,t,a)}),1),dm=(e,t,a)=>{const{charset:i}=e,{style:n,caption:r,info:s,button1:l,button2:o}=a,[d,c]=se(r||"",i),[,h]=se(s||"",i),[,p]=se(l||"",i),[,g]=se(o||"",i);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,n,c,h,p,g)},cm=e=>{const[t,a]=samp.callNative("GetPlayerName","iAi",e.id,H.MAX_PLAYER_NAME);return{name:I.decodeFromBuf(I.getValidStr(t),e.charset),ret:a}},_m=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,I.encodeToBuf(t,e.charset)),hm=(e,t,a)=>{const i=I.encodeToBuf(t,a);return samp.callNative("BanEx","ia",e,i)},um=(e,t="utf8")=>{const[a,i]=se(e,t);return samp.callNative("SendRconCommand",a,i)},mm=(e,t,a,i,n,r,s,l,o,d,c,h,p,g,f,y)=>{const w=I.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,a,i,n,r,s,l,o,d,c,h,p,g,f,y)},pm=(e,t,a,i,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,a,i,n,r,s,l,o,d,c,h,p,g,f,c.length,h.length,p.length,g.length)},fm=(e,t,a,i)=>{const n=I.encodeToBuf(a,i);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},gm=(e,t)=>{const[a,i]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:I.decodeFromBuf(I.getValidStr(a),t),ret:i}},Sm=(e,t,a,i,n,r,s,l,o,d,c)=>{const h=I.encodeToBuf(i,e),p=I.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,a,h,n,p,s,l,o,d,c)},ym=(e,t,a="utf8")=>{const[i,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:i,txdName:I.decodeFromBuf(I.getValidStr(n),a),textureName:I.decodeFromBuf(I.getValidStr(r),a),materialColor:s,ret:l}},Pm=(e,t,a)=>{const[i,n,r,s,l,o,d,c,h]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),p=I.decodeFromBuf(i,a),g=I.decodeFromBuf(r,a);return{text:p,materialSize:n,fontFace:g,fontSize:s,bold:l,fontColor:o,backColor:d,textAlignment:c,ret:h}},Im=(e,t,a,i,n,r)=>{const s=I.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,E(a),i,n)},Z=new Uint32Array(65536),Em=(e,t)=>{const a=e.length,i=t.length,n=1<<a-1;let r=-1,s=0,l=a,o=a;for(;o--;)Z[e.charCodeAt(o)]|=1<<o;for(o=0;o<i;o++){let d=Z[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--;)Z[e.charCodeAt(o)]=0;return l},Am=(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++)Z[e.charCodeAt(T)]|=1<<T;for(let T=0;T<a;T++){const $=Z[t.charCodeAt(T)],U=r[T/32|0]>>>T&1,M=n[T/32|0]>>>T&1,qe=$|f,et=(($|M)&y)+y^y|$|M;let ge=f|~(et|y),Re=y&et;ge>>>31^U&&(r[T/32|0]^=1<<T),Re>>>31^M&&(n[T/32|0]^=1<<T),ge=ge<<1|U,Re=Re<<1|M,y=Re|~(qe|ge),f=ge&qe}for(let T=w;T<O;T++)Z[e.charCodeAt(T)]=0}let d=0,c=-1;const h=o*32,p=Math.min(32,i-h)+h;for(let f=h;f<p;f++)Z[e.charCodeAt(f)]|=1<<f;let g=i;for(let f=0;f<a;f++){const y=Z[t.charCodeAt(f)],w=r[f/32|0]>>>f&1,O=n[f/32|0]>>>f&1,T=y|d,$=((y|O)&c)+c^c|y|O;let U=d|~($|c),M=c&$;g+=U>>>i-1&1,g-=M>>>i-1&1,U>>>31^w&&(r[f/32|0]^=1<<f),M>>>31^O&&(n[f/32|0]^=1<<f),U=U<<1|w,M=M<<1|O,c=M|~(T|U),d=U&T}for(let f=h;f<p;f++)Z[e.charCodeAt(f)]=0;return g},Jt=(e,t)=>{if(e.length<t.length){const a=t;t=e,e=a}return t.length===0?e.length:e.length<=32?Em(e,t):Am(e,t)},Cm=(e,t)=>{let a=1/0,i=0;for(let n=0;n<t.length;n++){const r=Jt(e,t[n]);r<a&&(a=r,i=n)}return t[i]},le=new Map,oe=new Map,Qt=/[^/\s]+/gi,De={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"}},[Tm,Nm]=u({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}}}),[Dm,vm]=u({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}}}),[wm,ve]=u({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=Cm(i,[...le.keys(),...oe.keys()]),h=Jt(i,c);return{suggestion:c,distance:h}}}}}),[Rm,Lm]=u({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const a=J.get(e);let i=t,n="";return typeof t=="string"?(n=t,i=I.encodeToBuf(n,"utf-8")):n=I.decodeFromBuf(t,a.charset),{player:a,buffer:i,cmdText:n}}}),[bm,Om]=u({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,a){return{player:e,buffer:t,cmdText:a}}});function Gm(e){const t=[];let a="";for(let i=0;i<e.length;i++)a+=e[i]+" ",t.push(a.trimEnd());return t.reverse()}Rm(({player:e,buffer:t,cmdText:a,next:i})=>{const n=Om(e,t,a);if(n)return n;const r=a.match(Qt),s=Gm(r),l=s.find(y=>le.has(y)),o=s.map(y=>y.toLowerCase()).find(y=>oe.has(y)),d=!!l,c=!!o,h=r.join(" ");let p=[];const g=[[l,le,!0],[o,oe,!1]],f=[h,a,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 ve(e,De.NOT_EXIST,...f);try{if(!Nm(e,...f))return ve(e,De.RECEIVED_REJECTED,...f)}catch(y){const w=typeof y=="object"?y:{error:y};return ve(e,{...De.RECEIVED_THROW,...w},...f)}for(const[y,w,O]of g){if(!y)continue;const T=w.get(y),[,$]=T;if(!$(e,y,p,a,t,O))return ve(e,De.REJECTED,...f)}return vm(e,h,a,t,l,o,d,c,p)?(i(),!0):ve(e,De.PERFORMED,...f)});function Fm(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(Qt));if(l)return console.log(`error command ${l} format`),()=>{};const o=i?le:oe,d=s.map(c=>{const h=c.replaceAll("/",""),p=i?h:h.toLowerCase();if(!o.has(p)){const f=u({name:i?"$"+p:p,isNative:!1,beforeEach:Fm});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(a=>{let i=a.replaceAll("/","");le.has(i)&&(F.has(i)&&F.delete(i),le.has(i)&&le.delete(i)),i=i.toLowerCase(),oe.has(i)&&(F.has(i)&&F.delete(i),oe.has(i)&&oe.delete(i))})}static enableCaseSensitive(){x.caseSensitive=!0}static disableCaseSensitive(){x.caseSensitive=!1}static isCaseSensitive(){return x.caseSensitive}static simulate(t,a){return Lm(t.id,a)}}class L{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=Xt;static onExit=Yt;static onIncomingConnection=am;static onRconCommand=im;static onRconLoginAttempt=nm;static use(t,...a){return sm(t,...a),this}static loadUseScript=Ke;static reloadUseScript=rm;static unloadUseScript=Ze;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 qa(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return $a(t)}static getWorldTime=Ja;static setTeamCount=Ii;static sendRconCommand=um;static addPlayerClass=Ei;static addPlayerClassEx=Ai;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 ai(t,a,i,n,r)}static manualVehicleEngineAndLights=Il;static blockIpAddress=Ui;static unBlockIpAddress=Wi;static getServerTickRate=_i;static addSimpleModel(t,a,i,n,r){return this.checkSimpleModel(t,a,i,n,r)?Yc(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)?zc(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=st;static getCustomModePath=i_;static getConsoleVarAsString(t,a="utf8"){const{consoleVarBuf:i,ret:n}=Fa(t);return{consoleVar:I.decodeFromBuf(I.getValidStr(i),a),ret:n}}static getRestartTime=Ua;static setRestartTime=Va;static allowAdminTeleport=wa;static isAdminTeleportAllowed=Ra;static allowInteriorWeapons=La;static areInteriorWeaponsAllowed=ba;static areAllAnimationsEnabled=Oa;static enableAllAnimations=Ga;static enableStuntBonusForAll=ui;static enableVehicleFriendlyFire=Qa;static enableZoneNames=ii;static disableInteriorEnterExits=ri;static setGameModeText=Xa;static getGravity=ei;static setGravity=ti;static showNameTags=Ya;static disableNameTagLOS=li;static usePlayerPedAnims=ni;static showPlayerMarkers=za;static limitPlayerMarkerRadius=di;static limitGlobalChatRadius=oi;static setNameTagDrawDistance=si;static findModelFileNameFromCRC=Jc;static findTextureFileNameFromCRC=Qc;static getWeaponName=gi;static setObjectsDefaultCameraCollision=Xc;static vectorSize=Me;static clearBanList=Zi;static isBanned=Xi;static isValidNickName=Ea;static allowNickNameCharacter=Aa;static isNickNameCharacterAllowed=Ca;static addServerRule=Ta;static setServerRule=Na;static isValidServerRule=Da;static removeServerRule=va;static getWeaponSlot=fi;static getAvailableClasses=Si;static getPlayerClass=yi;static editPlayerClass=Pi;static toggleChatTextReplacement=mi;static chatTextReplacementToggled=pi;static getConsoleVarAsInt=Ba;static getConsoleVarAsBool=xa;static getWeather=ka;static getServerRuleFlag=Ma;static setServerRuleFlags=Ha}const A={skip:!1};L.onInit(({next:e})=>(A.skip=!1,e())),L.onExit(({next:e})=>(A.skip=!0,e()));class v{_id=N.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!==N.PLAYER_ID){const i=v.getInstance(a);if(i)return i}return Be.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: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,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(){const[t,a]=samp.callNative("NPC_GetVirtualWorld","iI",this._id);return{virtualWorld:t,ret:a}}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","ifffif",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","ii",this._id)}setKeys(t,a,i){return samp.callNative("NPC_SetKeys","iiii",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,h){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,a,i,n,r,s,l,o,d,c,h),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,h){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,a,i,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,a){return samp.callNative("NPC_SetWeaponAccuracy","iif",this._id,t,a),this}getWeaponAccuracy(t){return samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",this._id,t)}enterVehicle(t,a,i){return samp.callNative("NPC_EnterVehicle","iiii",this._id,t,a,i),this}exitVehicle(){return samp.callNative("NPC_ExitVehicle","i",this._id),this}static connect=ci;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");qr(t.id),t.isRecording=!1}static startRecordingPlayback(t,a){if(v.recordStatus>=V.start)throw new Error("[NpcFunc]: The current status cannot be replayed");Ds(t,a),v.recordStatus=V.start}static stopRecordingPlayback(){if(v.recordStatus<V.start)throw new Error("[NpcFunc]: The current status cannot be stopped");vs(),v.recordStatus=V.none}static pauseRecordingPlayback(){if(v.recordStatus!==V.start)throw new Error("[NpcFunc]: The current status cannot be paused");ws(),v.recordStatus=V.pause}static resumeRecordingPlayback(){if(v.recordStatus!==V.pause)throw new Error("[NpcFunc]: The current status cannot be paused");Rs(),v.recordStatus=V.start}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return Be.get(t)}static getInstances(){return[...Be.values()]}}const qt=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=qt.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)},Bm=(e,t)=>{const a=Xe(e);if(a)return a.find(i=>i.n===t)?.d},[ea]=u({name:"OnClientCheckResponse",beforeEach(e,t,a,i){return{player:m.getInstance(e),actionId:t,memAddr:a,data:i}}}),[xm,km]=u({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,a){return{player:e,newLocale:t,oldLocale:a}}}),[Mm,Hm]=u({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}[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 a=this._charset;this._charset=t,Hm(this,t,a)}get locale(){return this._locale}set locale(t){const a=this._locale;this._locale=t,km(this,t,a)}sendClientMessage(t,a){return zt(this,t,a)}static sendClientMessageToAll(t,a){lm(m.getInstances(),t,a)}sendMessageToPlayer(t,a){return $t(t,this.id,a)}sendMessageToAll(t){return om(m.getInstances(),this.id,t)}isNpc(){return vn(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return Jn(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 Pn(this.id,t)}isTeleportAllowed(){return In(this.id)}enableCameraTarget(t){return gs(this.id,t)}enableStuntBonus(t){return zr(this.id,t)}getInterior(){return kn(this.id)}setInterior(t){return xn(this.id,t)}showNameTag(t,a){return cs(this.id,t.id,a)}setColor(t){return qn(this.id,t)}getColor(){return er(this.id)}setMarker(t,a){os(this.id,t.id,a)}getMarker(t){return ds(this.id,t.id)}resetMoney(){return or(this.id)}getMoney(){return dr(this.id)}giveMoney(t){return lr(this.id,t)}resetWeapons(){return nr(this.id)}spawn(){return Ti(this.id)}setHealth(t){return Mn(this.id,t)}getHealth(){return Hn(this.id)}toggleClock(t){return fr(this.id,t)}toggleControllable(t){return Mr(this.id,t)}toggleSpectating(t){return es(this.id,t)}spectatePlayer(t,a=be.NORMAL){return ts(this.id,t.id,a)}spectateVehicle(t,a=be.NORMAL){return as(this.id,t.id,a)}forceClassSelection(){return Sr(this.id)}kick(){return ki(this.id)}ban(){return Mi(this.id)}banEx(t,a){return hm(this.id,t,a)}isAdmin(){return Bi(this.id)}isInRangeOfPoint(t,a,i,n){return Gn(this.id,t,a,i,n)}isStreamedIn(t){return Bn(this.id,t.id)}setSkin(t,a=!1){return!a&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===Ve.DUCK?!1:tr(this.id,t)}getSkin(){return ar(this.id)}isInAnyVehicle(){return rs(this.id)}getSpecialAction(){return jr(this.id)}setSpecialAction(t){return Kr(this.id,t)}setScore(t){return zn(this.id,t)}getScore(){return $n(this.id)}getPing(){return _r(this.id)||0}setPos(t,a,i){return wn(this.id,t,a,i)}getPos(){return Ln(this.id)}isSpectating(){return this.getState()===Pe.SPECTATING}isWasted(){return this.getState()===Pe.WASTED}getState(){return cr(this.id)}getVersion(){return $i(this.id)}setVirtualWorld(t){return Xr(this.id,t)}getVirtualWorld(){return Yr(this.id)}removeFromVehicle(){return kr(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 Pr(this.id)}setFacingAngle(t){return bn(this.id,t)}getFacingAngle(){return On(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return gr(this.id,t)}getWeather(){return en(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 mr(this.id,t,a)}getTime(){return pr(this.id)}removeBuilding(t,a,i,n,r){return Or(this.id,t,a,i,n,r)}setTeam(t){t<0||t>N.NO_TEAM||Xn(this.id,t)}getTeam(){return Yn(this.id)}setSkillLevel(t,a){if(a<0||a>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return wr(this.id,t,a)}getName(){return cm(this)}setName(t){return _m(this,t)}setVelocity(t,a,i){return Ar(this.id,t,a,i)}getVelocity(){return Cr(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return Me(a,i,n)*t}getKeys(){return ur(this.id)}getIp(){return zi(this.id)}getFightingStyle(){return Er(this.id)}setFightingStyle(t){return Ir(this.id,t)}setArmour(t){return Vn(this.id,t)}getArmour(){return Un(this.id)}setCameraBehind(){return us(this.id)}setCameraPos(t,a,i){return _s(this.id,t,a,i)}setCameraLookAt(t,a,i,n=ye.CUT){return hs(this.id,t,a,i,n)}getCameraAspectRatio(){return Ps(this.id)}getCameraFrontVector(){return ps(this.id)}getCameraMode(){return fs(this.id)}getCameraPos(){return ms(this.id)}getCameraTargetPlayer(){const t=ys(this.id);return m.getInstances().find(a=>a.id===t)}getCameraTargetVehicle(){const t=Ss(this.id);return[...j.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),Nr(this.id,t,a,i,n,r,s)}stopAudioStream(){return Dr(this.id)}playSound(t,a=0,i=0,n=0){return Hr(this.id,t,a,i,n)}static getMaxPlayers(){return Za()}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=ye.CUT){return Es(this.id,t,a,i,n,r,s,l,o)}interpolateCameraLookAt(t,a,i,n,r,s,l,o=ye.CUT){return As(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 Jr(this.id,t,a,i,n,r)}static isConnected(t){return is(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return Zr(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=Br(this.id);return[...j.values()].find(a=>a.id===t)}getVehicleSeat(){return xr(this.id)}getSurfingVehicle(){const t=Rr(this.id);if(t!==N.VEHICLE_ID)return[...j.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 Vr(this.id,t,a,i,n,r,s,l,o,+d)}clearAnimations(t=!1){return Ur(this.id,t)}getAnimationIndex(){return Wr(this.id)}getAnimationName(t=this.getAnimationIndex()){const[a,i]=hi(t);return{index:t,animLib:a,animName:i}}setShopName(t){return vr(this.id,t)}setPosFindZ(t,a,i){return Rn(this.id,t,a,i)}setWorldBounds(t,a,i,n){return ss(this.id,t,a,i,n)}clearWorldBounds(){return ls(this.id)}setChatBubble(t,a,i,n,r=this.charset){return Im(this.id,t,a,i,n,r)}getDistanceFromPoint(t,a,i){return Fn(this.id,t,a,i)}getCustomSkin(){return $r(this.id)}getTargetPlayer(){const t=Zn(this.id);if(t!==N.PLAYER_ID)return m.getInstances().find(a=>a.id===t)}getLastShotVectors(){return Gr(this.id)}getWeapon(){return hr(this.id)}getWeaponData(t){return sr(this.id,t)}getWeaponState(){return Kn(this.id)}giveWeapon(t,a){return ir(this.id,t,a)}setAmmo(t,a){return Wn(this.id,t,a)}getAmmo(){return jn(this.id)}setArmedWeapon(t){return rr(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(N.PLAYER_ID,N.PLAYER_ID,Ue.CONNECT)}sendDeathMessage(t,a){return Ka(t===N.PLAYER_ID?t:t.id,this.id,a)}sendDeathMessageToPlayer(t,a,i){return Nn(this.id,t===N.PLAYER_ID?t:t.id,a===N.PLAYER_ID?a:a.id,i)}setSpawnInfo(t,a,i,n,r,s,l,o,d,c,h,p){return t<0||t>N.NO_TEAM||a<0||a>311||a===74||o<0||c<0||p<0?!1:Ci(this.id,t,a,i,n,r,s,l,o,d,c,h,p)}redirectDownload(t){return $c(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 h=null;const p=ea(({player:g,actionId:f,memAddr:y,data:w,next:O})=>(g!==this||(h&&(clearTimeout(h),h=null),s({actionId:f,memAddr:y,data:w})),O()));h=setTimeout(()=>{p(),l(o)},c),Ki(this.id,t,a,i,n)})}selectTextDraw(t){ac(this.id,t)}cancelSelectTextDraw(){ic(this.id)}beginObjectSelecting(){return Kc(this.id)}endObjectEditing(){return Zc(this.id)}getSurfingObject(){const t=Lr(this.id);if(t!==N.OBJECT_ID)return K.get(t)}getSurfingPlayerObject(){const t=br(this.id);if(t!==N.OBJECT_ID)return K.get(t)}isAttachedObjectSlotUsed(t){return a_(this.id,t)}editAttachedObject(t){return jc(this.id,t)}setAttachedObject(t,a,i,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:e_(this.id,t,a,i,n,r,s,l,o,d,c,h,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?t_(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 Ji(this.id,t)}isWidescreenToggled(){return Qi(this.id)}getSpawnInfo(){return Ni(this.id)}getSkillLevel(t){return qi(this.id,t)}isCheckpointActive(){return mo(this.id)}getCheckpoint(){return po(this.id)}isRaceCheckpointActive(){return fo(this.id)}getRaceCheckpoint(){return go(this.id)}getWorldBounds(){return tn(this.id)}isInModShop(){return so(this.id)}getSirenState(){return lo(this.id)}getLandingGearState(){return oo(this.id)}getHydraReactorAngle(){return co(this.id)}getTrainSpeed(){return _o(this.id)}getZAim(){return an(this.id)}getSurfingOffsets(){return nn(this.id)}getRotationQuat(){return rn(this.id)}getDialogID(){return sn(this.id)}getSpectateID(){return ln(this.id)}getSpectateType(){return on(this.id)}getRawIp(){return Yi(this.id)}setGravity(t){return dn(this.id,t)}getGravity(){return cn(this.id)}setAdmin(t){return xi(this.id,t)}isSpawned(){return _n(this.id)}isControllable(){return hn(this.id)}isCameraTargetEnabled(){return un(this.id)}toggleGhostMode(t){return mn(this.id,t)}getGhostMode(){return pn(this.id)}getBuildingsRemoved(){return fn(this.id)}getAttachedObject(t){return qc(this.id,t)}removeWeapon(t){return gn(this.id,t)}isUsingOfficialClient(){return yn(this.id)}allowWeapons(t){return En(this.id,t)}areWeaponsAllowed(){return An(this.id)}gpci(t=this.charset){return ji(this.id,t)}isCuffed(){return Cs(this.id)}isInDriveByMode(){return Ts(this.id)}isAndroid(){return this.isConnected()&&this[te].isAndroid}isPC(){return this.isConnected()&&!this[te].isAndroid}isUsingOmp(){return Ns(this.id)}simulateCommand(t){return x.simulate(this,t)}static getInstance(t){return J.get(t)}static getInstances(){return[...J.values()]}}const[ta]=u({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,a,i,n){const r=m.getInstance(e),s=I.decodeFromBuf(n,r.charset);return{player:r,dialogId:t,response:a,listItem:i,buffer:n,inputText:s}}});ta(({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:He.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=dm}const[aa]=u({name:"OnPlayerConnect",beforeEach(e){const t=new m(e);return J.set(e,t),R.close(t),{player:t}}}),[ia]=u({name:"OnPlayerDisconnect",beforeEach(e,t){return{player:J.get(e),reason:t}},afterEach({player:e}){J.delete(e.id)}}),[na]=u({name:"OnPlayerUpdate",beforeEach(e){return{player:m.getInstance(e)}}}),[Vm]=u({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const a=m.getInstance(e);return{player:a,text:I.decodeFromBuf(t,a.charset),buffer:t}}}),[Um]=u({name:"OnPlayerEnterExitModShop",beforeEach(e,t,a){return{player:m.getInstance(e),enterExit:t,interior:a}}}),[Wm]=u({name:"OnPlayerClickMap",defaultValue:!1,beforeEach(e,t,a,i){return{player:m.getInstance(e),fX:t,fY:a,fZ:i}}}),[jm]=u({name:"OnPlayerClickPlayer",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:a}}}),[Km]=u({name:"OnPlayerDeath",beforeEach(e,t,a){return{player:m.getInstance(e),killer:m.getInstance(t)||N.PLAYER_ID,reason:a}}}),[Zm]=u({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}}}),[Xm]=u({name:"OnPlayerKeyStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newKeys:t,oldKeys:a}}}),[Ym]=u({name:"OnPlayerRequestClass",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[zm]=u({name:"OnPlayerRequestSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[$m]=u({name:"OnPlayerSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Jm]=u({name:"OnPlayerStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newState:t,oldState:a}}}),[Qm]=u({name:"OnPlayerSteamIn",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[qm]=u({name:"OnPlayerSteamOut",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[ep]=u({name:"OnPlayerTakeDamage",defaultValue:!1,beforeEach(e,t,a,i,n){return{player:m.getInstance(e),damage:m.getInstance(t)||N.PLAYER_ID,amount:a,weapon:i,bodyPart:n}}}),[tp]=u({name:"OnPlayerInteriorChange",beforeEach(e,t,a){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:a}}}),[ap]=u({name:"OnPlayerRequestDownload",beforeEach(e,t,a){return{player:m.getInstance(e),type:t,crc:a}}}),[ip]=u({name:"OnPlayerFinishedDownloading",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[np]=u({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 we=null;const X=new Map,ze=new Map;function ra(e){if(!e.isConnected()){X.has(e)&&clearInterval(X.get(e));return}let t=ze.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(X.get(e)),$e(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:a})=>{a===72&&(e[te].isAndroid=!1,X.has(e)&&clearInterval(X.get(e)),$e(e,!1))}).catch(()=>{}),t++,ze.set(e,t)}const[rp,sp]=u({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[lp,op]=u({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,a,i){return{player:e,pausedAt:t,now:a,diff:i}}}),[dp,cp]=u({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,a){return{player:e,newFps:t,oldFps:a}}}),[_p,$e]=u({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});aa(({player:e,next:t})=>{if(!we&&m.getInstances().length&&(we=setInterval(()=>{m.getInstances().filter(i=>{const n=i.getState()!==Pe.NONE;return!i.isPaused&&!i.isNpc()&&n}).forEach(i=>{Date.now()-i.lastUpdateTick>1e3&&(i.isPaused=!0,sp(i,i.lastUpdateTick))})},500)),e.isNpc())return e[te].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[te].isAndroid=!e.isUsingOfficialClient(),$e(e,e[te].isAndroid),t();ra(e);const a=setInterval(()=>ra(e),1e3);return X.set(e,a),t()}),ia(({player:e,next:t})=>(we&&m.getInstances().length<=1&&(clearInterval(we),we=null),X.has(e)&&(clearInterval(X.get(e)),X.delete(e),ze.delete(e)),t()));function hp(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,cp(e,n,i)}}na(({player:e,next:t})=>{if(!e.isNpc()){const a=Date.now();e.isPaused&&(e.isPaused=!1,op(e,e.lastUpdateTick,a,a-e.lastUpdateTick)),e.lastUpdateTick=a,hp(e)}return t()});const Je=Object.freeze({onConnect:aa,onDisconnect:ia,onPause:rp,onResume:lp,onUpdate:na,onText:Vm,onEnterExitModShop:Um,onClickMap:Wm,onClickPlayer:jm,onDeath:Km,onGiveDamage:Zm,onKeyStateChange:Xm,onRequestClass:Ym,onRequestSpawn:zm,onSpawn:$m,onStateChange:Jm,onStreamIn:Qm,onStreamOut:qm,onTakeDamage:ep,onInteriorChange:tp,onRequestDownload:ap,onFinishedDownloading:ip,onCheckResponse:ea,onCommandReceived:Tm,onCommandPerformed:Dm,onCommandError:wm,onCommandText:x.on,offCommandText:x.off,onDialogResponse:ta,onLocaleChange:xm,onCharsetChange:Mm,onFpsUpdate:dp,onWeaponShot:np,onAndroidCheck:_p,onCommandTextRaw:bm});L.onExit(({next:e})=>(Be.clear(),e()));const[up]=u({name:"OnNpcConnect",beforeEach(e){return{myPlayerId:e}}}),[mp]=u({name:"OnNpcDisconnect",beforeEach(e){return{reason:e}}}),[pp]=u({name:"OnNpcModeInit"}),[fp]=u({name:"OnNpcModeExit"}),[gp]=u({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:I.decodeFromBuf(t)}}}),[Sp]=u({name:"OnNPCFinishMove",beforeEach(e){return{npc:v.getInstance(e)}}}),[yp]=u({name:"OnNPCCreate",beforeEach(e){return{npc:v.getInstance(e)}}}),[Pp]=u({name:"OnNPCDestroy",beforeEach(e){return{npc:v.getInstance(e)}}}),[Ip]=u({name:"OnNPCWeaponStateChange",beforeEach(e,t,a){return{npc:v.getInstance(e),newState:t,oldState:a}}}),[Ep]=u({name:"OnNPCTakeDamage",beforeEach(e,t,a,i,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Ap]=u({name:"OnNPCGiveDamage",beforeEach(e,t,a,i,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Cp]=u({name:"OnNPCDeath",beforeEach(e,t,a){return{npc:v.getInstance(e),killer:t,reason:a}}}),[Tp]=u({name:"OnNpcSpawn",beforeEach(e){return{npc:v.getInstance(e)}}}),[Np]=u({name:"OnNpcRespawn",beforeEach(e){return{npc:v.getInstance(e)}}}),Dp=Object.freeze({onConnect:up,onDisconnect:mp,onModeInit:pp,onModeExit:fp,onClientMessage:gp,onFinishMove:Sp,onCreate:yp,onDestroy:Pp,onWeaponStateChange:Ip,onTakeDamage:Ep,onGiveDamage:Ap,onDeath:Cp,onSpawn:Tp,onRespawn:Np}),vp=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],wp=[[13,18,19,20,21,24],[1,3,4,5,6,7,13,17,19,20,142,143,144,145],[],[],[0,2,7,13,16,17,19,20,21],[0,1,14,18,19,20,21,23],[],[],[],[],[1,3,7,13,17,19,20,21,23,24],[],[],[],[],[1,3,7,17,18,19,23],[],[],[2,6,16,20,21],[],[1,3,4,5,19,21],[0,14,16,18,19,20,21,23],[7,13,17,19,20,21],[],[],[],[1,3,4,5,6,19,21],[],[],[],null,[],[],[],[],[],[1,3,6,7,13,17,19,20,21,22],[],[],[1,3,7,13,17,23,142,143,144,145],[],[],[],[],[],[],null,[],null,null,[],[],null,null,null,[],[],[],[],[],[],null,null,null,[],[],[],[],null,[],[],[],null,null,[],[],[],[6,7,17,18,19,20,21],[4,5,12,13,20,21,22,24],[],[],null,[],[],null,[],[],[],[],[0,2,4,5,6,13,16,18,19,20,24],[],[3,7,14,17,18,19,20,21,23,142,143,144,145],[0,4,5,6,16],null,[],[],[1,2,3,6,7,11,17,19,20,23,142,143],[],[],[],[13,19,20,21,24],[],[],[],[],[],[],[],[],null,null,[],[],[],[],[],[0,2,4,7,15,16,17,18,19,20,21],[2,3,7,16,17,18,19,20,23,142,143,144,145],[1,3,5,6,7,13,17,18,20,23,142,143,144,145],[],[],null,null,null,[],[],[],[1,7,14,15,17,18,20,21],[],[1,3,6,7,11,12,17,18,19,20,23],[],[],[],[],[100,101,106,122,123,124,125,126,127,178,179,180,185],[109,110,113,114,115,116,117,118,119,120,121],[103,104,105,107,108,128,181,182,183,184],null,null,[],[1,4,6,7,17,18,19,20,23,24,142,143,144,145],[],[14,15,18,19,20,21,144,145],[],[],[],[1,2,4,6,7,17,18,19,23,24,142,143,144,145],[0,3,16,18,19,20,21,142,143],[],[1,3,7,11,12,17,18,19,20,23,142,143,144,145],[1,3,4,5,6,18,19,20,23,142,143,144,145],[2,3,5,6,16,18,19,20,21,23],[],[],[],[],[],[],[88,89,90,91,92,93,94,95,163,164,165,166,167,168],[65,66,67,68,69,70,71,72,158,159,160,161,162,173],[26,27,28,29,30,31,32,33,138,139,140,141,169,170],[55,56,57,58,59,60,61,62,63,64,154,155,156,157],[34,35,36,37,38,39,40,41,146,147,148,149,171,172],[],[],[45,46,47,48,49,50,51,52,53,54,150,151,152,153],[],[102,129,130,131,132,133,186,187,188,189],[],null,null,[],[],[],[],[42,43,44,99,174,175,176,177],[134,135,136,137,190,191,192,193],[],[],[],[1,6,7,17,18,20,23],null,[],[],[],[0,1,2,3,6,7,13,14,15,16,17,18,19,20,21,22,23,24,142,143,144,145],null,[],[],[0,4,5,6,7,13,16,17,18,20,24,144,145],null,[],[],[],[],null,[],[],[],[],[4,5,6,7,13,17,18,20,22],[],[],[1,6,7,17,18,19,20,23,24,142,143,144,145],[],[],[],[],[],[],[],[]],Rp=(e,t)=>{if(!Qe(e))return!1;const a=wp[e-400];if(a===null)return!1;const i=t-1e3;return vp.includes(i)||a.includes(i)},Qe=e=>e>=400&&e<=611,Lp=(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};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,j.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===H.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++,j.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--,j.delete(this._id),this._id=-1}addComponent(t){if(this.id===-1)return 0;if(!Rp(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return Ll(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 bl(this.id,t)}getComponentInSlot(t){return Wl(this.id,t)}linkToInterior(t){return this.id===-1?0:Rl(this.id,t)}setVirtualWorld(t){return this.id===-1?0:Ql(this.id,t)}getVirtualWorld(){return this.id===-1?0:ql(this.id)}repair(){return this.id===-1?0:Kl(this.id)}setPos(t,a,i){return this.id===-1?!1:pl(this.id,t,a,i)}getPos(){return ml(this.id)}getHealth(){return Bl(this.id)}setHealth(t){return this.id===-1?0:Fl(this.id,t)}isPlayerIn(t){return this.id===-1?!1:ns(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 Fr(t.id,this.id,a)}getZAngle(){return fl(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 Vl(this.id,t)}changeColors(t,a){return this.id===-1?0:Ol(this.id,t,a)}setVelocity(t,a,i){return this.id===-1?!1:Xl(this.id,t,a,i)}getVelocity(){return Zl(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return Me(a,i,n)*t}setAngularVelocity(t,a,i){return this.id===-1?!1:Yl(this.id,t,a,i)}getDamageStatus(){return zl(this.id)}updateDamageStatus(t,a,i,n){return $l(this.id,t,a,i,n)}getDistanceFromPoint(t,a,i){return Sl(this.id,t,a,i)}getModel(){return Ul(this.id)}static getModelInfo(t,a){return Jl(t,a)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return gl(this.id)}setRespawn(){return this.id===-1?0:wl(this.id)}isStreamedIn(t){return this.id===-1?!1:ul(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:Dl(this.id,t,a,i,n)}getParamsCarDoors(){return Nl(this.id)}getParamsCarWindows(){return vl(this.id)}setParamsEx(t,a,i,n,r,s,l){return this.id===-1?0:El(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]=Al(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:Cl(this.id)}setParamsForPlayer(t,a,i){return this.id===-1?0:Pl(this.id,t.id,a,i)}isTrailerAttached(){return this.id===-1?!1:Ml(this.id)}changePaintjob(t){return this.id===-1||!Lp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),Gl(this.id,t),1)}attachTrailer(t){return this.id===-1?0:xl(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&kl(this.id)}getTrailer(){return C.getInstance(Hl(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return dl(this.id)}getTrainSpeed(){return this.id===-1?0:ol(this.id)}getHydraReactorAngle(){return this.id===-1?0:ll(this.id)}getLandingGearState(){return this.id===-1?0:sl(this.id)}getSirenState(){return this.id===-1?0:rl(this.id)}getDriver(){return J.get(il(this.id))}getLastDriver(){return J.get(al(this.id))}isSirenEnabled(){return el(this.id)}toggleSirenEnabled(t){return this.id===-1?0:Qs(this.id,t)}setParamsSirenState(t){return this.id===-1?0:qs(this.id,t)}isDead(){return this.id===-1?!0:zs(this.id)}setDead(t){return this.id===-1?!1:$s(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:Js(this.id,t)}getRespawnTick(){return this.id===-1?0:Xs(this.id)}setRespawnTick(t){return this.id===-1?!1:Ys(this.id,t)}isOccupied(){return this.id===-1?!1:Zs(this.id)}hasBeenOccupied(){return this.id===-1?!1:Ks(this.id)}getOccupiedTick(){return this.id===-1?0:Ws(this.id)}setOccupiedTick(t){return this.id===-1?0:js(this.id,t)}getCab(){return this.id===-1?0:Us(this.id)}getRespawnDelay(){return this.id===-1?0:Vs(this.id)}setRespawnDelay(t){return this.id===-1?0:Hs(this.id,t)}getNumberPlate(){return Ms(this.id)}getInterior(){return this.id===-1?0:ks(this.id)}getPaintjob(){return this.id===-1?-1:xs(this.id)}getColors(){return Bs(this.id)}setSpawnInfo(t,a,i,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!Qe(t)?0:Fs(this.id,t,a,i,n,r,E(s),E(l),o,d)}getSpawnInfo(){return Gs(this.id)}getRandomColorPair(){return nt(this.getModel())}show(){return this.id===-1?!1:io(this.id)}hide(){return this.id===-1?!1:no(this.id)}isHidden(){return this.id===-1?!1:ro(this.id)}getVehicleOccupant(t){return ho(this.id,t)}getVehicleMaxPassengers(){return rt(this.getModel())}countVehicleOccupants(){return uo(this.getModel())}static getVehicleMaxPassengers=rt;static getRandomColorPair=nt;static getComponentType=jl;static colorIndexToColor=cl;static isValid=eo;static getModelsUsed=nl;static getModelCount=tl;static getInstance(t){return j.get(t)}static getInstances(){return[...j.values()]}static __inject_AddStaticVehicle=to;static __inject_AddStaticVehicleEx=ao;static __inject_CreateVehicle=_l;static __inject_DestroyVehicle=hl}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),j.clear(),e()));const[bp]=u({name:"OnVehicleDamageStatusUpdate",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[Op]=u({name:"OnVehicleDeath",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[Gp]=u({name:"OnVehicleMod",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:a}}}),[Fp]=u({name:"OnVehiclePaintjob",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:a}}}),[Bp]=u({name:"OnVehicleRespray",beforeEach(e,t,a,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[a,i]}}}),[xp]=u({name:"OnVehicleSirenStateChange",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!a}}}),[kp]=u({name:"OnVehicleSpawn",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[Mp]=u({name:"OnVehicleStreamIn",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Hp]=u({name:"OnVehicleStreamOut",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Vp]=u({name:"OnPlayerEnterVehicle",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!a}}}),[Up]=u({name:"OnPlayerExitVehicle",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Wp]=u({name:"OnNpcEnterVehicle",beforeEach(e,t){return{vehicle:C.getInstance(e),seatId:t}}}),[jp]=u({name:"OnNpcExitVehicle"}),[Kp]=u({name:"OnTrailerUpdate",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Zp]=u({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}}}),Xp=Object.freeze({onDamageStatusUpdate:bp,onDeath:Op,onMod:Gp,onPaintjob:Fp,onRespray:Bp,onSirenStateChange:xp,onSpawn:kp,onStreamIn:Mp,onStreamOut:Hp,onPlayerEnter:Vp,onPlayerExit:Up,onNpcEnter:Wp,onNpcExit:jp,onTrailerUpdate:Kp,onUnoccupiedUpdate:Zp});class Yp{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return Vi()}static getPlayerNetworkStats(t){return Hi(t.id)}static getBytesReceived(t){return wi(t.id)}static getBytesSent(t){return Li(t.id)}static getConnectionStatus(t){return Gi(t.id)}static getConnectedTime(t){return Di(t.id)}static getIpPort(t){return Fi(t.id)}static getMessagesReceived(t){return vi(t.id)}static getMessagesRecvPerSecond(t){return bi(t.id)}static getMessagesSent(t){return Ri(t.id)}static getPacketLossPercent(t){return Oi(t.id)}}class zp{_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){ja(t)}static has(t,a){return Tn(t.id,a)}forAll(t="win1252"){Wa(I.encodeToBuf(I.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,a="win1252"){Cn(t.id,I.encodeToBuf(I.convertSpecialChar(this.text),a),this.time,this.style)}hideForPlayer(t){return Dn(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===H.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||No(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===H.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 Do(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 vo(this.id,t,a),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return bo(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");Oo(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 wo(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return Ro(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:Po(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}:Eo(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return Ao(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 Co(this.id,t,a)}static isValid=Lo;static getInstance(t){return Ce.get(t)}static getInstances(){return[...Ce.values()]}static getInstanceByPlayer(t){return this.getInstances().find(a=>a.id===Go(t.id))}}L.onExit(({next:e})=>(fe.getInstances().forEach(t=>t.destroy()),Ce.clear(),e()));const[$p]=u({name:"OnPlayerExitedMenu",beforeEach(e){return{player:m.getInstance(e)}}}),[Jp]=u({name:"OnPlayerSelectedMenuRow",beforeEach(e,t){const a=m.getInstance(e),i=fe.getInstanceByPlayer(a);return{player:a,menu:i,row:t}}}),Qp=Object.freeze({onPlayerExited:$p,onPlayerSelectedRow:Jp});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===H.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=qo(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===H.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=Wo(a,i,n,r),Ee.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||ed(t.id,this.id),Ae.delete(this.id)):(A.skip||jo(this.id),Ee.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 Zo(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)td(i.id,this.id,E(t));else if(a)Ko(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 Yo(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)ad(a.id,this.id);else if(t)Xo(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 $o(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)id(i.id,this.id,E(a));else if(t)zo(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)nd(a.id,this.id);else if(t)Jo(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?sd(a.id,this.id):Bo(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?ld(a.id,this.id):xo(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?od(a.id,this.id):ko(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?dd(a.id,this.id):Mo(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?cd(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?_d(t.id,this.id):Vo(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?hd(a.id,this.id,t):Uo(this.id,t),this}static isValidPlayer=rd;static isValidGlobal=Fo;static getInstance(t,a){return a?Ee.get(t):Ae.get(t)}static getInstances(t){return t?[...Ee.values()]:[...Ae.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),Ee.clear(),Ae.clear(),e()));const[qp]=u({name:"OnPlayerEnterGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[ef]=u({name:"OnPlayerLeaveGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[tf]=u({name:"OnPlayerEnterPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[af]=u({name:"OnPlayerLeavePlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[nf]=u({name:"OnPlayerClickGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[rf]=u({name:"OnPlayerClickPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),sf=Object.freeze({onPlayerEnterGlobal:qp,onPlayerLeaveGlobal:ef,onPlayerEnterPlayer:tf,onPlayerLeavePlayer:af,onPlayerClickGlobal:nf,onPlayerClickPlayer:rf}),[de]=u({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[ce]=u({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[lf]=u({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class S{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=Iu;static setTickRate=Eu;static getPlayerTickRate(t){return Au(t.id)}static setPlayerTickRate(t,a=50){return Cu(t.id,a)}static toggleChunkStream=Tu;static isToggleChunkStream=Nu;static getChunkTickRate(t,a=-1){return a instanceof m?Vt(t,a.id):Vt(t,a)}static setChunkTickRate(t,a,i=-1){return i instanceof m?Ut(t,a,i.id):Ut(t,a,i)}static getChunkSize=Du;static setChunkSize=vu;static getMaxItems=wu;static setMaxItems=Ru;static getVisibleItems(t,a=-1){return a instanceof m?Wt(t,a.id):Wt(t,a)}static setVisibleItems(t,a,i=-1){return i instanceof m?jt(t,a,i.id):jt(t,a,i)}static getRadiusMultiplier(t,a=-1){return a instanceof m?Kt(t,a.id):Kt(t,a)}static setRadiusMultiplier(t,a,i=-1){return i instanceof m?Zt(t,i.id):Zt(t,a,i)}static getTypePriority=Lu;static setTypePriority=bu;static getCellDistance=Ou;static setCellDistance=Gu;static getCellSize=Fu;static setCellSize=Bu;static toggleItemStatic=xu;static isToggleItemStatic=ku;static toggleItemInvAreas=Mu;static isToggleItemInvAreas=Hu;static toggleItemCallbacks=Vu;static isToggleItemCallbacks=Uu;static toggleErrorCallback=Wu;static isToggleErrorCallback=ju;static amxUnloadDestroyItems=Ku;static processActiveItems=Zu;static toggleIdleUpdate(t,a){return Xu(t.id,a)}static isToggleIdleUpdate(t){return Yu(t.id)}static toggleCameraUpdate(t,a){return zu(t.id,a)}static isToggleCameraUpdate(t){return $u(t.id)}static toggleItemUpdate(t,a,i){return Ju(t.id,a,i)}static isToggleItemUpdate(t,a){return Qu(t.id,a)}static getLastUpdateTime(){return qu()}static update(t,a=-1){return em(t.id,a)}static updateEx(t,a,i,n,r,s,l,o,d){return tm(t.id,a,i,n,r,s,l,o,d)}static getDistanceToItem=Dh;static toggleItem(t,a,i,n){return vh(t.id,a,i,n)}static isToggleItem(t,a,i){return wh(t.id,a,i)}static toggleAllItems(t,a,i,n=[-1]){return Rh(t.id,a,i,n)}static getItemInternalID(t,a,i){return Lh(t.id,a,i)}static getItemStreamerID(t,a,i){return bh(t.id,a,i)}static isItemVisible(t,a,i){return Oh(t.id,a,i)}static destroyAllVisibleItems(t,a,i=1){return Gh(t.id,a,i)}static countVisibleItems(t,a,i=1){return Fh(t.id,a,i)}static destroyAllItems=Bh;static countItems=xh;static getNearbyItems=kh;static getAllVisibleItems(t,a,i){return Mh(t.id,a,i)}static getItemPos=Hh;static setItemPos=Vh;static getItemOffset=Uh;static setItemOffset=Wh;static getFloatData=ah;static setFloatData=ih;static getIntData=nh;static setIntData=rh;static getArrayData=sh;static setArrayData=lh;static isInArrayData=oh;static appendArrayData=dh;static removeArrayData=ch;static getArrayDataLength=Ht;static getUpperBound=_h;static onPluginError=lf}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,ie.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:h,color:p,extended:g}=this.sourceInfo;if(h<0||h>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=Fe.LOCAL,a??=D.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,h,E(p),t,a,i,n,r,s,l),ie.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=hh(o,d,c,h,E(p),i,n,r,a,t,s,l),ie.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||uh(this.id),ie.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 S.toggleItemCallbacks(P.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.MAP_ICON,this.id)}static isValid=mh;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.MAP_ICON,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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})=>(_e.getInstances().forEach(t=>t.destroy()),ie.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}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.MAP_ICON?df(a,_e.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.MAP_ICON?_f(a,_e.getInstance(t)):i());const hf=Object.freeze({onStreamIn:of,onStreamOut:cf});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:h,extended:p}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=D.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,h,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,h,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 S.toggleItemCallbacks(P.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.PICKUP,this.id)}static isValid=pu;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.PICKUP,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return me.get(t)}static getInstances(){return[...me.values()]}static __inject_CreateDynamicPickup=uu;static __inject_CreateDynamicPickupEx=fh;static __inject_DestroyDynamicPickup=mu}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),me.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}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.PICKUP?mf(a,k.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.PICKUP?ff(a,k.getInstance(t)):i());const[gf]=u({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:k.getInstance(t)}}}),Sf=Object.freeze({onPlayerPickUp:gf,onStreamIn:uf,onStreamOut:pf});class Y{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=Y.getInstance(t);if(a)return a;this._id=t,ae.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:h}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=D.CP_SD,s??=0,h?(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=gh(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=J_(o,d,c,l,a,i,n,t,r,s)),ae.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||kt(this.id),ae.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:Y.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:eh(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.CP,this.id)}static isValid=Mt;static togglePlayerAll(t,a){return q_(t.id,a)}static getPlayerVisible(t){return ae.get(th(t.id))}static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.CP,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ae.get(t)}static getInstances(){return[...ae.values()]}}L.onExit(({next:e})=>(Y.getInstances().forEach(t=>t.destroy()),ae.clear(),e()));const[yf,Pf]=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}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.CP?Pf(a,Y.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.CP?Ef(a,Y.getInstance(t)):i());const[Af]=u({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:Y.getInstance(t)}}}),[Cf]=u({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:Y.getInstance(t)}}}),Tf=Object.freeze({onPlayerEnter:Af,onPlayerLeave:Cf,onStreamIn:yf,onStreamOut:If});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,ne.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: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 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,h,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=fu(l,d,c,h,p,g,f,o,a,i,n,t,r,s)),ne.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||kt(this.id),ne.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("[StreamerRaceCP]: Unable to toggle the player before create");return gu(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 ne.get(Pu(t.id))}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.RACE_CP,this.id)}static isValid=Mt;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.RACE_CP,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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})=>(z.getInstances().forEach(t=>t.destroy()),ne.clear(),e()));const[Nf,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}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.RACE_CP?Df(a,z.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.RACE_CP?wf(a,z.getInstance(t)):i());const[Rf]=u({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:z.getInstance(t)}}}),[Lf]=u({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:z.getInstance(t)}}}),bf=Object.freeze({onPlayerEnter:Rf,onPlayerLeave:Lf,onStreamIn:Nf,onStreamOut:vf});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:h,invulnerable:p,health:g,extended:f}=this.sourceInfo;return t??=D.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=Nh(l,o,d,c,h,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=s_(l,o,d,c,h,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||l_(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:d_(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return c_(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return __(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 h_(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 u_(this.id)}getFacingAngle(){return m_(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return p_(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return f_(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return g_(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 P_(this.id,t)}getPlayerTarget(t){const a=E_(t.id);return Q.get(a)}getPlayerCameraTarget(t){const a=A_(t.id);return Q.get(a)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return Ls(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:bs(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Os(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return C_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.ACTOR,this.id)}static isValid=o_;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.ACTOR,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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[Of]=u({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[Gf]=u({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[Ff]=u({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}}}),Bf=Object.freeze({onStreamIn:Of,onStreamOut:Gf,onPlayerGiveDamage:Ff});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:h,color:p,drawDistance:g,x:f,y,z:w,extended:O}=this.sourceInfo;return t??=N.PLAYER_ID,a??=N.VEHICLE_ID,n??=D.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=pm(h,E(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=mm(c||"utf8",h,E(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||n_(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:S.getIntData(P.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 gm(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),fm(this.id,E(t),a,n)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.TEXT_3D_LABEL,this.id)}setOffsets(t,a,i){if(this.id===-1)return 0;const n=S.setFloatData(P.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_X,t);return S.setFloatData(P.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_Y,a),S.setFloatData(P.TEXT_3D_LABEL,this.id,W.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=S.setIntData(P.TEXT_3D_LABEL,this.id,W.ATTACHED_PLAYER,r);return r!==N.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=S.setIntData(P.TEXT_3D_LABEL,this.id,W.ATTACHED_VEHICLE,r);return r!==N.VEHICLE_ID&&this.setOffsets(a,i,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=r_;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.TEXT_3D_LABEL,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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[xf,kf]=u({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Mf,Hf]=u({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.TEXT_3D_LABEL?kf(a,he.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.TEXT_3D_LABEL?Hf(a,he.getInstance(t)):i());const Vf=Object.freeze({onStreamIn:xf,onStreamOut:Mf});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,K.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:h,rx:p,ry:g,rz:f,extended:y}=this.sourceInfo;return t??=D.OBJECT_SD,a??=D.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=ph(o,d,c,h,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=jh(o,d,c,h,p,g,f,i,n,r,t,a,s,l)),K.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||Kh(this.id),K.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:S.getIntData(P.OBJECT,this._id,W.MODEL_ID)}getPos(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get position before create");return Xh(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return Yh(this.id,t,a,i)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return zh(this.id)}setRot(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return $h(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(),Jh(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:qh(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return eu(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 tu(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 au(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 iu(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(),nu(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:ru(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:su(this.id,t)}getMaterial(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material before create");return ym(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 lu(this.id,t,a,i,n,E(r))}isMaterialTextUsed(t){return this.id===-1?!1:ou(this.id,t)}removeMaterialText(t){return this.isMaterialTextUsed(t)?du(this.id,t):0}getMaterialText(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material text before create");return Pm(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,a,i,n=We.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),Sm(t||"utf8",this.id,a,i,n,r,s,l,E(o),E(d),c)}getPlayerCameraTarget(t){const a=cu(t.id);if(a!==N.OBJECT_ID)return K.get(a)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.OBJECT,this.id)}setNoCameraCollision(){return _u(this.id)}getNoCameraCollision(){return hu(this.id)}static isValid=Zh;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.OBJECT,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return K.get(t)}static getInstances(){return[...K.values()]}}L.onExit(({next:e})=>(B.getInstances().forEach(t=>t.destroy()),K.clear(),e()));const[Uf,Wf]=u({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[jf,Kf]=u({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.OBJECT?Wf(a,B.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.OBJECT?Kf(a,B.getInstance(t)):i());const[Zf]=u({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:B.getInstance(e)}}}),[Xf]=u({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}}}),[Yf]=u({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}}}),[zf]=u({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}}}),[$f]=u({name:"OnPlayerEditAttachedObject",defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o,d,c,h,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:h,fScaleY:p,fScaleZ:g}}}),Jf=Object.freeze({onMoved:Zf,onPlayerEdit:Xf,onPlayerSelect:Yf,onPlayerShoot:zf,onPlayerEditAttached:$f,onStreamIn:Uf,onStreamOut:jf});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=Ph(s,l,o,t,a,i)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:h}=this.sourceInfo;this._id=Ch(s,l,o,d,c,h,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=Ah(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=Eh(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:h}=this.sourceInfo;this._id=w_(s,l,o,d,c,h,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=N_(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=R_(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=v_(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=D_(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||L_(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 O_(this.id)}getPolygonPoints(){return G_(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 Gt(this.id)}isPlayerIn(t,a=!1){return this.id===-1?!1:F_(t.id,this.id,a)}static isPlayerInAny(t,a=!1){return B_(t.id,a)}isAnyPlayerIn(t=!1){return this.id===-1?!1:x_(this.id,t)}static isAnyPlayerInAny(t=!1){return k_(t)}static getPlayerAreas(t){return G.getPlayerAreasNumber(t)?M_(t.id).areas.map(a=>q.get(a)):[]}static getPlayerAreasNumber(t){return Ft(t.id)}isPointIn(t,a,i){return this.id===-1?!1:H_(this.id,t,a,i)}static isPointInAny(t,a,i){return V_(t,a,i)}isLineIn(t,a,i,n,r,s){return this.id===-1?!1:U_(this.id,t,a,i,n,r,s)}static isLineInAny(t,a,i,n,r,s){return W_(t,a,i,n,r,s)}static getForPoint(t,a,i){return G.getNumberForPoint(t,a,i)?j_(t,a,i).areas.map(n=>G.getInstance(n)):[]}static getNumberForPoint(t,a,i){return Bt(t,a,i)}static getForLine(t,a,i,n,r,s){return G.getNumberForLine(t,a,i,n,r,s)?K_(t,a,i,n,r,s).areas.map(l=>q.get(l)):[]}static getNumberForLine(t,a,i,n,r,s){return xt(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 Z_(this.id,t.id,Ge.DYNAMIC,N.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 X_(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 Y_(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 z_(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:$_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.AREA,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.AREA,this.id)}static isValid=b_;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.AREA,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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[Qf,qf]=u({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[eg,tg]=u({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.AREA?qf(a,G.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.AREA?tg(a,G.getInstance(t)):i());const[ag]=u({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),[ig]=u({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),ng=Object.freeze({onStreamIn:Qf,onStreamOut:eg,onPlayerEnter:ag,onPlayerLeave:ig});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=I.encodeToBuf(I.convertSpecialChar(i),r);if(n){if(_.getInstances(!1).length===H.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});Ne.set(this.id,this)}else{if(_.getInstances(!0).length===H.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),Ne.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(Ie.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(Ie.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(Ie.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=I.encodeToBuf(I.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):Ne.get(t)}static getInstances(t){return t?[...Te.values()]:[...Ne.values()]}static __inject__TextDrawCreate=Gd;static __inject__CreatePlayerTextDraw=Cc;static __inject__TextDrawDestroy=Fd;static __inject__PlayerTextDrawDestroy=Tc;static __inject__TextDrawFont=Kd;static __inject__PlayerTextDrawFont=Fc;static __inject__TextDrawColor=Md;static __inject__PlayerTextDrawColor=wc;static __inject__TextDrawBoxColor=Vd;static __inject__PlayerTextDrawBoxColor=Lc;static __inject__TextDrawBackgroundColor=jd;static __inject__PlayerTextDrawBackgroundColor=Gc;static __inject__TextDrawAlignment=kd;static __inject__PlayerTextDrawAlignment=vc;static __inject__TextDrawLetterSize=Bd;static __inject__PlayerTextDrawLetterSize=Nc;static __inject__TextDrawSetOutline=Wd;static __inject__PlayerTextDrawSetOutline=Oc;static __inject__TextDrawSetPreviewModel=qd;static __inject__PlayerTextDrawSetPreviewModel=Vc;static __inject__TextDrawSetPreviewRot=ec;static __inject__PlayerTextDrawSetPreviewRot=Uc;static __inject__TextDrawSetPreviewVehicleColors=tc;static __inject__PlayerTextDrawSetPreviewVehicleColors=Wc;static __inject__TextDrawSetProportional=Zd;static __inject__PlayerTextDrawSetProportional=Bc;static __inject__TextDrawSetSelectable=Xd;static __inject__PlayerTextDrawSetSelectable=xc;static __inject__TextDrawSetShadow=Ud;static __inject__PlayerTextDrawSetShadow=bc;static __inject__PlayerTextDrawSetString=Hc;static __inject__TextDrawSetStringForPlayer=Od;static __inject__TextDrawSetString=Qd;static __inject__TextDrawTextSize=xd;static __inject__PlayerTextDrawTextSize=Dc;static __inject__PlayerTextDrawUseBox=Rc;static __inject__TextDrawUseBox=Hd;static __inject__PlayerTextDrawShow=kc;static __inject__TextDrawShowForPlayer=Yd;static __inject__PlayerTextDrawHide=Mc;static __inject__TextDrawHideForPlayer=zd;static __inject__TextDrawShowForAll=$d;static __inject__TextDrawHideForAll=Jd;static __inject__IsValidPlayerTextDraw=nc;static __inject__IsValidTextDraw=ud;static __inject__IsPlayerTextDrawVisible=rc;static __inject__IsTextDrawVisibleForPlayer=md;static __inject__PlayerTextDrawGetString=sc;static __inject__TextDrawGetString=pd;static __inject__PlayerTextDrawSetPos=lc;static __inject__TextDrawSetPos=fd;static __inject__PlayerTextDrawGetLetterSize=oc;static __inject__TextDrawGetLetterSize=gd;static __inject__PlayerTextDrawGetTextSize=dc;static __inject__TextDrawGetTextSize=Sd;static __inject__PlayerTextDrawGetPos=cc;static __inject__TextDrawGetPos=yd;static __inject__PlayerTextDrawGetColor=_c;static __inject__TextDrawGetColor=Pd;static __inject__PlayerTextDrawGetBoxColor=hc;static __inject__TextDrawGetBoxColor=Id;static __inject__PlayerTextDrawGetBackgroundColor=uc;static __inject__TextDrawGetBackgroundColor=Ed;static __inject__PlayerTextDrawGetShadow=mc;static __inject__TextDrawGetShadow=Ad;static __inject__PlayerTextDrawGetOutline=pc;static __inject__TextDrawGetOutline=Cd;static __inject__PlayerTextDrawGetFont=fc;static __inject__TextDrawGetFont=Td;static __inject__PlayerTextDrawIsBox=gc;static __inject__TextDrawIsBox=Nd;static __inject__PlayerTextDrawIsProportional=Sc;static __inject__TextDrawIsProportional=Dd;static __inject__PlayerTextDrawIsSelectable=yc;static __inject__TextDrawIsSelectable=vd;static __inject__PlayerTextDrawGetAlignment=Pc;static __inject__TextDrawGetAlignment=wd;static __inject__PlayerTextDrawGetPreviewModel=Ic;static __inject__TextDrawGetPreviewModel=Rd;static __inject__PlayerTextDrawGetPreviewRot=Ec;static __inject__TextDrawGetPreviewRot=Ld;static __inject__TextDrawGetPreviewVehicleColors=bd;static __inject__PlayerTextDrawGetPreviewVehicleColors=Ac}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Te.clear(),Ne.clear(),e()));const[rg]=u({name:"OnPlayerClickTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===N.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[sg]=u({name:"OnPlayerClickPlayerTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===N.TEXT_DRAW?t:_.getInstance(t,!1)}}}),lg=Object.freeze({onPlayerClickGlobal:rg,onPlayerClickPlayer:sg});function og(e,t){return(e&t)===t}function dg(e,t,a){return(e&a)===a&&(t&a)!==a}function cg(e,t){return!!(e&t)}function _g(e,t,a){return(e&a)!==a&&(t&a)===a}function hg(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]}export{lt as ArtworkEnum,Pt as BodyPartsEnum,It as BoneIdsEnum,wt as BulletHitTypesEnum,ye as CameraCutStylesEnum,yt as CameraModesEnum,Ct as CarModTypeEnum,ot as ClickSourcesEnum,ct as ConnectionStatusEnum,Ue as DamageDeathReasonEnum,R as Dialog,He as DialogStylesEnum,he as Dynamic3DTextLabel,Vf as Dynamic3DTextLabelEvent,ee as DynamicActor,Bf as DynamicActorEvent,G as DynamicArea,ng as DynamicAreaEvent,Tf as DynamicCheckPointEvent,Y as DynamicCheckpoint,_e as DynamicMapIcon,hf as DynamicMapIconEvent,B as DynamicObject,Jf as DynamicObjectEvent,k as DynamicPickup,Sf as DynamicPickupEvent,z as DynamicRaceCP,bf as DynamicRaceCPEvent,V as ERecordStatus,W as E_STREAMER,dt as EditResponseTypesEnum,gt as FightingStylesEnum,Et as ForceSyncEnum,L as GameMode,zp as GameText,b as GangZone,sf as GangZoneEvent,I as I18n,N as InvalidEnum,_t as KeysEnum,H as LimitsEnum,Fe as MapIconStyles,St as MapIconStylesEnum,ht as MarkerModesEnum,Ot as MaterialTextAlign,We as MaterialTextSizes,fe as Menu,Qp as MenuEvent,ut as NPCPlaybackEnum,Yp as NetStats,v as Npc,Dp as NpcEvent,pt as ObjectMaterialAlignmentEnum,mt as ObjectMaterialTextSizeEnum,m as Player,Je as PlayerEvent,Pe as PlayerStateEnum,Lt as RecordTypesEnum,ft as SelectObjectTypesEnum,Ve as SpecialActionsEnum,be as SpectateModesEnum,S as Streamer,bt as StreamerAreaTypes,D as StreamerDistances,P as StreamerItemTypes,Oe as StreamerMiscellaneous,Ge as StreamerObjectTypes,_ as TextDraw,At as TextDrawAlignEnum,lg as TextDrawEvent,Ie as TextDrawFontsEnum,C as Vehicle,Xp as VehicleEvent,Nt as VehicleModelInfoEnum,Tt as VehicleParamsEnum,Dt as WeaponEnum,vt as WeaponSkillsEnum,Rt as WeaponStatesEnum,qt as animateLib,u as defineEvent,hg as defineHooks,Bm as getAnimateDurationByLibName,og as isHolding,dg as isPressed,cg as isPressing,_g as isReleased,Xe as isValidAnimateLib,Ye as isValidAnimateName,E as rgba,Pa as useTrigger,Ia as withTriggerOptions};
1
+ import pi from"node:util";import fi from"iconv-lite";function dt(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 gi(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 Me(e){return e==="__proto__"}function Ie(e,t){const i=Object.keys(t);for(let a=0;a<i.length;a++){const n=i[a];if(Me(n))continue;const r=t[n],s=e[n];Array.isArray(r)?Array.isArray(s)?e[n]=Ie(s,r):e[n]=Ie([],r):dt(r)?dt(s)?e[n]=Ie(s,r):e[n]=Ie({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function Pi(e,t){const i={...e};for(let a=0;a<t.length;a++){const n=t[a];delete i[n]}return i}const Si=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function yi(e){return Array.from(e.match(Si)??[])}function Ke(e){return yi(e).map(i=>i.toLowerCase()).join("_")}function Ii(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function Ei(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function Ai(e){const t=[],i=e.length;if(i===0)return t;let a=0,n="",r="",s=!1;for(e.charCodeAt(0)===46&&(t.push(""),a++);a<i;){const l=e[a];r?l==="\\"&&a+1<i?(a++,n+=e[a]):l===r?r="":n+=l:s?l==='"'||l==="'"?r=l:l==="]"?(s=!1,t.push(n),n=""):n+=l:l==="["?(s=!0,n&&(t.push(n),n="")):l==="."?n&&(t.push(n),n=""):n+=l,a++}return n&&t.push(n),t}function Ze(e,t,i){if(e==null)return i;switch(typeof t){case"string":{if(Me(t))return i;const a=e[t];return a===void 0?Ii(t)?Ze(e,Ai(t),i):i:a}case"number":case"symbol":{typeof t=="number"&&(t=Ei(t));const a=e[t];return a===void 0?i:a}default:{if(Array.isArray(t))return Ci(e,t,i);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),Me(t))return i;const a=e[t];return a===void 0?i:a}}}function Ci(e,t,i){if(t.length===0)return i;let a=e;for(let n=0;n<t.length;n++){if(a==null||Me(t[n]))return i;a=a[t[n]]}return a===void 0?i:a}const{encode:Ni,decode:Ti,encodingExists:Di}=fi;function vi(e){return e instanceof Buffer}class I{constructor(t,i){this.defaultLocale=t,this.locales=i,this.defaultLocale=Ke(t),this.locales=I.snakeLocaleKeys(i)}addLocales=t=>{Ie(this.locales,I.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=Pi(this.locales,t)};$t=(t,i,a=this.defaultLocale)=>{const n=this.locales[Ke(a)],r=Ze(this.locales[this.defaultLocale],t),s=Ze(n,t,r);if(s===void 0)throw new Error(`[i18n]: cannot find ${a}["${t}"]`);if(typeof s!="string")return JSON.stringify(s);let l=s;return i&&i.length&&(l=pi.format(l,...i)),l};static isValidate(t){if(!Di(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,i){return I.isValidate(i),[...Ni(t,i),0]}static decodeFromBuf(t,i="utf8"){I.isValidate(i);const a=vi(t)?t:Buffer.from(I.getValidStr(t));return Ti(a,i)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return gi(t,(i,a)=>Ke(a))}static convertSpecialChar(t){const i={\u00E0:"\x97",\u00E1:"\x98",\u00E2:"\x99",\u00E4:"\x9A",\u00C0:"\x80",\u00C1:"\x81",\u00C2:"\x82",\u00C4:"\x83",\u00E8:"\x9D",\u00E9:"\x9E",\u00EA:"\x9F",\u00EB:"\xA0",\u00C8:"\x86",\u00C9:"\x87",\u00CA:"\x88",\u00CB:"\x89",\u00EC:"\xA1",\u00ED:"\xA2",\u00EE:"\xA3",\u00EF:"\xA4",\u00CC:"\x8A",\u00CD:"\x8B",\u00CE:"\x8C",\u00CF:"\x8D",\u00F2:"\xA5",\u00F3:"\xA6",\u00F4:"\xA7",\u00F6:"\xA8",\u00D2:"\x8E",\u00D3:"\x8F",\u00D4:"\x90",\u00D6:"\x91",\u00F9:"\xA9",\u00FA:"\xAA",\u00FB:"\xAB",\u00FC:"\xAC",\u00D9:"\x92",\u00DA:"\x93",\u00DB:"\x94",\u00DC:"\x95",\u00F1:"\xAE",\u00D1:"\xAD","\xA1":"@","\xBF":"\xAF","`":"\xB1"};return t.split("").map(a=>a in i?i[a]:a).join("")}}const F=new Map,ct=new Map;function wi(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function _t(e,t,...i){const{defaultValue:a=!0,name:n,beforeEach:r,afterEach:s,throwOnError:l=!1}=e,o=F.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 wi(p(),a)}function u(e){const{name:t,identifier:i,isNative:a=!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 h=c.indexOf(o.skipToNext);h>-1&&(d=h)}}return _t(e,d,...o.args)}return _t(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 h=F.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&&F.delete(t),h.length}}const s=[r,n];return a&&(typeof i<"u"&&samp.registerEvent(t,i),samp.on(t,n)),ct.set(t,n),s}function Ri(e){return ct.get(e)}function Li(e){return Object.assign(e,{__trigger__:!0})}const bi=e=>!!samp.callNative("IsValidNickName","s",e),Oi=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Gi=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Fi=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),Bi=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),xi=e=>!!samp.callNative("IsValidServerRule","s",e),ki=e=>!!samp.callNative("RemoveServerRule","s",e),Mi=e=>{samp.callNative("AllowAdminTeleport","i",e)},Vi=()=>!!samp.callNative("IsAdminTeleportAllowed",""),Hi=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Ui=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),Wi=()=>!!samp.callNative("AreAllAnimationsEnabled",""),ji=e=>{samp.callNative("EnableAllAnimations","i",e)},Ki=e=>{const[t,i]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:i}},Zi=e=>samp.callNative("GetConsoleVarAsInt","s",e),Xi=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),Yi=()=>samp.callNative("GetWeather",""),zi=e=>samp.callNative("GetServerRuleFlags","s",e),$i=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Ji=e=>!!samp.callNative("SetModeRestartTime","f",e),Qi=()=>samp.callNativeFloat("GetModeRestartTime",""),qi=(e,t,i)=>samp.callNative("GameTextForAll","aii",e,t,i),ea=e=>{samp.callNative("HideGameTextForAll","i",e)},ta=(e,t,i)=>samp.callNative("SendDeathMessage","iii",e,t,i),ia=()=>samp.callNative("GetMaxPlayers",""),Xe=(e,t,i)=>Math.sqrt(e*e+t*t+i*i),aa=e=>samp.callNative("SetGameModeText","s",e),na=e=>samp.callNative("ShowNameTags","i",e),ra=e=>samp.callNative("ShowPlayerMarkers","i",e),sa=e=>samp.callNative("SetWorldTime","i",e),la=()=>samp.callNative("GetWorldTime",""),oa=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),da=e=>samp.callNative("SetWeather","i",e),ca=()=>samp.callNativeFloat("GetGravity",""),_a=e=>samp.callNative("SetGravity","f",e),ha=(e,t,i,a,n)=>samp.callNative("CreateExplosion","fffif",e,t,i,a,n),ua=e=>samp.callNative("EnableZoneNames","i",e),ma=()=>!!samp.callNative("UsePlayerPedAnims",""),pa=()=>!!samp.callNative("DisableInteriorEnterExits",""),fa=e=>samp.callNative("SetNameTagDrawDistance","f",e),ga=()=>samp.callNative("DisableNameTagLOS",""),Pa=e=>samp.callNative("LimitGlobalChatRadius","f",e),Sa=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),ya=()=>samp.callNative("GetServerTickRate",""),Ia=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),Ea=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),Aa=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},Ca=()=>!!samp.callNative("ChatTextReplacementToggled",""),Na=e=>samp.callNative("GetWeaponSlot","i",e),Ta=e=>{const[t,i]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:i}},Da=()=>samp.callNative("GetAvailableClasses",""),va=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}},wa=(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),Ra=e=>samp.callNative("SetTeamCount","i",e),La=(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),ba=(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),Oa=(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),Ga=e=>!!samp.callNative("SpawnPlayer","i",e),Fa=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}},Ba=e=>samp.callNative("NetStats_GetConnectedTime","i",e),xa=e=>samp.callNative("NetStats_MessagesReceived","i",e),ka=e=>samp.callNative("NetStats_BytesReceived","i",e),Ma=e=>samp.callNative("NetStats_MessagesSent","i",e),Va=e=>samp.callNative("NetStats_BytesSent","i",e),Ha=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Ua=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),Wa=e=>samp.callNative("NetStats_ConnectionStatus","i",e),ja=e=>{const[t,i]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:i}},Ka=e=>!!samp.callNative("IsPlayerAdmin","i",e),Za=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Xa=e=>!!samp.callNative("Kick","i",e),Ya=e=>!!samp.callNative("Ban","i",e),za=e=>{const[t,i]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:i}},$a=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Ja=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),Qa=e=>samp.callNative("UnBlockIpAddress","s",e),qa=(e,t)=>{const[i,a]=samp.callNative("gpci","iAi",e,41);return{val:I.decodeFromBuf(I.getValidStr(i),t),ret:a}},en=(e,t,i,a,n)=>samp.callNative("SendClientCheck","iiiii",e,t,i,a,n),tn=()=>{samp.callNative("ClearBanList","")},an=e=>!!samp.callNative("IsBanned","s",e),nn=e=>samp.callNative("GetPlayerRawIp","i",e),rn=e=>{const[t,i]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:i}},sn=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},ln=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),on=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),dn=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),cn=e=>samp.callNative("GetPlayerWeather","i",e),_n=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}},hn=e=>samp.callNativeFloat("GetPlayerZAim","i",e),un=e=>{const[t=0,i=0,a=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:i,fOffsetZ:a,ret:n}},mn=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}},pn=e=>samp.callNative("GetPlayerDialogID","i",e),fn=e=>samp.callNative("GetPlayerSpectateID","i",e),gn=e=>samp.callNative("GetPlayerSpectateType","i",e),Pn=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),Sn=e=>samp.callNativeFloat("GetPlayerGravity","i",e),yn=e=>!!samp.callNative("IsPlayerSpawned","i",e),In=e=>!!samp.callNative("IsPlayerControllable","i",e),En=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),An=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),Cn=e=>!!samp.callNative("GetPlayerGhostMode","i",e),Nn=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),Tn=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),Dn=e=>!!samp.callNative("HidePlayerDialog","i",e),vn=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),wn=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),Rn=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),Ln=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),bn=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),On=(e,t,i,a)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,i,a),Gn=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Fn=(e,t,i,a)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,i,a),Bn=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),xn=e=>!!samp.callNative("IsPlayerNPC","i",e),kn=(e,t,i,a)=>!!samp.callNative("SetPlayerPos","ifff",e,t,i,a),Mn=(e,t,i,a)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,i,a),Vn=e=>{const[t,i,a,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},Hn=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),Un=e=>{const[t,i]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:i}},Wn=(e,t,i,a,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,i,a,n),jn=(e,t,i,a)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,i,a),Kn=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),Zn=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Xn=e=>samp.callNative("GetPlayerInterior","i",e),Yn=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),zn=e=>{const[t,i]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:i}},$n=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Jn=e=>{const[t,i]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:i}},Qn=(e,t,i)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,i),qn=e=>samp.callNative("GetPlayerAmmo","i",e),er=e=>samp.callNative("GetPlayerWeaponState","i",e),tr=e=>samp.callNative("GetPlayerTargetPlayer","i",e),ir=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},ar=e=>samp.callNative("GetPlayerTeam","i",e),nr=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),rr=e=>samp.callNative("GetPlayerScore","i",e),sr=e=>samp.callNative("GetPlayerDrunkLevel","i",e),lr=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),or=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,E(t)),dr=e=>samp.callNative("GetPlayerColor","i",e),cr=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),_r=e=>samp.callNative("GetPlayerSkin","i",e),hr=(e,t,i)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,i),ur=e=>!!samp.callNative("ResetPlayerWeapons","i",e),mr=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),pr=(e,t)=>{const[i,a,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:i,ammo:a,ret:n}},fr=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),gr=e=>!!samp.callNative("ResetPlayerMoney","i",e),Pr=e=>samp.callNative("GetPlayerMoney","i",e),Sr=e=>samp.callNative("GetPlayerState","i",e),yr=e=>samp.callNative("GetPlayerPing","i",e),Ir=e=>samp.callNative("GetPlayerWeapon","i",e),Er=e=>{const[t,i,a,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:i,leftRight:a,ret:n}},Ar=(e,t,i)=>!!samp.callNative("SetPlayerTime","iii",e,t,i),Cr=e=>{const[t,i,a]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:i,ret:a}},Nr=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),Tr=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Dr=e=>!!samp.callNative("ForceClassSelection","i",e),vr=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),wr=e=>samp.callNative("GetPlayerWantedLevel","i",e),Rr=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Lr=e=>samp.callNative("GetPlayerFightingStyle","i",e),br=(e,t,i,a)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,i,a),Or=e=>{const[t,i,a,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:i,z:a,ret:n}},Gr=(e,t,i)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,i),Fr=(e,t,i,a,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,i,a,n,r,s),Br=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),xr=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),kr=(e,t,i)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,i),Mr=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),Vr=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),Hr=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Ur=(e,t,i,a,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,i,a,n,r),Wr=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}},jr=(e,t,i)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,i),Kr=e=>samp.callNative("GetPlayerVehicleID","i",e),Zr=e=>samp.callNative("GetPlayerVehicleSeat","i",e),Xr=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),Yr=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),zr=(e,t,i,a,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,i,a,n),$r=(e,t,i,a,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,i,a,n,r,s,l,o,d),Jr=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),Qr=e=>samp.callNative("GetPlayerAnimationIndex","i",e),qr=e=>samp.callNative("GetPlayerSpecialAction","i",e),es=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),ts=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),is=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),as=e=>samp.callNative("GetPlayerVirtualWorld","i",e),ns=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),rs=e=>samp.callNative("GetPlayerCustomSkin","i",e),ss=(e,t,i,a,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,i,a,n,r),ls=(e,t,i)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,i),os=e=>!!samp.callNative("StopRecordingPlayerData","i",e),ds=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),cs=(e,t,i)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,i),_s=(e,t,i)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,i),hs=e=>!!samp.callNative("IsPlayerConnected","i",e),us=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),ms=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),ps=(e,t,i,a,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,i,a,n),fs=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),gs=(e,t,i)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,E(i));function Ps(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const Ss=(e,t,i)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,i),ys=(e,t,i,a)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,i,a),Is=(e,t,i,a,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,i,a,n),Es=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),As=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},Cs=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:i,z:a,ret:n}},Ns=e=>samp.callNative("GetPlayerCameraMode","i",e),Ts=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Ds=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),vs=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),ws=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Rs=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),Ls=(e,t,i,a,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,i,a,n,r,s,l,o),bs=(e,t,i,a,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,i,a,n,r,s,l,o),Os=e=>!!samp.callNative("IsPlayerCuffed","i",e),Gs=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Fs=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),Bs=e=>samp.callNative("GetActorSkin","i",e),xs=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),ks=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}},Ms=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}},Vs=(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),Hs=e=>{const[t=0,i=0,a]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:i,ret:a}},Us=e=>samp.callNative("GetVehiclePaintjob","i",e),Ws=e=>samp.callNative("GetVehicleInterior","i",e),js=e=>{const[t,i]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:i}},Ks=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),Zs=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Xs=e=>samp.callNative("GetVehicleCab","i",e),Ys=e=>samp.callNative("GetVehicleOccupiedTick","i",e),zs=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),$s=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),Js=e=>!!samp.callNative("IsVehicleOccupied","i",e),Qs=e=>samp.callNative("GetVehicleRespawnTick","i",e),qs=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),el=e=>!!samp.callNative("IsVehicleDead","i",e),tl=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),il=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),al=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),nl=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),rl=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),sl=e=>samp.callNative("GetVehicleModelCount","i",e),ll=e=>samp.callNative("GetVehicleLastDriver","i",e),ol=e=>samp.callNative("GetVehicleDriver","i",e),dl=()=>samp.callNative("GetVehicleModelsUsed",""),cl=e=>samp.callNative("GetVehicleSirenState","i",e),_l=e=>samp.callNative("GetVehicleLandingGearState","i",e),hl=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),ul=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),ml=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}},ht=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,i,a,n],ret:r}},pl=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),fl=(e,t,i,a,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,i,a,n,E(r),E(s),l,o),gl=e=>samp.callNative("DestroyVehicle","i",e),Pl=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),Sl=e=>{const[t,i,a,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:i,z:a,ret:n}},yl=(e,t,i,a)=>!!samp.callNative("SetVehiclePos","ifff",e,t,i,a),Il=e=>{const[t,i]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:i}},El=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:n,ret:r}},Al=(e,t,i,a)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,i,a),Cl=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),Nl=(e,t,i,a)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,i,a),Tl=()=>samp.callNative("ManualVehicleEngineAndLights",""),Dl=(e,t,i,a,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,i,a,n,r,s,l),vl=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),wl=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Rl=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,i,a,n),Ll=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},bl=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,i,a,n),Ol=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},Gl=e=>samp.callNative("SetVehicleToRespawn","i",e),Fl=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),Bl=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),xl=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),kl=(e,t,i)=>samp.callNative("ChangeVehicleColor","iii",e,E(t),E(i)),Ml=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),Vl=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),Hl=e=>{const[t,i]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:i}},Ul=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),Wl=e=>samp.callNative("DetachTrailerFromVehicle","i",e),jl=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),Kl=e=>samp.callNative("GetVehicleTrailer","i",e),Zl=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Xl=e=>samp.callNative("GetVehicleModel","i",e),Yl=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),zl=e=>samp.callNative("GetVehicleComponentType","i",e),$l=e=>samp.callNative("RepairVehicle","i",e),Jl=e=>{const[t,i,a,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:i,z:a,ret:n}},Ql=(e,t,i,a)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,i,a),ql=(e,t,i,a)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,i,a),eo=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:i,lights:a,tires:n,ret:r}},to=(e,t,i,a,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,i,a,n),io=(e,t)=>{const[i,a,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},ao=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),no=e=>samp.callNative("GetVehicleVirtualWorld","i",e),ro=e=>!!samp.callNative("IsValidVehicle","i",e),so=(e,t,i,a,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,i,a,n,E(r),E(s)),lo=(e,t,i,a,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,i,a,n,E(r),E(s),l,o),oo=e=>!!samp.callNative("ShowVehicle","i",e),co=e=>!!samp.callNative("HideVehicle","i",e),_o=e=>!!samp.callNative("IsVehicleHidden","i",e),ho=e=>!!samp.callNative("IsPlayerInModShop","i",e),uo=e=>samp.callNative("GetPlayerSirenState","i",e),mo=e=>samp.callNative("GetPlayerLandingGearState","i",e),po=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),fo=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),go=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),ut=e=>samp.callNative("GetVehicleMaxPassengers","i",e),Po=e=>samp.callNative("CountVehicleOccupants","i",e),So=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),yo=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}},Io=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),Eo=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}},Ao=e=>!!samp.callNative("IsMenuDisabled","i",e),Co=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),No=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),To=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:i,ret:a}},Do=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:i,ret:a}},vo=(e,t)=>{const[i,a]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:i,ret:a}},wo=(e,t,i)=>{const[a,n]=samp.callNative("GetMenuItem","iiiSi",e,t,i,31);return{item:a,ret:n}},Ro=(e,t,i,a,n,r)=>samp.callNative("CreateMenu","siffff",e,t,i,a,n,r),Lo=e=>samp.callNative("DestroyMenu","i",e),bo=(e,t,i)=>samp.callNative("AddMenuItem","iis",e,t,i),Oo=(e,t,i)=>samp.callNative("SetMenuColumnHeader","iis",e,t,i),Go=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),Fo=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),Bo=e=>!!samp.callNative("IsValidMenu","i",e),xo=e=>samp.callNative("DisableMenu","i",e),ko=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),Mo=e=>samp.callNative("GetPlayerMenu","i",e),Vo=e=>!!samp.callNative("IsValidGangZone","i",e),Ho=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),Uo=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),Wo=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),jo=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),Ko=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),Zo=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}},Xo=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},Yo=(e,t,i,a)=>samp.callNative("GangZoneCreate","ffff",e,t,i,a),zo=e=>samp.callNative("GangZoneDestroy","i",e),$o=(e,t,i)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,E(i)),Jo=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,E(t)),Qo=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),qo=e=>samp.callNative("GangZoneHideForAll","i",e),ed=(e,t,i)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,E(i)),td=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,E(t)),id=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),ad=e=>samp.callNative("GangZoneStopFlashForAll","i",e),nd=(e,t,i,a,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,i,a,n),rd=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),sd=(e,t,i)=>samp.callNative("PlayerGangZoneShow","iii",e,t,i),ld=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),od=(e,t,i)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,i),dd=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),cd=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),_d=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),hd=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),ud=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),md=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),pd=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),fd=(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}},gd=(e,t,i)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,i)},Pd=e=>!!samp.callNative("IsValidTextDraw","i",e),Sd=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),yd=e=>{const[t,i]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:i}},Id=(e,t,i)=>{samp.callNative("TextDrawSetPos","iff",e,t,i)},Ed=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:i,ret:a}},Ad=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:i,ret:a}},Cd=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:i,ret:a}},Nd=e=>samp.callNative("TextDrawGetColor","i",e),Td=e=>samp.callNative("TextDrawGetBoxColor","i",e),Dd=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),vd=e=>samp.callNative("TextDrawGetShadow","i",e),wd=e=>samp.callNative("TextDrawGetOutline","i",e),Rd=e=>samp.callNative("TextDrawGetFont","i",e),Ld=e=>!!samp.callNative("TextDrawIsBox","i",e),bd=e=>!!samp.callNative("TextDrawIsProportional","i",e),Od=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Gd=e=>samp.callNative("TextDrawGetAlignment","i",e),Fd=e=>samp.callNative("TextDrawGetPreviewModel","i",e),Bd=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}},xd=e=>{const[t,i,a]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:i,ret:a}},kd=(e,t,i)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,i)},Md=(e,t,i)=>samp.callNative("TextDrawCreate","ffa",e,t,i),Vd=e=>samp.callNative("TextDrawDestroy","i",e),Hd=(e,t,i)=>samp.callNative("TextDrawLetterSize","iff",e,t,i),Ud=(e,t,i)=>samp.callNative("TextDrawTextSize","iff",e,t,i),Wd=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),jd=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,E(t)),Kd=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),Zd=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,E(t)),Xd=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),Yd=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),zd=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,E(t)),$d=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),Jd=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),Qd=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),qd=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),ec=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),tc=e=>samp.callNative("TextDrawShowForAll","i",e),ic=e=>samp.callNative("TextDrawHideForAll","i",e),ac=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),nc=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),rc=(e,t,i,a,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,i,a,n)},sc=(e,t,i)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,E(t),E(i)),lc=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,E(t))},oc=e=>{samp.callNative("CancelSelectTextDraw","i",e)},dc=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),cc=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),_c=(e,t)=>{const[i,a]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:i,ret:a}},hc=(e,t,i,a)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,i,a)},uc=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},mc=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},pc=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:i,fY:a,ret:n}},fc=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),gc=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),Pc=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),Sc=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),yc=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),Ic=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),Ec=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),Ac=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),Cc=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Nc=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),Tc=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Dc=(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}},vc=(e,t)=>{const[i,a,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:i,color2:a,ret:n}},wc=(e,t,i,a)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,i,a),Rc=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Lc=(e,t,i,a)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,i,a),bc=(e,t,i,a)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,i,a),Oc=(e,t,i)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,i),Gc=(e,t,i)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,E(i)),Fc=(e,t,i)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,i),Bc=(e,t,i)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,E(i)),xc=(e,t,i)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,i),kc=(e,t,i)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,i),Mc=(e,t,i)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,E(i)),Vc=(e,t,i)=>samp.callNative("PlayerTextDrawFont","iii",e,t,i),Hc=(e,t,i)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,i),Uc=(e,t,i)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,i),Wc=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),jc=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),Kc=(e,t,i)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,i),Zc=(e,t,i)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,i),Xc=(e,t,i,a,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,i,a,n,r),Yc=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,i,a),zc=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),$c=e=>!!samp.callNative("BeginObjectSelecting","i",e),Jc=e=>!!samp.callNative("EndObjectEditing","i",e),Qc=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),qc=(e,t,i,a,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,i,a,n),e_=(e,t,i,a,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,i,a,n,r,s),t_=(e,t)=>samp.callNative("RedirectDownload","is",e,t),i_=e=>{const[t,i]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},a_=e=>{const[t,i]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},n_=(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}},r_=(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)),s_=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),l_=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),mt=e=>!!samp.callNative("IsValidCustomModel","i",e),o_=e=>{if(!mt(e))return null;const[t,i,a]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:i,ret:a}};var pt=(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))(pt||{}),ft=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(ft||{}),Ye=(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))(Ye||{}),gt=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(gt||{}),Pt=(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))(Pt||{}),T=(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))(T||{}),St=(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))(St||{}),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[e.MAX_NPCS=1e3]="MAX_NPCS",e))(V||{}),yt=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(yt||{}),It=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(It||{}),Et=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(Et||{}),Ve=(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))(Ve||{}),Ee=(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))(Ee||{}),pe=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(pe||{}),At=(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))(At||{}),Ct=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(Ct||{}),Nt=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(Nt||{}),Tt=(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))(Tt||{}),Dt=(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))(Dt||{}),Ae=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Ae||{}),vt=(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))(vt||{}),He=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(He||{}),Ce=(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))(Ce||{}),wt=(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))(wt||{}),Rt=(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))(Rt||{}),Lt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Lt||{}),ze=(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))(ze||{}),Ne=(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))(Ne||{}),bt=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(bt||{}),Ot=(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))(Ot||{}),Gt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(Gt||{}),Ft=(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))(Ft||{}),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.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))(Bt||{}),xt=(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))(xt||{}),kt=(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))(kt||{}),Mt=(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))(Mt||{}),$e=(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))($e||{}),Vt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Vt||{}),Ht=(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))(Ht||{}),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||{}),Ue=(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))(Ue||{}),We=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(We||{}),U=(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))(U||{}),Ut=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHt=2]="RIGHt",e))(Ut||{}),Je=(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))(Je||{});const d_=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),c_=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),__=(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),h_=e=>samp.callNative("DestroyDynamicActor","i",e),u_=e=>!!samp.callNative("IsValidDynamicActor","i",e),m_=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),p_=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),f_=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),g_=(e,t,i,a,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,i,a,n,r,s,l,o),P_=e=>samp.callNative("ClearDynamicActorAnimations","i",e),S_=e=>{const[t,i]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:i}},y_=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),I_=e=>{const[t,i,a,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},E_=(e,t,i,a)=>samp.callNative("SetDynamicActorPos","ifff",e,t,i,a),A_=e=>{const[t,i]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:i}},C_=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),N_=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),T_=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),D_=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),v_=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),w_=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}},R_=(e,t,i,a=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicCircle","fffiii",e,t,i,a,n,r),L_=(e,t,i,a,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,i,a,n,r,s,l),b_=(e,t,i,a,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,i,a,n,r,s),O_=(e,t,i,a,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,i,a,n,r,s),G_=(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),F_=(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),B_=e=>samp.callNative("DestroyDynamicArea","i",e),x_=e=>!!samp.callNative("IsValidDynamicArea","i",e),k_=e=>samp.callNative("GetDynamicAreaType","i",e),M_=e=>{const[t,i]=samp.callNative("GetDynamicPolygonPoints","iAi",e,Wt(e));return{points:t,ret:i}},Wt=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),V_=(e,t,i=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,i),H_=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),U_=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),W_=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),j_=e=>{const[t,i]=samp.callNative("GetPlayerDynamicAreas","iAi",e,jt(e));return{areas:t,ret:i}},jt=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),K_=(e,t,i,a)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,i,a),Z_=(e,t,i)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,i),X_=(e,t,i,a,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,i,a,n,r,s),Y_=(e,t,i,a,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,i,a,n,r),z_=(e,t,i)=>{const[a,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,i,Kt(e,t,i));return{areas:a,ret:n}},Kt=(e,t,i)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,i),$_=(e,t,i,a,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,i,a,n,r,Zt(e,t,i,a,n,r));return{areas:s,ret:l}},Zt=(e,t,i,a,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,i,a,n,r),J_=(e,t,i=We.DYNAMIC,a=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,i,a,n,r,s),Q_=(e,t,i=0,a=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,i,a,n),q_=(e,t,i=0,a=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,i,a,n),eh=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),th=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),ih=(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),Xt=e=>samp.callNative("DestroyDynamicCP","i",e),Yt=e=>!!samp.callNative("IsValidDynamicCP","i",e),ah=(e,t,i)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,i),nh=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),rh=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),sh=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),lh=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,i);return{val:a,ret:n}},oh=(e,t,i,a)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,i,a),dh=(e,t,i)=>samp.callNative("Streamer_GetIntData","iii",e,t,i),ch=(e,t,i,a)=>samp.callNative("Streamer_SetIntData","iiii",e,t,i,a),_h=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,i,zt(e,t,i));return{arrayData:a,ret:n}},hh=(e,t,i,a)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,i,a,a.length),uh=(e,t,i,a)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,i,a),mh=(e,t,i,a)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,i,a),ph=(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),fh=e=>samp.callNative("Streamer_GetUpperBound","i",e);var je=(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))(je||{});const gh=(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),Ph=e=>samp.callNative("DestroyDynamicMapIcon","i",e),Sh=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),yh=(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),Ih=(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),Eh=(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),Ah=(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),Ch=(e,t,i,a,n,r=je.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),Nh=(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),Th=(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),Dh=(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),vh=(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),wh=(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),Rh=(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),Lh=(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),bh=(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}},Oh=(e,t,i,a)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,i,a),Gh=(e,t,i)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,i),Fh=(e,t,i,a=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,i,a,a.length),Bh=(e,t,i)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,i),xh=(e,t,i)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,i),kh=(e,t,i)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,i),Mh=(e,t,i=1)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,i),Vh=(e,t,i=1)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,i),Hh=(e,t=1)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),Uh=(e,t=1)=>samp.callNative("Streamer_CountItems","ii",e,t),Wh=(e,t,i,a,n=32,r=300,s=-1)=>{const[l=[],o=0]=samp.callNative("Streamer_GetNearbyItems","fffiAifi",e,t,i,a,n,r,s);return l.slice(0,o)},jh=(e,t,i=32)=>{const[a=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,i);return a.slice(0,n)},Kh=(e,t)=>{const[i,a,n,r]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},Zh=(e,t,i,a,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,i,a,n),Xh=(e,t)=>{const[i,a,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},Yh=(e,t,i,a,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,i,a,n),zh=(e,t,i,a,n,r,s,l=-1,o=-1,d=-1,c=D.OBJECT_SD,h=D.OBJECT_DD,p=-1,g=0)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,i,a,n,r,s,l,o,d,c,h,p,g),$h=e=>samp.callNative("DestroyDynamicObject","i",e),Jh=e=>!!samp.callNative("IsValidDynamicObject","i",e),Qh=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},qh=(e,t,i,a)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,i,a),eu=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:i,rz:a,ret:n}},tu=(e,t,i,a)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,i,a),iu=(e,t,i,a,n,r=-1e3,s=-1e3,l=-1e3)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,i,a,n,r,s,l),au=e=>samp.callNative("StopDynamicObject","i",e),nu=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),ru=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),su=(e,t,i,a,n,r,s,l,o=!0)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,i,a,n,r,s,l,o),lu=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,i,a,n,r,s,l),ou=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,i,a,n,r,s,l),du=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),cu=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),_u=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),hu=(e,t,i,a,n,r=0)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,i,a,n,r),uu=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),mu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),pu=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),fu=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),gu=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),Pu=(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),Su=e=>!!samp.callNative("DestroyDynamicPickup","i",e),yu=e=>!!samp.callNative("IsValidDynamicPickup","i",e),Iu=(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),Eu=(e,t,i)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,i),Au=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),Cu=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),Nu=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),Tu=()=>samp.callNative("Streamer_GetTickRate",""),Du=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),vu=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),wu=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),Ru=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),Lu=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),$t=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Jt=(e,t,i=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,i),bu=e=>samp.callNative("Streamer_GetChunkSize","i",e),Ou=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),Gu=e=>samp.callNative("Streamer_GetMaxItems","i",e),Fu=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),Qt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),qt=(e,t,i=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,i),ei=(e,t=-1)=>{const[i,a]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:i,ret:a}},ti=(e,t,i=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,i),Bu=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",Ue.MAX_TYPES);return{priority:e,ret:t}},xu=e=>samp.callNative("Streamer_SetTypePriority","ai",e,Ue.MAX_TYPES),ku=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},Mu=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Vu=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},Hu=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Uu=(e,t,i)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,i),Wu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),ju=(e,t,i)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,i),Ku=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Zu=(e,t,i)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,i),Xu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),Yu=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),zu=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),$u=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),Ju=()=>samp.callNative("Streamer_ProcessActiveItems",""),Qu=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),qu=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),em=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),tm=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),im=(e,t,i)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,i),am=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),nm=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},rm=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),sm=(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),ii=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}]]]),Qe=e=>{const t=ii.get(e.toUpperCase());return t===void 0?!1:t},qe=(e,t)=>{const i=Qe(e);if(i)return t==="null"?!0:i.some(a=>a.n===t)},lm=(e,t)=>{const i=Qe(e);if(i)return i.find(a=>a.n===t)?.d},te=(e,t)=>{const i=t.replace("-","")==="utf8"?e:I.encodeToBuf(e,t);return[i instanceof Array?"a":"s",i]},ai=(e,t,i)=>{const a=te(i,e.charset);return samp.callNative("SendClientMessage",`ii${a[0]}`,e.id,E(t),a[1])},om=(e,t,i)=>(e.forEach(a=>ai(a,t,i)),1),ni=(e,t,i)=>{const a=te(i,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${a[0]}`,e.id,t,a[1])},dm=(e,t,i)=>(e.forEach(a=>{ni(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]=te(r||"",a),[,h]=te(s||"",a),[,p]=te(l||"",a),[,g]=te(o||"",a);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,n,c,h,p,g)},_m=e=>{const[t,i]=samp.callNative("GetPlayerName","iAi",e.id,V.MAX_PLAYER_NAME);return{name:I.decodeFromBuf(I.getValidStr(t),e.charset),ret:i}},hm=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,I.encodeToBuf(t,e.charset)),um=(e,t,i)=>{const a=I.encodeToBuf(t,i);return samp.callNative("BanEx","ia",e,a)},mm=(e,t="utf8")=>{const[i,a]=te(e,t);return samp.callNative("SendRconCommand",i,a)},pm=(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)},fm=(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)},gm=(e,t,i,a)=>{const n=I.encodeToBuf(i,a);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},Pm=(e,t)=>{const[i,a]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:I.decodeFromBuf(I.getValidStr(i),t),ret:a}},Sm=(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)},ym=(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}},Im=(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}},Em=(e,t,i,a,n,r)=>{const s=I.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,E(i),a,n)},ie=Symbol(),W=new Map,j=new Map,Te=new Map,De=new Map,ve=new Map,we=new Map,K=new Map,ae=new Map,ne=new Map,Re=new Map,Le=new Map,Z=new Map,fe=new Map,Q=new Map,q=new Map,re=new Map,se=new Map,ge=new Map,le=new Map,X=new Uint32Array(65536),Am=(e,t)=>{const i=e.length,a=t.length,n=1<<i-1;let r=-1,s=0,l=i,o=i;for(;o--;)X[e.charCodeAt(o)]|=1<<o;for(o=0;o<a;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=i;o--;)X[e.charCodeAt(o)]=0;return l},Cm=(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,O=Math.min(32,a)+w;for(let N=w;N<O;N++)X[e.charCodeAt(N)]|=1<<N;for(let N=0;N<i;N++){const J=X[t.charCodeAt(N)],H=r[N/32|0]>>>N&1,M=n[N/32|0]>>>N&1,lt=J|f,ot=((J|M)&y)+y^y|J|M;let ye=f|~(ot|y),ke=y&ot;ye>>>31^H&&(r[N/32|0]^=1<<N),ke>>>31^M&&(n[N/32|0]^=1<<N),ye=ye<<1|H,ke=ke<<1|M,y=ke|~(lt|ye),f=ye&lt}for(let N=w;N<O;N++)X[e.charCodeAt(N)]=0}let d=0,c=-1;const h=o*32,p=Math.min(32,a-h)+h;for(let f=h;f<p;f++)X[e.charCodeAt(f)]|=1<<f;let g=a;for(let f=0;f<i;f++){const y=X[t.charCodeAt(f)],w=r[f/32|0]>>>f&1,O=n[f/32|0]>>>f&1,N=y|d,J=((y|O)&c)+c^c|y|O;let H=d|~(J|c),M=c&J;g+=H>>>a-1&1,g-=M>>>a-1&1,H>>>31^w&&(r[f/32|0]^=1<<f),M>>>31^O&&(n[f/32|0]^=1<<f),H=H<<1|w,M=M<<1|O,c=M|~(N|H),d=H&N}for(let f=h;f<p;f++)X[e.charCodeAt(f)]=0;return g},ri=(e,t)=>{if(e.length<t.length){const i=t;t=e,e=i}return t.length===0?e.length:e.length<=32?Am(e,t):Cm(e,t)},Nm=(e,t)=>{let i=1/0,a=0;for(let n=0;n<t.length;n++){const r=ri(e,t[n]);r<i&&(i=r,a=n)}return t[a]},oe=new Map,de=new Map,si=/[^/\s]+/gi,be={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"}},[Tm,Dm]=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}}}),[vm,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}}}),[Rm,Oe]=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=Nm(a,[...oe.keys(),...de.keys()]),h=ri(a,c);return{suggestion:c,distance:h}}}}}),[Lm,bm]=u({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const i=W.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}}}),[Om,Gm]=u({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,i){return{player:e,buffer:t,cmdText:i}}});function Fm(e){const t=[];let i="";for(let a=0;a<e.length;a++)i+=e[a]+" ",t.push(i.trimEnd());return t.reverse()}Lm(({player:e,buffer:t,cmdText:i,next:a})=>{const n=Gm(e,t,i);if(n)return n;const r=i.match(si),s=Fm(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 Oe(e,be.NOT_EXIST,...f);try{if(!Dm(e,...f))return Oe(e,be.RECEIVED_REJECTED,...f)}catch(y){const w=typeof y=="object"?y:{error:y};return Oe(e,{...be.RECEIVED_THROW,...w},...f)}for(const[y,w,O]of g){if(!y)continue;const N=w.get(y),[,J]=N;if(!J(e,y,p,i,t,O))return Oe(e,be.REJECTED,...f)}return wm(e,h,i,t,l,o,d,c,p)?(a(),!0):Oe(e,be.PERFORMED,...f)});function Bm(e,t,i,a,n,r){return{player:e,mainCommand:t,subcommand:i,cmdText:a,buffer:n,isStrict:r}}class x{static caseSensitive=!1;constructor(){}static on(t,i){let a=x.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(si));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:Bm});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)&&(F.has(a)&&F.delete(a),oe.has(a)&&oe.delete(a)),a=a.toLowerCase(),de.has(a)&&(F.has(a)&&F.delete(a),de.has(a)&&de.delete(a))})}static enableCaseSensitive(){x.caseSensitive=!0}static disableCaseSensitive(){x.caseSensitive=!1}static isCaseSensitive(){return x.caseSensitive}static simulate(t,i){return bm(t.id,i)}}const[li]=u({name:"OnClientCheckResponse",beforeEach(e,t,i,a){return{player:m.getInstance(e),actionId:t,memAddr:i,data:a}}}),[xm,km]=u({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,i){return{player:e,newLocale:t,oldLocale:i}}}),[Mm,Vm]=u({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,i){return{player:e,newCharset:t,oldCharset:i}}});class m{constructor(t){this.id=t;const i=m.getInstance(t);if(i)return i;W.set(t,this)}[ie]={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,Vm(this,t,i)}get locale(){return this._locale}set locale(t){const i=this._locale;this._locale=t,km(this,t,i)}sendClientMessage(t,i){return ai(this,t,i)}static sendClientMessageToAll(t,i){om(m.getInstances(),t,i)}sendMessageToPlayer(t,i){return ni(t,this.id,i)}sendMessageToAll(t){return dm(m.getInstances(),this.id,t)}isNpc(){return xn(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return sr(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return lr(this.id,t)}allowTeleport(t){return wn(this.id,t)}isTeleportAllowed(){return Rn(this.id)}enableCameraTarget(t){return Ts(this.id,t)}enableStuntBonus(t){return ns(this.id,t)}getInterior(){return Xn(this.id)}setInterior(t){return Zn(this.id,t)}showNameTag(t,i){return Ss(this.id,t.id,i)}setColor(t){return or(this.id,t)}getColor(){return dr(this.id)}setMarker(t,i){gs(this.id,t.id,i)}getMarker(t){return Ps(this.id,t.id)}resetMoney(){return gr(this.id)}getMoney(){return Pr(this.id)}giveMoney(t){return fr(this.id,t)}resetWeapons(){return ur(this.id)}spawn(){return Ga(this.id)}setHealth(t){return Yn(this.id,t)}getHealth(){return zn(this.id)}toggleClock(t){return Nr(this.id,t)}toggleControllable(t){return Yr(this.id,t)}toggleSpectating(t){return ds(this.id,t)}spectatePlayer(t,i=He.NORMAL){return cs(this.id,t.id,i)}spectateVehicle(t,i=He.NORMAL){return _s(this.id,t.id,i)}forceClassSelection(){return Dr(this.id)}kick(){return Xa(this.id)}ban(){return Ya(this.id)}banEx(t,i){return um(this.id,t,i)}isAdmin(){return Ka(this.id)}isInRangeOfPoint(t,i,a,n){return Wn(this.id,t,i,a,n)}isStreamedIn(t){return Kn(this.id,t.id)}setSkin(t,i=!1){return!i&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===ze.DUCK?!1:cr(this.id,t)}getSkin(){return _r(this.id)}isInAnyVehicle(){return ms(this.id)}getSpecialAction(){return qr(this.id)}setSpecialAction(t){return es(this.id,t)}setScore(t){return nr(this.id,t)}getScore(){return rr(this.id)}getPing(){return yr(this.id)||0}setPos(t,i,a){return kn(this.id,t,i,a)}getPos(){return Vn(this.id)}isSpectating(){return this.getState()===Ce.SPECTATING}isWasted(){return this.getState()===Ce.WASTED}getState(){return Sr(this.id)}getVersion(){return sn(this.id)}setVirtualWorld(t){return is(this.id,t)}getVirtualWorld(){return as(this.id)}removeFromVehicle(){return Xr(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return vr(this.id,t)}getWantedLevel(){return wr(this.id)}setFacingAngle(t){return Hn(this.id,t)}getFacingAngle(){return Un(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return Tr(this.id,t)}getWeather(){return cn(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 Ar(this.id,t,i)}getTime(){return Cr(this.id)}removeBuilding(t,i,a,n,r){return Ur(this.id,t,i,a,n,r)}setTeam(t){t<0||t>T.NO_TEAM||ir(this.id,t)}getTeam(){return ar(this.id)}setSkillLevel(t,i){if(i<0||i>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return kr(this.id,t,i)}getName(){return _m(this)}setName(t){return hm(this,t)}setVelocity(t,i,a){return br(this.id,t,i,a)}getVelocity(){return Or(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:n}=this.getVelocity();return Xe(i,a,n)*t}getKeys(){return Er(this.id)}getIp(){return rn(this.id)}getFightingStyle(){return Lr(this.id)}setFightingStyle(t){return Rr(this.id,t)}setArmour(t){return $n(this.id,t)}getArmour(){return Jn(this.id)}setCameraBehind(){return Es(this.id)}setCameraPos(t,i,a){return ys(this.id,t,i,a)}setCameraLookAt(t,i,a,n=Ae.CUT){return Is(this.id,t,i,a,n)}getCameraAspectRatio(){return ws(this.id)}getCameraFrontVector(){return Cs(this.id)}getCameraMode(){return Ns(this.id)}getCameraPos(){return As(this.id)}getCameraTargetPlayer(){const t=vs(this.id);return m.getInstances().find(i=>i.id===t)}getCameraTargetVehicle(){const t=Ds(this.id);return[...j.values()].find(i=>i.id===t)}getCameraZoom(){return Rs(this.id)}playAudioStream(t,i=0,a=0,n=0,r=5){let s=!1;return(i!==0||a!==0||n!==0)&&(s=!0),Fr(this.id,t,i,a,n,r,s)}stopAudioStream(){return Br(this.id)}playSound(t,i=0,a=0,n=0){return zr(this.id,t,i,a,n)}static getMaxPlayers(){return ia()}playCrimeReport(t,i){if(i<3||i>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Gr(this.id,t.id,i)}interpolateCameraPos(t,i,a,n,r,s,l,o=Ae.CUT){return Ls(this.id,t,i,a,n,r,s,l,o)}interpolateCameraLookAt(t,i,a,n,r,s,l,o=Ae.CUT){return bs(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 ss(this.id,t,i,a,n,r)}static isConnected(t){return hs(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return ts(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=Kr(this.id);return[...j.values()].find(i=>i.id===t)}getVehicleSeat(){return Zr(this.id)}getSurfingVehicle(){const t=Mr(this.id);if(t!==T.VEHICLE_ID)return[...j.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(!qe(t,i))throw new Error(`[Player]: Invalid anim library or name ${t} ${i}`);return $r(this.id,t,i,a,n,r,s,l,o,+d)}clearAnimations(t=!1){return Jr(this.id,t)}getAnimationIndex(){return Qr(this.id)}getAnimationName(t=this.getAnimationIndex()){const[i,a]=Ia(t);return{index:t,animLib:i,animName:a}}setShopName(t){return xr(this.id,t)}setPosFindZ(t,i,a){return Mn(this.id,t,i,a)}setWorldBounds(t,i,a,n){return ps(this.id,t,i,a,n)}clearWorldBounds(){return fs(this.id)}setChatBubble(t,i,a,n,r=this.charset){return Em(this.id,t,i,a,n,r)}getDistanceFromPoint(t,i,a){return jn(this.id,t,i,a)}getCustomSkin(){return rs(this.id)}getTargetPlayer(){const t=tr(this.id);if(t!==T.PLAYER_ID)return m.getInstances().find(i=>i.id===t)}getLastShotVectors(){return Wr(this.id)}getWeapon(){return Ir(this.id)}getWeaponData(t){return pr(this.id,t)}getWeaponState(){return er(this.id)}giveWeapon(t,i){return hr(this.id,t,i)}setAmmo(t,i){return Qn(this.id,t,i)}getAmmo(){return qn(this.id)}setArmedWeapon(t){return mr(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(T.PLAYER_ID,T.PLAYER_ID,$e.CONNECT)}sendDeathMessage(t,i){return ta(t===T.PLAYER_ID?t:t.id,this.id,i)}sendDeathMessageToPlayer(t,i,a){return Fn(this.id,t===T.PLAYER_ID?t:t.id,i===T.PLAYER_ID?i:i.id,a)}setSpawnInfo(t,i,a,n,r,s,l,o,d,c,h,p){return t<0||t>T.NO_TEAM||i<0||i>311||i===74||o<0||c<0||p<0?!1:Oa(this.id,t,i,a,n,r,s,l,o,d,c,h,p)}redirectDownload(t){return t_(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=li(({player:g,actionId:f,memAddr:y,data:w,next:O})=>(g!==this||(h&&(clearTimeout(h),h=null),s({actionId:f,memAddr:y,data:w})),O()));h=setTimeout(()=>{p(),l(o)},c),en(this.id,t,i,a,n)})}selectTextDraw(t){lc(this.id,t)}cancelSelectTextDraw(){oc(this.id)}beginObjectSelecting(){return $c(this.id)}endObjectEditing(){return Jc(this.id)}getSurfingObject(){const t=Vr(this.id);if(t!==T.OBJECT_ID)return Z.get(t)}getSurfingPlayerObject(){const t=Hr(this.id);if(t!==T.OBJECT_ID)return Z.get(t)}isAttachedObjectSlotUsed(t){return l_(this.id,t)}editAttachedObject(t){return zc(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:r_(this.id,t,i,a,n,r,s,l,o,d,c,h,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?s_(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 ln(this.id,t)}isWidescreenToggled(){return on(this.id)}getSpawnInfo(){return Fa(this.id)}getSkillLevel(t){return dn(this.id,t)}isCheckpointActive(){return So(this.id)}getCheckpoint(){return yo(this.id)}isRaceCheckpointActive(){return Io(this.id)}getRaceCheckpoint(){return Eo(this.id)}getWorldBounds(){return _n(this.id)}isInModShop(){return ho(this.id)}getSirenState(){return uo(this.id)}getLandingGearState(){return mo(this.id)}getHydraReactorAngle(){return po(this.id)}getTrainSpeed(){return fo(this.id)}getZAim(){return hn(this.id)}getSurfingOffsets(){return un(this.id)}getRotationQuat(){return mn(this.id)}getDialogID(){return pn(this.id)}getSpectateID(){return fn(this.id)}getSpectateType(){return gn(this.id)}getRawIp(){return nn(this.id)}setGravity(t){return Pn(this.id,t)}getGravity(){return Sn(this.id)}setAdmin(t){return Za(this.id,t)}isSpawned(){return yn(this.id)}isControllable(){return In(this.id)}isCameraTargetEnabled(){return En(this.id)}toggleGhostMode(t){return An(this.id,t)}getGhostMode(){return Cn(this.id)}getBuildingsRemoved(){return Nn(this.id)}getAttachedObject(t){return n_(this.id,t)}removeWeapon(t){return Tn(this.id,t)}isUsingOfficialClient(){return vn(this.id)}allowWeapons(t){return Ln(this.id,t)}areWeaponsAllowed(){return bn(this.id)}gpci(t=this.charset){return qa(this.id,t)}isCuffed(){return Os(this.id)}isInDriveByMode(){return Gs(this.id)}isAndroid(){return this.isConnected()&&this[ie].isAndroid}isPC(){return this.isConnected()&&!this[ie].isAndroid}isUsingOmp(){return Fs(this.id)}simulateCommand(t){return x.simulate(this,t)}static getInstance(t){return W.get(t)}static getInstances(){return[...W.values()]}}const[oi]=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}}});oi(({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:Ye.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))&&R.showingIds.length!==R.maxDialogId;)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),Dn(t.id)}static __inject__ShowPlayerDialog=cm}const[di]=u({name:"OnPlayerConnect",beforeEach(e){const t=new m(e);return W.set(e,t),R.close(t),{player:t}}}),[ci]=u({name:"OnPlayerDisconnect",beforeEach(e,t){return{player:W.get(e),reason:t}},afterEach({player:e}){W.delete(e.id)}}),[_i]=u({name:"OnPlayerUpdate",beforeEach(e){return{player:m.getInstance(e)}}}),[Hm]=u({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const i=m.getInstance(e);return{player:i,text:I.decodeFromBuf(t,i.charset),buffer:t}}}),[Um]=u({name:"OnPlayerEnterExitModShop",beforeEach(e,t,i){return{player:m.getInstance(e),enterExit:t,interior:i}}}),[Wm]=u({name:"OnPlayerClickMap",defaultValue:!1,beforeEach(e,t,i,a){return{player:m.getInstance(e),fX:t,fY:i,fZ:a}}}),[jm]=u({name:"OnPlayerClickPlayer",defaultValue:!1,beforeEach(e,t,i){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:i}}}),[Km]=u({name:"OnPlayerDeath",beforeEach(e,t,i){return{player:m.getInstance(e),killer:m.getInstance(t)||T.PLAYER_ID,reason:i}}}),[Zm]=u({name:"OnPlayerGiveDamage",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:m.getInstance(e),damage:m.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),[Xm]=u({name:"OnPlayerKeyStateChange",beforeEach(e,t,i){return{player:m.getInstance(e),newKeys:t,oldKeys:i}}}),[Ym]=u({name:"OnPlayerRequestClass",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[zm]=u({name:"OnPlayerRequestSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[$m]=u({name:"OnPlayerSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Jm]=u({name:"OnPlayerStateChange",beforeEach(e,t,i){return{player:m.getInstance(e),newState:t,oldState:i}}}),[Qm]=u({name:"OnPlayerSteamIn",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[qm]=u({name:"OnPlayerSteamOut",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[ep]=u({name:"OnPlayerTakeDamage",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:m.getInstance(e),damage:m.getInstance(t)||T.PLAYER_ID,amount:i,weapon:a,bodyPart:n}}}),[tp]=u({name:"OnPlayerInteriorChange",beforeEach(e,t,i){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:i}}}),[ip]=u({name:"OnPlayerRequestDownload",beforeEach(e,t,i){return{player:m.getInstance(e),type:t,crc:i}}}),[ap]=u({name:"OnPlayerFinishedDownloading",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[np]=u({name:"OnPlayerWeaponShot",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 Ge=null;const Y=new Map,et=new Map;function hi(e){if(!e.isConnected()){Y.has(e)&&clearInterval(Y.get(e));return}let t=et.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(Y.get(e)),tt(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:i})=>{i===72&&(e[ie].isAndroid=!1,Y.has(e)&&clearInterval(Y.get(e)),tt(e,!1))}).catch(()=>{}),t++,et.set(e,t)}const[rp,sp]=u({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[lp,op]=u({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,i,a){return{player:e,pausedAt:t,now:i,diff:a}}}),[dp,cp]=u({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,i){return{player:e,newFps:t,oldFps:i}}}),[_p,tt]=u({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});di(({player:e,next:t})=>{if(!Ge&&m.getInstances().length&&(Ge=setInterval(()=>{m.getInstances().filter(a=>{const n=a.getState()!==Ce.NONE;return!a.isPaused&&!a.isNpc()&&n}).forEach(a=>{Date.now()-a.lastUpdateTick>1e3&&(a.isPaused=!0,sp(a,a.lastUpdateTick))})},500)),e.isNpc())return e[ie].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[ie].isAndroid=!e.isUsingOfficialClient(),tt(e,e[ie].isAndroid),t();hi(e);const i=setInterval(()=>hi(e),1e3);return Y.set(e,i),t()}),ci(({player:e,next:t})=>(Ge&&m.getInstances().length<=1&&(clearInterval(Ge),Ge=null),Y.has(e)&&(clearInterval(Y.get(e)),Y.delete(e),et.delete(e)),t()));function hp(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)}}_i(({player:e,next:t})=>{if(!e.isNpc()){const i=Date.now();e.isPaused&&(e.isPaused=!1,op(e,e.lastUpdateTick,i,i-e.lastUpdateTick)),e.lastUpdateTick=i,hp(e)}return t()});const it=Object.freeze({onConnect:di,onDisconnect:ci,onPause:rp,onResume:lp,onUpdate:_i,onText:Hm,onEnterExitModShop:Um,onClickMap:Wm,onClickPlayer:jm,onDeath:Km,onGiveDamage:Zm,onKeyStateChange:Xm,onRequestClass:Ym,onRequestSpawn:zm,onSpawn:$m,onStateChange:Jm,onStreamIn:Qm,onStreamOut:qm,onTakeDamage:ep,onInteriorChange:tp,onRequestDownload:ip,onFinishedDownloading:ap,onCheckResponse:li,onCommandReceived:Tm,onCommandPerformed:vm,onCommandError:Rm,onCommandText:x.on,offCommandText:x.off,onDialogResponse:oi,onLocaleChange:xm,onCharsetChange:Mm,onFpsUpdate:dp,onWeaponShot:np,onAndroidCheck:_p,onCommandTextRaw:Om}),up=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],mp=[[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],[],[],[],[],[],[],[],[]],pp=(e,t)=>{if(!at(e))return!1;const i=mp[e-400];if(i===null)return!1;const a=t-1e3;return up.includes(a)||i.includes(a)},at=e=>e>=400&&e<=611,fp=(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},[ui]=u({name:"OnGameModeInit"}),[mi]=u({name:"OnGameModeExit"}),[gp]=u({name:"OnIncomingConnection",defaultValue:!1,beforeEach(e,t,i){return{playerId:e,ipAddress:t,port:i}}}),[Pp]=u({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:I.decodeFromBuf(e)}}}),[Sp]=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=[],Pe=[],nt=new Map,rt=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&&nt.set(e,l),ce.splice(a,1),Pe.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}`)}},st=async e=>{try{return await new Promise((t,i)=>{const a=Pe.findIndex(o=>o.name===e);if(a===-1)return;const n=Pe[a],r=nt.get(e);r&&(r.forEach(o=>o()),nt.delete(e));function s(){Pe.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}`)}},yp=async e=>{await st(e),await rt(e)};ui(async({next:e})=>{const t=ce.map(i=>i.name);for(const i of t)await rt(i);return e()}),mi(async({next:e})=>{const t=Pe.map(i=>i.name);for(const i of t)await st(i);return e()});const Ip=function(e,...t){if(ce.some(i=>i.name===e.name)||Pe.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=ui;static onExit=mi;static onIncomingConnection=gp;static onRconCommand=Pp;static onRconLoginAttempt=Sp;static use(t,...i){return Ip(t,...i),this}static loadUseScript=rt;static reloadUseScript=yp;static unloadUseScript=st;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 da(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return sa(t)}static getWorldTime=la;static setTeamCount=Ra;static sendRconCommand=mm;static addPlayerClass=La;static addPlayerClassEx=ba;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 ha(t,i,a,n,r)}static manualVehicleEngineAndLights=Tl;static blockIpAddress=Ja;static unBlockIpAddress=Qa;static getServerTickRate=ya;static addSimpleModel(t,i,a,n,r){return this.checkSimpleModel(t,i,a,n,r)?qc(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)?e_(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=mt;static getCustomModePath=o_;static getConsoleVarAsString(t,i="utf8"){const{consoleVarBuf:a,ret:n}=Ki(t);return{consoleVar:I.decodeFromBuf(I.getValidStr(a),i),ret:n}}static getRestartTime=Qi;static setRestartTime=Ji;static allowAdminTeleport=Mi;static isAdminTeleportAllowed=Vi;static allowInteriorWeapons=Hi;static areInteriorWeaponsAllowed=Ui;static areAllAnimationsEnabled=Wi;static enableAllAnimations=ji;static enableStuntBonusForAll=Ea;static enableVehicleFriendlyFire=oa;static enableZoneNames=ua;static disableInteriorEnterExits=pa;static setGameModeText=aa;static getGravity=ca;static setGravity=_a;static showNameTags=na;static disableNameTagLOS=ga;static usePlayerPedAnims=ma;static showPlayerMarkers=ra;static limitPlayerMarkerRadius=Sa;static limitGlobalChatRadius=Pa;static setNameTagDrawDistance=fa;static findModelFileNameFromCRC=i_;static findTextureFileNameFromCRC=a_;static getWeaponName=Ta;static setObjectsDefaultCameraCollision=Qc;static vectorSize=Xe;static clearBanList=tn;static isBanned=an;static isValidNickName=bi;static allowNickNameCharacter=Oi;static isNickNameCharacterAllowed=Gi;static addServerRule=Fi;static setServerRule=Bi;static isValidServerRule=xi;static removeServerRule=ki;static getWeaponSlot=Na;static getAvailableClasses=Da;static getPlayerClass=va;static editPlayerClass=wa;static toggleChatTextReplacement=Aa;static chatTextReplacementToggled=Ca;static getConsoleVarAsInt=Zi;static getConsoleVarAsBool=Xi;static getWeather=Yi;static getServerRuleFlag=zi;static setServerRuleFlags=$i}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,j.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===V.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&&!at(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++,j.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--,j.delete(this._id),this._id=-1}addComponent(t){if(this.id===-1)return 0;if(!pp(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 xl(this.id,t)}getComponentInSlot(t){return Yl(this.id,t)}linkToInterior(t){return this.id===-1?0:Fl(this.id,t)}setVirtualWorld(t){return this.id===-1?0:ao(this.id,t)}getVirtualWorld(){return this.id===-1?0:no(this.id)}repair(){return this.id===-1?0:$l(this.id)}setPos(t,i,a){return this.id===-1?!1:yl(this.id,t,i,a)}getPos(){return Sl(this.id)}getHealth(){return Hl(this.id)}setHealth(t){return this.id===-1?0:Vl(this.id,t)}isPlayerIn(t){return this.id===-1?!1:us(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 jr(t.id,this.id,i)}getZAngle(){return Il(this.id)}setZAngle(t){return this.id===-1?0:Cl(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 Zl(this.id,t)}changeColors(t,i){return this.id===-1?0:kl(this.id,t,i)}setVelocity(t,i,a){return this.id===-1?!1:Ql(this.id,t,i,a)}getVelocity(){return Jl(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:n}=this.getVelocity();return Xe(i,a,n)*t}setAngularVelocity(t,i,a){return this.id===-1?!1:ql(this.id,t,i,a)}getDamageStatus(){return eo(this.id)}updateDamageStatus(t,i,a,n){return to(this.id,t,i,a,n)}getDistanceFromPoint(t,i,a){return Al(this.id,t,i,a)}getModel(){return Xl(this.id)}static getModelInfo(t,i){return io(t,i)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return El(this.id)}setRespawn(){return this.id===-1?0:Gl(this.id)}isStreamedIn(t){return this.id===-1?!1:Pl(this.id,t.id)}setParamsCarDoors(t,i,a,n){return this.id===-1?0:Rl(this.id,t,i,a,n)}setParamsCarWindows(t,i,a,n){return this.id===-1?0:bl(this.id,t,i,a,n)}getParamsCarDoors(){return Ll(this.id)}getParamsCarWindows(){return Ol(this.id)}setParamsEx(t,i,a,n,r,s,l){return this.id===-1?0:Dl(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]=vl(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:wl(this.id)}setParamsForPlayer(t,i,a){return this.id===-1?0:Nl(this.id,t.id,i,a)}isTrailerAttached(){return this.id===-1?!1:jl(this.id)}changePaintjob(t){return this.id===-1||!fp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),Ml(this.id,t),1)}attachTrailer(t){return this.id===-1?0:Ul(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&Wl(this.id)}getTrailer(){return C.getInstance(Kl(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return ml(this.id)}getTrainSpeed(){return this.id===-1?0:ul(this.id)}getHydraReactorAngle(){return this.id===-1?0:hl(this.id)}getLandingGearState(){return this.id===-1?0:_l(this.id)}getSirenState(){return this.id===-1?0:cl(this.id)}getDriver(){return W.get(ol(this.id))}getLastDriver(){return W.get(ll(this.id))}isSirenEnabled(){return rl(this.id)}toggleSirenEnabled(t){return this.id===-1?0:al(this.id,t)}setParamsSirenState(t){return this.id===-1?0:nl(this.id,t)}isDead(){return this.id===-1?!0:el(this.id)}setDead(t){return this.id===-1?!1:tl(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:il(this.id,t)}getRespawnTick(){return this.id===-1?0:Qs(this.id)}setRespawnTick(t){return this.id===-1?!1:qs(this.id,t)}isOccupied(){return this.id===-1?!1:Js(this.id)}hasBeenOccupied(){return this.id===-1?!1:$s(this.id)}getOccupiedTick(){return this.id===-1?0:Ys(this.id)}setOccupiedTick(t){return this.id===-1?0:zs(this.id,t)}getCab(){return this.id===-1?0:Xs(this.id)}getRespawnDelay(){return this.id===-1?0:Zs(this.id)}setRespawnDelay(t){return this.id===-1?0:Ks(this.id,t)}getNumberPlate(){return js(this.id)}getInterior(){return this.id===-1?0:Ws(this.id)}getPaintjob(){return this.id===-1?-1:Us(this.id)}getColors(){return Hs(this.id)}setSpawnInfo(t,i,a,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!at(t)?0:Vs(this.id,t,i,a,n,r,E(s),E(l),o,d)}getSpawnInfo(){return Ms(this.id)}getRandomColorPair(){return ht(this.getModel())}show(){return this.id===-1?!1:oo(this.id)}hide(){return this.id===-1?!1:co(this.id)}isHidden(){return this.id===-1?!1:_o(this.id)}getVehicleOccupant(t){return go(this.id,t)}getVehicleMaxPassengers(){return ut(this.getModel())}countVehicleOccupants(){return Po(this.getModel())}static getVehicleMaxPassengers=ut;static getRandomColorPair=ht;static getComponentType=zl;static colorIndexToColor=pl;static isValid=ro;static getModelsUsed=dl;static getModelCount=sl;static getInstance(t){return j.get(t)}static getInstances(){return[...j.values()]}static __inject_AddStaticVehicle=so;static __inject_AddStaticVehicleEx=lo;static __inject_CreateVehicle=fl;static __inject_DestroyVehicle=gl}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),j.clear(),e()));const[Ep]=u({name:"OnVehicleDamageStatusUpdate",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[Ap]=u({name:"OnVehicleDeath",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[Cp]=u({name:"OnVehicleMod",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:i}}}),[Np]=u({name:"OnVehiclePaintjob",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:i}}}),[Tp]=u({name:"OnVehicleRespray",beforeEach(e,t,i,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[i,a]}}}),[Dp]=u({name:"OnVehicleSirenStateChange",defaultValue:!1,beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!i}}}),[vp]=u({name:"OnVehicleSpawn",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[wp]=u({name:"OnVehicleStreamIn",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Rp]=u({name:"OnVehicleStreamOut",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Lp]=u({name:"OnPlayerEnterVehicle",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!i}}}),[bp]=u({name:"OnPlayerExitVehicle",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Op]=u({name:"OnTrailerUpdate",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Gp]=u({name:"OnUnoccupiedVehicleUpdate",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}}}),Fp=Object.freeze({onDamageStatusUpdate:Ep,onDeath:Ap,onMod:Cp,onPaintjob:Np,onRespray:Tp,onSirenStateChange:Dp,onSpawn:vp,onStreamIn:wp,onStreamOut:Rp,onPlayerEnter:Lp,onPlayerExit:bp,onTrailerUpdate:Op,onUnoccupiedUpdate:Gp}),[_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)}}}),[Bp]=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=Tu;static setTickRate=Du;static getPlayerTickRate(t){return vu(t.id)}static setPlayerTickRate(t,i=50){return wu(t.id,i)}static toggleChunkStream=Ru;static isToggleChunkStream=Lu;static getChunkTickRate(t,i=-1){return i instanceof m?$t(t,i.id):$t(t,i)}static setChunkTickRate(t,i,a=-1){return a instanceof m?Jt(t,i,a.id):Jt(t,i,a)}static getChunkSize=bu;static setChunkSize=Ou;static getMaxItems=Gu;static setMaxItems=Fu;static getVisibleItems(t,i=-1){return i instanceof m?Qt(t,i.id):Qt(t,i)}static setVisibleItems(t,i,a=-1){return a instanceof m?qt(t,i,a.id):qt(t,i,a)}static getRadiusMultiplier(t,i=-1){return i instanceof m?ei(t,i.id):ei(t,i)}static setRadiusMultiplier(t,i,a=-1){return a instanceof m?ti(t,a.id):ti(t,i,a)}static getTypePriority=Bu;static setTypePriority=xu;static getCellDistance=ku;static setCellDistance=Mu;static getCellSize=Vu;static setCellSize=Hu;static toggleItemStatic=Uu;static isToggleItemStatic=Wu;static toggleItemInvAreas=ju;static isToggleItemInvAreas=Ku;static toggleItemCallbacks=Zu;static isToggleItemCallbacks=Xu;static toggleErrorCallback=Yu;static isToggleErrorCallback=zu;static amxUnloadDestroyItems=$u;static processActiveItems=Ju;static toggleIdleUpdate(t,i){return Qu(t.id,i)}static isToggleIdleUpdate(t){return qu(t.id)}static toggleCameraUpdate(t,i){return em(t.id,i)}static isToggleCameraUpdate(t){return tm(t.id)}static toggleItemUpdate(t,i,a){return im(t.id,i,a)}static isToggleItemUpdate(t,i){return am(t.id,i)}static getLastUpdateTime(){return nm()}static update(t,i=-1){return rm(t.id,i)}static updateEx(t,i,a,n,r,s,l,o,d){return sm(t.id,i,a,n,r,s,l,o,d)}static getDistanceToItem=bh;static toggleItem(t,i,a,n){return Oh(t.id,i,a,n)}static isToggleItem(t,i,a){return Gh(t.id,i,a)}static toggleAllItems(t,i,a,n=[-1]){return Fh(t.id,i,a,n)}static getItemInternalID(t,i,a){return Bh(t.id,i,a)}static getItemStreamerID(t,i,a){return xh(t.id,i,a)}static isItemVisible(t,i,a){return kh(t.id,i,a)}static destroyAllVisibleItems(t,i,a=1){return Mh(t.id,i,a)}static countVisibleItems(t,i,a=1){return Vh(t.id,i,a)}static destroyAllItems=Hh;static countItems=Uh;static getNearbyItems=Wh;static getAllVisibleItems(t,i,a){return jh(t.id,i,a)}static getItemPos=Kh;static setItemPos=Zh;static getItemOffset=Xh;static setItemOffset=Yh;static getFloatData=lh;static setFloatData=oh;static getIntData=dh;static setIntData=ch;static getArrayData=_h;static setArrayData=hh;static isInArrayData=uh;static appendArrayData=mh;static removeArrayData=ph;static getArrayDataLength=zt;static getUpperBound=fh;static onPluginError=Bp}class B{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=B.getInstance(t);if(i)return i;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: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=yh(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=zh(o,d,c,h,p,g,f,a,n,r,t,i,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||$h(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,U.MODEL_ID)}getPos(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get position before create");return Qh(this.id)}setPos(t,i,a){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return qh(this.id,t,i,a)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return eu(this.id)}setRot(t,i,a){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return tu(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(),iu(this.id,t,i,a,n,r,s,l)}stop(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot stop moving before create");return au(this.id)}isMoving(){return this.id===-1?!1:nu(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return ru(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 su(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 lu(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 ou(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(),du(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:cu(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:_u(this.id,t)}getMaterial(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material before create");return ym(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 hu(this.id,t,i,a,n,E(r))}isMaterialTextUsed(t){return this.id===-1?!1:uu(this.id,t)}removeMaterialText(t){return this.isMaterialTextUsed(t)?mu(this.id,t):0}getMaterialText(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material text before create");return Im(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,i,a,n=Je.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),Sm(t||"utf8",this.id,i,a,n,r,s,l,E(o),E(d),c)}getPlayerCameraTarget(t){const i=pu(t.id);if(i!==T.OBJECT_ID)return Z.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 fu(this.id)}getNoCameraCollision(){return gu(this.id)}static isValid=Jh;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 Z.get(t)}static getInstances(){return[...Z.values()]}}L.onExit(({next:e})=>(B.getInstances().forEach(t=>t.destroy()),Z.clear(),e()));const[xp,kp]=u({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Mp,Vp]=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?kp(i,B.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.OBJECT?Vp(i,B.getInstance(t)):a());const[Hp]=u({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:B.getInstance(e)}}}),[Up]=u({name:"OnPlayerEditDynamicObject",identifier:"iiiiiiiii",defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o){return{player:m.getInstance(e),object:B.getInstance(t),response:i,x:a,y:n,z:r,rX:s,rY:l,rZ:o}}}),[Wp]=u({name:"OnPlayerSelectDynamicObject",identifier:"iiiiii",beforeEach(e,t,i,a,n,r){return{player:m.getInstance(e),object:B.getInstance(t),modelId:i,x:a,y:n,z:r}}}),[jp]=u({name:"OnPlayerShootDynamicObject",identifier:"iiiiii",beforeEach(e,t,i,a,n,r){return{player:m.getInstance(e),object:B.getInstance(i),weapon:t,x:a,y:n,z:r}}}),[Kp]=u({name:"OnPlayerEditAttachedObject",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}}}),Zp=Object.freeze({onMoved:Hp,onPlayerEdit:Up,onPlayerSelect:Wp,onPlayerShoot:jp,onPlayerEditAttached:Kp,onStreamIn:xp,onStreamOut:Mp});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??=je.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=Ch(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=gh(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||Ph(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=Sh;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[Xp,Yp]=u({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[zp,$p]=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?Yp(i,ue.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.MAP_ICON?$p(i,ue.getInstance(t)):a());const Jp=Object.freeze({onStreamIn:Xp,onStreamOut:zp});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,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=k.__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=k.__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||k.__inject_DestroyDynamicPickup(this.id),ge.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=yu;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=Pu;static __inject_CreateDynamicPickupEx=Ih;static __inject_DestroyDynamicPickup=Su}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),ge.clear(),e()));const[Qp,qp]=u({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[ef,tf]=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?qp(i,k.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.PICKUP?tf(i,k.getInstance(t)):a());const[af]=u({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:k.getInstance(t)}}}),nf=Object.freeze({onPlayerPickUp:af,onStreamIn:Qp,onStreamOut:ef});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=Eh(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=ih(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||Xt(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 ah(t.id,this.id,i),this}isPlayerIn(t){return this.id===-1?!1:rh(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=Yt;static togglePlayerAll(t,i){return nh(t.id,i)}static getPlayerVisible(t){return re.get(sh(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[rf,sf]=u({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[lf,of]=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?sf(i,z.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.CP?of(i,z.getInstance(t)):a());const[df]=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)}}}),_f=Object.freeze({onPlayerEnter:df,onPlayerLeave:cf,onStreamIn:rf,onStreamOut:lf});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=Ah(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=Iu(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||Xt(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 Eu(t.id,this.id,i),this}static togglePlayerAll(t,i){return Au(t.id,i)}isPlayerIn(t){return this.id===-1?!1:Cu(t.id,this.id)}static getPlayerVisible(t){return le.get(Nu(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=Yt;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[hf,uf]=u({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[mf,pf]=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?uf(i,$.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.RACE_CP?pf(i,$.getInstance(t)):a());const[ff]=u({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:$.getInstance(t)}}}),[gf]=u({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:$.getInstance(t)}}}),Pf=Object.freeze({onPlayerEnter:ff,onPlayerLeave:gf,onStreamIn:hf,onStreamOut:mf});class ee{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=ee.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=Lh(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=__(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||h_(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:m_(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return p_(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return f_(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(!qe(t,i))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${i}`);return g_(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 P_(this.id)}getFacingAngle(){return S_(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return y_(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return I_(this.id)}setPos(t,i,a){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return E_(this.id,t,i,a)}getHealth(){return A_(this.id)}setHealth(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set health before create");return C_(this.id,t)}isInvulnerable(){return this.id===-1?!1:T_(this.id)}setInvulnerable(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return N_(this.id,t)}getPlayerTarget(t){const i=D_(t.id);return Q.get(i)}getPlayerCameraTarget(t){const i=v_(t.id);return Q.get(i)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return Bs(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:xs(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return ks(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return w_(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=u_;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})=>(ee.getInstances().forEach(t=>t.destroy()),Q.clear(),e()));const[Sf]=u({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[yf]=u({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[If]=u({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:m.getInstance(e),actor:ee.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),Ef=Object.freeze({onStreamIn:Sf,onStreamOut:yf,onPlayerGiveDamage:If});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:O}=this.sourceInfo;return t??=T.PLAYER_ID,i??=T.VEHICLE_ID,n??=D.TEXT_3D_LABEL_SD,a??=!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=fm(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=pm(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||d_(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,U.COLOR)}getCharset(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get charset before create");return this.sourceInfo?.charset}getText(){return Pm(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),gm(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,U.ATTACH_OFFSET_X,t);return P.setFloatData(S.TEXT_3D_LABEL,this.id,U.ATTACH_OFFSET_Y,i),P.setFloatData(S.TEXT_3D_LABEL,this.id,U.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,U.ATTACHED_PLAYER,r);return r!==T.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,U.ATTACHED_VEHICLE,r);return r!==T.VEHICLE_ID&&this.setOffsets(i,a,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=c_;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[Af,Cf]=u({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Nf,Tf]=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?Cf(i,me.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.TEXT_3D_LABEL?Tf(i,me.getInstance(t)):a());const Df=Object.freeze({onStreamIn:Af,onStreamOut:Nf});class G{sourceInfo=null;_id=-1;get type(){return this.sourceInfo?.type}get id(){return this._id}constructor(t){if(typeof t=="number"){const i=G.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("[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=Nh(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=wh(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=Th(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=Rh(s,l,o,t,i,a)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=vh(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=Dh(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=R_(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=G_(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=L_(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=F_(s,l,o,t,i,a)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=O_(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=b_(s,l,o,d,t,i,a)}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 k_(this.id)}getPolygonPoints(){return M_(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 Wt(this.id)}isPlayerIn(t,i=!1){return this.id===-1?!1:V_(t.id,this.id,i)}static isPlayerInAny(t,i=!1){return H_(t.id,i)}isAnyPlayerIn(t=!1){return this.id===-1?!1:U_(this.id,t)}static isAnyPlayerInAny(t=!1){return W_(t)}static getPlayerAreas(t){return G.getPlayerAreasNumber(t)?j_(t.id).areas.map(i=>q.get(i)):[]}static getPlayerAreasNumber(t){return jt(t.id)}isPointIn(t,i,a){return this.id===-1?!1:K_(this.id,t,i,a)}static isPointInAny(t,i,a){return Z_(t,i,a)}isLineIn(t,i,a,n,r,s){return this.id===-1?!1:X_(this.id,t,i,a,n,r,s)}static isLineInAny(t,i,a,n,r,s){return Y_(t,i,a,n,r,s)}static getForPoint(t,i,a){return G.getNumberForPoint(t,i,a)?z_(t,i,a).areas.map(n=>G.getInstance(n)):[]}static getNumberForPoint(t,i,a){return Kt(t,i,a)}static getForLine(t,i,a,n,r,s){return G.getNumberForLine(t,i,a,n,r,s)?$_(t,i,a,n,r,s).areas.map(l=>q.get(l)):[]}static getNumberForLine(t,i,a,n,r,s){return Zt(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 J_(this.id,t.id,We.DYNAMIC,T.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 Q_(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 q_(this.id,t.id,i,a,n)}toggleSpectateMode(t){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle specate mode before create");return eh(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:th(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=x_;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 q.get(t)}static getInstances(){return[...q.values()]}}L.onExit(({next:e})=>(G.getInstances().forEach(t=>t.destroy()),q.clear(),e()));const[vf,wf]=u({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Rf,Lf]=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,G.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.AREA?Lf(i,G.getInstance(t)):a());const[bf]=u({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),[Of]=u({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),Gf=Object.freeze({onStreamIn:vf,onStreamOut:Rf,onPlayerEnter:bf,onPlayerLeave:Of});class v{_id=T.PLAYER_ID;_name="";get id(){return this._id}constructor(t){if(this._id=samp.callNative("NPC_Create","s",t),this._name=t,this._id!==T.PLAYER_ID){new m(this._id);const i=v.getInstance(this._id);if(i)return i}return we.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=Ee.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=Ee.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=Ee.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=Ve.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 B.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");ls(t.id,i,a),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");os(t.id),t.isRecording=!1}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return we.get(t)}static getInstances(){return[...we.values()]}}class Be{_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,ne.has(this._id))return ne.get(this._id)}unload(){const t=!!samp.callNative("NPC_UnloadRecord","i",this._id);return t&&(this._id=-1,this._filePath="",ne.delete(this._id)),t}isValid(){return Be.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&&ne.clear(),t}static getInstance(t){return ne.get(t)}static getInstances(){return[...ne.values()]}}class Fe{_id=-1;get id(){return this._id}constructor(t){if(K.has(this._id))return K.get(this._id);this._id=t,K.set(this._id,this)}open(){samp.callNative("NPC_OpenNode","i",this._id)&&!K.has(this._id)&&K.set(this._id,this)}close(){const t=!!samp.callNative("NPC_CloseNode","i",this._id);return t&&K.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 K.get(t)}static getInstances(){return[...K.values()]}}class xe{_id=-1;get id(){return this._id}constructor(t){if(typeof t<"u"){if(ae.has(t))return ae.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,ae.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 xe.isValid(this._id)}getCurrentPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}move(t=Ve.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&&ae.clear(),t}static getCount(){return samp.callNative("NPC_GetPathCount","")}static isValid(t){return!!samp.callNative("NPC_IsValidPath","i",t)}static getInstance(t){return ae.get(t)}static getInstances(){return[...ae.values()]}}L.onExit(({next:e})=>(we.clear(),K.clear(),ae.clear(),ne.clear(),e()));const[Ff]=u({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:I.decodeFromBuf(t)}}}),[Bf]=u({name:"OnNPCFinishMove",beforeEach(e){return{npc:v.getInstance(e)}}}),[xf]=u({name:"OnNPCCreate",beforeEach(e){return{npc:v.getInstance(e)}}}),[kf]=u({name:"OnNPCDestroy",beforeEach(e){return{npc:v.getInstance(e)}},afterEach({npc:e}){we.delete(e.id)}}),[Mf]=u({name:"OnNPCWeaponStateChange",beforeEach(e,t,i){return{npc:v.getInstance(e),newState:t,oldState:i}}}),[Vf]=u({name:"OnNPCTakeDamage",beforeEach(e,t,i,a,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[Hf]=u({name:"OnNPCGiveDamage",beforeEach(e,t,i,a,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[Uf]=u({name:"OnNPCDeath",beforeEach(e,t,i){return{npc:v.getInstance(e),killer:t,reason:i}}}),[Wf]=u({name:"OnNpcSpawn",beforeEach(e){return{npc:v.getInstance(e)}}}),[jf]=u({name:"OnNpcRespawn",beforeEach(e){return{npc:v.getInstance(e)}}}),[Kf]=u({name:"OnNPCPlaybackStart",beforeEach(e,t){return{npc:v.getInstance(e),record:Be.getInstance(t),recordId:t}}}),[Zf]=u({name:"OnNPCPlaybackEnd",beforeEach(e,t){return{npc:v.getInstance(e),record:Be.getInstance(t),recordId:t}}}),[Xf]=u({name:"OnNPCWeaponShot",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}}}),[Yf]=u({name:"OnNPCFinishNodePoint",beforeEach(e,t,i){return{npc:v.getInstance(e),node:Fe.getInstance(t),nodeId:t,pointId:i}}}),[zf]=u({name:"OnNPCFinishNode",beforeEach(e,t){return{npc:v.getInstance(e),node:Fe.getInstance(t),nodeId:t}}}),[$f]=u({name:"OnNPCChangeNode",beforeEach(e,t,i){return{npc:v.getInstance(e),newNode:Fe.getInstance(t),oldNode:Fe.getInstance(i),newNodeId:t,oldNodeId:i}}}),[Jf]=u({name:"OnNPCFinishMovePath",beforeEach(e,t){return{npc:v.getInstance(e),path:xe.getInstance(t),pathId:t}}}),[Qf]=u({name:"OnNPCFinishMovePathPoint",beforeEach(e,t,i){return{npc:v.getInstance(e),path:xe.getInstance(t),pathId:t,pointIndex:i}}}),qf=Object.freeze({onClientMessage:Ff,onFinishMove:Bf,onCreate:xf,onDestroy:kf,onSpawn:Wf,onRespawn:jf,onWeaponStateChange:Mf,onTakeDamage:Vf,onGiveDamage:Hf,onDeath:Uf,onPlaybackStart:Kf,onPlaybackEnd:Zf,onWeaponShot:Xf,onFinishNodePoint:Yf,onFinishNode:zf,onChangeNode:$f,onFinishMovePath:Jf,onFinishMovePathPoint:Qf});class eg{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return $a()}static getPlayerNetworkStats(t){return za(t.id)}static getBytesReceived(t){return ka(t.id)}static getBytesSent(t){return Va(t.id)}static getConnectionStatus(t){return Wa(t.id)}static getConnectedTime(t){return Ba(t.id)}static getIpPort(t){return ja(t.id)}static getMessagesReceived(t){return xa(t.id)}static getMessagesRecvPerSecond(t){return Ha(t.id)}static getMessagesSent(t){return Ma(t.id)}static getPacketLossPercent(t){return Ua(t.id)}}class tg{_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){ea(t)}static has(t,i){return Gn(t.id,i)}forAll(t="win1252"){qi(I.encodeToBuf(I.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,i="win1252"){On(t.id,I.encodeToBuf(I.convertSpecialChar(this.text),i),this.time,this.style)}hideForPlayer(t){return Bn(t.id,this.style)}}class Se{_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(Se.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=Ro(this.title,this.columns,this.x,this.y,this.col1width,this.col2width),ve.set(this._id,this),this}destroy(){if(this._id===-1)throw new Error("[Menu]: Cannot destroy before create");return A.skip||Lo(this.id),ve.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===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 bo(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 Oo(this.id,t,i),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return xo(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");ko(this.id,t)}isValid(){return A.skip&&this.id!==-1?!0:Se.isValid(this.id)}showForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot show menu before create");return Go(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return Fo(this.id,t.id)}isDisabled(){return this._id===-1?!1:Ao(this.id)}isRowDisabled(t){return this._id===-1||t<0||t>this._itemCount?!1:Co(this.id,t)}getItems(t){return this._id===-1?0:No(this.id,t)}getPos(){return this._id===-1?{fX:this.x,fY:this.y}:To(this.id)}getColumnWidth(){return this.id===-1?{fColumn1:this.col1width,fColumn2:this.col2width}:Do(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return vo(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 wo(this.id,t,i)}static isValid=Bo;static getInstance(t){return ve.get(t)}static getInstances(){return[...ve.values()]}static getInstanceByPlayer(t){return this.getInstances().find(i=>i.id===Mo(t.id))}}L.onExit(({next:e})=>(Se.getInstances().forEach(t=>t.destroy()),ve.clear(),e()));const[ig]=u({name:"OnPlayerExitedMenu",beforeEach(e){return{player:m.getInstance(e)}}}),[ag]=u({name:"OnPlayerSelectedMenuRow",beforeEach(e,t){const i=m.getInstance(e),a=Se.getInstanceByPlayer(i);return{player:i,menu:a,row:t}}}),ng=Object.freeze({onPlayerExited:ig,onPlayerSelectedRow:ag});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:i,minY:a,maxX:n,maxY:r}=this.sourceInfo;this._id=nd(t.id,i,a,n,r);const s=it.onDisconnect(({player:l,next:o})=>{o(),l===this.sourceInfo.player&&(this.isValid()&&this.destroy(),s())});De.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:i,minY:a,maxX:n,maxY:r}=this.sourceInfo;this._id=Yo(i,a,n,r),Te.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||rd(t.id,this.id),De.delete(this.id)):(A.skip||zo(this.id),Te.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 Jo(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)sd(a.id,this.id,E(t));else if(i)$o(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 qo(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)ld(i.id,this.id);else if(t)Qo(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 td(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)od(a.id,this.id,E(i));else if(t)ed(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 ad(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)dd(i.id,this.id);else if(t)id(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?_d(i.id,this.id):Ho(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?hd(i.id,this.id):Uo(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?ud(i.id,this.id):Wo(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?md(i.id,this.id):jo(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?pd(i.id,this.id):Ko(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?fd(t.id,this.id):Zo(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?gd(i.id,this.id,t):Xo(this.id,t),this}static isValidPlayer=cd;static isValidGlobal=Vo;static getInstance(t,i){return i?Te.get(t):De.get(t)}static getInstances(t){return t?[...Te.values()]:[...De.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),Te.clear(),De.clear(),e()));const[rg]=u({name:"OnPlayerEnterGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[sg]=u({name:"OnPlayerLeaveGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[lg]=u({name:"OnPlayerEnterPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[og]=u({name:"OnPlayerLeavePlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[dg]=u({name:"OnPlayerClickGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[cg]=u({name:"OnPlayerClickPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),_g=Object.freeze({onPlayerEnterGlobal:rg,onPlayerLeaveGlobal:sg,onPlayerEnterPlayer:lg,onPlayerLeavePlayer:og,onPlayerClickGlobal:dg,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===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,i,s);const l=it.onDisconnect(({player:o,next:d})=>{const c=d();return o===n&&(this.isValid()&&this.destroy(),l()),c});Le.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,i,s),Re.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),Le.delete(this.id)):(A.skip||_.__inject__TextDrawDestroy(this.id),Re.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(Ne.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(Ne.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(Ne.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?Re.get(t):Le.get(t)}static getInstances(t){return t?[...Re.values()]:[...Le.values()]}static __inject__TextDrawCreate=Md;static __inject__CreatePlayerTextDraw=wc;static __inject__TextDrawDestroy=Vd;static __inject__PlayerTextDrawDestroy=Rc;static __inject__TextDrawFont=$d;static __inject__PlayerTextDrawFont=Vc;static __inject__TextDrawColor=jd;static __inject__PlayerTextDrawColor=Gc;static __inject__TextDrawBoxColor=Zd;static __inject__PlayerTextDrawBoxColor=Bc;static __inject__TextDrawBackgroundColor=zd;static __inject__PlayerTextDrawBackgroundColor=Mc;static __inject__TextDrawAlignment=Wd;static __inject__PlayerTextDrawAlignment=Oc;static __inject__TextDrawLetterSize=Hd;static __inject__PlayerTextDrawLetterSize=Lc;static __inject__TextDrawSetOutline=Yd;static __inject__PlayerTextDrawSetOutline=kc;static __inject__TextDrawSetPreviewModel=nc;static __inject__PlayerTextDrawSetPreviewModel=Zc;static __inject__TextDrawSetPreviewRot=rc;static __inject__PlayerTextDrawSetPreviewRot=Xc;static __inject__TextDrawSetPreviewVehicleColors=sc;static __inject__PlayerTextDrawSetPreviewVehicleColors=Yc;static __inject__TextDrawSetProportional=Jd;static __inject__PlayerTextDrawSetProportional=Hc;static __inject__TextDrawSetSelectable=Qd;static __inject__PlayerTextDrawSetSelectable=Uc;static __inject__TextDrawSetShadow=Xd;static __inject__PlayerTextDrawSetShadow=xc;static __inject__PlayerTextDrawSetString=Kc;static __inject__TextDrawSetStringForPlayer=kd;static __inject__TextDrawSetString=ac;static __inject__TextDrawTextSize=Ud;static __inject__PlayerTextDrawTextSize=bc;static __inject__PlayerTextDrawUseBox=Fc;static __inject__TextDrawUseBox=Kd;static __inject__PlayerTextDrawShow=Wc;static __inject__TextDrawShowForPlayer=qd;static __inject__PlayerTextDrawHide=jc;static __inject__TextDrawHideForPlayer=ec;static __inject__TextDrawShowForAll=tc;static __inject__TextDrawHideForAll=ic;static __inject__IsValidPlayerTextDraw=dc;static __inject__IsValidTextDraw=Pd;static __inject__IsPlayerTextDrawVisible=cc;static __inject__IsTextDrawVisibleForPlayer=Sd;static __inject__PlayerTextDrawGetString=_c;static __inject__TextDrawGetString=yd;static __inject__PlayerTextDrawSetPos=hc;static __inject__TextDrawSetPos=Id;static __inject__PlayerTextDrawGetLetterSize=uc;static __inject__TextDrawGetLetterSize=Ed;static __inject__PlayerTextDrawGetTextSize=mc;static __inject__TextDrawGetTextSize=Ad;static __inject__PlayerTextDrawGetPos=pc;static __inject__TextDrawGetPos=Cd;static __inject__PlayerTextDrawGetColor=fc;static __inject__TextDrawGetColor=Nd;static __inject__PlayerTextDrawGetBoxColor=gc;static __inject__TextDrawGetBoxColor=Td;static __inject__PlayerTextDrawGetBackgroundColor=Pc;static __inject__TextDrawGetBackgroundColor=Dd;static __inject__PlayerTextDrawGetShadow=Sc;static __inject__TextDrawGetShadow=vd;static __inject__PlayerTextDrawGetOutline=yc;static __inject__TextDrawGetOutline=wd;static __inject__PlayerTextDrawGetFont=Ic;static __inject__TextDrawGetFont=Rd;static __inject__PlayerTextDrawIsBox=Ec;static __inject__TextDrawIsBox=Ld;static __inject__PlayerTextDrawIsProportional=Ac;static __inject__TextDrawIsProportional=bd;static __inject__PlayerTextDrawIsSelectable=Cc;static __inject__TextDrawIsSelectable=Od;static __inject__PlayerTextDrawGetAlignment=Nc;static __inject__TextDrawGetAlignment=Gd;static __inject__PlayerTextDrawGetPreviewModel=Tc;static __inject__TextDrawGetPreviewModel=Fd;static __inject__PlayerTextDrawGetPreviewRot=Dc;static __inject__TextDrawGetPreviewRot=Bd;static __inject__TextDrawGetPreviewVehicleColors=xd;static __inject__PlayerTextDrawGetPreviewVehicleColors=vc}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Re.clear(),Le.clear(),e()));const[hg]=u({name:"OnPlayerClickTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===T.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[ug]=u({name:"OnPlayerClickPlayerTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===T.TEXT_DRAW?t:_.getInstance(t,!1)}}}),mg=Object.freeze({onPlayerClickGlobal:hg,onPlayerClickPlayer:ug});function pg(e,t){return(e&t)===t}function fg(e,t,i){return(e&i)===i&&(t&i)!==i}function gg(e,t){return!!(e&t)}function Pg(e,t,i){return(e&i)!==i&&(t&i)===i}function Sg(e){const t=new Set,i=e.prototype,a=Object.getOwnPropertyNames(i).filter(r=>typeof i[r]=="function"&&r!=="constructor").reduce((r,s)=>(r[s]=i[s],r),{});function n(r,s){if(t.has(r))throw new Error(`Method '${String(r)}' of class '${e.name}' has already been hooked. Each method can only be hooked once per defineHooks call. `);if(typeof Reflect.get(i,r)!="function")throw new Error(`Invalid method: ${String(r)}`);return Reflect.set(i,r,s),t.add(r),s}return[a,n]}export{pt as ArtworkEnum,wt as BodyPartsEnum,Rt as BoneIdsEnum,kt as BulletHitTypesEnum,Ae as CameraCutStylesEnum,vt as CameraModesEnum,Ot as CarModTypeEnum,ft as ClickSourcesEnum,Pt as ConnectionStatusEnum,$e as DamageDeathReasonEnum,R as Dialog,Ye as DialogStylesEnum,me as Dynamic3DTextLabel,Df as Dynamic3DTextLabelEvent,ee as DynamicActor,Ef as DynamicActorEvent,G as DynamicArea,Gf as DynamicAreaEvent,_f as DynamicCheckPointEvent,z as DynamicCheckpoint,ue as DynamicMapIcon,Jp as DynamicMapIconEvent,B as DynamicObject,Zp as DynamicObjectEvent,k as DynamicPickup,nf as DynamicPickupEvent,$ as DynamicRaceCP,Pf as DynamicRaceCPEvent,U as E_STREAMER,gt as EditResponseTypesEnum,Tt as FightingStylesEnum,Lt as ForceSyncEnum,L as GameMode,tg as GameText,b as GangZone,_g as GangZoneEvent,I as I18n,T as InvalidEnum,St as KeysEnum,V as LimitsEnum,je as MapIconStyles,Dt as MapIconStylesEnum,yt as MarkerModesEnum,Ut as MaterialTextAlign,Je as MaterialTextSizes,Se as Menu,ng as MenuEvent,Ee as NPCEntityCheckEnum,pe as NPCMoveSpeedEnum,Ve as NPCMoveTypeEnum,It as NPCPlaybackEnum,Et as NPCRecordStatusEnum,eg as NetStats,v as Npc,qf as NpcEvent,Fe as NpcNode,xe as NpcPath,Be as NpcRecord,Ct as ObjectMaterialAlignmentEnum,At as ObjectMaterialTextSizeEnum,m as Player,it as PlayerEvent,Ce as PlayerStateEnum,Vt as RecordTypesEnum,Nt as SelectObjectTypesEnum,ze as SpecialActionsEnum,He as SpectateModesEnum,P as Streamer,Ht as StreamerAreaTypes,D as StreamerDistances,S as StreamerItemTypes,Ue as StreamerMiscellaneous,We as StreamerObjectTypes,_ as TextDraw,bt as TextDrawAlignEnum,mg as TextDrawEvent,Ne as TextDrawFontsEnum,C as Vehicle,Fp as VehicleEvent,Ft as VehicleModelInfoEnum,Gt as VehicleParamsEnum,Bt as WeaponEnum,xt as WeaponSkillsEnum,Mt as WeaponStatesEnum,ii as animateLib,u as defineEvent,Sg as defineHooks,lm as getAnimateDurationByLibName,pg as isHolding,fg as isPressed,gg as isPressing,Pg as isReleased,Qe as isValidAnimateLib,qe as isValidAnimateName,E as rgba,Ri as useTrigger,Li as withTriggerOptions};