structura foldere
mutat kq- folders in un singur folder [kq]
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,33 @@
|
||||
# KQ_BIKEJUMP INSTALLATION GUIDE
|
||||
|
||||
This guide will provide step-by-step instructions on how to install and set up the KQ_BIKEJUMP script for FiveM.
|
||||
|
||||
## Step 1:
|
||||
After downloading the script, unzip the folder and place it in the `resources` directory on your FiveM server.
|
||||
|
||||
## Step 2:
|
||||
Add the script to your `server.cfg` file.
|
||||
|
||||
## Step 3:
|
||||
Configure the script to your likings via the `config.lua` file
|
||||
|
||||
## Done
|
||||
Enjoy the script
|
||||
|
||||
|
||||
# Usage
|
||||
(Using default config)
|
||||
|
||||
While on a moving bike, press `G`. This will enable the "Jump mode".
|
||||
|
||||
When the jump mode is enabled you can hold `Left mouse button` or `Right mouse button` to prepare for a jump.
|
||||
After letting go of the mouse button, you will perform the jump to that direction.
|
||||
|
||||
Auto-jump: When in the "Jump mode", look at a vehicle that's travelling at a similar speed and direction.
|
||||
If the vehicle is within your jump range, you will see a keybind hint allowing you to press `E` to perform a jump onto the vehicle.
|
||||
This doesn't guarantee the jump to be successful at all times, it simply makes it easier. But the player still needs to think
|
||||
when to jump. This "Auto-jump" feature can be disabled via the `config.lua` file.
|
||||
|
||||
|
||||
https://kuzquality.com/
|
||||
https://discord.gg/fZsyam7Rvz
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,96 @@
|
||||
|
||||
-- Decides whether the player is able to perform a jump from a vehicle
|
||||
function CanJumpFromVehicle(vehicle)
|
||||
local class = GetVehicleClass(vehicle)
|
||||
local speed = GetEntitySpeed(vehicle) * 3.6
|
||||
|
||||
local whitelist = Config.jumpableVehicles
|
||||
|
||||
-- Check whether the vehicle class or model is whitelisted
|
||||
if not Contains(whitelist.classes, class) and not ContainsHashed(whitelist.models, GetEntityModel(vehicle)) then
|
||||
return false
|
||||
end
|
||||
|
||||
return speed >= (Config.minBikeSpeed or 5.0)
|
||||
end
|
||||
|
||||
function ShouldFallOffVehicle(vehicle, holding)
|
||||
if IsEntityUpsidedown(vehicle) then
|
||||
return true
|
||||
end
|
||||
|
||||
local difference = GetSpeedDifference(vehicle)
|
||||
local falloffForces = Config.roofHolding.falloffForces or 15.0
|
||||
if holding then
|
||||
falloffForces = falloffForces * Config.roofHolding.holdingForceMultiplier
|
||||
end
|
||||
|
||||
return difference > falloffForces
|
||||
end
|
||||
|
||||
|
||||
local LAST_VEHICLE = nil
|
||||
local LAST_SPEED = nil
|
||||
function GetSpeedDifference(vehicle)
|
||||
return UseCache('GetSpeedDifference_' .. vehicle, function()
|
||||
local speed = GetEntitySpeed(vehicle) * 3.6
|
||||
|
||||
local difference = 0
|
||||
if LAST_VEHICLE == vehicle then
|
||||
difference = math.abs(speed - LAST_SPEED)
|
||||
end
|
||||
|
||||
LAST_SPEED = speed
|
||||
LAST_VEHICLE = vehicle
|
||||
return difference
|
||||
end, 100)
|
||||
end
|
||||
|
||||
function KeybindTip(message)
|
||||
SetTextComponentFormat("STRING")
|
||||
AddTextComponentString(message)
|
||||
EndTextCommandDisplayHelp(0, 0, 0, 200)
|
||||
end
|
||||
|
||||
-- This function is responsible for all the tooltips displayed on top right of the screen, you could
|
||||
-- replace it with a custom notification etc.
|
||||
function Notify(message)
|
||||
SetTextComponentFormat("STRING")
|
||||
AddTextComponentString(message)
|
||||
EndTextCommandDisplayHelp(0, 0, 0, -1)
|
||||
end
|
||||
|
||||
-- Floating keybind help
|
||||
function FloatingText(coords, message, arrowSide)
|
||||
local tag = 'KqBikeJumpHelpNotification'
|
||||
AddTextEntry(tag, message)
|
||||
SetFloatingHelpTextWorldPosition(1, coords)
|
||||
SetFloatingHelpTextStyle(1, 2, 2, 90, arrowSide or 0, 2)
|
||||
BeginTextCommandDisplayHelp(tag)
|
||||
EndTextCommandDisplayHelp(2, false, false, -1)
|
||||
end
|
||||
|
||||
|
||||
--This function is responsible for drawing all the 3d texts
|
||||
function Draw3DText(coords, textInput, scaleX)
|
||||
scaleX = scaleX * (Config.textScale or 1.0)
|
||||
local px, py, pz = table.unpack(GetGameplayCamCoords())
|
||||
local dist = GetDistanceBetweenCoords(px, py, pz, coords, true)
|
||||
local scale = (1 / dist) * 20
|
||||
local fov = (1 / GetGameplayCamFov()) * 100
|
||||
scale = scale * fov
|
||||
|
||||
SetTextScale(scaleX * scale, scaleX * scale)
|
||||
SetTextFont(Config.textFont or 4)
|
||||
SetTextProportional(1)
|
||||
SetTextDropshadow(1, 1, 1, 1, 255)
|
||||
SetTextEdge(2, 0, 0, 0, 150)
|
||||
SetTextDropShadow()
|
||||
SetTextOutline()
|
||||
SetTextEntry("STRING")
|
||||
SetTextCentre(1)
|
||||
AddTextComponentString(textInput)
|
||||
SetDrawOrigin(coords, 0)
|
||||
DrawText(0.0, 0.0)
|
||||
ClearDrawOrigin()
|
||||
end
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,89 @@
|
||||
Config = {}
|
||||
|
||||
Config.debug = false
|
||||
|
||||
-- Vehicles from which players can jump
|
||||
Config.jumpableVehicles = {
|
||||
classes = { 8, 13 },
|
||||
models = {
|
||||
'blazer',
|
||||
'blazer2',
|
||||
'blazer3',
|
||||
'blazer4',
|
||||
'seashark',
|
||||
},
|
||||
}
|
||||
|
||||
-- Type of the input hints. '3d-text' or 'floating'
|
||||
Config.inputType = 'floating'
|
||||
-- Size of the 3d text. (Only applicable for the 3d-text option)
|
||||
Config.textScale = 1.0
|
||||
|
||||
-- Minimum bike speed in km/h
|
||||
Config.minBikeSpeed = 10.0
|
||||
|
||||
-- Force of a normal jump. (side, front, up)
|
||||
Config.jumpForce = vector3(8.0, 0.7, 5.0)
|
||||
|
||||
-- Settings related to landing and holding onto roofs of cars
|
||||
Config.roofHolding = {
|
||||
enabled = true,
|
||||
|
||||
-- Minimum force to fall off a roof
|
||||
falloffForces = 8.0,
|
||||
|
||||
-- Multiplier of the minimum force required to fall off when holding onto the roof
|
||||
holdingForceMultiplier = 2.5,
|
||||
|
||||
-- Whether to allow players to enter vehicles from the roof
|
||||
allowVehicleEntering = true,
|
||||
}
|
||||
|
||||
-- Settings related to "focus" jumping. (Jumping onto specific vehicles, sort of an aimbot for jumping)
|
||||
Config.focusJump = {
|
||||
enabled = true,
|
||||
|
||||
-- Maximum difference of velocity for focused jump
|
||||
maxVelocityDifference = 5.0
|
||||
}
|
||||
|
||||
-- Controls which will be disabled when jumping/preparing a jump
|
||||
Config.jumping = {
|
||||
disableControls = {
|
||||
24, 69, 92, 106, 122, 135, 223, 257,
|
||||
25, 68, 70, 91, 114, 330,
|
||||
38, 86,
|
||||
140, 141, 142, 143
|
||||
}
|
||||
}
|
||||
|
||||
-- Keybinds
|
||||
-- https://docs.fivem.net/docs/game-references/controls/
|
||||
Config.keybinds = {
|
||||
-- Hardcoded keybinds
|
||||
jumpRight = {
|
||||
name = 'INPUT_VEH_AIM',
|
||||
label = 'RMB',
|
||||
input = 68,
|
||||
},
|
||||
jumpLeft = {
|
||||
name = 'INPUT_VEH_ATTACK',
|
||||
label = 'LMB',
|
||||
input = 69,
|
||||
},
|
||||
jumpFocus = {
|
||||
name = 'INPUT_VEH_HORN',
|
||||
label = 'E',
|
||||
input = 86,
|
||||
},
|
||||
enterVehicleSeat = {
|
||||
name = 'INPUT_VEH_HORN',
|
||||
label = 'E',
|
||||
input = 86,
|
||||
},
|
||||
|
||||
-- FiveM Keybinds. Editable through the in-game keybinds settings
|
||||
jumpPrepare = {
|
||||
key = 'G',
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
fx_version 'cerulean'
|
||||
games { 'gta5' }
|
||||
lua54 'yes'
|
||||
|
||||
author 'KuzQuality | Kuzkay'
|
||||
description 'Bike jump by KuzQuality'
|
||||
version '1.0.0'
|
||||
|
||||
client_scripts {
|
||||
'locale.lua',
|
||||
'config.lua',
|
||||
'client/editable/editable.lua',
|
||||
'client/cache.lua',
|
||||
'client/functions.lua',
|
||||
'client/client.lua',
|
||||
'client/jump.lua',
|
||||
'client/roof.lua',
|
||||
}
|
||||
|
||||
server_scripts {
|
||||
'config.lua',
|
||||
'locale.lua',
|
||||
'server/server.lua',
|
||||
}
|
||||
|
||||
escrow_ignore {
|
||||
'config.lua',
|
||||
'locale.lua',
|
||||
'client/editable/*.lua',
|
||||
}
|
||||
|
||||
dependency '/assetpacks'
|
||||
@@ -0,0 +1,11 @@
|
||||
Locale = {
|
||||
['~g~Jump mode engaged'] = '~g~Modul de saritura activat',
|
||||
['~r~Jump cancelled'] = '~r~Saritura anulata',
|
||||
['~r~Jump mode disabled'] = '~r~Modul de saritura dezactivat',
|
||||
|
||||
['~r~[~w~{INPUT}~r~]~w~ Jump'] = '~r~[~w~{INPUT}~r~]~w~ Sari',
|
||||
['~{INPUT}~ Jump'] = '~{INPUT}~ Sari',
|
||||
|
||||
['~r~[~w~{INPUT}~r~]~w~ Enter'] = '~r~[~w~{INPUT}~r~]~w~ Intra',
|
||||
['~{INPUT}~ Enter'] = '~{INPUT}~ Intra',
|
||||
}
|
||||
Binary file not shown.
Reference in New Issue
Block a user