Last active
September 23, 2023 02:03
-
-
Save Yiin/ccb7162193b2dac40a205e8f0c820d01 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| function getV1ServerArgs(eventName, args) { | |
| return ({ | |
| anyResourceError: ({ resource }) => [resource], | |
| anyResourceStart: ({ resource }) => [resource], | |
| anyResourceStop: ({ resource }) => [resource], | |
| consoleCommand: ({ command, args }) => [command, ...args], | |
| entityEnterColshape: ({ colShape, entity }) => [colShape, entity], | |
| entityLeaveColshape: ({ colShape, entity }) => [colShape, entity], | |
| explosion: ({ source, type, pos, fx, target }) => [source, type, pos, fx, target], | |
| netOwnerChange: ({ entity, newOwner, oldOwner }) => [entity, newOwner, oldOwner], | |
| playerChangedVehicleSeat: ({ player, vehicle, oldSeat, newSeat }) => [player, vehicle, oldSeat, newSeat], | |
| playerConnect: ({ player }) => [player], | |
| playerConnectDenied: ({ reason, name, ip, passwordHash, isDebug, branch, version, cdnUrl, discordId }) => [reason, name, ip, passwordHash, isDebug, branch, version, cdnUrl, discordId], | |
| playerDamage: ({ player, attacker, healthDamage, armourDamage, weaponHash }) => [player, attacker, healthDamage, armourDamage, weaponHash], | |
| playerDeath: ({ player, killer, weaponHash }) => [player, killer, weaponHash], | |
| playerDisconnect: ({ player, reason }) => [player, reason], | |
| playerEnteredVehicle: ({ player, vehicle, seat }) => [player, vehicle, seat], | |
| playerEnteringVehicle: ({ player, vehicle, seat }) => [player, vehicle, seat], | |
| playerLeftVehicle: ({ player, vehicle, seat }) => [player, vehicle, seat], | |
| removeEntity: ({ object }) => [object], | |
| // resourceStart: ({ errored }) => [errored], | |
| // resourceStop: ({}) => [], | |
| // resourceError: ({ error, file, line, stackTrace }) => [error, file, line, stackTrace], | |
| syncedMetaChange: ({ entity, key, newValue, oldValue }) => [entity, key, newValue, oldValue], | |
| streamSyncedMetaChange: ({ object, key, newValue, oldValue }) => [object, key, newValue, oldValue], | |
| globalMetaChange: ({ key, newValue, oldValue }) => [key, newValue, oldValue], | |
| globalSyncedMetaChange: ({ key, newValue, oldValue }) => [key, newValue, oldValue], | |
| vehicleAttach: ({ vehicle, attachedVehicle }) => [vehicle, attachedVehicle], | |
| vehicleDestroy: ({ vehicle }) => [vehicle], | |
| vehicleDetach: ({ vehicle, detachedVehicle }) => [vehicle, detachedVehicle], | |
| weaponDamage: ({ source, target, weaponHash, damage, offset, bodyPart }) => [source, target, weaponHash, damage, offset, bodyPart], | |
| startFire: ({ player, fires }) => [player, fires], | |
| startProjectile: ({ player, pos, dir, ammoHash, weaponHash }) => [player, pos, dir, ammoHash, weaponHash], | |
| playerWeaponChange: ({ player, oldWeapon, newWeapon }) => [player, oldWeapon, newWeapon], | |
| vehicleDamage: ({ vehicle, attacker, bodyHealthDamage, additionalBodyHealthDamage, engineHealthDamage, petrolTankDamage, weaponHash }) => [vehicle, attacker, bodyHealthDamage, additionalBodyHealthDamage, engineHealthDamage, petrolTankDamage, weaponHash], | |
| localMetaChange: ({ player, key, newValue, oldValue }) => [player, key, newValue, oldValue], | |
| connectionQueueAdd: ({ connectionInfo }) => [connectionInfo], | |
| connectionQueueRemove: ({ connectionInfo }) => [connectionInfo], | |
| serverStarted: ({}) => [], | |
| playerRequestControl: ({ player, target }) => [player, target], | |
| playerAnimationChange: ({ target, oldAnimDict, newAnimDict, oldAnimName, newAnimName }) => [target, oldAnimDict, newAnimDict, oldAnimName, newAnimName], | |
| playerInteriorChange: ({ player, oldInterior, newInterior }) => [player, oldInterior, newInterior], | |
| playerDimensionChange: ({ player, oldDimension, newDimension }) => [player, oldDimension, newDimension], | |
| vehicleHorn: ({ vehicle, player, state }) => [vehicle, player, state], | |
| vehicleSiren: ({ vehicle, state }) => [vehicle, state], | |
| playerSpawn: ({ player }) => [player], | |
| baseObjectCreate: ({ baseObject }) => [baseObject], | |
| baseObjectRemove: ({ baseObject }) => [baseObject], | |
| metaChange: ({ target, key, newValue, oldValue }) => [target, key, newValue, oldValue], | |
| voiceConnection: ({ state }) => [state], | |
| requestSyncedScene: ({ player, sceneID }) => [player, sceneID], | |
| startSyncedScene: ({ player, sceneID, startPos, startRot, animDictHash, entityAnimPairs }) => [player, sceneID, startPos, startRot, animDictHash, entityAnimPairs], | |
| stopSyncedScene: ({ player, sceneID }) => [player, sceneID], | |
| updateSyncedScene: ({ player, startRate, sceneID }) => [player, startRate, sceneID], | |
| clientDeleteObject: ({ player }) => [player], | |
| clientRequestObject: ({ player, model, pos }) => [player, model, pos], | |
| playerHeal: ({ player, oldHealth, newHealth, oldArmour, newArmour }) => [player, oldHealth, newHealth, oldArmour, newArmour] | |
| })[eventName]; | |
| } | |
| function getV1ClientArgs(eventName, args) { | |
| return ({ | |
| anyResourceError: ({ resource }) => [resource], | |
| anyResourceStart: ({ resource }) => [resource], | |
| anyResourceStop: ({ resource }) => [resource], | |
| changedVehicleSeat: ({ vehicle, oldSeat, newSeat }) => [vehicle, oldSeat, newSeat], | |
| connectionComplete: ({ }) => [], | |
| consoleCommand: ({ command, args }) => [command, ...args], | |
| disconnect: ({ }) => [], | |
| enteredVehicle: ({ vehicle, seat }) => [vehicle, seat], | |
| gameEntityCreate: ({ entity }) => [entity], | |
| gameEntityDestroy: ({ entity }) => [entity], | |
| keydown: ({ key }) => [key], | |
| keyup: ({ key }) => [key], | |
| leftVehicle: ({ vehicle, seat }) => [vehicle, seat], | |
| startEnteringVehicle: ({ vehicle, seat }) => [vehicle, seat], | |
| startLeavingVehicle: ({ vehicle, seat }) => [vehicle, seat], | |
| removeEntity: ({ object }) => [object], | |
| resourceStart: ({ resource }) => [resource], | |
| resourceStop: ({ resource }) => [resource], | |
| resourceError: ({ resource }) => [resource], | |
| syncedMetaChange: ({ entity, key, newValue, oldValue }) => [entity, key, newValue, oldValue], | |
| streamSyncedMetaChange: ({ entity, key, newValue, oldValue }) => [entity, key, newValue, oldValue], | |
| globalMetaChange: ({ key, newValue, oldValue }) => [key, newValue, oldValue], | |
| globalSyncedMetaChange: ({ key, newValue, oldValue }) => [key, newValue, oldValue], | |
| taskChange: ({ oldTask, newTask }) => [oldTask, newTask], | |
| spawned: ({ }) => [], | |
| localMetaChange: ({ key, newValue, oldValue }) => [key, newValue, oldValue], | |
| netOwnerChange: ({ entity, newOwner, oldOwner }) => [entity, newOwner, oldOwner], | |
| windowFocusChange: ({ state }) => [state], | |
| windowResolutionChange: ({ oldResolution, newResolution }) => [oldResolution, newResolution], | |
| playerAnimationChange: ({ target, oldAnimDict, newAnimDict, oldAnimName, newAnimName }) => [target, oldAnimDict, newAnimDict, oldAnimName, newAnimName], | |
| playerWeaponShoot: ({ weaponHash, totalAmmo, ammoInClip }) => [weaponHash, totalAmmo, ammoInClip], | |
| playerWeaponChange: ({ oldWeapon, newWeapon }) => [oldWeapon, newWeapon], | |
| baseObjectCreate: ({ object }) => [object], | |
| baseObjectRemove: ({ object }) => [object], | |
| weaponDamage: ({ target, weaponHash, damage, offset, bodyPart, source, setDamageValue }) => [target, weaponHash, damage, offset, bodyPart, source], | |
| worldObjectPositionChange: ({ object, oldPos }) => [object, oldPos], | |
| worldObjectStreamIn: ({ object }) => [object], | |
| worldObjectStreamOut: ({ object }) => [object], | |
| // metaChange: ({ target, key, newValue, oldValue }) => [target, key, newValue, oldValue], | |
| entityEnterColshape: ({ colShape, entity }) => [colShape, entity], | |
| entityLeaveColshape: ({ colShape, entity }) => [colShape, entity], | |
| entityHitEntity: ({ damager, entity, weaponHash }) => [damager, entity, weaponHash], | |
| playerBulletHit: ({ weaponHash, victim, pos }) => [weaponHash, victim, pos], | |
| voiceConnection: ({ state }) => [state] | |
| })[eventName]; | |
| } | |
| export const on = (event, handler) => { | |
| alt.Events[getV2Event(event)]((args) => { | |
| const ret = handler(...(alt.isServer ? getV1ServerArgs(event, args) : getV1ClientArgs(event, args))); | |
| if (ret === false && isCancellable(event)) { | |
| args.cancel(); | |
| } | |
| if (typeof ret === 'number' && 'setDamageValue' in args) { | |
| args.setDamageValue(ret); | |
| } | |
| }); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment