@infernus/core
Version:
Node.js library for Scripting Open Multiplayer
2 lines • 226 kB
JavaScript
"use strict";var la=require("node:util"),xe=require("iconv-lite");function at(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 oa(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):at(r)?at(s)?e[n]=Se(s,r):e[n]=Se({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function da(e,t){const a={...e};for(let i=0;i<t.length;i++){const n=t[i];delete a[n]}return a}const ca=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function _a(e){return Array.from(e.match(ca)??[])}function ke(e){return _a(e).map(a=>a.toLowerCase()).join("_")}function ha(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function ua(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function ma(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 Me(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?ha(t)?Me(e,ma(t),a):a:i}case"number":case"symbol":{typeof t=="number"&&(t=ua(t));const i=e[t];return i===void 0?a:i}default:{if(Array.isArray(t))return pa(e,t,a);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),Le(t))return a;const i=e[t];return i===void 0?a:i}}}function pa(e,t,a){if(t.length===0)return a;let i=e;for(let n=0;n<t.length;n++){if(i==null||Le(t[n]))return a;i=i[t[n]]}return i===void 0?a:i}function fa(e){return e instanceof Buffer}class E{constructor(t,a){this.defaultLocale=t,this.locales=a,this.defaultLocale=ke(t),this.locales=E.snakeLocaleKeys(a)}addLocales=t=>{Se(this.locales,E.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=da(this.locales,t)};$t=(t,a,i=this.defaultLocale)=>{const n=this.locales[ke(i)],r=Me(this.locales[this.defaultLocale],t),s=Me(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=la.format(l,...a)),l};static isValidate(t){if(!xe.encodingExists(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,a){return E.isValidate(a),[...xe.encode(t,a),0]}static decodeFromBuf(t,a="utf8"){E.isValidate(a);const i=fa(t)?t:Buffer.from(E.getValidStr(t));return xe.decode(i,a)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return oa(t,(a,i)=>ke(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,it=new Map;function ga(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function nt(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:
${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 ga(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 nt(e,d,...o.args)}return nt(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)),it.set(t,n),s}function Sa(e){return it.get(e)}function ya(e){return Object.assign(e,{__trigger__:!0})}const Pa=e=>!!samp.callNative("IsValidNickName","s",e),Ea=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Ia=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Aa=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),Ca=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),Ta=e=>!!samp.callNative("IsValidServerRule","s",e),Da=e=>!!samp.callNative("RemoveServerRule","s",e),Na=e=>{samp.callNative("AllowAdminTeleport","i",e)},va=()=>!!samp.callNative("IsAdminTeleportAllowed",""),wa=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Ra=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),La=()=>!!samp.callNative("AreAllAnimationsEnabled",""),ba=e=>{samp.callNative("EnableAllAnimations","i",e)},Oa=e=>{const[t,a]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:a}},Ga=e=>samp.callNative("GetConsoleVarAsInt","s",e),Fa=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),Ba=()=>samp.callNative("GetWeather",""),xa=e=>samp.callNative("GetServerRuleFlags","s",e),ka=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Ma=e=>!!samp.callNative("SetModeRestartTime","f",e),Ha=()=>samp.callNativeFloat("GetModeRestartTime",""),Va=(e,t,a)=>samp.callNative("GameTextForAll","aii",e,t,a),Ua=e=>{samp.callNative("HideGameTextForAll","i",e)},Wa=(e,t,a)=>samp.callNative("SendDeathMessage","iii",e,t,a),ja=()=>samp.callNative("GetMaxPlayers",""),He=(e,t,a)=>Math.sqrt(e*e+t*t+a*a),Ka=e=>samp.callNative("SetGameModeText","s",e),Za=e=>samp.callNative("ShowNameTags","i",e),Xa=e=>samp.callNative("ShowPlayerMarkers","i",e),Ya=e=>samp.callNative("SetWorldTime","i",e),za=()=>samp.callNative("GetWorldTime",""),$a=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),Ja=e=>samp.callNative("SetWeather","i",e),Qa=()=>samp.callNativeFloat("GetGravity",""),qa=e=>samp.callNative("SetGravity","f",e),ei=(e,t,a,i,n)=>samp.callNative("CreateExplosion","fffif",e,t,a,i,n),ti=e=>samp.callNative("EnableZoneNames","i",e),ai=()=>!!samp.callNative("UsePlayerPedAnims",""),ii=()=>!!samp.callNative("DisableInteriorEnterExits",""),ni=e=>samp.callNative("SetNameTagDrawDistance","f",e),ri=()=>samp.callNative("DisableNameTagLOS",""),si=e=>samp.callNative("LimitGlobalChatRadius","f",e),li=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),oi=(e,t)=>samp.callNative("ConnectNPC","ss",e,t),di=()=>samp.callNative("GetServerTickRate",""),ci=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),_i=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),hi=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},ui=()=>!!samp.callNative("ChatTextReplacementToggled",""),mi=e=>samp.callNative("GetWeaponSlot","i",e),pi=e=>{const[t,a]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:a}},fi=()=>samp.callNative("GetAvailableClasses",""),gi=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}},Si=(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),yi=e=>samp.callNative("SetTeamCount","i",e),Pi=(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),Ei=(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),Ii=(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),Ai=e=>!!samp.callNative("SpawnPlayer","i",e),Ci=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}},Ti=e=>samp.callNative("NetStats_GetConnectedTime","i",e),Di=e=>samp.callNative("NetStats_MessagesReceived","i",e),Ni=e=>samp.callNative("NetStats_BytesReceived","i",e),vi=e=>samp.callNative("NetStats_MessagesSent","i",e),wi=e=>samp.callNative("NetStats_BytesSent","i",e),Ri=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Li=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),bi=e=>samp.callNative("NetStats_ConnectionStatus","i",e),Oi=e=>{const[t,a]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:a}},Gi=e=>!!samp.callNative("IsPlayerAdmin","i",e),Fi=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Bi=e=>!!samp.callNative("Kick","i",e),xi=e=>!!samp.callNative("Ban","i",e),ki=e=>{const[t,a]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:a}},Mi=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Hi=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),Vi=e=>samp.callNative("UnBlockIpAddress","s",e),Ui=(e,t)=>{const[a,i]=samp.callNative("gpci","iAi",e,41);return{val:E.decodeFromBuf(E.getValidStr(a),t),ret:i}},Wi=(e,t,a,i,n)=>samp.callNative("SendClientCheck","iiiii",e,t,a,i,n),ji=()=>{samp.callNative("ClearBanList","")},Ki=e=>!!samp.callNative("IsBanned","s",e),Zi=e=>samp.callNative("GetPlayerRawIp","i",e),Xi=e=>{const[t,a]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:a}},Yi=e=>{const[t,a]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:a}},I=e=>{if(typeof e=="number")return e;if(typeof+e=="number"&&!isNaN(+e))return+e;if(e.charAt(0)==="#")return e.length===4?parseInt(e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2)+e.charAt(3)+e.charAt(3)+"FF",16):e.length===7?parseInt(e.slice(1,e.length)+"FF",16):e.length===9?parseInt(e.slice(1,e.length),16):255;const t=(e.match(/([0-9])+/g)||[]).map(i=>parseInt(i,10));if(t.length!==4&&t.length!==3)return 255;t.length===3?t.push(255):t[3]=t[3]<1?Math.floor(t[3]*255):255;let a=0;return t.reverse().forEach((i,n)=>{i!==0&&(a+=Math.pow(16,n*2)*i)}),a},zi=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),$i=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),Ji=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),Qi=e=>samp.callNative("GetPlayerWeather","i",e),qi=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}},en=e=>samp.callNativeFloat("GetPlayerZAim","i",e),tn=e=>{const[t=0,a=0,i=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:a,fOffsetZ:i,ret:n}},an=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}},nn=e=>samp.callNative("GetPlayerDialogID","i",e),rn=e=>samp.callNative("GetPlayerSpectateID","i",e),sn=e=>samp.callNative("GetPlayerSpectateType","i",e),ln=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),on=e=>samp.callNativeFloat("GetPlayerGravity","i",e),dn=e=>!!samp.callNative("IsPlayerSpawned","i",e),cn=e=>!!samp.callNative("IsPlayerControllable","i",e),_n=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),hn=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),un=e=>!!samp.callNative("GetPlayerGhostMode","i",e),mn=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),pn=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),fn=e=>!!samp.callNative("HidePlayerDialog","i",e),gn=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),Sn=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),yn=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),Pn=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),En=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),In=(e,t,a,i)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,a,i),An=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Cn=(e,t,a,i)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,a,i),Tn=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),Dn=e=>!!samp.callNative("IsPlayerNPC","i",e),Nn=(e,t,a,i)=>!!samp.callNative("SetPlayerPos","ifff",e,t,a,i),vn=(e,t,a,i)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,a,i),wn=e=>{const[t,a,i,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Rn=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),Ln=e=>{const[t,a]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:a}},bn=(e,t,a,i,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,a,i,n),On=(e,t,a,i)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,a,i),Gn=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),Fn=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Bn=e=>samp.callNative("GetPlayerInterior","i",e),xn=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),kn=e=>{const[t,a]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:a}},Mn=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Hn=e=>{const[t,a]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:a}},Vn=(e,t,a)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,a),Un=e=>samp.callNative("GetPlayerAmmo","i",e),Wn=e=>samp.callNative("GetPlayerWeaponState","i",e),jn=e=>samp.callNative("GetPlayerTargetPlayer","i",e),Kn=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},Zn=e=>samp.callNative("GetPlayerTeam","i",e),Xn=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Yn=e=>samp.callNative("GetPlayerScore","i",e),zn=e=>samp.callNative("GetPlayerDrunkLevel","i",e),$n=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),Jn=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,I(t)),Qn=e=>samp.callNative("GetPlayerColor","i",e),qn=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),er=e=>samp.callNative("GetPlayerSkin","i",e),tr=(e,t,a)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,a),ar=e=>!!samp.callNative("ResetPlayerWeapons","i",e),ir=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),nr=(e,t)=>{const[a,i,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:a,ammo:i,ret:n}},rr=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),sr=e=>!!samp.callNative("ResetPlayerMoney","i",e),lr=e=>samp.callNative("GetPlayerMoney","i",e),or=e=>samp.callNative("GetPlayerState","i",e),dr=e=>samp.callNative("GetPlayerPing","i",e),cr=e=>samp.callNative("GetPlayerWeapon","i",e),_r=e=>{const[t,a,i,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:a,leftRight:i,ret:n}},hr=(e,t,a)=>!!samp.callNative("SetPlayerTime","iii",e,t,a),ur=e=>{const[t,a,i]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:a,ret:i}},mr=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),pr=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),fr=e=>!!samp.callNative("ForceClassSelection","i",e),gr=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Sr=e=>samp.callNative("GetPlayerWantedLevel","i",e),yr=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Pr=e=>samp.callNative("GetPlayerFightingStyle","i",e),Er=(e,t,a,i)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,a,i),Ir=e=>{const[t,a,i,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Ar=(e,t,a)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,a),Cr=(e,t,a,i,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,a,i,n,r,s),Tr=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),Dr=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Nr=(e,t,a)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,a),vr=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),wr=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),Rr=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Lr=(e,t,a,i,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,a,i,n,r),br=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}},Or=(e,t,a)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,a),Gr=e=>samp.callNative("GetPlayerVehicleID","i",e),Fr=e=>samp.callNative("GetPlayerVehicleSeat","i",e),Br=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),xr=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),kr=(e,t,a,i,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,a,i,n),Mr=(e,t,a,i,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,a,i,n,r,s,l,o,d),Hr=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),Vr=e=>samp.callNative("GetPlayerAnimationIndex","i",e),Ur=e=>samp.callNative("GetPlayerSpecialAction","i",e),Wr=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),jr=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),Kr=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),Zr=e=>samp.callNative("GetPlayerVirtualWorld","i",e),Xr=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),Yr=e=>samp.callNative("GetPlayerCustomSkin","i",e),zr=(e,t,a,i,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,a,i,n,r),$r=(e,t,a)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,a),Jr=e=>!!samp.callNative("StopRecordingPlayerData","i",e),Qr=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),qr=(e,t,a)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,a),es=(e,t,a)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,a),ts=e=>!!samp.callNative("IsPlayerConnected","i",e),as=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),is=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),ns=(e,t,a,i,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,a,i,n),rs=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),ss=(e,t,a)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,I(a));function ls(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const os=(e,t,a)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,a),ds=(e,t,a,i)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,a,i),cs=(e,t,a,i,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,a,i,n),_s=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),hs=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},us=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:a,z:i,ret:n}},ms=e=>samp.callNative("GetPlayerCameraMode","i",e),ps=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),fs=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),gs=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Ss=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),ys=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),Ps=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,a,i,n,r,s,l,o),Es=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,a,i,n,r,s,l,o),Is=e=>!!samp.callNative("IsPlayerCuffed","i",e),As=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Cs=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),Ts=(e,t)=>samp.callNative("StartRecordingPlayback","is",e,t),Ds=()=>samp.callNative("StopRecordingPlayback",""),Ns=()=>samp.callNative("PauseRecordingPlayback",""),vs=()=>samp.callNative("ResumeRecordingPlayback",""),ws=e=>samp.callNative("GetActorSkin","i",e),Rs=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Ls=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}},bs=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}},Os=(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),Gs=e=>{const[t=0,a=0,i]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:a,ret:i}},Fs=e=>samp.callNative("GetVehiclePaintjob","i",e),Bs=e=>samp.callNative("GetVehicleInterior","i",e),xs=e=>{const[t,a]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:a}},ks=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),Ms=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Hs=e=>samp.callNative("GetVehicleCab","i",e),Vs=e=>samp.callNative("GetVehicleOccupiedTick","i",e),Us=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Ws=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),js=e=>!!samp.callNative("IsVehicleOccupied","i",e),Ks=e=>samp.callNative("GetVehicleRespawnTick","i",e),Zs=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),Xs=e=>!!samp.callNative("IsVehicleDead","i",e),Ys=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),zs=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),$s=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),Js=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),Qs=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),qs=e=>samp.callNative("GetVehicleModelCount","i",e),el=e=>samp.callNative("GetVehicleLastDriver","i",e),tl=e=>samp.callNative("GetVehicleDriver","i",e),al=()=>samp.callNative("GetVehicleModelsUsed",""),il=e=>samp.callNative("GetVehicleSirenState","i",e),nl=e=>samp.callNative("GetVehicleLandingGearState","i",e),rl=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),sl=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),ll=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}},rt=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,a,i,n],ret:r}},ol=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),dl=(e,t,a,i,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),cl=e=>samp.callNative("DestroyVehicle","i",e),_l=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),hl=e=>{const[t,a,i,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:a,z:i,ret:n}},ul=(e,t,a,i)=>!!samp.callNative("SetVehiclePos","ifff",e,t,a,i),ml=e=>{const[t,a]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:a}},pl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:a,y:i,z:n,ret:r}},fl=(e,t,a,i)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,a,i),gl=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),Sl=(e,t,a,i)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,a,i),yl=()=>samp.callNative("ManualVehicleEngineAndLights",""),Pl=(e,t,a,i,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,a,i,n,r,s,l),El=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Il=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Al=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,a,i,n),Cl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Tl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,a,i,n),Dl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Nl=e=>samp.callNative("SetVehicleToRespawn","i",e),vl=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),wl=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),Rl=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Ll=(e,t,a)=>samp.callNative("ChangeVehicleColor","iii",e,I(t),I(a)),bl=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),Ol=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),Gl=e=>{const[t,a]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:a}},Fl=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),Bl=e=>samp.callNative("DetachTrailerFromVehicle","i",e),xl=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),kl=e=>samp.callNative("GetVehicleTrailer","i",e),Ml=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Hl=e=>samp.callNative("GetVehicleModel","i",e),Vl=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),Ul=e=>samp.callNative("GetVehicleComponentType","i",e),Wl=e=>samp.callNative("RepairVehicle","i",e),jl=e=>{const[t,a,i,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Kl=(e,t,a,i)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,a,i),Zl=(e,t,a,i)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,a,i),Xl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:a,lights:i,tires:n,ret:r}},Yl=(e,t,a,i,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,a,i,n),zl=(e,t)=>{const[a,i,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},$l=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),Jl=e=>samp.callNative("GetVehicleVirtualWorld","i",e),Ql=e=>!!samp.callNative("IsValidVehicle","i",e),ql=(e,t,a,i,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,a,i,n,I(r),I(s)),eo=(e,t,a,i,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),to=e=>!!samp.callNative("ShowVehicle","i",e),ao=e=>!!samp.callNative("HideVehicle","i",e),io=e=>!!samp.callNative("IsVehicleHidden","i",e),no=e=>!!samp.callNative("IsPlayerInModShop","i",e),ro=e=>samp.callNative("GetPlayerSirenState","i",e),so=e=>samp.callNative("GetPlayerLandingGearState","i",e),lo=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),oo=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),co=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),st=e=>samp.callNative("GetVehicleMaxPassengers","i",e),_o=e=>samp.callNative("CountVehicleOccupants","i",e),ho=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),uo=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}},mo=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),po=e=>{const[t=0,a=0,i=0,n=0,r=0,s=0,l=0,o]=samp.callNative("GetPlayerRaceCheckpoint","iFFFFFFF",e);return{fX:t,fY:a,fZ:i,fNextX:n,fNextY:r,fNextZ:s,fSize:l,ret:o}},fo=e=>!!samp.callNative("IsMenuDisabled","i",e),go=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),So=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),yo=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:a,ret:i}},Po=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:a,ret:i}},Eo=(e,t)=>{const[a,i]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:a,ret:i}},Io=(e,t,a)=>{const[i,n]=samp.callNative("GetMenuItem","iiiSi",e,t,a,31);return{item:i,ret:n}},Ao=(e,t,a,i,n,r)=>samp.callNative("CreateMenu","siffff",e,t,a,i,n,r),Co=e=>samp.callNative("DestroyMenu","i",e),To=(e,t,a)=>samp.callNative("AddMenuItem","iis",e,t,a),Do=(e,t,a)=>samp.callNative("SetMenuColumnHeader","iis",e,t,a),No=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),vo=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),wo=e=>!!samp.callNative("IsValidMenu","i",e),Ro=e=>samp.callNative("DisableMenu","i",e),Lo=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),bo=e=>samp.callNative("GetPlayerMenu","i",e),Oo=e=>!!samp.callNative("IsValidGangZone","i",e),Go=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),Fo=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),Bo=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),xo=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),ko=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),Mo=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}},Ho=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},Vo=(e,t,a,i)=>samp.callNative("GangZoneCreate","ffff",e,t,a,i),Uo=e=>samp.callNative("GangZoneDestroy","i",e),Wo=(e,t,a)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,I(a)),jo=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,I(t)),Ko=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),Zo=e=>samp.callNative("GangZoneHideForAll","i",e),Xo=(e,t,a)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,I(a)),Yo=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,I(t)),zo=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),$o=e=>samp.callNative("GangZoneStopFlashForAll","i",e),Jo=(e,t,a,i,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,a,i,n),Qo=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),qo=(e,t,a)=>samp.callNative("PlayerGangZoneShow","iii",e,t,a),ed=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),td=(e,t,a)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,a),ad=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),id=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),nd=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),rd=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),sd=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),ld=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),od=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),dd=(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}},cd=(e,t,a)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,a)},_d=e=>!!samp.callNative("IsValidTextDraw","i",e),hd=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),ud=e=>{const[t,a]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:a}},md=(e,t,a)=>{samp.callNative("TextDrawSetPos","iff",e,t,a)},pd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:a,ret:i}},fd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:a,ret:i}},gd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:a,ret:i}},Sd=e=>samp.callNative("TextDrawGetColor","i",e),yd=e=>samp.callNative("TextDrawGetBoxColor","i",e),Pd=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Ed=e=>samp.callNative("TextDrawGetShadow","i",e),Id=e=>samp.callNative("TextDrawGetOutline","i",e),Ad=e=>samp.callNative("TextDrawGetFont","i",e),Cd=e=>!!samp.callNative("TextDrawIsBox","i",e),Td=e=>!!samp.callNative("TextDrawIsProportional","i",e),Dd=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Nd=e=>samp.callNative("TextDrawGetAlignment","i",e),vd=e=>samp.callNative("TextDrawGetPreviewModel","i",e),wd=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}},Rd=e=>{const[t,a,i]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:a,ret:i}},Ld=(e,t,a)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,a)},bd=(e,t,a)=>samp.callNative("TextDrawCreate","ffa",e,t,a),Od=e=>samp.callNative("TextDrawDestroy","i",e),Gd=(e,t,a)=>samp.callNative("TextDrawLetterSize","iff",e,t,a),Fd=(e,t,a)=>samp.callNative("TextDrawTextSize","iff",e,t,a),Bd=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),xd=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,I(t)),kd=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),Md=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,I(t)),Hd=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),Vd=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),Ud=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,I(t)),Wd=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),jd=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),Kd=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),Zd=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),Xd=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),Yd=e=>samp.callNative("TextDrawShowForAll","i",e),zd=e=>samp.callNative("TextDrawHideForAll","i",e),$d=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),Jd=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),Qd=(e,t,a,i,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,a,i,n)},qd=(e,t,a)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,I(t),I(a)),ec=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,I(t))},tc=e=>{samp.callNative("CancelSelectTextDraw","i",e)},ac=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),ic=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),nc=(e,t)=>{const[a,i]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:a,ret:i}},rc=(e,t,a,i)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,a,i)},sc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},lc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},oc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:a,fY:i,ret:n}},dc=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),cc=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),_c=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),hc=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),uc=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),mc=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),pc=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),fc=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),gc=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Sc=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),yc=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Pc=(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}},Ec=(e,t)=>{const[a,i,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:a,color2:i,ret:n}},Ic=(e,t,a,i)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,a,i),Ac=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Cc=(e,t,a,i)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,a,i),Tc=(e,t,a,i)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,a,i),Dc=(e,t,a)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,a),Nc=(e,t,a)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,I(a)),vc=(e,t,a)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,a),wc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,I(a)),Rc=(e,t,a)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,a),Lc=(e,t,a)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,a),bc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,I(a)),Oc=(e,t,a)=>samp.callNative("PlayerTextDrawFont","iii",e,t,a),Gc=(e,t,a)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,a),Fc=(e,t,a)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,a),Bc=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),xc=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),kc=(e,t,a)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,a),Mc=(e,t,a)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,a),Hc=(e,t,a,i,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,a,i,n,r),Vc=(e,t,a,i)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,a,i),Uc=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),Wc=e=>!!samp.callNative("BeginObjectSelecting","i",e),jc=e=>!!samp.callNative("EndObjectEditing","i",e),Kc=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),Zc=(e,t,a,i,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,a,i,n),Xc=(e,t,a,i,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,a,i,n,r,s),Yc=(e,t)=>samp.callNative("RedirectDownload","is",e,t),zc=e=>{const[t,a]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},$c=e=>{const[t,a]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},Jc=(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}},Qc=(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,I(g),I(f)),qc=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),e_=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),lt=e=>!!samp.callNative("IsValidCustomModel","i",e),t_=e=>{if(!lt(e))return null;const[t,a,i]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:a,ret:i}};var ot=(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))(ot||{}),dt=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(dt||{}),Ve=(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))(Ve||{}),ct=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(ct||{}),_t=(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))(_t||{}),D=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_ID",e[e.VEHICLE_ID=65535]="VEHICLE_ID",e[e.ACTOR_ID=65535]="ACTOR_ID",e[e.OBJECT_ID=65535]="OBJECT_ID",e[e.MENU=-1]="MENU",e[e.TEXT_DRAW=65535]="TEXT_DRAW",e[e.PLAYER_TEXT_DRAW=65535]="PLAYER_TEXT_DRAW",e[e.GANG_ZONE=-1]="GANG_ZONE",e[e._3DTEXT_ID=65535]="_3DTEXT_ID",e[e.PLAYER_3DTEXT_ID=65535]="PLAYER_3DTEXT_ID",e))(D||{}),ht=(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))(ht||{}),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||{}),ut=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(ut||{}),mt=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(mt||{}),V=(e=>(e[e.none=0]="none",e[e.start=1]="start",e[e.pause=2]="pause",e))(V||{}),pt=(e=>(e[e._32x32=10]="_32x32",e[e._64x32=20]="_64x32",e[e._64x64=30]="_64x64",e[e._128x32=40]="_128x32",e[e._128x64=50]="_128x64",e[e._128x128=60]="_128x128",e[e._256x32=70]="_256x32",e[e._256x64=80]="_256x64",e[e._256x128=90]="_256x128",e[e._256x256=100]="_256x256",e[e._512x64=110]="_512x64",e[e._512x128=120]="_512x128",e[e._512x256=130]="_512x256",e[e._512x512=140]="_512x512",e))(pt||{}),ft=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(ft||{}),gt=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(gt||{}),St=(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))(St||{}),yt=(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))(yt||{}),ye=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(ye||{}),Pt=(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))(Pt||{}),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||{}),Et=(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))(Et||{}),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||{}),At=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(At||{}),Ue=(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))(Ue||{}),Ee=(e=>(e[e.FONT_0=0]="FONT_0",e[e.FONT_1=1]="FONT_1",e[e.FONT_2=2]="FONT_2",e[e.FONT_3=3]="FONT_3",e[e.SPRITE_DRAW=4]="SPRITE_DRAW",e[e.MODEL_PREVIEW=5]="MODEL_PREVIEW",e[e.BANK=0]="BANK",e[e.STANDARD=1]="STANDARD",e[e.SPACEAGE=2]="SPACEAGE",e[e.HEADING=3]="HEADING",e[e.BECKETT_REGULAR=0]="BECKETT_REGULAR",e[e.AHARONI_BOLD=1]="AHARONI_BOLD",e[e.BANK_GOTHIC=2]="BANK_GOTHIC",e[e.PRICEDOWN=3]="PRICEDOWN",e[e.SPRITE=4]="SPRITE",e[e.PREVIEW=5]="PREVIEW",e))(Ee||{}),Ct=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(Ct||{}),Tt=(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))(Tt||{}),Dt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(Dt||{}),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||{}),vt=(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))(vt||{}),wt=(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))(wt||{}),Rt=(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))(Rt||{}),Lt=(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))(Lt||{}),We=(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))(We||{}),bt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(bt||{}),Ot=(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))(Ot||{}),N=(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))(N||{}),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||{}),Gt=(e=>(