• 28 Mars 2024, 15:15:14


Auteur Sujet: Code / scripts utiles.  (Lu 15099 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Code / scripts utiles.
« le: 25 Mai 2010, 19:11:07 »
Salut tout le monde !

Voila un post ou vous pouvez poster / trouver des codes utiles pour vos script.


Voila je lance le sujet avec une fonction qui permet de connaitre la distance entre deux points.


function GetDistanceBetween(x,y,z,x1,y1,z1)
return math.sqrt( math.pow((x - x1),2) + math.pow((y - y1),2) + math.pow((z - z1),2) )
end


Et une commande pour spawn des véhicules en écrivant le nom complet et vous pouvez mettre les couleur en options

exemple

/v infernus 6 6
permet de spawn une infernus jaune =)

function CreatePlayerVehicle(playerid,command,name,color,color1)
local x,y,z = getElementPosition(playerid)
if(getPedOccupiedVehicle (playerid))then
u,i,angle = getVehicleRotation(getPedOccupiedVehicle (playerid))
else
angle = getPedRotation(playerid)
end
local modelid = getVehicleModelFromName(name)
if(modelid)then
local vehid = createVehicle(modelid,x + (5 * math.sin(math.rad(-angle))),y + (5 * math.cos(math.rad(-angle))),z + 2,0,0,angle + 90,"Sasuke78200")
if(color and color1)then
setVehicleColor(vehid,tonumber(color),tonumber(color1),0,0)
end
end
end
addCommandHandler("v",CreatePlayerVehicle)
« Modifié: 31 Décembre 2010, 13:21:12 par sasuke78200 »



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne Redouane

  • *
  • Nouveau
  • Messages: 22
    • Voir le profil
Re : Code / scripts utilies.
« Réponse #1 le: 13 Septembre 2010, 18:11:47 »
Salut tu pourrait détailler comment mettre car je suis débutant x)  ???


Merci

Hors ligne Citizen

  • Scripteur LUA confirmé
  • *
  • Messages: 235
    • Voir le profil
    • Byston Evolution
Re : Code / scripts utilies.
« Réponse #2 le: 17 Décembre 2010, 21:46:28 »
Voici une commande qui permet de se téléporter aux coordonnées x,y,z:
Code: (lua) [Sélectionner]
function goToThisPos( thePlayer, commandName, x, y, z )
if ( x and y and z ) then
setElementPosition( thePlayer, x, y, z )
outputChatBox("Vous avez été téléporté à la position "..x..", "..y..", "..z, thePlayer, 0, 180, 0)
else
outputChatBox("Vous devez préciser 3 valeurs ( x, y, z ) !", thePlayer, 180, 0, 0 )
end
end
addCommandHandler( "goto", goToThisPos, false, false )

Une commande pour se suicider:
Code: (lua) [Sélectionner]
function seSuicider( thePlayer, commandName )
setElementHealth( thePlayer, 0 )
outputChatBox("Vous vous êtes suicidé !", thePlayer, 180, 0, 0 )
end
addCommandHandler( "kill", seSuicider, false, false )

Une commande pour se donner de la vie ( ou en enlever  :) ):
Code: (lua) [Sélectionner]
function setSante( thePlayer, commandName, sante )
if ( sante )
setElementHealth( thePlayer, sante)
outputChatBox("Vous avez désormais "..sante.." vies.", thePlayer, 0, 180, 0)
else
outputChatBox("SYNTHAXE: /sante [nbDeVies] ", thePlayer, 180, 180, 180)
end
end
addCommandHandler( "sante", setSante, false, false )


Une commande qui vous permet de changer d'intérieur:
Code: (lua) [Sélectionner]
function int( thePlayer, commandName, intID )
if( intID )then
setElementInterior( thePlayer, intID )
outputChatBox( "Vous vous êtes assigné l'intérieur "..intID..".", thePlayer, 0, 180, 0)
else
outputChatBox( "SYNTHAXE: /interieur [InterieurID] ", thePlayer, 175, 175, 175 )
end
end
addCommandHandler( "setint", int, false, false )

Une commande pour sauvegarder la position actuelle de votre perso, sa rotation et son intérieur et vous permet de rajouter un commentaire dans un fichier appelé savedpositions.txt :
Code: (lua) [Sélectionner]
function Save( thePlayer, commandName, ... )
local commentaire1 = {...}
local commentaire = table.concat( commentaire1, " " )
if( isAdmin( thePlayer, 1 ) )then
local x,y,z = getElementPosition( thePlayer )
local rx = getPedRotation( thePlayer )
local int = getElementInterior( thePlayer )
local savefile
savefile = fileOpen( "savedpositions.txt" )
if ( not savefile )then
fileCreate("savedpositions.txt")
savefile = fileOpen( "savedpositions.txt" )
end
if ( savefile ) then
fileSetPos( savefile, fileGetSize( savefile ) )
if ( commentaire ) then
local writen = fileWrite( savefile, "\n"..x..", "..y..", "..z..", "..rx..", "..int.." --"..commentaire.."\r\n" )
if( writen ) then
outputChatBox( "Position sauvegardée", thePlayer, 0, 200, 0 )
else
outputChatBox( "Impossible de sauvegarder la position", thePlayer, 200, 0, 0 )
end
else
local writen = fileWrite( savefile, "\n"..x..", "..y..", "..z..", "..rx..", "..int.."\r\n" )
if( writen ) then
outputChatBox( "Position sauvegardée", thePlayer, 0, 200, 0 )
else
outputChatBox( "Impossible de sauvegarder la position", thePlayer, 200, 0, 0 )
end
end
end
fileClose( savefile )
else
outputChatBox( "Vous n'êtes pas Modérateur/Administrateur", thePlayer, 200, 0, 0 )
end
end
addCommandHandler("save", Save, false, false )

EXEMPLE:              /save Spawn Taxi

Je vais avoir quelque chose de ce genre la dans le fichier savedpositions.txt :

1753.2275390625, -1894.0634765625, 13.557225227356, 271.66583251953, 0 --Taxi Spawn

Voilà j'en rajouterai surement d'ici 2 semaines ( très occupé pendant ces vacs  :P )

Si vous avez des questions, n'hésitez pas.
« Modifié: 31 Janvier 2011, 18:17:20 par Citizen »
The rEvolution is coming ...

Hors ligne Citizen

  • Scripteur LUA confirmé
  • *
  • Messages: 235
    • Voir le profil
    • Byston Evolution
Re : Code / scripts utilies.
« Réponse #3 le: 30 Décembre 2010, 19:44:13 »
Bonjour !
Me revoici avec de nouvelles commandes scripté pendant mes heures perdues  :P

Une cmd pour faire du saut en parachute au-dessus de votre position actuelle:
Code: (lua) [Sélectionner]
function skyDive( thePlayer, commandName )
local x, y, z = getElementPosition( thePlayer )
local veh = getPedOccupiedVehicule( thePlayer )
if ( not veh ) then
giveWeapon( thePlayer, 46, 1 )
setElementPosition( thePlayer, x, y, z+1000 )
outputChatBox( " GO GO GO !! ", thePlayer )
else
outputChatBox( " Vous devez d'abord sortir de votre véhicule ! ", thePlayer )
end
end
addCommandHandler( "basejump", skyDive, false, false )

Une cmd pour afficher dans votre chatbox le nombre actuelle de joueurs:
Code: (lua) [Sélectionner]
function howManyPlayers( thePlayer, commandName )
local nbPlayers = 0
for k, i in ipairs ( getElementsByType( "player" ) )do
nbPlayers = nbPlayers+1
end
outputChatBox( " Il y a actuellement "..nbPlayers.." joueurs sur le server ", thePlayer )
end
addCommandHandler( "joueurs", howManyPlayers, false, false )

Une cmd pour freezer un joueur:
Code: (lua) [Sélectionner]
function freezeAPlayer( thePlayer, commandName, targPlayerName )
if ( targPlayerName ) then
local targPlayer = getElementByName( ""..targPlayerName )
if ( targPlayer ) then
local frozen = getPedFrozen( targPlayer )
setPedFrozen( targPlayer, not frozen )
if ( not frozen == true ) then
outputChatBox( "Vous avez freezer "..targPlayerName.." .", 180, 0, 0 )
outputChatBox( "Vous avez été freezé par "..getPlayerName( thePlayer ).." .", 0, 180, 0 )
else
outputChatBox( "Vous avez défreezer "..targPlayerName.." .", 180, 0, 0 )
outputChatBox( "Vous avez été défreezé par "..getPlayerName( thePlayer ).." .", 0, 180, 0 )
end
else
outputChatBox( "* Aucun joueur ne porte ce nom !", thePlayer, 180, 0, 0 )
end
else
outputChatBox( "SYNTAXE: /freeze [NomDuJoueur]", thePlayer )
end
end
addCommandHandler( "freeze", freezeAPlayer, false, false )

Une cmd pour changer la couleur de votre véhicule:
Code: (lua) [Sélectionner]
function changeColor( thePlayer, commandName, color1, color2, color3, color4 )
local color1 = color1 or 0
local color2 = color2 or 0
local color3 = color3 or 0
local color4 = color4 or 0
local veh = getPedOccupiedVehicle( thePlayer )
if ( veh ) then
setVehicleColor( veh, color1, color2, color3, color4)
outputChatBox( "Vous avez changé la couleur du véhicule !", thePlayer, 0, 180, 0 )
else
outputChatBox( "Vous devez être dans un véhicule !", thePlayer, 180, 0, 0 )
end
end
addCommandHandler( "vehcolor", changeColor, false, false )


Une cmd pour changer le skin d'un joueur:
Code: (lua) [Sélectionner]
function setSkin( thePlayer, commandName, targPlayerName, skin )
if ( targPlayerName and skin ) then
local targPlayer = getElementByName( ""..targPlayerName )
if ( targPlayer ) then
setElementModel( targPlayer, skin )
outputChatBox( "Vous avez mis le skin "..skin.." à "..targPlayerName.." .", 180, 0, 0 )
outputChatBox( getPlayerName( thePlayer ).." vous a mis le skin "..skin.." .", 0, 180, 0 )
else
outputChatBox( "* Aucun joueur ne porte ce nom !", thePlayer, 180, 0, 0 )
end
else
outputChatBox( "SYNTAXE: /skin [NomDuJoueur] [skinID]", thePlayer )
end
end
addCommandHandler( "skin", setSkin, false, false )

Une cmd pour changer la météo du server:
Code: (lua) [Sélectionner]
function setServerWeather( thePlayer, commandName, weather )
if ( weather ) then
setWeather( weather )
outputChatBox( "La météo à été changé par "..getPlayerName( thePlayer ) )
else
outputChatBox( "SYNTAXE: /meteo [meteoID 0-255]", thePlayer )
end
end
addCommandHandler( "meteo", setServerWeather, false, false )

Et enfin une cmd pour changer l'heure du server:
Code: (lua) [Sélectionner]
function setServerTime( thePlayer, commandName, heure, minute )
if ( heure ) then
if ( minute )then
setTime( heure, minute )
else
setTime( heure, 0 )
end
local notifyMessage = string.format("Le temps est maintenant %02d:%02d !", hour, minute)
outputChatBox ( notifyMessage )
else
outputChatBox( "SYNTAXE: /temps [heure 0-23] ( [minute 0-59] )", thePlayer )
end
end
addCommandHandler( "temps", setServerTime, false, false )

Voilà voilà

Si vous avez des suggestions de cmd n'hésitez pas  :)

Cordialement,

                         Citizen

EDIT: Correction dans le 1er code
« Modifié: 31 Décembre 2010, 13:23:53 par Citizen »
The rEvolution is coming ...

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Code / scripts utilies.
« Réponse #4 le: 30 Décembre 2010, 19:57:50 »
J'ai pas lu tout les codes mais y a une erreur dans le premier
setElementPosition( x, y, z+1000 )serai mieux en
setElementPosition( thePlayer, x, y, z+1000 )



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne MK

  • *
  • Gangster
  • Messages: 1844
    • Voir le profil
Re : Code / scripts utilies.
« Réponse #5 le: 30 Décembre 2010, 20:37:11 »
Merci  de partager tous ca, je regarde ca, voir comment vous faites etc.

Hors ligne Citizen

  • Scripteur LUA confirmé
  • *
  • Messages: 235
    • Voir le profil
    • Byston Evolution
Re : Code / scripts utilies.
« Réponse #6 le: 30 Décembre 2010, 20:48:42 »
 :lmao
oui merci ( tu aurais pu me le dire discretos par msn  :D )
La faute à été corrigée

                 Citizen
« Modifié: 30 Décembre 2010, 22:41:07 par Citizen »
The rEvolution is coming ...

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Re : Code / scripts utilies.
« Réponse #7 le: 31 Décembre 2010, 12:56:50 »
:lmao
oui merci ( tu aurais pu me le dire discretos par msn  :D )
La faute à été corrigée

                 Citizen
Aha je note ^^



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne Citizen

  • Scripteur LUA confirmé
  • *
  • Messages: 235
    • Voir le profil
    • Byston Evolution
Re : Code / scripts utiles.
« Réponse #8 le: 11 Janvier 2011, 22:18:58 »
A oui enfait j'avais pas fait attention mais dans ton premier post Sasu pourquoi n'utilise pas tout simplement la fonction
Code: (lua) [Sélectionner]
getDistanceBetweenPoints3D ( float x1, float y1, float z1, float x2, float y2, float z2 ) :lmao

Se serai plus pratique tu ne trouves pas ? mais sinon +1 pour l'avoir refait  :D

Cordialement,
                       Citizen
The rEvolution is coming ...

Hors ligne ~CG~FatalTerror

  • *
  • Criminel
  • Messages: 41
    • Voir le profil
Re : Code / scripts utiles.
« Réponse #9 le: 18 Avril 2011, 19:24:48 »
Commande pour démarrer une musique:

function playMusic()
playSound ("music.mp3", false)
-- Note: The only supported audio formats are MP3, WAV, OGG, RIFF, MOD, XM, IT and S3M.
end
addCommandHandler ( "music", playMusic )


Heu je crois que c'est correct  :-\

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Code / scripts utiles.
« Réponse #10 le: 18 Avril 2011, 20:20:46 »
on a pas dis de prendre des codes directement pris du wikipedia ^^

De plus il faut aussi dire que ce code ne fonctionne qu'en client.



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne Citizen

  • Scripteur LUA confirmé
  • *
  • Messages: 235
    • Voir le profil
    • Byston Evolution
Re : Code / scripts utiles.
« Réponse #11 le: 18 Avril 2011, 23:00:58 »
Mis à part que ça provient du Wiki tout court et non pas du Wikipedia  :P
 :jesors
The rEvolution is coming ...

Hors ligne ~CG~FatalTerror

  • *
  • Criminel
  • Messages: 41
    • Voir le profil
Re : Code / scripts utiles.
« Réponse #12 le: 19 Avril 2011, 00:37:37 »
Ce code est sur le wiki  ???
Désolé  :bangin

Commande pour faire une sorte de loto ( Je l'ai fait pour mon RP  :-X )
J'ai bien commenté !  ::)
(Coté server)

function miserLoto()
local argent = getPlayerMoney(source)
if (argent > 1000) then -- On vérifie si le joueur a plus de 1000$
takePlayerMoney(source, 1000) -- On prend 1000$ du joueur
local hasard = math.random(1,10) -- Nombre au hasard entre 1 et 10
local hasard2 = math.random(1000,5000) -- Nombre au hasard entre 1000 et 5000
if (hasard == 5) then -- On vérifie si le chiffre est egal a 5
local argentaGagner = hasard*hasard2 -- On multiplie le nombre hasard par l'argent que le joueur va gagner
givePlayerMoney(source,argentaGagner) -- On donne l'argnet
local nomDuGagnant = getPlayerName(source) -- On prend le nom du joueur
outputChatBox("#ff0000[Loto]#00aaff"..nomDuGagnant.." a gagné "..argentaGagner.."$ au loto ! (Petit venar >.<)", getRootElement(), 255, 0, 0, true)
else -- Si le chiffre n'es pas 5 on lance un message
outputChatBox("#ff0000[Loto]#00aaffVous avez #ff0000PERDU !!!", source, 255, 0, 0, true)
end
else -- Si le joueur n'a pas 1000$ on lanceun message
outputChatBox("#ff0000[Loto]#00aaffVous n'avez pas 1000$ pour jouer !", source, 255, 0, 0, true)
end
  end
 addCommandHandler ( "loto", miserLoto )


Vous me dites si j'ai fait des erreurs (chui qu'un débutant  :dry )

Hors ligne Citizen

  • Scripteur LUA confirmé
  • *
  • Messages: 235
    • Voir le profil
    • Byston Evolution
Re : Code / scripts utiles.
« Réponse #13 le: 19 Avril 2011, 18:48:17 »
Nan c'est tout bon merci du partage  :happy
The rEvolution is coming ...

Hors ligne ~CG~FatalTerror

  • *
  • Criminel
  • Messages: 41
    • Voir le profil
Re : Code / scripts utiles.
« Réponse #14 le: 19 Avril 2011, 22:42:23 »
Ouais ! Pour une fois que j'ai pas fait d'erreur  :lmfao