Exemples de Scripts Prêts à l'Emploi
Voici 5 scripts Lua simples et commentés que vous pouvez copier, tester et adapter dans vos propres mods.
1. Soin & Armure sur une Touche (F4)
Restaure la santé et le gilet pare-balles du joueur au maximum lorsque la touche F4 est pressée.
-- Fichier : main.lua
local TOUCHE_SOIN = 0x73 -- Touche F4
function onTick()
if is_key_down(TOUCHE_SOIN) then
local playerPed = GET_PLAYER_CHAR(GET_PLAYER_ID())
SET_CHAR_HEALTH(playerPed, 200) -- Vie max
ADD_ARMOUR_TO_CHAR(playerPed, 100) -- Armure max
log("Santé et armure restaurées !")
end
end
2. Jamais Recherché par la Police (Never Wanted)
Bloque et réinitialise automatiquement le niveau d'étoiles de police à zéro.
-- Fichier : main.lua
function onTick()
local playerId = GET_PLAYER_ID()
local playerPed = GET_PLAYER_CHAR(playerId)
-- Réinitialise les étoiles en continu
CLEAR_CHAR_LAST_DAMAGE_ENTITY(playerPed)
ALTER_WANTED_LEVEL(playerId, 0)
APPLY_WANTED_LEVEL_CHANGE_NOW(playerId)
end
3. Téléportation de 10 Mètres vers le Haut (Touche Z)
Appuyez sur Z (0x5A) pour vous téléporter 10 mètres en l'air (très pratique pour se débloquer du décor).
-- Fichier : main.lua
local TOUCHE_TP = 0x5A -- Touche Z
function onTick()
if is_key_down(TOUCHE_TP) then
local playerPed = GET_PLAYER_CHAR(GET_PLAYER_ID())
-- Récupère la position actuelle du joueur
local _, rawX, rawY, rawZ = call_native_out("GET_CHAR_COORDINATES", 3, playerPed)
local x = string.unpack("f", rawX)
local y = string.unpack("f", rawY)
local z = string.unpack("f", rawZ)
-- Téléporte 10 mètres plus haut
SET_CHAR_COORDINATES(playerPed, x, y, z + 10.0)
log("Téléportation effectuée !")
end
end
4. Compteur de Vitesse & Boost Nitro (Touche Shift)
Affiche un compteur de vitesse en km/h à l'écran et applique une accélération avec la touche Shift :
-- Fichier : main.lua
local TOUCHE_NITRO = 0x10 -- Touche Maj / Shift
function onTick()
local playerPed = GET_PLAYER_CHAR(GET_PLAYER_ID())
-- Vérifie si le joueur est dans un véhicule
if IS_CHAR_IN_ANY_CAR(playerPed) then
local veh = GET_CAR_CHAR_IS_USING(playerPed)
local speedMps = GET_CAR_SPEED(veh)
local speedKmh = speedMps * 3.6
-- Dessine le fond et la vitesse
draw_rect(20, 700, 200, 50, 0xAA000000)
draw_text(30, 715, string.format("VITESSE : %3.0f KM/H", speedKmh), 0xFFFFFFFF)
-- Boost Nitro en appuyant sur Shift
if is_key_down(TOUCHE_NITRO) then
SET_CAR_FORWARD_SPEED(veh, speedMps * 1.3)
draw_text(30, 735, ">> NITRO ACTIVE <<", 0xFFFF0000)
end
end
end
5. Activer / Désactiver l'Invincibilité (Godmode sur F3)
Bascule l'invincibilité ON / OFF à chaque pression de la touche F3 :
-- Fichier : main.lua
local TOUCHE_GODMODE = 0x72 -- Touche F3
local godmodeActif = false
local etaitAppuye = false
function onTick()
local estAppuye = is_key_down(TOUCHE_GODMODE)
-- Se déclenche uniquement au premier clic (pas au maintien prolongé)
if estAppuye and not etaitAppuye then
godmodeActif = not godmodeActif
local playerPed = GET_PLAYER_CHAR(GET_PLAYER_ID())
SET_CHAR_INVINCIBLE(playerPed, godmodeActif)
SET_CHAR_PROOFS(playerPed, godmodeActif, godmodeActif, godmodeActif, godmodeActif, godmodeActif)
if godmodeActif then
msgbox("God Mode : ACTIVÉ")
else
msgbox("God Mode : DÉSACTIVÉ")
end
end
etaitAppuye = estAppuye
end