import type { AnimScene } from '../classes/AnimScene'; import type { Entity } from '../classes/Entity'; import type { Ped } from '../classes/Ped'; import type { Pickup } from '../classes/Pickup'; import type { Player } from '../classes/Player'; import type { Prop } from '../classes/Prop'; import type { PropSet } from '../classes/PropSet'; import type { Vehicle } from '../classes/Vehicle'; import type { Volume } from '../classes/Volume'; import type { ScrHandle } from '../types/NativeAliases'; import { Vector2 } from '../types/Vector2'; import { Vector3 } from '../types/Vector3'; import { Vector4 } from '../types/Vector4'; import { Color } from '../types/Color'; import { createFromHandle } from '../types/HandleRegistry'; import { inv, rai, raf, ras, rav, pvi, pvf, pvv, pvii, pvfi, _h, f, int, uint, float, Hash, u8, u16, u32, u64, i8, i16, i32, i64 } from '../types/NativeAliases'; export class Network { /** * @param contentTypeName * @param contentId * @param fileId * @param fileVersion * @param languageId * @returns */ static ugcRequestContentDataFromParams(contentTypeName: string, contentId: string, fileId: int, fileVersion: int, languageId: int): int { return inv('0x7FD2990AF016795E', contentTypeName, contentId, fileId, fileVersion, languageId, rai()); } /** * @param maxNumMissionParticipants * @param p1 * @param instanceId */ static setThisScriptIsNetworkScript(maxNumMissionParticipants: int, p1: boolean, instanceId: int): void { inv('0x1CA59E306ECB80A5', maxNumMissionParticipants, p1, instanceId); } /** * Stadia only; always returns -1 on other platforms. p0 may be a BOOL. * * @param p0 * @returns */ static N_0x3E8CCE6769DB5F34(p0: int): int { return inv('0x3E8CCE6769DB5F34', p0, rai()); } /** * @returns gamerHandle1; gamerHandle2 */ static arePlayersInSamePlatformParty(): [any, number, number] { const result = inv<[number, number, number]>('0x11820D1AE80DEA39', pvi(), pvi()); return [result[0], result[1], result[2]]; } /** * @param hour * @param minute * @param second * @param transitionTime * @param pauseClock * @param clockwise */ static clockTimeOverride2(hour: int, minute: int, second: int, transitionTime: int, pauseClock: boolean, clockwise: boolean): void { inv('0xE28C13ECC36FF14E', hour, minute, second, transitionTime, pauseClock, clockwise); } /** * @param player * @returns */ static isPlayerConcealed(player: Player): boolean { return !!inv('0x919B3C98ED8292F9', player.handle, rai()); } /** * @param description * @returns */ static ugcRequestCachedDescription(description: string | number): int { return inv('0x5E0165278F6339EE', _h(description), rai()); } /** * @returns */ static sessionLeaveSession(): boolean { return !!inv('0x17C21B7319A05047', rai()); } /** * Hardcoded to return false. * * @returns */ static isCustomUpsellEnabled(): any { return inv('0x78A9535AF83715C6'); } /** * @returns */ static getNetworkTime(): int { return inv('0x7A5487FE9FAA6B48', rai()); } /** * @param threadId * @returns */ static getInstanceIdOfThread(threadId: int): int { return inv('0xFB9ECED5B68F3B78', threadId, rai()); } /** * @param configProperty * @param include * @param weight */ static spawnConfigAddPropertyPreference(configProperty: int, include: boolean, weight: float): void { inv('0xEB6027FD1B4600D5', configProperty, include, f(weight)); } /** * @param p0 * @returns */ static N_0xDCA4A74135E1DEA5(p0: any): boolean { return !!inv('0xDCA4A74135E1DEA5', p0, rai()); } /** * @returns gamerHandle */ static getPlayerFromGamerHandle(): [Player | null, number] { const result = inv<[number, number]>('0xCE5F689CF5A0A49D', pvi(), rai()); return [createFromHandle('Player', result[0]), result[1]]; } /** * Returns the amount of players connected in the current session. Only works when connected to a session/server. * * @returns */ static getNumConnectedPlayers(): int { return inv('0xA4A79DD2D9600654', rai()); } /** * @param netId * @returns */ static getEntityFromNetworkId(netId: int): Entity | null { return createFromHandle('Entity', inv('0xCE4E5D9B0A4FF560', netId, rai())); } /** * Note: this native was added in build 1311.23, but was only used after build 1436.25 */ static requestCloudTunables(): void { inv('0x42FB3B532D526E6C'); } /** * @param toggle */ static setScriptReadyForEvents(toggle: boolean): void { inv('0x7AC752103856FB20', toggle); } /** * @param amount * @returns */ static canRegisterMissionPeds(amount: int): boolean { return !!inv('0xBCBF4FEF9FA5D781', amount, rai()); } /** * @returns gamerHandle1; gamerHandle2 */ static areHandlesTheSame(): [boolean, number, number] { const result = inv<[boolean, number, number]>('0x57DBA049E110F217', pvi(), pvi(), rai()); return [!!result[0], result[1], result[2]]; } /** * Old name: _SET_LOCAL_PLAYER_AS_GHOST * * @param toggle */ static setLocalPlayerAsGhost(toggle: boolean): void { inv('0x5FFE9B4144F9712F', toggle); } /** * Example: char displayName[64]; * if (_NETWORK_GET_DISPLAY_NAME_FROM_HANDLE(handle, displayName)) * { * // use displayName * } * * @param displayName * @returns gamerHandle */ static getDisplayNameFromHandle(displayName: string): [any, number] { const result = inv<[number, number]>('0x7FEE4F07C54B6B3C', pvi(), displayName); return [result[0], result[1]]; } static endTutorialSession(): void { inv('0xD0AFAFF5A51D72F7'); } /** * @param p0 * @param p2 * @returns p1 */ static isPlayerAParticipantOnScript(p0: Player, p2: any): [boolean, number] { const result = inv<[boolean, number]>('0x1AD5B71586B94820', p0.handle, pvi(), p2, rai()); return [!!result[0], result[1]]; } /** * @returns */ static getTotalNumFriends(): int { return inv('0xDB7ABDD203FA3704', rai()); } /** * Returns ugcRequestId * * @param p0 * @param maxGet * @param contentTypeName * @param p3 * @param p4 * @param p5 * @returns */ static ugcQueryByContentType(p0: int, maxGet: int, contentTypeName: string, p3: int, p4: int, p5: int): int { return inv('0xF40EF49B3099E98E', p0, maxGet, contentTypeName, p3, p4, p5, rai()); } /** * @param p0 * @param index * @param p2 * @returns */ static ugcQueryGetRating(p0: any, index: int, p2: int): float { return inv('0x24CD8FAEA1368379', p0, index, p2, raf()); } /** * @param player */ static N_0xD78A26024BB13E08(player: Player): void { inv('0xD78A26024BB13E08', player.handle); } /** * Only used in R* Script fm_race_controller * * @param p0 */ static N_0x71FA2D1880C48032(p0: boolean): void { inv('0x71FA2D1880C48032', p0); } /** * Note: this native was added in build 1311.23 * * @param p0 * @param p1 * @param p2 * @param p3 * @returns */ static N_0x5F328FC909F0E0FF(p0: int, p1: int, p2: int, p3: int): boolean { return !!inv('0x5F328FC909F0E0FF', p0, p1, p2, p3, rai()); } /** * Old name: _NETWORK_SET_VEHICLE_WHEELS_DESTRUCTIBLE * * @param entity * @param p1 */ static triggerDamageEventForZeroDamage(entity: Entity, p1: boolean): void { inv('0x0C8BC052AE87D744', entity.handle, p1); } /** * nullsub, doesn't do anything * * @returns */ static getNetStatisticsInfo(): any { return inv('0x6FD992C4A1C1B986'); } /** * @returns gamerHandle */ static canReceiveInviteFromHandle(): [any, number] { const result = inv<[number, number]>('0xF23D6475640D29EB', pvi()); return [result[0], result[1]]; } /** * @param player * @param p1 */ static addPlayerToRecentGamersList(player: Player, p1: int): void { inv('0x157D8F3DE12B307F', player.handle, p1); } /** * @returns */ static N_0x232E1EB23CDB313C(): boolean { return !!inv('0x232E1EB23CDB313C', rai()); } /** * Note: this native was added in build 1311.23 * * @returns sessionId1; sessionId2 */ static sessionAreSessionIdsEqual(): [boolean, number, number] { const result = inv<[boolean, number, number]>('0x4DEC5000F7B508F0', pvi(), pvi(), rai()); return [!!result[0], result[1], result[2]]; } /** * @returns */ static isTutorialSessionChangePending(): boolean { return !!inv('0x35F0B98A8387274D', rai()); } static ugcReleaseAllCachedDescriptions(): void { inv('0x68103E2247887242'); } /** * @param animScene * @returns */ static requestControlOfAnimScene(animScene: AnimScene): any { return inv('0xAAA92B631B13F614', animScene.handle); } static setMissionFinished(): void { inv('0x3B3D11CD9FFCDFC9'); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x1E4E097D71D449FB(p0: boolean): int { return inv('0x1E4E097D71D449FB', p0, rai()); } /** * Note: this native was added in build 1311.23 * * @param p0 */ static N_0xC1968045EEB563B7(p0: int): void { inv('0xC1968045EEB563B7', p0); } /** * Old name: _CLEAR_LAUNCH_PARAMS */ static clearServiceEventArguments(): void { inv('0x966DD84FB6A46017'); } /** * Old name: _NETWORK_ALLOW_LOCAL_ENTITY_ATTACHMENT * * @param entity * @param toggle */ static allowRemoteAttachmentModification(entity: Entity, toggle: boolean): void { inv('0x267C78C60E806B9A', entity.handle, toggle); } /** * @param volume */ static spawnConfigAddExclusionVolume(volume: Volume): void { inv('0xEEB7818B1D307212', volume.handle); } /** * Note: this native was added in build 1436.31 * * @param p0 * @returns */ static N_0x78271BC02AE9AF83(p0: int): int { return inv('0x78271BC02AE9AF83', p0, rai()); } /** * @param netID * @returns */ static isDamageTrackerActiveOnNetworkId(netID: int): boolean { return !!inv('0x6E192E33AD436366', netID, rai()); } /** * Always returns -1. Seems to be XB1 specific. * * @returns gamerHandle */ static startUserContentPermissionsCheck(): [int, number] { const result = inv<[number, number]>('0xDEB2B99A1AF1A2A6', pvi(), rai()); return [result[0], result[1]]; } /** * @param entity * @returns */ static hasEntityBeenRegisteredWithThisThread(entity: Entity): boolean { return !!inv('0xB07D3185E11657A5', entity.handle, rai()); } /** * @param entity * @param toggle */ static setEntityGhostedToLocalPlayer(entity: Entity, toggle: boolean): void { inv('0xEE5AE9956743BA20', entity.handle, toggle); } /** * @param player * @returns weaponHash: Refer to {@link eWeaponHash} */ static getEntityKillerOfPlayer(player: Player): [Entity | null, number] { const result = inv<[number, number]>('0x42B2DAA6B596F5F8', player.handle, pvi(), rai()); return [createFromHandle('Entity', result[0]), result[1]]; } /** * @param p0 * @returns */ static getNumCreatedMissionPickups(p0: boolean): int { return inv('0xD2BA051B94CA9BCC', p0, rai()); } /** * @param entity * @param p1 * @param p2 * @param p3 */ static setEntityVisibleInCutscene(entity: Entity, p1: boolean, p2: boolean, p3: int): void { inv('0xE0031D3C8F36AB82', entity.handle, p1, p2, p3); } /** * Hardcoded to return -1. * * @param p1 * @returns p0 */ static displaynamesFromHandlesStart(p1: any): [int, number] { const result = inv<[number, number]>('0xD66C9E72B3CC4982', pvi(), p1, rai()); return [result[0], result[1]]; } /** * @returns */ static N_0xCC4E72C339461ED1(): any { return inv('0xCC4E72C339461ED1'); } /** * nullsub, doesn't do anything * * @returns */ static N_0x160F0CE6D76A39C9(): any { return inv('0x160F0CE6D76A39C9'); } /** * Old name: _NETWORK_GET_OLDEST_RESEND_COUNT_FOR_PLAYER * * @param player * @returns */ static getHighestReliableResendCount(player: Player): int { return inv('0x52C1EADAF7B10302', player.handle, rai()); } /** * Checks for session flag 'SF_PRIVATE' * * @returns */ static sessionIsPrivate(): boolean { return !!inv('0xCEF70AA5B3F89BA1', rai()); } /** * @param toggle */ static autoSessionSetAllowedToSplit(toggle: boolean): void { inv('0x0A428058079EE65C', toggle); } static N_0x19B52C20B5C4757C(): void { inv('0x19B52C20B5C4757C'); } /** * @returns sessionRequestId */ static sessionIsNsrrSuccess(): [any, number] { const result = inv<[number, number]>('0x0F44A5C78D114922', pvi()); return [result[0], result[1]]; } /** * @returns */ static isPlatformInvitePending(): any { return inv('0xFC4165C9165C166F'); } /** * @returns */ static isInMpCutscene(): boolean { return !!inv('0x6CC27C9FA2040220', rai()); } /** * @returns */ static N_0x273E04A3A7AD1F2D(): boolean { return !!inv('0x273E04A3A7AD1F2D', rai()); } /** * Old name: _NETWORK_GET_AVERAGE_PACKET_LOSS_FOR_PLAYER * * @param player * @returns */ static getAveragePacketLoss(player: Player): float { return inv('0x350C23949E43686C', player.handle, raf()); } /** * @returns hour; minute; second */ static getGlobalClock(): [boolean, number, number, number] { const result = inv<[boolean, number, number, number]>('0x11A7ADCD629E170F', pvi(), pvi(), pvi(), rai()); return [!!result[0], result[1], result[2], result[3]]; } /** * @param player * @returns */ static isPlayerAParticipant(player: Player): boolean { return !!inv('0x3CA58F6CB7CBD784', player.handle, rai()); } /** * @returns */ static getXp(): int { return inv('0xDB438CC9BC6F4022', rai()); } /** * @param p0 * @param index * @returns */ static ugcQueryGetPlaylistName(p0: any, index: int): string { return inv('0xCAF50048C8D0FBA0', p0, index, ras()); } static N_0xD39A72AE5EBD57E5(): void { inv('0xD39A72AE5EBD57E5'); } /** * @param p0 */ static N_0xD42C543F73233041(p0: boolean): void { inv('0xD42C543F73233041', p0); } static N_0xE5FF65CFF5160752(): void { inv('0xE5FF65CFF5160752'); } /** * @param player * @param reportType * @param description * @param horseName */ static reportPlayer(player: Player, reportType: int, description: string, horseName: string): void { inv('0xA197C35F73AC0F12', player.handle, reportType, description, horseName); } /** * @returns p0 */ static getSizeOfPlayerBroadcastDataStorage(): [int, number] { const result = inv<[number, number]>('0x690806BC83BC8CA2', pvi(), rai()); return [result[0], result[1]]; } /** * @returns */ static N_0x3E4A16BC669E71B3(): boolean { return !!inv('0x3E4A16BC669E71B3', rai()); } /** * @returns */ static getNumParticipants(): int { return inv('0x18D0456E86604654', rai()); } static autoSessionFinishInstance(): void { inv('0xBB51299166B844F3'); } /** * @returns */ static getThisScriptIsNetworkScript(): boolean { return !!inv('0x2910669969E9535E', rai()); } /** * @param p0 * @param index * @returns p2 */ static ugcQueryGetDate(p0: any, index: int): number { const result = inv('0xE0CB4AB15CB32710', p0, index, pvi()); return result; } /** * @param amount */ static reserveNetworkMissionVehicles(amount: int): void { inv('0x76B02E21ED27A469', amount); } /** * @returns */ static isTunableCloudRequestPending(): boolean { return !!inv('0x0467C11ED88B7D28', rai()); } /** * Old name: _NETWORK_IS_CONNECTION_ENDPOINT_RELAY_SERVER * * @param player * @returns */ static isConnectedViaRelay(player: Player): boolean { return !!inv('0x16D3D49902F697BB', player.handle, rai()); } /** * @param p0 * @param toggle */ static setDoorUnnetworked(p0: any, toggle: boolean): void { inv('0xC1E1A3D5ED7617B8', p0, toggle); } /** * @param pos * @param heading * @param p4 * @param p5 * @param p6 * @param p7 */ static resurrectLocalPlayer(pos: Vector3, heading: float, p4: int, p5: boolean, p6: any, p7: boolean): void { inv('0xEA23C49EAA83ACFB', f(pos.x), f(pos.y), f(pos.z), f(heading), p4, p5, p6, p7); } /** * @returns sessionRequestId */ static sessionLeftQueueOrRequestedSession(): [any, number] { const result = inv<[number, number]>('0xECE6A0C1B59CD8BE', pvi()); return [result[0], result[1]]; } /** * @param flags Refer to {@link eSessionFlags} * @returns */ static sessionRemoveSessionFlags(flags: int): any { return inv('0x78335E12DB0BF961', flags); } /** * @returns */ static haveRosBannedPriv(): boolean { return !!inv('0x8020A73847E0CA7D', rai()); } /** * @param p0 * @returns */ static N_0xCA58D4FD20D70F24(p0: any): int { return inv('0xCA58D4FD20D70F24', p0, rai()); } /** * @returns */ static refreshCurrentFriendPage(): any { return inv('0x1F51F367B710A832'); } /** * Same Native Handler as VEH_TO_NET, PED_TO_NET, OBJ_TO_NET and NETWORK_GET_NETWORK_ID_FROM_ENTITY * * @param handle * @returns */ static N_0xF260AF6F43953316(handle: number): int { return inv('0xF260AF6F43953316', handle, rai()); } /** * @returns */ static N_0xA94ECE191D90637A(): int { return inv('0xA94ECE191D90637A', rai()); } /** * @param p0 * @returns */ static getNumReservedMissionPickups(p0: boolean): int { return inv('0x62BE3ECC79FBD004', p0, rai()); } /** * @param toggle */ static allowAllEntityFadingForInstances(toggle: boolean): void { inv('0x4B05B97BA46F419D', toggle); } /** * @param netId */ static preventNetworkIdMigration(netId: int): void { inv('0x7182EDDA1EE7DB5A', netId); } /** * Returns whether the signed-in user has valid Rockstar Online Services (ROS) credentials. * * @returns */ static hasValidRosCredentials(): boolean { return !!inv('0x85443FF4C328F53B', rai()); } /** * @param ped_amt * @param vehicle_amt * @param object_amt * @param pickup_amt * @returns */ static canRegisterMissionEntities(ped_amt: int, vehicle_amt: int, object_amt: int, pickup_amt: int): boolean { return !!inv('0x69778E7564BADE6D', ped_amt, vehicle_amt, object_amt, pickup_amt, rai()); } /** * @returns */ static didRecentGamerNamesRequestSucceed(): any { return inv('0x12AEB56B489415C5'); } /** * @returns sessionRequestId */ static sessionCancelRequest(): [any, number] { const result = inv<[number, number]>('0xE72E5C1289BD1F40', pvi()); return [result[0], result[1]]; } /** * @param message * @returns gamerHandle */ static N_0x5759160AC17C13CE(message: string): number { const result = inv('0x5759160AC17C13CE', pvi(), message); return result; } /** * @param id * @returns */ static cloudHasRequestCompleted(id: int): boolean { return !!inv('0x4C61B39930D045DA', id, rai()); } /** * nullsub, doesn't do anything */ static N_0xACC44768AF229042(): void { inv('0xACC44768AF229042'); } /** * Hardcoded to return zero. ==== PS4 specific info ==== Returns some sort of unavailable reason: * -1 = REASON_INVALID * 0 = REASON_OTHER * 1 = REASON_SYSTEM_UPDATE * 2 = REASON_GAME_UPDATE * 3 = REASON_SIGNED_OUT * 4 = REASON_AGE * 5 = REASON_CONNECTION ================================= * * @returns */ static getNpUnavailableReason(): int { return inv('0x74FB3E29E6D10FA9', rai()); } /** * @param netId * @returns */ static netToPropset(netId: int): PropSet | null { return createFromHandle('PropSet', inv('0xD08066E00D26C448', netId, rai())); } /** * @param paramName */ static clearLaunchParam(paramName: string): void { inv('0x782C94DB6469634D', paramName); } /** * @param p0 */ static N_0x603469298A4308AF(p0: boolean): void { inv('0x603469298A4308AF', p0); } /** * @param player * @returns */ static isAimCamActive(player: Player): any { return inv('0x8E7CE19219669AEB', player.handle); } /** * Note: scripts seem to indicate that this was renamed to NETWORK_IS_PLAYER_IN_MP_FAST_INSTANCE * * @param player * @returns */ static isPlayerInMpCutscene(player: Player): boolean { return !!inv('0x63F9EE203C3619F2', player.handle, rai()); } /** * @param time */ static setLocalPlayerInvincibleTime(time: int): void { inv('0x2D95C7E2D7E07307', time); } /** * @param p0 * @returns */ static N_0x3F2EE18A3E294801(p0: int): int { return inv('0x3F2EE18A3E294801', p0, rai()); } /** * @param player */ static N_0x7B3FF2D193628126(player: Player): void { inv('0x7B3FF2D193628126', player.handle); } /** * @param milliseconds */ static clearClockOverrideOvertime(milliseconds: int): void { inv('0x65F040D91001ED4B', milliseconds); } /** * @param player * @returns */ static getPlayerTutorialSessionInstance(player: Player): int { return inv('0x3B39236746714134', player.handle, rai()); } /** * @param amount * @returns */ static canRegisterMissionVehicles(amount: int): boolean { return !!inv('0x7277F1F2E085EE74', amount, rai()); } /** * Takes the specified time and writes it to the structure specified in the second argument. struct date_time * { * int year; * int PADDING1; * int month; * int PADDING2; * int day; * int PADDING3; * int hour; * int PADDING4; * int minute; * int PADDING5; * int second; * int PADDING6; * }; * * @param posixTime * @returns timeStructure */ static convertPosixTime(posixTime: int): number { const result = inv('0xAC97AF97FA68E5D5', posixTime, pvi()); return result; } /** * @param ugcRequestId * @returns */ static N_0xCD53E6CBF609C012(ugcRequestId: int): boolean { return !!inv('0xCD53E6CBF609C012', ugcRequestId, rai()); } /** * @param p0 * @param index * @returns */ static ugcQueryGetMissionDescHash(p0: any, index: int): number { return (inv('0xA6BF569956C60A60', p0, index, rai())) & 0xFFFFFFFF; } /** * Note: this native was added in build 1311.23 * * @param p0 */ static N_0x335AF56613CA0F49(p0: int): void { inv('0x335AF56613CA0F49', p0); } /** * @param p0 * @returns */ static N_0xE10F2D7715ABABEC(p0: any): any { return inv('0xE10F2D7715ABABEC', p0); } /** * Note: this native was added in build 1311.23 */ static N_0xFD8112109A96877C(): void { inv('0xFD8112109A96877C'); } /** * Always returns 80 * * @returns */ static getMaxNumNetworkPickups(): int { return inv('0xA72835064DD63E4C', rai()); } /** * Old name: _NETWORK_GET_AVERAGE_LATENCY_FOR_PLAYER * * @param player * @returns */ static getAverageLatency(player: Player): float { return inv('0xD414BE129BB81B32', player.handle, raf()); } /** * @param netId * @param toggle */ static setNetworkIdExistsOnAllMachines(netId: int, toggle: boolean): void { inv('0xE05E81A888FA63C8', netId, toggle); } /** * @param completed * @returns */ static setCompletedMpIntroFlowOnCurrentSlot(completed: boolean): any { return inv('0x2C5BD9A43987AA27', completed); } /** * Only used in R* SP Script map_app_event_handler * * @param p1 * @returns gamerHandle */ static requestPedshotTextureLocalDownload(p1: int): [string, number] { const result = inv<[string, number]>('0xCAF4CA2F87779F8F', pvi(), p1, ras()); return [result[0], result[1]]; } /** * @returns */ static autoSessionIsProcessingSessionSplit(): any { return inv('0xA021095C983F20D8'); } /** * @returns */ static N_0x1413B6BF27AB7A95(): int { return inv('0x1413B6BF27AB7A95', rai()); } /** * nullsub, doesn't do anything * * @param player */ static showChatRestrictionMsc(player: Player): void { inv('0x6BFF5F84102DF80A', player.handle); } /** * Returns false if pedshot push failed * * @param texture * @param personaPhotoType * @param formatIndex * @returns */ static personaPhotoWriteScProfile(texture: string, personaPhotoType: int, formatIndex: int): any { return inv('0xB72999D3120599DF', texture, personaPhotoType, formatIndex); } /** * @param p0 * @param p1 * @returns */ static N_0x271F95E55C663B8B(p0: any, p1: any): any { return inv('0x271F95E55C663B8B', p0, p1); } /** * @returns */ static sessionGetSessionFlags(): int { return inv('0x51F33DBC1A41CBFD', rai()); } /** * Note: this native was added in build 1311.23 * * @returns */ static N_0x039AD6B57D5179FF(): int { return inv('0x039AD6B57D5179FF', rai()); } /** * Old name: _NETWORK_GET_NUM_UNACKED_FOR_PLAYER * * @param player * @returns */ static getNumUnackedReliables(player: Player): int { return inv('0xFF8FCF9FFC458A1C', player.handle, rai()); } /** * @param entity * @param toggle */ static allowEntityFadingForInstances(entity: Entity, toggle: boolean): void { inv('0xF3354D6CA46F419D', entity.handle, toggle); } /** * Only used in R* Script startup_clip */ static N_0xFD4272A137703449(): void { inv('0xFD4272A137703449'); } /** * @param player * @param type */ static N_0x51951DE06C0D1C40(player: Player, type: int): void { inv('0x51951DE06C0D1C40', player.handle, type); } /** * @param p0 * @returns */ static N_0x5ED39DA62BEB1330(p0: int): any { return inv('0x5ED39DA62BEB1330', p0); } /** * @param p0 * @param index * @returns */ static ugcQueryGetName(p0: any, index: int): string { return inv('0x2D053EA815702DD1', p0, index, ras()); } /** * @param p0 * @param index * @returns */ static ugcQueryGetBookMarked(p0: any, index: int): any { return inv('0x98539FC453AEA639', p0, index); } /** * @param entity * @param timer * @param p2 */ static setNetworkRespotTimer(entity: Entity, timer: int, p2: boolean): void { inv('0x442B4347B6EC36E8', entity.handle, timer, p2); } /** * @returns gamerHandle */ static getGamertagFromFriend(): [string, number] { const result = inv<[string, number]>('0x5659D87BE674AB17', pvi(), ras()); return [result[0], result[1]]; } /** * @param player * @returns */ static getPlayerWaypointIsActive(player: Player): any { return inv('0xDCC4B7F7112E8AB7', player.handle); } /** * @param inviteIndex * @returns */ static N_0x981146E5C9CE9250(inviteIndex: int): boolean { return !!inv('0x981146E5C9CE9250', inviteIndex, rai()); } /** * @param netID */ static disableProximityMigration(netID: int): void { inv('0x407091CF6037118E', netID); } /** * @param p0 * @param p1 * @param dataSize * @returns outData */ static getRecentGamerNames(p0: int, p1: int, dataSize: int): [any, number] { const result = inv<[number, number]>('0xFEFCC345CE357453', p0, p1, pvi(), dataSize); return [result[0], result[1]]; } /** * @returns */ static isInTutorialSession(): boolean { return !!inv('0xADA24309FE08DACF', rai()); } /** * @param tunableContext * @param tunableName * @returns value */ static accessTunableInt(tunableContext: string | number, tunableName: string | number): [boolean, number] { const result = inv<[boolean, number]>('0x8BE1146DFD5D4468', _h(tunableContext), _h(tunableName), pvi(), rai()); return [!!result[0], result[1]]; } /** * @param tunableContext * @param tunableName * @param defaultValue * @returns */ static tryAccessTunableIntHash(tunableContext: string | number, tunableName: string | number, defaultValue: int): int { return inv('0xA25E006B36719774', _h(tunableContext), _h(tunableName), defaultValue, rai()); } /** * @param tunableContext * @param tunableName * @param defaultValue * @returns */ static tryAccessTunableBoolHash(tunableContext: string | number, tunableName: string | number, defaultValue: boolean): boolean { return !!inv('0xB2AD5D29A99D4B26', _h(tunableContext), _h(tunableName), defaultValue, rai()); } /** * @param seed */ static seedRandomNumberGenerator(seed: int): void { inv('0xF1B84178F8674195', seed); } /** * @param netId * @returns */ static isNetworkIdOwnedByParticipant(netId: int): boolean { return !!inv('0xA1607996431332DF', netId, rai()); } /** * @param scriptName * @param p1 * @param p2 * @returns */ static getHostOfScript(scriptName: string, p1: int, p2: int): Player | null { return createFromHandle('Player', inv('0x1D6A14F1F9A736FC', scriptName, p1, p2, rai())); } static spawnConfigSetCancelSearch(): void { inv('0x765E60A1DCB8B1CE'); } /** * @param player * @returns */ static getPlayerIndex(player: Player): int { return inv('0x24FB80D107371267', player.handle, rai()); } /** * @param ugcRequestId * @returns */ static ugcQueryGetContentNum(ugcRequestId: int): int { return inv('0x76160E0396142765', ugcRequestId, rai()); } /** * @param ctx * @param lh * @param ec * @param h */ static alert(ctx: string | number, lh: string | number, ec: int, h: int): void { inv('0x1BAA028F52EED310', _h(ctx), _h(lh), ec, h); } /** * @param contentId * @returns */ static ugcIsBookMarked(contentId: string): boolean { return !!inv('0xE42D1042F09865FE', contentId, rai()); } /** * @returns p0 */ static autoSessionCanSplitSession(): [any, number] { const result = inv<[number, number]>('0xE404BFF0ABA23CDC', pvi()); return [result[0], result[1]]; } /** * _NETWORK_A* - _NETWORK_C* * * @param p0 */ static N_0x34BC1E79546BA543(p0: boolean): void { inv('0x34BC1E79546BA543', p0); } /** * @param count * @returns data */ static getGamerSessionFromHandle(count: int): [any, number] { const result = inv<[number, number]>('0xFBDFE1C1356E12E8', pvi(), count); return [result[0], result[1]]; } /** * @param p0 * @param p1 * @param p2 */ static registerHostBroadcastVariables(p0: any, p1: any, p2: any): void { inv('0x3E9B2F01C50DF595', p0, p1, p2); } /** * @returns */ static N_0x18B94666CF610AEB(): boolean { return !!inv('0x18B94666CF610AEB', rai()); } /** * p0 appears to be for MP * * @param p0 * @returns */ static getNumReservedMissionObjects(p0: boolean): int { return inv('0xAA81B5F10BC43AC2', p0, rai()); } /** * @returns */ static hasSocialClubAccount(): boolean { return !!inv('0x67A5589628E0CFF6', rai()); } /** * @param netHandle * @returns Returns the `entity` handle for the `netHandle` or `0` if the entity doesn't exist. */ static netToPed(netHandle: int): Ped | null { return createFromHandle('Ped', inv('0xBDCD95FC216A8B3E', netHandle, rai())); } /** * 0 = succeeded * 1 = pending * 2 = failed * * @param textureDownloadId * @returns */ static getStatusOfTextureDownload(textureDownloadId: int): int { return inv('0x8BD6C6DEA20E82C6', textureDownloadId, rai()); } /** * @returns gamerHandle */ static N_0xF23A6D6C11D8EC15(): [boolean, number] { const result = inv<[boolean, number]>('0xF23A6D6C11D8EC15', pvi(), rai()); return [!!result[0], result[1]]; } /** * Always returns 40 * * @returns */ static getMaxNumNetworkVehicles(): int { return inv('0x0AFCE529F69B21FF', rai()); } /** * @param netId * @param p1 * @param p2 */ static keepNetworkIdInFastInstance(netId: int, p1: boolean, p2: int): void { inv('0xE1BC73D6815BA361', netId, p1, p2); } /** * @returns gamerHandle */ static isHandleValid(): [boolean, number] { const result = inv<[boolean, number]>('0x6F79B93B0A8E4133', pvi(), rai()); return [!!result[0], result[1]]; } /** * @param p0 * @returns p1 */ static N_0x691E4DE5309EAEFC(p0: any): number { const result = inv('0x691E4DE5309EAEFC', p0, pvi()); return result; } /** * @param entity * @returns */ static getNetworkIdFromEntity(entity: Entity): int { return inv('0xA11700682F3AD45C', entity.handle, rai()); } /** * Only used in SP R* Script dominoes_sp: p1 = 0 * * @param player * @param p1 */ static N_0x02C4C6C2900D84DF(player: Player, p1: any): void { inv('0x02C4C6C2900D84DF', player.handle, p1); } /** * @returns */ static isSessionActive(): boolean { return !!inv('0xD83C2B94E7508980', rai()); } /** * @param animScene * @returns */ static animSceneToNet(animScene: AnimScene): int { return inv('0xE0D73CDDEA79DDCD', animScene.handle, rai()); } /** * @returns */ static getRank(): int { return inv('0x32C90CDFAF40514C', rai()); } /** * @param message * @returns gamerHandle */ static addFriend(message: string): [boolean, number] { const result = inv<[boolean, number]>('0x8E02D73914064223', pvi(), message, rai()); return [!!result[0], result[1]]; } /** * @returns */ static N_0xB389289F031F059A(): int { return inv('0xB389289F031F059A', rai()); } /** * Subtracts the first argument from the second, then returns whether the result is negative. * * @param timeA * @param timeB * @returns */ static isTimeMoreThan(timeA: int, timeB: int): boolean { return !!inv('0xDE350F8651E4346C', timeA, timeB, rai()); } /** * @returns */ static pedmugshotRequestSend(): any { return inv('0xFBC30B70B3CDB87E'); } /** * Old name: _NETWORK_SET_PASSIVE_MODE_OPTION * * @param toggle */ static setPlayerIsPassive(toggle: boolean): void { inv('0x9C25E8EC4C535FBD', toggle); } /** * Seems to always return 0, but it's used in quite a few loops. for (num3 = 0; num3 < NETWORK::0xCCD8C02D(); num3++) * { * if (NETWORK::NETWORK_IS_PARTICIPANT_ACTIVE(PLAYER::0x98F3B274(num3)) != 0) * { * var num5 = NETWORK::NETWORK_GET_PLAYER_INDEX(PLAYER::0x98F3B274(num3)); * * @returns */ static getMaxNumParticipants(): int { return inv('0xA6C90FBC38E395EE', rai()); } /** * @param ropeId * @returns */ static getNetworkIdFromRopeId(ropeId: int): int { return inv('0x42871327315EDAE8', ropeId, rai()); } /** * @param ugcRequestId * @returns */ static ugcQueryWasForceCancelled(ugcRequestId: int): any { return inv('0xF8F0705E77A0E705', ugcRequestId); } /** * @param p0 */ static ugcSetQueryDataFromOffline(p0: boolean): void { inv('0xF98DDE0A8ED09323', p0); } /** * @returns gamerHandle */ static isFriendHandleInSameTitle(): [boolean, number] { const result = inv<[boolean, number]>('0x665161D250850A9F', pvi(), rai()); return [!!result[0], result[1]]; } /** * @param p0 * @returns */ static N_0xE8E633215471BB5D(p0: any): int { return inv('0xE8E633215471BB5D', p0, rai()); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x917AD74BDCF8B6E9(p0: boolean): int { return inv('0x917AD74BDCF8B6E9', p0, rai()); } /** * nullsub, doesn't do anything * * @param p0 */ static N_0x0CC28C08613BA9E5(p0: int): void { inv('0x0CC28C08613BA9E5', p0); } /** * Old name: _IS_ENTITY_GHOSTED_TO_LOCAL_PLAYER * * @param entity * @returns */ static isEntityAGhost(entity: Entity): boolean { return !!inv('0x21D04D7BC538C146', entity.handle, rai()); } static clearGetGamerStatus(): void { inv('0x86E0660E4F5C956D'); } /** * @param player * @param entity * @returns p2 */ static getAssistedDamageOfEntity(player: Player, entity: Entity): [boolean, number] { const result = inv<[boolean, number]>('0x4CACA84440FA26F6', player.handle, entity.handle, pvi(), rai()); return [!!result[0], result[1]]; } /** * flags: * enum eSessionRequestOptionFlags * { * SESSION_REQUEST_OPTION_FLAG_INCLUDE_GANG_MEMBERS = (1 << 1), * SESSION_REQUEST_OPTION_FLAG_LEADER_KEEPS_GANG = (1 << 7), * }; seamlessType: * enum eSeamlessType * { * SEAMLESS_TYPE_NORMAL, * SEAMLESS_TYPE_PVE, * SEAMLESS_TYPE_DEV, * SEAMLESS_TYPE_NO_SEAMLESS * }; * * @param flags * @param seamlessType * @returns sessionRequestId */ static requestSessionSeamless(flags: int, seamlessType: int): [any, number] { const result = inv<[number, number]>('0x04019AE4956D4393', flags, seamlessType, pvi()); return [result[0], result[1]]; } /** * Note: this native was added in build 1311.16 * * @returns */ static isObjectReassignmentInProgress(): boolean { return !!inv('0x8FE9EB11EC9CC23A', rai()); } /** * @param scriptName * @param instanceId * @param position * @returns */ static getNumScriptParticipants(scriptName: string, instanceId: int, position: string | number): int { return inv('0x3658E8CD94FC121A', scriptName, instanceId, _h(position), rai()); } /** * @param p0 * @returns */ static N_0x6C27442A225A241A(p0: int): int { return inv('0x6C27442A225A241A', p0, rai()); } /** * @param p0 * @param p1 */ static spawnConfigSetTuningFloat(p0: string | number, p1: float): void { inv('0x0608326F7B98C08D', _h(p0), f(p1)); } /** * @param p1 * @returns outData */ static N_0x7BCA0A3972708436(p1: int): [int, number] { const result = inv<[number, number]>('0x7BCA0A3972708436', pvi(), p1, rai()); return [result[0], result[1]]; } /** * Hardcoded to return zero. * * @param p0 * @param p1 * @param p2 * @returns */ static getDisplaynamesFromHandles(p0: any, p1: any, p2: any): int { return inv('0x58CC181719256197', p0, p1, p2, rai()); } /** * @returns */ static isHostOfThisScript(): boolean { return !!inv('0x83CD99A1E6061AB5', rai()); } /** * @param p0 * @param index * @returns */ static ugcQueryGetLanguage(p0: any, index: int): int { return inv('0x97764E8AC6487A9A', p0, index, rai()); } /** * Note: this native was added in build 1355.30 * * @param p0 */ static N_0x422F9D6D6C7BC290(p0: int): void { inv('0x422F9D6D6C7BC290', p0); } /** * @param propSet * @returns */ static propsetToNet(propSet: PropSet): int { return inv('0x74F99EF7EF503398', propSet.handle, rai()); } /** * @param p0 */ static N_0x5CD3AAD8FF9ED121(p0: any): void { inv('0x5CD3AAD8FF9ED121', p0); } /** * @param netId * @returns */ static netToAnimScene(netId: int): AnimScene | null { return createFromHandle('AnimScene', inv('0xD7F6781A0ABAF6FB', netId, rai())); } /** * @param p0 * @param index * @returns */ static ugcQueryGetContentHasPlayerRecord(p0: any, index: int): any { return inv('0xF794765390A6DCA5', p0, index); } static N_0x814729078AED6D30(): void { inv('0x814729078AED6D30'); } /** * @returns */ static isSignedOnline(): boolean { return !!inv('0x1077788E268557C2', rai()); } /** * @returns */ static isInSpectatorMode(): boolean { return !!inv('0x048746E388762E11', rai()); } static N_0x49CF17A564918E8D(): void { inv('0x49CF17A564918E8D'); } /** * Returns ugcRequestId * * @param categoryType * @param p1 * @param maxGet * @param contentTypeName * @param p4 * @param p5 * @returns */ static ugcQueryByCategory(categoryType: int, p1: int, maxGet: int, contentTypeName: string, p4: int, p5: boolean): int { return inv('0x8C109958C9BB559D', categoryType, p1, maxGet, contentTypeName, p4, p5, rai()); } /** * category: * enum eOnCallType * { * NETWORK_SESSION_REQUEST_ON_CALL_TYPE_STORY = 2, * NETWORK_SESSION_REQUEST_ON_CALL_TYPE_MATCH = 3 * }; * * @param flags * @param category * @param userHash * @returns p2; sessionRequestId */ static sessionRequestSessionOnCall(flags: int, category: int, userHash: int): [any, number, number] { const result = inv<[number, number, number]>('0x23D9C1F2E4098EDC', flags, category, pvi(), userHash, pvi()); return [result[0], result[1], result[2]]; } /** * @param p0 * @param p1 * @param p2 * @returns */ static N_0xD4022C7286B0DFA2(p0: string, p1: int, p2: int): any { return inv('0xD4022C7286B0DFA2', p0, p1, p2); } static N_0xB131E686BD97B3F8(): void { inv('0xB131E686BD97B3F8'); } /** * @param netId * @returns */ static getPlayerOwnerOfNetworkId(netId: int): Player | null { return createFromHandle('Player', inv('0xA6C0787443C9583E', netId, rai())); } /** * @param toggle */ static autoSessionSetAutoWarpEnabled(toggle: boolean): void { inv('0x4440FEE3EFE78F54', toggle); } /** * @returns */ static autoSessionIsObjectCreationPaused(): any { return inv('0x0E2C3AEE6CE603B7'); } /** * matchType: * enum eMatchType * { * MATCHTYPE_DEPRECATED, * MATCHTYPE_UGCPLAYLIST, * MATCHTYPE_UGCMISSION, * MATCHTYPE_MINIGAME, * MATCHTYPE_SEAMLESS, * MATCHTYPE_PRIVATE_DO_NOT_USE * }; * * @param flags * @param matchType * @param userHash * @param p3 * @returns sessionRequestId */ static sessionRequestSessionCompetitive(flags: int, matchType: int, userHash: int, p3: int): [any, number] { const result = inv<[number, number]>('0x309BBEBEA8A3986C', flags, matchType, userHash, p3, pvi()); return [result[0], result[1]]; } /** * @param netId * @returns */ static requestControlOfNetworkId(netId: int): boolean { return !!inv('0xA670B3662FAFFBD0', netId, rai()); } /** * @param volume * @param p1 * @param p2 * @param p3 */ static N_0x405DDEFB1F531B18(volume: Volume, p1: boolean, p2: any, p3: any): void { inv('0x405DDEFB1F531B18', volume.handle, p1, p2, p3); } /** * Related to container entity (RANSACK_ATTACHED_LOCKBOX / RANSACK_ATTACHED_CHEST) * * @param p0 * @returns */ static N_0x950ACD8F05B7B9DF(p0: any): any { return inv('0x950ACD8F05B7B9DF', p0); } /** * Only used in R* Script net_rolling_playlist */ static sessionPlaylistGetUpcomingContent(): void { inv('0x8F9DB6CD03B42B58'); } /** * @param p0 */ static N_0x455156F47DC6B78C(p0: boolean): void { inv('0x455156F47DC6B78C', p0); } /** * @param amount */ static reserveNetworkClientMissionObjects(amount: int): void { inv('0xE7DDA8BD3BCF751C', amount); } /** * @returns */ static commerceStoreIsOpen(): boolean { return !!inv('0xCE5E79D9E303628E', rai()); } /** * @param flags * @returns */ static sessionRemovePlayerFlags(flags: int): any { return inv('0x3215BBE34D3418C5', flags); } /** * @returns */ static getTimeoutTime(): int { return inv('0x5ED0356A0CE3A34F', rai()); } /** * @param p0 */ static setLocalPlayerInvisibleLocally(p0: boolean): void { inv('0xE5F773C1A1D9D168', p0); } /** * @param threadId * @returns */ static isThreadActive(threadId: int): any { return inv('0x31DAD2CD6D49546E', threadId); } /** * Returns false if pedshot push failed * * @param texture * @param playerSlot * @param p2 * @param personaPhotoLocalCacheType * @returns */ static personaPhotoWriteLocal(texture: string, playerSlot: int, p2: int, personaPhotoLocalCacheType: int): any { return inv('0x2A48D9567940598F', texture, playerSlot, p2, personaPhotoLocalCacheType); } /** * @param index * @returns */ static getParticipantIndex(index: int): int { return inv('0x1B84DF6AF2A46938', index, rai()); } /** * @param p0 */ static N_0xD637D327080CD86E(p0: int): void { inv('0xD637D327080CD86E', p0); } /** * @returns */ static sessionIsAnyRequestInProgress(): any { return inv('0xBAFFDE5F953720D9'); } /** * @param p0 * @param p1 * @param p2 * @param p3 * @param p4 * @param p5 * @returns */ static isSphereVisibleToPlayer(p0: any, p1: any, p2: any, p3: any, p4: any, p5: any): boolean { return !!inv('0xDC3A310219E5DA62', p0, p1, p2, p3, p4, p5, rai()); } /** * @param netHandle * @returns Returns the `entity` handle for the `netHandle` or `0` if the entity doesn't exist. */ static netToEnt(netHandle: int): Entity | null { return createFromHandle('Entity', inv('0xBFFEAB45A9A9094A', netHandle, rai())); } /** * Note: this native was added in build 1311.23 * * @returns */ static N_0x062842D61D0D53FD(): boolean { return !!inv('0x062842D61D0D53FD', rai()); } /** * @param p0 */ static N_0xFF36F36B07E69059(p0: any): void { inv('0xFF36F36B07E69059', p0); } /** * @param flags * @returns */ static sessionSetPlayerFlags(flags: int): any { return inv('0x0AE241A4A9ADEEEC', flags); } /** * @param contentId * @param dataSize * @param p4 * @param flags * @returns gamerHandle; data */ static sendSessionInvite(contentId: string, dataSize: int, p4: int, flags: int): [any, number, number] { const result = inv<[number, number, number]>('0xE47001B7CB8B98AE', pvi(), contentId, pvi(), dataSize, p4, flags); return [result[0], result[1], result[2]]; } static N_0x61BFBAA795E712AD(): void { inv('0x61BFBAA795E712AD'); } /** * @param playerSlot * @param personaPhotoLocalCacheType * @returns */ static localPlayerPedshotTextureDownloadRequest(playerSlot: int, personaPhotoLocalCacheType: int): int { return inv('0x6E2FD8CF7EB10E53', playerSlot, personaPhotoLocalCacheType, rai()); } /** * Hardcoded to return zero. * * @returns */ static N_0x5133CF81924F1129(): int { return inv('0x5133CF81924F1129', rai()); } /** * Returns the Player associated to a given Ped when in an online session. * * @param ped * @returns */ static getPlayerIndexFromPed(ped: Ped): Player | null { return createFromHandle('Player', inv('0x6C0E2E0125610278', ped.handle, rai())); } /** * @param netID * @returns */ static doesNetworkIdExist(netID: int): boolean { return !!inv('0x38CE16C96BD11344', netID, rai()); } /** * @param local * @param remote * @param instanceId */ static setLocalPlayerVisibleInCutscene(local: boolean, remote: boolean, instanceId: int): void { inv('0xD1065D68947E7B6E', local, remote, instanceId); } /** * Params: p5 = 50.f, p6 = 0 in R* Script net_fetch (NET_FETCH_CLIENT_UPDATE_PED_ROLE_CLUE_IDLE) * * @param pos * @param p5 * @param p6 * @returns p0; p1 */ static N_0x880A7202301E282B(pos: Vector3, p5: float, p6: any): [boolean, number, number] { const result = inv<[boolean, number, number]>('0x880A7202301E282B', pvi(), pvi(), f(pos.x), f(pos.y), f(pos.z), f(p5), p6, rai()); return [!!result[0], result[1], result[2]]; } /** * Note: this native was added in build 1491.50 * * @param p0 * @returns */ static N_0xDBDF80673BBA3D65(p0: int): boolean { return !!inv('0xDBDF80673BBA3D65', p0, rai()); } /** * @param p0 */ static N_0x9F24A34863FD35DA(p0: any): void { inv('0x9F24A34863FD35DA', p0); } static clearPlatformInvite(): void { inv('0xA4484173759749B1'); } /** * @param toggle * @param p2 * @returns p1 */ static autoSessionSetAllowedToMerge(toggle: boolean, p2: int): number { const result = inv('0x63246A24F5747510', toggle, pvi(), p2); return result; } /** * @returns */ static getTotalNumPlayers(): int { return inv('0xCF61D4B4702EE9EB', rai()); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x744BFBB0CA908161(p0: boolean): int { return inv('0x744BFBB0CA908161', p0, rai()); } /** * @param player * @returns */ static isPlayerActive(player: Player): boolean { return !!inv('0xB8DFD30D6973E135', player.handle, rai()); } /** * @returns */ static getPlatformInviteId(): int { return inv('0x9BCF28FB5D65A9BE', rai()); } /** * @param p0 * @param index * @returns */ static ugcQueryGetOwnerId(p0: any, index: int): string { return inv('0xF9F0B3028431967B', p0, index, ras()); } /** * @param tunableContext * @param tunableName * @param defaultValue * @returns */ static tryAccessTunableFloatHash(tunableContext: string | number, tunableName: string | number, defaultValue: float): float { return inv('0xA18393089C05E49C', _h(tunableContext), _h(tunableName), f(defaultValue), raf()); } /** * @returns */ static hasNetworkTimeStarted(): boolean { return !!inv('0x46718ACEEDEAFC84', rai()); } /** * nullsub, doesn't do anything */ static showPsnUgcRestriction(): void { inv('0x5C497525F803486B'); } /** * @param p0 * @param p1 * @returns */ static ugcQueryGetPosixUpdatedDate(p0: any, p1: any): int { return inv('0x21A99A72B00D8002', p0, p1, rai()); } /** * @param index * @returns */ static hasRosPrivilege(index: int): boolean { return !!inv('0xA699957E60D80214', index, rai()); } /** * @returns */ static isSessionStarted(): boolean { return !!inv('0x9DE624D2FC4B603F', rai()); } /** * @param toggle */ static setLocalPlayerSyncLookAt(toggle: boolean): void { inv('0x524FF0AEFF9C3973', toggle); } /** * @returns gamerHandle */ static showProfileUi(): number { const result = inv('0x859ED1CEA343FCA8', pvi()); return result; } /** * @param player * @param toggle */ static setPlayerVisibleLocally(player: Player, toggle: boolean): void { inv('0xFAA10F1FAFB11AF2', player.handle, toggle); } /** * *NETWORK_SPAWN_CONFIG** * * @param nsctf */ static N_0x5D3C528B7A7DF836(nsctf: string | number): void { inv('0x5D3C528B7A7DF836', _h(nsctf)); } /** * @returns */ static autoSessionIsAutoWarpDisabled(): any { return inv('0xE258570E0C116A66'); } /** * @returns */ static didGetGamerStatusSucceed(): any { return inv('0x5AE17C6B0134B7F1'); } /** * @param p0 * @param p1 * @param p2 * @param p3 * @param p4 * @returns */ static isSphereVisibleToAnotherMachine(p0: any, p1: any, p2: any, p3: any, p4: any): boolean { return !!inv('0xD82CF8E64C8729D8', p0, p1, p2, p3, p4, rai()); } /** * @param p0 * @returns */ static checkCommunicationPrivileges(p0: int): boolean { return !!inv('0x83F28CE49FBBFFBA', p0, rai()); } /** * Note: this native was added in build 1355.30 */ static N_0x40FEDB13870042F1(): void { inv('0x40FEDB13870042F1'); } /** * @param player1 * @param player2 * @returns */ static N_0xFE53B1F8D43F19BF(player1: Player, player2: Player): int { return inv('0xFE53B1F8D43F19BF', player1.handle, player2.handle, rai()); } /** * @param id * @returns */ static cloudDidRequestSucceed(id: int): boolean { return !!inv('0x3A3D5568AF297CD5', id, rai()); } /** * @param player * @returns */ static isPlayerConnected(player: Player): boolean { return !!inv('0x93DC1BE4E1ABE9D1', player.handle, rai()); } /** * Hardcoded to return false. * * @returns gamerHandle */ static isPendingFriend(): [any, number] { const result = inv<[number, number]>('0x0BE73DA6984A6E33', pvi()); return [result[0], result[1]]; } /** * Note: this native was added in build 1311.23 * * @param p0 */ static N_0xA7670F7991099680(p0: int): void { inv('0xA7670F7991099680', p0); } /** * @param instanceId */ static setLocalPlayerPendingFastInstanceId(instanceId: int): void { inv('0x007FF852DCF49DA4', instanceId); } /** * @param p0 */ static N_0xF342F6BD0A8287D5(p0: any): void { inv('0xF342F6BD0A8287D5', p0); } /** * @returns */ static isFindingGamers(): boolean { return !!inv('0xDDDF64C91BFCF0AA', rai()); } /** * Returns textureDownloadId * * @param filePath * @param name * @param p3 * @returns gamerHandle */ static textureDownloadRequest(filePath: string, name: string, p3: boolean): [int, number] { const result = inv<[number, number]>('0x16160DA74A8E74A2', pvi(), filePath, name, p3, rai()); return [result[0], result[1]]; } /** * @returns gamerHandle */ static isFriendHandleOnline(): [boolean, number] { const result = inv<[boolean, number]>('0xE348D1404BD80146', pvi(), rai()); return [!!result[0], result[1]]; } /** * @param netId * @returns weaponHash: Refer to {@link eWeaponHash} */ static getDestroyerOfNetworkId(netId: int): [int, number] { const result = inv<[number, number]>('0x7A1ADEEF01740A24', netId, pvi(), rai()); return [result[0], result[1]]; } /** * Returns value of fwuiCachedSetting "general.onlineNotificationsInStoryMode" * * @returns */ static areOnlineNotificationsShownInStoryMode(): boolean { return !!inv('0xF5C5929E07512F80', rai()); } /** * Subtracts the second argument from the first. * * @param timeA * @param timeB * @returns */ static getTimeDifference(timeA: int, timeB: int): int { return inv('0xA2C6FC031D46FFF0', timeA, timeB, rai()); } /** * @param p0 * @returns */ static N_0xD1FFB246F4E088AC(p0: int): boolean { return !!inv('0xD1FFB246F4E088AC', p0, rai()); } /** * @param description * @returns */ static ugcDidDescriptionRequestSucceed(description: string | number): boolean { return !!inv('0x162C23CA83ED0A62', _h(description), rai()); } /** * @returns */ static getGameMode(): int { return inv('0x225640E09EFFDC3F', rai()); } /** * @param amount */ static reserveNetworkClientMissionPeds(amount: int): void { inv('0x807E119F80231732', amount); } /** * @param p0 * @param p1 * @param p2 * @param p3 */ static setInMpCutscene(p0: boolean, p1: boolean, p2: int, p3: boolean): void { inv('0x9CA5DE655269FEC4', p0, p1, p2, p3); } /** * @param toggle * @param playerPed */ static setInSpectatorMode(toggle: boolean, playerPed: Ped): void { inv('0x423DE3854BB50894', toggle, playerPed.handle); } /** * @param p0 */ static N_0x3E74A687A73979C6(p0: boolean): void { inv('0x3E74A687A73979C6', p0); } /** * @returns sessionRequestId */ static sessionIsRequestPendingTransition(): [any, number] { const result = inv<[number, number]>('0xCCF878D50F8AB10D', pvi()); return [result[0], result[1]]; } /** * @param offset */ static spawnConfigSetGroundToRootOffset(offset: float): void { inv('0x59577799F6AE2F34', f(offset)); } /** * @returns */ static checkAccessAndAlertIfFail(): any { return inv('0x2A8112A974DE1EF6'); } /** * Note: this native was added in build 1311.23 * * @returns */ static N_0xFB3205788F8AFA3F(): int { return inv('0xFB3205788F8AFA3F', rai()); } /** * @returns */ static getNumRecentGamers(): int { return inv('0x37A834AEC6A4F74A', rai()); } /** * @returns */ static N_0xD3A3C8B9F3BDEF81(): any { return inv('0xD3A3C8B9F3BDEF81'); } /** * Returns the entity's network ID. * * @param entity * @returns */ static N_0xF302AB9D978352EE(entity: Entity): int { return inv('0xF302AB9D978352EE', entity.handle, rai()); } static disableRealtimeMultiplayer(): void { inv('0x236905C700FDB54D'); } /** * @param volume */ static spawnConfigRemoveExclusionVolume(volume: Volume): void { inv('0xA35E7BF20FA269E0', volume.handle); } /** * @param tunableContext * @param tunableName * @returns */ static doesTunableExist(tunableContext: string | number, tunableName: string | number): boolean { return !!inv('0x85E5F8B9B898B20A', _h(tunableContext), _h(tunableName), rai()); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x982D7AD755B8F62C(p0: boolean): int { return inv('0x982D7AD755B8F62C', p0, rai()); } static startSoloTutorialSession(): void { inv('0x17E0198B3882C2CB'); } /** * @param p0 * @param p2 * @param p3 * @returns p1 */ static setRichPresence(p0: int, p2: int, p3: int): number { const result = inv('0x1DCCACDCFC569362', p0, pvi(), p2, p3); return result; } /** * @returns */ static pedmugshotTake(): any { return inv('0xCD954F330693F5F2'); } /** * @param entity */ static N_0xBB1EC8C2EEF33BAA(entity: Entity): void { inv('0xBB1EC8C2EEF33BAA', entity.handle); } /** * @returns */ static haveOnlinePrivileges(): boolean { return !!inv('0x25CB5A9F37BFD063', rai()); } /** * @param p0 * @param index * @returns */ static ugcQueryGetRootContentId(p0: any, index: int): string { return inv('0x566CEB0542EF5ECF', p0, index, ras()); } /** * @returns */ static didFindGamersSucceed(): any { return inv('0xF9B83B77929D8863'); } static N_0x0BF90CBB6B72977B(): void { inv('0x0BF90CBB6B72977B'); } /** * @returns gamerHandle */ static getLocalHandle(): number { const result = inv('0xE86051786B66CD8E', pvi()); return result; } /** * nullsub, doesn't do anything * * @param p0 */ static N_0x2C4E98DDA475364F(p0: string): void { inv('0x2C4E98DDA475364F', p0); } /** * @param entity * @returns */ static getGlobalEntityFlags(entity: Entity): int { return inv('0xDD7806FD0543BC3D', entity.handle, rai()); } /** * @param description * @returns */ static ugcHasDescriptionRequestFinished(description: string | number): boolean { return !!inv('0xEBFA8D50ADDC54C4', _h(description), rai()); } /** * @returns */ static canSessionEnd(): boolean { return !!inv('0x4EEBC3694E49C572', rai()); } /** * @returns */ static hasCurrentGetGamerStatusStarted(): any { return inv('0x25189F9908E9CD65'); } /** * @param enabled * @param flagIndex * @returns */ static setMpMissionFlagOnCurrentSlot(enabled: boolean, flagIndex: int): any { return inv('0x86FD10251A7118A4', enabled, flagIndex); } /** * Hardcoded to return false. * * @returns */ static isInPlatformPartyChat(): boolean { return !!inv('0xFD8B834A8BA05048', rai()); } /** * @param friendIndex * @returns gamerHandle */ static handleFromFriend(friendIndex: int): number { const result = inv('0xD45CB817D7E177D2', friendIndex, pvi()); return result; } /** * @returns */ static commerceStoreIsEnabled(): boolean { return !!inv('0xDBC754CB6CCB9378', rai()); } /** * @param p0 */ static N_0xA95470DA137587F5(p0: boolean): void { inv('0xA95470DA137587F5', p0); } /** * @param netId * @returns */ static hasControlOfNetworkId(netId: int): boolean { return !!inv('0x4D36070FE0215186', netId, rai()); } /** * @param flags */ static spawnConfigSetFlags(flags: int): void { inv('0xF94A0D5B254375DF', flags); } /** * Same as NETWORK_GET_AVERAGE_LATENCY (0xD414BE129BB81B32) Old name: _NETWORK_GET_AVERAGE_LATENCY_FOR_PLAYER_2 * * @param player * @returns */ static getAveragePing(player: Player): float { return inv('0x0E3A041ED6AC2B45', player.handle, raf()); } /** * @param p0 * @returns */ static getNumCreatedMissionObjects(p0: boolean): int { return inv('0x12B6281B6C6706C0', p0, rai()); } /** * Note: this native was added in build 1311.16 GET_NUM_* * * @returns */ static N_0x02B3CDD652B3CDD6(): int { return inv('0x02B3CDD652B3CDD6', rai()); } /** * nullsub, doesn't do anything */ static N_0x2CD41AC000E6F611(): void { inv('0x2CD41AC000E6F611'); } /** * @returns */ static sessionGetSessionType(): int { return inv('0xF0C0C94B404206FA', rai()); } /** * @returns */ static isClockTimeOverridden(): boolean { return !!inv('0xD7C95D322FF57522', rai()); } /** * @param player * @returns gamerHandle */ static handleFromPlayer(player: Player): number { const result = inv('0x388EB2B86C73B6B3', player.handle, pvi()); return result; } /** * Returns string for GET_STATUS_OF_LOAD_MISSION_CREATOR_PHOTO * * @param p0 * @param p1 * @param p2 * @returns */ static ugcQueryGetCreatorPhoto(p0: any, p1: int, p2: any): string { return inv('0x409FE0CA6A4D1D49', p0, p1, p2, ras()); } /** * @param toggle */ static setRecentGamersEnabled(toggle: boolean): void { inv('0x29FE035D35B8589C', toggle); } /** * @returns */ static getLaunchParamString(): string { return inv('0xC59AB6A04333C502', ras()); } /** * @param entity * @param toggle */ static setEntityRemainsWhenUnnetworked(entity: Entity, toggle: boolean): void { inv('0xD785864798258032', entity.handle, toggle); } /** * @param flags * @param userHash * @param p2 * @returns sessionRequestId */ static sessionRequestSessionNominated(flags: int, userHash: int, p2: int): [boolean, number] { const result = inv<[boolean, number]>('0x4F4672457FF597D1', flags, userHash, p2, pvi(), rai()); return [!!result[0], result[1]]; } /** * @param description * @returns */ static ugcIsDescriptionRequestInProgress(description: string | number): boolean { return !!inv('0x2D5DC831176D0114', _h(description), rai()); } /** * @param ugcRequestId */ static ugcClearQueryResults(ugcRequestId: int): void { inv('0xE931354FEA710038', ugcRequestId); } /** * @param threadId * @returns */ static getHostOfThread(threadId: int): Player | null { return createFromHandle('Player', inv('0xB4A25351D79B444C', threadId, rai())); } /** * @returns */ static isGameInProgress(): boolean { return !!inv('0x10FAB35428CCC9D7', rai()); } /** * @param rangeStart * @param rangeEnd * @returns */ static getRandomIntRanged(rangeStart: int, rangeEnd: int): int { return inv('0xE30CF56F1EFA5F43', rangeStart, rangeEnd, rai()); } /** * @param p0 * @returns */ static acceptRsInvite(p0: int): any { return inv('0xB2CEA5105AAC8DDE', p0); } /** * @param player * @param toggle */ static concealPlayer(player: Player, toggle: boolean): void { inv('0xBBDF066252829606', player.handle, toggle); } /** * ^^ I attempted this by grabbing an object with GET_ENTITY_PLAYER_IS_FREE_AIMING_AT and setting this naive no matter the toggle he could still see it. pc or last gen? ^^ last-gen Old name: _NETWORK_SET_ENTITY_INVISIBLE_TO_NETWORK * * @param entity * @param toggle */ static setEntityOnlyExistsForParticipants(entity: Entity, toggle: boolean): void { inv('0xF1CA12B18AEF5298', entity.handle, toggle); } /** * @param doorHash */ static setDoorNetworked(doorHash: string | number): void { inv('0x51D99497ABF3F451', _h(doorHash)); } /** * @param p0 * @param index * @returns gamerHandle */ static ugcQueryGetCreatorHandle(p0: any, index: int): [any, number] { const result = inv<[number, number]>('0xADB56322EEDFBDC9', p0, index, pvi()); return [result[0], result[1]]; } /** * @param paramName * @returns */ static getLaunchParamExists(paramName: string): any { return inv('0x02E97CE283648CD9', paramName); } /** * nullsub, doesn't do anything */ static N_0xFC6FCF4C03F1BBF6(): void { inv('0xFC6FCF4C03F1BBF6'); } static N_0x43CF999205084B4B(): void { inv('0x43CF999205084B4B'); } /** * p0 appears to be for MP * * @param p0 * @returns */ static getNumReservedMissionVehicles(p0: boolean): int { return inv('0xCF3A965906452031', p0, rai()); } /** * @param name * @returns */ static textureDownloadTextureNameIsValid(name: string): any { return inv('0xE2C3CEC3C0903A00', name); } /** * @param scriptName * @param p1 * @param p2 * @param p3 * @returns */ static isScriptActive(scriptName: string, p1: int, p2: boolean, p3: int): boolean { return !!inv('0x9D40DF90FAD26098', scriptName, p1, p2, p3, rai()); } /** * @param p0 */ static N_0x5CB8B0C846D0F30B(p0: any): void { inv('0x5CB8B0C846D0F30B', p0); } /** * @returns loadingState */ static canAccessMultiplayer(): [boolean, number] { const result = inv<[boolean, number]>('0xAF50DA1A3F8B1BA4', pvi(), rai()); return [!!result[0], result[1]]; } /** * @returns p0 */ static getCurrentFriendPageData(): [any, number] { const result = inv<[number, number]>('0xA3EEC0A5AFF3FC5B', pvi()); return [result[0], result[1]]; } /** * @returns p0 */ static getSizeOfHostBroadcastDataStorage(): [int, number] { const result = inv<[number, number]>('0xBA24095EA96DFE17', pvi(), rai()); return [result[0], result[1]]; } /** * @returns */ static getInstanceIdOfThisScript(): int { return inv('0x638A3A81733086DB', rai()); } /** * @param p0 * @returns */ static awardHasReachedMaxclaim(p0: any): any { return inv('0xFBE782B3165AC8EC', p0); } /** * @param p0 * @returns */ static N_0xBB697756309D77EE(p0: boolean): any { return inv('0xBB697756309D77EE', p0); } /** * @returns */ static autoSessionIsInstancedSession(): any { return inv('0x277865A734918AE6'); } /** * @param p0 * @param p1 * @returns */ static resetPopulation(p0: boolean, p1: int): any { return inv('0x101F538C25ABB39A', p0, p1); } /** * @param ped * @returns Returns the network id for the specified `ped` or `0` if the entity isn't networked. */ static pedToNet(ped: Ped): int { return inv('0x0EDEC3C276198689', ped.handle, rai()); } /** * @param p0 * @returns */ static N_0x27B1AE4D8C652F08(p0: int): int { return inv('0x27B1AE4D8C652F08', p0, rai()); } /** * gets the object id of a network id * * @param netHandle * @returns Returns the `entity` handle for the `netHandle` or `0` if the entity doesn't exist. */ static netToObj(netHandle: int): Prop | null { return createFromHandle('Prop', inv('0xD8515F5FEA14CB3F', netHandle, rai())); } /** * Note: this native was added in build 1311.23 * * @param ctx * @param ec * @param ex * @param ro */ static N_0x19447FCAE97704DC(ctx: string | number, ec: int, ex: boolean, ro: boolean): void { inv('0x19447FCAE97704DC', _h(ctx), ec, ex, ro); } /** * Hardcoded to return zero. * * @returns */ static getPromotionDlgSeenCount(): int { return inv('0x2FB53C631A49BE92', rai()); } /** * @param waterDepthLevel */ static spawnConfigSetLevelWaterDepth(waterDepthLevel: int): void { inv('0xBDCC671B911040F9', waterDepthLevel); } /** * @returns */ static N_0x41452E8A3B9C0C4B(): int { return inv('0x41452E8A3B9C0C4B', rai()); } /** * If you are host, returns true else returns false. * * @returns */ static isHost(): boolean { return !!inv('0x8DB296B814EDDA07', rai()); } /** * @returns p0 */ static N_0xA6F1BAABFF6AD7B9(): number { const result = inv('0xA6F1BAABFF6AD7B9', pvi()); return result; } /** * @returns */ static spawnConfigSearchInProgress(): any { return inv('0x89EC2FC89ECB1005'); } /** * @param pos */ static N_0x2686BD9566B65EDA(pos: Vector3): void { inv('0x2686BD9566B65EDA', f(pos.x), f(pos.y), f(pos.z)); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x9E5A47744C0F0376(p0: int): boolean { return !!inv('0x9E5A47744C0F0376', p0, rai()); } /** * @param p0 * @param p1 * @param p2 * @returns */ static N_0xC0CFFDA87C2C163D(p0: int, p1: any, p2: int): any { return inv('0xC0CFFDA87C2C163D', p0, p1, p2); } /** * @param amount */ static reserveNetworkMissionPickups(amount: int): void { inv('0x4D40E7D749BC6E6D', amount); } /** * Note: this native was added in build 1311.23 * * @param p0 */ static N_0xD3B6EBC6C3D77D44(p0: int): void { inv('0xD3B6EBC6C3D77D44', p0); } /** * @param p1 * @param p2 * @param p3 * @param p5 * @returns p0; p4 */ static ugcTextureDownloadRequest(p1: any, p2: any, p3: any, p5: boolean): [int, number, number] { const result = inv<[number, number, number]>('0x308F96458B7087CC', pvi(), p1, p2, p3, pvi(), p5, rai()); return [result[0], result[1], result[2]]; } /** * p0 appears to be for MP * * @param p0 * @returns */ static getNumReservedMissionPeds(p0: boolean): int { return inv('0x1F13D5AE5CB17E17', p0, rai()); } /** * @returns */ static isInSession(): boolean { return !!inv('0xCA97246103B63917', rai()); } /** * @param player1 * @param player2 * @returns */ static N_0x862C5040F4888741(player1: Player, player2: Player): boolean { return !!inv('0x862C5040F4888741', player1.handle, player2.handle, rai()); } /** * @param player * @param damageMultiplier */ static setLocalPlayerDamageMultiplierForPlayer(player: Player, damageMultiplier: float): void { inv('0xD041A32992A55F84', player.handle, f(damageMultiplier)); } /** * @param toggle */ static disableLeaveRemotePedBehind(toggle: boolean): void { inv('0xC505036A35AFD01B', toggle); } /** * @param netHandle * @param p1 */ static N_0x894B5ECAB45D2342(netHandle: int, p1: any): void { inv('0x894B5ECAB45D2342', netHandle, p1); } /** * @param name */ static textureDownloadReleaseByName(name: string): void { inv('0x7A17B7981560FFA5', name); } /** * @param ugcRequestId * @returns */ static ugcIsRequestPending(ugcRequestId: int): any { return inv('0xF4AC4FA844FD559A', ugcRequestId); } /** * Only used in fm_race_controller R* Script (PROCESS_LOCAL_PLAYER_INIT) * * @param p0 */ static N_0xBC7D36946D19E60E(p0: boolean): void { inv('0xBC7D36946D19E60E', p0); } /** * @param setting */ static N_0x704F92B3AF20D857(setting: boolean): void { inv('0x704F92B3AF20D857', setting); } /** * @param p0 * @param p1 * @returns */ static ugcQueryGetPosixPublishedDate(p0: any, p1: any): int { return inv('0x104080CA9E519B00', p0, p1, rai()); } /** * @returns */ static getSocialMatchmakingAllowed(): any { return inv('0xD0541EF28E9C4783'); } /** * @param toggle */ static setSocialMatchmakingAllowed(toggle: boolean): void { inv('0x777D0571A466B520', toggle); } /** * @param p0 * @param p1 * @param p2 * @returns */ static N_0x77B299E8799B1332(p0: any, p1: any, p2: any): any { return inv('0x77B299E8799B1332', p0, p1, p2); } /** * @param p0 * @returns */ static N_0xE59F4924BD3A718D(p0: int): string { return inv('0xE59F4924BD3A718D', p0, ras()); } /** * @param p0 * @returns */ static checkUserContentPrivileges(p0: int): boolean { return !!inv('0x595F028698072DD9', p0, rai()); } /** * @param player * @returns */ static getPlayerFastInstanceId(player: Player): int { return inv('0xD9267375834C5EAB', player.handle, rai()); } /** * @returns hours; minutes; seconds */ static getGlobalMultiplayerClock(): [number, number, number] { const result = inv<[number, number, number]>('0x6D03BFBD643B2A02', pvi(), pvi(), pvi()); return [result[0], result[1], result[2]]; } /** * @param description * @param length * @returns */ static ugcGetCachedDescription(description: string | number, length: int): string { return inv('0x40F7E66472DF3E5C', _h(description), length, ras()); } /** * @param toggle */ static N_0x780A13F780A13F1B(toggle: boolean): void { inv('0x780A13F780A13F1B', toggle); } /** * @param p1 * @returns gamerHandle */ static requestPedshotTextureMultiplayerDownload(p1: int): [string, number] { const result = inv<[string, number]>('0xB5C4B18B12A2AF23', pvi(), p1, ras()); return [result[0], result[1]]; } /** * @param setting */ static N_0xE3AB5EEFCB6671A2(setting: int): void { inv('0xE3AB5EEFCB6671A2', setting); } /** * @param p0 * @returns */ static N_0x3AA0CDC63696166D(p0: int): boolean { return !!inv('0x3AA0CDC63696166D', p0, rai()); } /** * @param p0 * @param p1 * @returns */ static N_0xE39600E50D608693(p0: any, p1: any): boolean { return !!inv('0xE39600E50D608693', p0, p1, rai()); } /** * @param flags Refer to {@link eSessionFlags} * @returns */ static sessionAddSessionFlags(flags: int): any { return inv('0xE546BDA1B3E288EE', flags); } /** * @param p0 * @param playerCount * @returns */ static requestRecentGamerNames(p0: int, playerCount: int): any { return inv('0x6D206D383BB5F6B1', p0, playerCount); } /** * @returns */ static getHostOfThisScript(): Player | null { return createFromHandle('Player', inv('0xC7B4D79B01FA7A5C', rai())); } /** * @param animScene * @returns */ static hasControlOfAnimScene(animScene: AnimScene): any { return inv('0x26A5C12FACFF8724', animScene.handle); } /** * Equivalent to NETWORK_REQUEST_SESSION_SEAMLESS if userHash == 0. * Otherwise it is equivalent to NETWORK_SESSION_REQUEST_SESSION_COMPETITIVE(flags, MATCHTYPE_SEAMLESS, userHash, 0, sessionRequestId); p1 is unused * * @param flags * @param seamlessType * @param userHash * @returns sessionRequestId */ static sessionRequestSessionSeamless(flags: int, seamlessType: int, userHash: int): [any, number] { const result = inv<[number, number]>('0x2989E131FDE37E97', flags, seamlessType, userHash, pvi()); return [result[0], result[1]]; } /** * @returns */ static hasCompletedMpIntroFlowOnCurrentSlot(): any { return inv('0xDD73C9838CE7181D'); } /** * @param configProperty * @param include */ static spawnConfigAddPropertyScripted(configProperty: int, include: boolean): void { inv('0x44D59EC597BBF348', configProperty, include); } /** * @param p0 * @returns */ static N_0xA2837A5E21FB5A58(p0: any): boolean { return !!inv('0xA2837A5E21FB5A58', p0, rai()); } /** * @returns */ static N_0x0E54D4DA6018FF8E(): boolean { return !!inv('0x0E54D4DA6018FF8E', rai()); } /** * Returns the entity associated with the given network ID. * * @param networkId * @returns */ static N_0x4538EE7C321590BC(networkId: int): Entity | null { return createFromHandle('Entity', inv('0x4538EE7C321590BC', networkId, rai())); } static N_0x9B39B0555CC692B5(): void { inv('0x9B39B0555CC692B5'); } /** * @param p0 * @returns */ static N_0xE79BA3BC265895DA(p0: int): string { return inv('0xE79BA3BC265895DA', p0, ras()); } /** * @param netPlaylistActivity */ static activitySetCurrent(netPlaylistActivity: int): void { inv('0x9ADAC065D9F6706F', netPlaylistActivity); } /** * @param queueGroup * @returns */ static sessionIsRequestInProgressByQueueGroup(queueGroup: int): any { return inv('0x9E762A595CF88E4A', queueGroup); } /** * @returns */ static pedmugshotGetStatus(): int { return inv('0xCBAC13F065C47596', rai()); } /** * @returns */ static getTunableCloudCrc(): int { return inv('0x10BD227A753B0D84', rai()); } /** * Returns true if the passed value is less than 32. * * @param player * @returns */ static isPlayerIndexValid(player: Player): any { return inv('0x255A5EF65EDA9167', player.handle); } /** * @param entity * @returns */ static getEntityIsNetworked(entity: Entity): boolean { return !!inv('0xC7827959479DCC78', entity.handle, rai()); } /** * @param vehicle * @returns Returns the network id for the specified `vehicle`, or `0` if the vehicle isn't networked. */ static vehToNet(vehicle: Vehicle): int { return inv('0xB4C94523F023419C', vehicle.handle, rai()); } /** * Only used in R* SP Scripts * * @param player * @param personaPhotoLocalCacheType * @returns */ static requestPedshotTextureLocalBackupDownload(player: int, personaPhotoLocalCacheType: int): string { return inv('0x356F9FB0698C1FEB', player, personaPhotoLocalCacheType, ras()); } /** * @param p0 */ static N_0xE5634491A58C2703(p0: float): void { inv('0xE5634491A58C2703', f(p0)); } /** * @param p0 * @param p1 * @param p2 * @param p3 * @returns */ static N_0x64A36BA85CE01A81(p0: any, p1: any, p2: any, p3: any): any { return inv('0x64A36BA85CE01A81', p0, p1, p2, p3); } /** * @returns sessionRequestId */ static sessionIsSessionRequestIdValid(): [any, number] { const result = inv<[number, number]>('0x2F54B146D3EDCE4D', pvi()); return [result[0], result[1]]; } /** * @returns */ static isResettingPopulation(): any { return inv('0x1BB50CD340A996E6'); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x039B692B3318FAB6(p0: boolean): int { return inv('0x039B692B3318FAB6', p0, rai()); } /** * Always returns 60 * * @returns */ static getMaxNumNetworkObjects(): int { return inv('0xC7BE335216B5EC7C', rai()); } /** * Checks if the user has ROS privilege 14. * * @returns */ static ugcHasPrivilege(): any { return inv('0x6506BFA755FB209C'); } /** * @param networkId * @param bStopCloning */ static setNetworkIdStopCloning(networkId: int, bStopCloning: boolean): void { inv('0x9ED3108D6847760A', networkId, bStopCloning); } /** * Returns CGameConfig->ConfigOnlineServices->RosTitleName (see gameconfig.xml) * * @returns */ static getRosTitleName(): string { return inv('0xAC6153A0722F524C', ras()); } /** * @returns */ static getScriptStatus(): int { return inv('0x57D158647A6BFABF', rai()); } /** * @param p0 * @param p1 * @param p2 * @param p3 */ static setNetworkIdVisibleInCutscene(p0: any, p1: any, p2: any, p3: any): void { inv('0xA6928482543022B4', p0, p1, p2, p3); } /** * @param amount */ static reserveNetworkMissionObjects(amount: int): void { inv('0x4E5C93BD0C32FBF8', amount); } /** * @param entity * @param player * @returns p2 */ static N_0x75FC34A2BA345BD1(entity: Entity, player: Player): [boolean, number] { const result = inv<[boolean, number]>('0x75FC34A2BA345BD1', entity.handle, player.handle, pvi(), rai()); return [!!result[0], result[1]]; } /** * @returns */ static autoSessionIsAllowedToMerge(): any { return inv('0xAADED99A6B268A27'); } /** * @param p0 * @param p1 * @param p2 * @returns */ static N_0x7A8E8DF782B47EB0(p0: any, p1: any, p2: any): any { return inv('0x7A8E8DF782B47EB0', p0, p1, p2); } /** * Hardcoded to return false. * * @returns */ static shouldShowPromotionDlg(): any { return inv('0xDA4B1A479C414FB2'); } /** * @param amount */ static reserveNetworkMissionPeds(amount: int): void { inv('0xB60FEBA45333D36F', amount); } /** * @param pos * @param heading */ static spawnConfigAddSpawnPoint(pos: Vector3, heading: float): void { inv('0xFD1AC0B3858F224C', f(pos.x), f(pos.y), f(pos.z), f(heading)); } /** * @param paramName * @param value */ static setLaunchParamValue(paramName: string, value: string): void { inv('0x668AF6E4933AC13F', paramName, value); } /** * @returns gamerHandle */ static canViewGamerUserContent(): [any, number] { const result = inv<[number, number]>('0x246545C37C27A717', pvi()); return [result[0], result[1]]; } /** * @param p0 * @returns */ static isParticipantActive(p0: int): boolean { return !!inv('0x6FF8FF40B6357D45', p0, rai()); } /** * @param p0 * @returns */ static getNumCreatedMissionPeds(p0: boolean): int { return inv('0xCB215C4B56A7FAE7', p0, rai()); } /** * _NETWORK_GET_A* - _NETWORK_GET_D* * * @param player * @param ped * @returns p2 */ static N_0x236321F1178A5446(player: Player, ped: Ped): [boolean, number] { const result = inv<[boolean, number]>('0x236321F1178A5446', player.handle, ped.handle, pvi(), rai()); return [!!result[0], result[1]]; } /** * Must be called from a background script, otherwise it will do nothing. * * @param entity * @param p1 */ static N_0x979765465A6F25FC(entity: Entity, p1: boolean): void { inv('0x979765465A6F25FC', entity.handle, p1); } /** * @param player * @param p1 */ static N_0x5A91BCEF74944E93(player: Player, p1: float): void { inv('0x5A91BCEF74944E93', player.handle, f(p1)); } /** * @param params */ static setLaunchParamString(params: string): void { inv('0xDFFC15AA63D04AAB', params); } /** * Note: this native was added in build 1311.23 * * @param p0 * @param p1 */ static N_0x0D183D8490EE4366(p0: int, p1: int): void { inv('0x0D183D8490EE4366', p0, p1); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0xF8DC69DC1AD19072(p0: boolean): int { return inv('0xF8DC69DC1AD19072', p0, rai()); } /** * @returns */ static N_0xA47D48D06AA5A188(): boolean { return !!inv('0xA47D48D06AA5A188', rai()); } /** * @returns */ static getCloudTimeAsInt(): int { return inv('0x9A73240B49945C76', rai()); } /** * *GET_LAUNCH_PARAM*(RESPOT?)* * Name is probably invalid since this native only reads data from parsed entity. * * @param entity * @returns */ static N_0x26A867C0B7A456D1(entity: Entity): boolean { return !!inv('0x26A867C0B7A456D1', entity.handle, rai()); } /** * @param netHandle * @returns Returns the `entity` handle for the `netHandle` or `0` if the entity doesn't exist. */ static netToVeh(netHandle: int): Vehicle | null { return createFromHandle('Vehicle', inv('0x367B936610BA360C', netHandle, rai())); } /** * @returns sessionRequestId */ static N_0xAFA14F98327791CE(): [boolean, number] { const result = inv<[boolean, number]>('0xAFA14F98327791CE', pvi(), rai()); return [!!result[0], result[1]]; } /** * @returns */ static N_0xDA1BFED8582F61F0(): boolean { return !!inv('0xDA1BFED8582F61F0', rai()); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0xBAF7E2979442B29F(p0: boolean): int { return inv('0xBAF7E2979442B29F', p0, rai()); } /** * @returns */ static isCloudAvailable(): boolean { return !!inv('0x9A4CF4F48AD77302', rai()); } /** * @param p0 * @param p1 * @param p2 */ static registerPlayerBroadcastVariables(p0: any, p1: any, p2: any): void { inv('0x3364AA97340CA215', p0, p1, p2); } /** * _NETWORK_IS_T* - _NETWORK_RE* * * @returns */ static isPreviousUploadPending(): any { return inv('0xA21E3BAD0A42D199'); } /** * _NETWORK_GET_A* - _NETWORK_GET_D* * * @param ped * @returns p1 */ static N_0x6CF82A7F65A5AD5F(ped: Ped): [Player | null, number] { const result = inv<[number, number]>('0x6CF82A7F65A5AD5F', ped.handle, pvi(), rai()); return [createFromHandle('Player', result[0]), result[1]]; } /** * @param p1 * @returns gamerHandle */ static getGamerStatus(p1: int): [int, number] { const result = inv<[number, number]>('0xDDAEB478E58F8DEA', pvi(), p1, rai()); return [result[0], result[1]]; } /** * Returns result of session request: * 0 - NOT_FOUND * 1 - IN_PROGRESS * 2 - TIMEOUT * 3 - PLAYER_OFFLINE * 4 - GANG_MEMBERS_CHANGED * 5 - PLAYER_CANCELLED * 6 - PLAYER_SET_TOO_LARGE * 7 - MATCH_ACCEPTED * 8 - OTHER * * @returns sessionRequestId; p1 */ static sessionGetSessionRequestResult(): [int, number, number] { const result = inv<[number, number, number]>('0x0DD051B1BF4B8BD6', pvi(), pvi(), rai()); return [result[0], result[1], result[2]]; } static N_0xA63E4F050F20021F(): void { inv('0xA63E4F050F20021F'); } /** * @param amount * @returns */ static canRegisterMissionObjects(amount: int): boolean { return !!inv('0x800DD4721A8B008B', amount, rai()); } /** * @param description * @returns */ static ugcReleaseCachedDescription(description: string | number): boolean { return !!inv('0x5A34CD9C3C5BEC44', _h(description), rai()); } /** * @param toggle */ static setFriendlyFireOption(toggle: boolean): void { inv('0xF808475FA571D823', toggle); } /** * @returns sessionRequestId */ static sessionTransitionToSession(): [any, number] { const result = inv<[number, number]>('0xF20B18A330E6DB5C', pvi()); return [result[0], result[1]]; } /** * Hardcoded to return false. * * @returns */ static isPromotionEnabled(): any { return inv('0x8FF6059DA26E688A'); } /** * @param playersToTake * @param maxInstancePlayers * @param sessionFlags * @param bucketId * @returns */ static autoSessionSplitSession(playersToTake: int, maxInstancePlayers: int, sessionFlags: int, bucketId: int): any { return inv('0xC223D299C670413D', playersToTake, maxInstancePlayers, sessionFlags, bucketId); } /** * @param p0 * @returns */ static N_0x923346025512DFB7(p0: any): any { return inv('0x923346025512DFB7', p0); } /** * @returns args */ static resurrectLocalPlayer2(): number { const result = inv('0x4154B7D8C75E5DCF', pvi()); return result; } /** * Only used in R* Script net_stable_manager * * @param threadId * @returns pedMax; vehicleMax; unkMax; pedMin; vehicleMin; unkMin */ static getReservedMissionEntitiesForThread(threadId: int): [number, number, number, number, number, number] { const result = inv<[number, number, number, number, number, number]>('0x99AAC89C510DEB0D', threadId, pvi(), pvi(), pvi(), pvi(), pvi(), pvi()); return [result[0], result[1], result[2], result[3], result[4], result[5]]; } /** * @param p0 * @returns */ static N_0xD7BAD4062074B9C1(p0: any): boolean { return !!inv('0xD7BAD4062074B9C1', p0, rai()); } /** * @param hour * @param minute * @param second * @param transitionTime * @param pauseClock */ static clockTimeOverride(hour: int, minute: int, second: int, transitionTime: int, pauseClock: boolean): void { inv('0x669E223E64B1903C', hour, minute, second, transitionTime, pauseClock); } /** * @param netId * @param player * @param toggle */ static setNetworkIdAlwaysExistsForPlayer(netId: int, player: Player, toggle: boolean): void { inv('0xA8A024587329F36A', netId, player.handle, toggle); } /** * @param p0 * @returns gamerHandle */ static N_0x16EFB123C4451032(p0: int): [boolean, number] { const result = inv<[boolean, number]>('0x16EFB123C4451032', p0, pvi(), rai()); return [!!result[0], result[1]]; } /** * Return the local Participant ID * * @returns */ static participantId(): Player | null { return createFromHandle('Player', inv('0x90986E8876CE0A83', rai())); } static N_0x97BCE4C4B3191228(): void { inv('0x97BCE4C4B3191228'); } /** * @param volume * @param p1 * @param originalWeight * @param p3 * @param p4 */ static N_0x13F592FC3BF0EA84(volume: Volume, p1: boolean, originalWeight: float, p3: any, p4: any): void { inv('0x13F592FC3BF0EA84', volume.handle, p1, f(originalWeight), p3, p4); } /** * @returns */ static N_0xBF8276E51761F9DA(): int { return inv('0xBF8276E51761F9DA', rai()); } /** * Note: this native was added in build 1311.23 * * @returns */ static N_0x316FD416C432C761(): boolean { return !!inv('0x316FD416C432C761', rai()); } /** * nullsub, doesn't do anything * * @returns */ static N_0xEC089F84A9C16C62(): any { return inv('0xEC089F84A9C16C62'); } /** * @param netId * @returns */ static getRopeIdFromNetworkId(netId: int): int { return inv('0xEB1A4DD8352EC828', netId, rai()); } /** * @param ugcRequestId * @returns */ static ugcDidRequestSucceed(ugcRequestId: int): any { return inv('0x0B6009A90B8495F1', ugcRequestId); } /** * @returns */ static getNetworkTimeAccurate(): int { return inv('0x89023FBBF9200E9F', rai()); } /** * @param p0 * @returns */ static getNumCreatedMissionVehicles(p0: boolean): int { return inv('0x0CD9AB83489430EA', p0, rai()); } static showAccountUpgradeUi(): void { inv('0x83FE8D7229593017'); } /** * Hardcoded to return false. * * @returns */ static isInSessionLobby(): any { return inv('0xC5196C42DE19F646'); } /** * Always returns a null string. * * @returns gamerHandle */ static getGamertagFromHandle(): [string, number] { const result = inv<[string, number]>('0x426141162EBE5CDB', pvi(), ras()); return [result[0], result[1]]; } /** * Returns the network ID of the given object. * * @param object * @returns Returns the network id for the specified `object`, or `0` if the entity isn't networked. */ static objToNet(object: Prop): int { return inv('0x99BFDC94A603E541', object.handle, rai()); } /** * @param p0 * @returns */ static requestJoin(p0: any): int { return inv('0xE483BB6BE686F632', p0, rai()); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x4835413EA6F9C9CD(p0: boolean): int { return inv('0x4835413EA6F9C9CD', p0, rai()); } /** * Returns ugcRequestId * * @param contentId * @param latestVersion * @param contentTypeName * @returns */ static ugcQueryByContentId(contentId: string, latestVersion: boolean, contentTypeName: string): int { return inv('0x69D22E183580113F', contentId, latestVersion, contentTypeName, rai()); } /** * @param p0 */ static N_0x3034C77C79A58880(p0: boolean): void { inv('0x3034C77C79A58880', p0); } /** * @param paramName * @returns */ static getLaunchParamValue(paramName: string): string { return inv('0x65E65CA6A0FE59D4', paramName, ras()); } /** * @param p0 */ static N_0xCF23AB5BD47B384D(p0: any): void { inv('0xCF23AB5BD47B384D', p0); } /** * Note: this native was added in build 1311.23 * * @param p0 * @param p1 * @param p2 */ static N_0x3CBD6565D9C3B133(p0: int, p1: int, p2: float): void { inv('0x3CBD6565D9C3B133', p0, p1, f(p2)); } /** * @returns */ static hasReceivedHostBroadcastData(): boolean { return !!inv('0x5D10B3795F3FC886', rai()); } /** * @param languageId * @returns */ static ugcIsLanguageSupported(languageId: int): boolean { return !!inv('0xF53E48461B71EECB', languageId, rai()); } /** * @returns */ static actionPlatformInvite(): any { return inv('0x3B82ACC3F4B6240C'); } /** * nullsub, doesn't do anything * * @returns */ static dumpNetIfConfig(): any { return inv('0xAEDF1BC1C133D6E3'); } /** * @returns */ static sessionIsTransitioning(): any { return inv('0xF2CBC969C4F090C7'); } /** * @param p0 * @param index * @param p2 * @returns */ static ugcQueryGetVersion(p0: any, index: int, p2: int): int { return inv('0x63E9DCBC8B0931ED', p0, index, p2, rai()); } /** * @param p0 * @param p1 */ static N_0x3F0ABAE38A0515AD(p0: int, p1: int): void { inv('0x3F0ABAE38A0515AD', p0, p1); } /** * Subtracts the second argument from the first, then returns whether the result is negative. * * @param timeA * @param timeB * @returns */ static isTimeLessThan(timeA: int, timeB: int): boolean { return !!inv('0xCB2CF5148012C8D0', timeA, timeB, rai()); } /** * Old name: _NETWORK_GET_UNRELIABLE_RESEND_COUNT_FOR_PLAYER * * @param player * @returns */ static getUnreliableResendCount(player: Player): int { return inv('0x3765C3A3E8192E10', player.handle, rai()); } /** * Note: this native was added in build 1311.23 * * @param p0 * @returns */ static N_0x106CBDD5077DEDE1(p0: boolean): int { return inv('0x106CBDD5077DEDE1', p0, rai()); } /** * @param featureId * @returns */ static isFeatureSupported(featureId: int): any { return inv('0x9C725D149622BFDE', featureId); } /** * On PC this returns true if gamerHandle is a valid handle. * * @returns gamerHandle */ static canAddFriend(): [any, number] { const result = inv<[number, number]>('0x99ABE9BF9DADA162', pvi()); return [result[0], result[1]]; } /** * Note: this native was added in build 1311.23 */ static N_0x7673C0D2C5CDAC55(): void { inv('0x7673C0D2C5CDAC55'); } /** * Always returns 110 * * @returns */ static getMaxNumNetworkPeds(): int { return inv('0x0C1F7D49C39D2289', rai()); } /** * Returns textureDownloadId * * @param p1 * @param name * @param p3 * @returns gamerHandle */ static mugshotTextureDownloadRequest(p1: int, name: string, p3: boolean): [int, number] { const result = inv<[number, number]>('0x9B5DB6CEAFAA10BB', pvi(), p1, name, p3, rai()); return [result[0], result[1]]; } /** * @returns gamerHandle */ static isFriend(): [boolean, number] { const result = inv<[boolean, number]>('0x1A24A179F9B31654', pvi(), rai()); return [!!result[0], result[1]]; } /** * @returns */ static isRecentGamerNamesRequestInProgress(): any { return inv('0x4664D213A0CCAF40'); } /** * @param scriptHash * @param p1 * @param p2 * @param p3 * @returns */ static isScriptActiveByHash(scriptHash: string | number, p1: int, p2: boolean, p3: int): any { return inv('0x1B89BC43B6E69107', _h(scriptHash), p1, p2, p3); } static N_0x564552C6AF1EEAB1(): void { inv('0x564552C6AF1EEAB1'); } /** * @returns */ static hasPendingInviteFailure(): any { return inv('0xD0498AD30E16B6BD'); } /** * @param entity * @returns */ static requestControlOfEntity(entity: Entity): boolean { return !!inv('0xB69317BF5E782347', entity.handle, rai()); } /** * @param p0 * @returns */ static N_0xD7D0DF27CB1765B5(p0: int): boolean { return !!inv('0xD7D0DF27CB1765B5', p0, rai()); } /** * @returns */ static canRefreshFriendPage(): any { return inv('0x1AF5E28E64A76A9F'); } /** * Old name: _NETWORK_IS_PLAYER_EQUAL_TO_INDEX * * @param player * @param index * @returns */ static arePlayersInSameTutorialSession(player: Player, index: int): boolean { return !!inv('0x9DE986FC9A87C474', player.handle, index, rai()); } static clearFoundGamers(): void { inv('0x6D14CCEE1B40381A'); } static preventScriptHostMigration(): void { inv('0x2302C0264EA58D31'); } /** * @param p0 * @param index * @param p2 * @returns */ static N_0x5F0E99071582DECA(p0: any, index: int, p2: int): any { return inv('0x5F0E99071582DECA', p0, index, p2); } /** * @param p1 * @param p2 * @param p3 * @param p4 * @param p5 * @param p6 * @param p7 * @param p8 * @param p9 * @param p10 * @param p11 * @param p12 * @param p13 * @param p14 * @returns p0 */ static N_0x7E300B5B86AB1D1A(p1: int, p2: int, p3: int, p4: int, p5: int, p6: int, p7: int, p8: int, p9: int, p10: int, p11: int, p12: int, p13: int, p14: int): number { const result = inv('0x7E300B5B86AB1D1A', pvi(), p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14); return result; } /** * Must be called from a background script, otherwise it will do nothing. * * @returns p0 */ static debugRequestEntityPosition(): number { const result = inv('0xFA38B52F91B59075', pvi()); return result; } /** * @returns gamerHandle */ static isGamerInMySession(): [boolean, number] { const result = inv<[boolean, number]>('0x0F10B05DDF8D16E9', pvi(), rai()); return [!!result[0], result[1]]; } /** * @param player * @param toggle */ static setPlayerInvisibleLocally(player: Player, toggle: boolean): void { inv('0x12B37D54667DB0B8', player.handle, toggle); } /** * @returns */ static getSessionHost(): Player | null { return createFromHandle('Player', inv('0x8DC9AA3B508B1A85', rai())); } /** * @param toggle */ static preventMigrationOfEntitiesInFastInstanceForLocalPlayer(toggle: boolean): void { inv('0x89D803CD48622150', toggle); } /** * @param player * @returns */ static hashFromPlayerHandle(player: Player): number { return (inv('0xBC1D768F2F5D6C05', player.handle, rai())) & 0xFFFFFFFF; } /** * Used in Script Function NET_ACE_CLIENT_VERIFY_ENTITY_RESERVATIONS * Coords: Slot world position Old name: _GET_RESERVATIONS_FOR_SLOT_WORLD_POSITION * * @param pos * @param p3 * @returns peds; vehicles; objects; pickups */ static getReservedMissionEntitiesInArea(pos: Vector3, p3: boolean): [number, number, number, number] { const result = inv<[number, number, number, number]>('0x5E71E72A94985214', f(pos.x), f(pos.y), f(pos.z), p3, pvi(), pvi(), pvi(), pvi()); return [result[0], result[1], result[2], result[3]]; } /** * @param amount * @returns */ static canRegisterMissionPickups(amount: int): any { return inv('0xF0460C7BF80011EA', amount); } /** * @param player * @returns */ static isPlayerInSpectatorMode(player: Player): boolean { return !!inv('0x5B709519997ECF0F', player.handle, rai()); } /** * _SET_PLAYER_V* - _SET_S* * * @param player * @param disabled */ static setPlayerVisibilityToLocalPlayerDisabled(player: Player, disabled: boolean): void { inv('0xDCA6ABDB9288FBE4', player.handle, disabled); } /** * @param pickup * @returns */ static hasControlOfPickup(pickup: Pickup): boolean { return !!inv('0x5BC9495F0B3B6FA6', pickup.handle, rai()); } /** * @returns */ static N_0x67CCDF74C4DF7169(): boolean { return !!inv('0x67CCDF74C4DF7169', rai()); } /** * @param textureDownloadId * @returns */ static textureDownloadGetName(textureDownloadId: int): string { return inv('0x3448505B6E35262D', textureDownloadId, ras()); } /** * Note: this native was added in build 1311.16 * * @returns */ static getNumPeerNegotiationResponses(): int { return inv('0x4FE932E84FE932E8', rai()); } static clearClockTimeOverride(): void { inv('0xD972DF67326F966E'); } static N_0xC8B6D18E22484643(): void { inv('0xC8B6D18E22484643'); } /** * @param p0 * @param p1 */ static N_0xDC6AD5C046F33AB4(p0: boolean, p1: boolean): void { inv('0xDC6AD5C046F33AB4', p0, p1); } /** * @param entity * @returns */ static hasControlOfEntity(entity: Entity): boolean { return !!inv('0x01BF60A500E28887', entity.handle, rai()); } /** * @param player * @returns */ static getUniqueIntForPlayer(player: Player): int { return inv('0x07F723401B9D921C', player.handle, rai()); } /** * @param tunableContext * @param tunableName * @returns */ static accessTunableBool(tunableContext: string | number, tunableName: string | number): boolean { return !!inv('0xAA6A47A573ABB75A', _h(tunableContext), _h(tunableName), rai()); } /** * @returns gamerHandle */ static removeFriend(): [any, number] { const result = inv<[number, number]>('0x55F618F68AB854D3', pvi()); return [result[0], result[1]]; } static N_0x6C7E04E9DE451789(): void { inv('0x6C7E04E9DE451789'); } /** * @returns */ static N_0x0B6B4507AC5EA8B8(): boolean { return !!inv('0x0B6B4507AC5EA8B8', rai()); } /** * @param netID * @param toggle */ static activateDamageTrackerOnNetworkId(netID: int, toggle: boolean): void { inv('0xD45B1FFCCD52FF19', netID, toggle); } /** * *NETWORK_SPAWN_CONFIG** */ static N_0x6CEE2E30021DAEC6(): void { inv('0x6CEE2E30021DAEC6'); } static N_0x5B9C6AC118FD4774(): void { inv('0x5B9C6AC118FD4774'); } /** * @param player * @param trackedPlayer * @returns */ static isTrackedPlayerVisible(player: Player, trackedPlayer: Player): any { return inv('0xE525878A35B9EEBD', player.handle, trackedPlayer.handle); } static activityResetToIdle(): void { inv('0x3FE141FDB990E3D1'); } /** * @param p0 * @returns */ static hasControlOfPickupPlacement(p0: any): boolean { return !!inv('0x51EABCF2786515AB', p0, rai()); } /** * Converts the specified entity into a local entity, removing it from the networked pool. This will only work if you're the owner of the entity. * * @param entity The entity to un-network */ static unregisterNetworkedEntity(entity: Entity): void { inv('0xE31A04513237DC89', entity.handle); } /** * Hardcoded to return false. * * @returns */ static isInPlatformParty(): boolean { return !!inv('0x2FC5650B0271CB57', rai()); } /** * Return the local Participant ID. This native is exactly the same as 'PARTICIPANT_ID' native. * * @returns */ static participantIdToInt(): int { return inv('0x57A3BDDAD8E5AA0A', rai()); } /** * @param toggle * @param pos */ static setInStaticSpectatorMode(toggle: boolean, pos: Vector3): void { inv('0xFBF1ECFB39A77B5F', toggle, f(pos.x), f(pos.y), f(pos.z)); } /** * @param p0 * @returns */ static requestControlOfPickupPlacement(p0: any): boolean { return !!inv('0x56ED2C48558DAB78', p0, rai()); } /** * @param entity */ static registerEntityAsNetworked(entity: Entity): void { inv('0x06FAACD625D80CAA', entity.handle); } /** * Session flag 'SF_PRIVATE' is set internally * p1 represents max amount of players in private session * * @param flags * @param numPlayers * @param userHash * @returns sessionRequestId */ static sessionRequestSessionPrivate(flags: int, numPlayers: int, userHash: int): [any, number] { const result = inv<[number, number]>('0x39A8EF7AF29A192C', flags, numPlayers, userHash, pvi()); return [result[0], result[1]]; } /** * @param textureDownloadId */ static textureDownloadRelease(textureDownloadId: int): void { inv('0x487EB90B98E9FB19', textureDownloadId); } /** * Only used in R* Script net_rolling_playlist */ static sessionPlaylistGoToNextContent(): void { inv('0xBDE605F925B07127'); } /** * Note: this native was added in build 1311.23 * * @returns sessionId */ static sessionGetSessionId(): number { const result = inv('0xE9B356C330C0A806', pvi()); return result; } /** * @returns */ static autoSessionSplitSessionSuccessful(): any { return inv('0x6D87BA8EF15226CD'); } /** * @param ugcRequestId * @returns */ static ugcHasRequestFinished(ugcRequestId: int): any { return inv('0xA9EB4D606076615D', ugcRequestId); } /** * @returns sessionRequestId */ static sessionIsRequestInProgress(): [any, number] { const result = inv<[number, number]>('0x8FB7C254CFCBF78E', pvi()); return [result[0], result[1]]; } /** * Adds the first argument to the second. * * @param timeA * @param timeB * @returns */ static getTimeOffset(timeA: int, timeB: int): int { return inv('0x017008CCDAD48503', timeA, timeB, rai()); } /** * @param p0 * @returns */ static N_0xC028B3F52C707C49(p0: any): boolean { return !!inv('0xC028B3F52C707C49', p0, rai()); } /** * nullsub, doesn't do anything * * @returns */ static N_0xC964FCD3D1720697(): any { return inv('0xC964FCD3D1720697'); } /** * @param p0 * @param p1 * @returns */ static ugcQueryGetPublished(p0: any, p1: any): any { return inv('0x9993F1E11944A3DD', p0, p1); } }