public static bool PreVehicleLock(VehicleManager __instance, CSteamID steamID) { var cancel = false; var player = PlayerTool.getPlayer(steamID); if (player == null) { return(false); } var vehicle = player.movement.getVehicle(); if (vehicle == null || vehicle.asset == null) { return(false); } if (!vehicle.checkDriver(steamID)) { return(false); } var isLocked = vehicle.isLocked; var flag = vehicle.asset.canBeLocked && !isLocked; if (isLocked == flag) { return(false); } OnVehicleLockUpdating?.Invoke(vehicle, player, player.quests.groupID, flag, ref cancel); return(!cancel); }
private static bool PreVehicleLock(VehicleManager __instance, CSteamID steamID) { bool cancel = false; Player player = PlayerTool.getPlayer(steamID); if (player == null) { return(false); } InteractableVehicle vehicle = player.movement.getVehicle(); if (vehicle == null || vehicle.asset == null) { return(false); } if (!vehicle.checkDriver(steamID)) { return(false); } bool isLocked = vehicle.isLocked; bool flag = vehicle.asset.canBeLocked && !isLocked; if (isLocked == flag) { return(false); } OnVehicleLockUpdating?.Invoke(vehicle, player, player.quests.groupID, flag, out cancel); return(!cancel); }
public static bool PreVehicleLock(CSteamID steamID) { var cancel = false; var player = PlayerTool.getPlayer(steamID); if (player == null) { return(false); } var vehicle = player.movement.getVehicle(); if (vehicle == null || vehicle.asset == null) { return(false); } if (!vehicle.checkDriver(steamID)) { return(false); } var toLock = !vehicle.isLocked; if (toLock && !vehicle.asset.canBeLocked) { return(false); } OnVehicleLockUpdating?.Invoke(vehicle, player, player.quests.groupID, toLock, ref cancel); return(!cancel); }