• 22 Avril 2025, 19:36:23


Auteur Sujet: codes/scripts utiles  (Lu 132457 fois)

0 Membres et 2 Invités sur ce sujet

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : codes/scripts utiles
« Réponse #330 le: 04 Mars 2011, 23:57:45 »
@Gilux: Tu parle de quelle code ?

Hors ligne Gilux

  • *
  • Mafioso
  • GOOBY PLS
  • Messages: 2209
    • Voir le profil
Re : codes/scripts utiles
« Réponse #331 le: 05 Mars 2011, 00:38:16 »
Celui de vérification des IP.

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : codes/scripts utiles
« Réponse #332 le: 05 Mars 2011, 00:55:37 »
Qu'apprend-tu à travers ces fonctions, j'aimerais bien savoir, je suis très curieux :P.

Hors ligne Gilux

  • *
  • Mafioso
  • GOOBY PLS
  • Messages: 2209
    • Voir le profil
Re : codes/scripts utiles
« Réponse #333 le: 05 Mars 2011, 00:57:51 »
C'est le fait de chercher dans chaque caractère :
for(i = 0; i < length; i++)

(C'est basique pourtant, mais j'en ai jamais eu besoin...  :ninja)

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : codes/scripts utiles
« Réponse #334 le: 05 Mars 2011, 00:59:22 »
C'est pourtant logique de parcourir une chaîne de caractère de cette façon.
Heureux que cela t'es aidé ;).

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : codes/scripts utiles
« Réponse #335 le: 07 Mars 2011, 16:35:06 »
Salut,

peut-être un petit commentaire sur ton code Xartrick:

Je crois que le test sur la nombre de points devrait être plus grand ou égal à 1, au lieu de plus grand que 1.

Concernant ta fonction IsNumeric, je ne comprend pas pourquoi effectuer une boucle.
Attention, je crois que ta fonction retourne 1 s'il ne s'agit pas d'un chiffre. Il faudrait faire l'inverse selon le nom.

De plus, je nommerais plutôt cette fonction IsCharADigit, qui est un peu plus explicite.

J'ai posté le code modifié ici: http://pastebin.gtaonline.fr/pastebin.php?show=1054

++Sim++





Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : codes/scripts utiles
« Réponse #336 le: 08 Mars 2011, 08:14:05 »
Je vous conseil de tester aussi si les nombres de l'ip ne sont pas plus grand que 255 ^^



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

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : codes/scripts utiles
« Réponse #337 le: 08 Mars 2011, 18:01:58 »
Citation de: Sim
Concernant ta fonction IsNumeric, je ne comprend pas pourquoi effectuer une boucle.

À la base, j'effectué une comparaison de caractère selon une chaîne, donc je fessais une boucle.
J'ai oubliai de supprimer la boucle.

Hors ligne dydy5910

  • *
  • Tueur
  • Messages: 56
    • Voir le profil
Re : codes/scripts utiles
« Réponse #338 le: 11 Avril 2011, 14:22:49 »
Bonjour tout le monde déja vous m'impréssioner avec vos codes je tient a vous féliciter car la ^^
Alors voila je cherche un script qui save tout le personnage son argent son arme sa position son score sa voiture ses maisons et tout mais j'ai chercher sur google sans réponse soit le code je ne le comprend pas soit il y a des erreurs innombrables donc si vous pouvez m'aider a avoir un script comme sa sa ne serais pas de refus donnez moi un tutoriel ou autres du momment que je peut faire mon code ou si vous avez déja se code sa serais très simpa de me le donner merci beaucoup.
Bonne après midi   :happy
Cordialement Dydy :p.

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : codes/scripts utiles
« Réponse #339 le: 24 Mai 2011, 11:25:45 »
Salut, en regardant un peu dans le serveur samp, je viens de découvrir que l'on ne connaissais pas un argument pour OnVehicleDeath, et une callback qui s'appel OnScriptCash.

public OnVehicleDeath( vehicleid, killerid );
public OnScriptCash( unk, unk, unk ); Peut-être playerid, argent gagné, ancienne nombre d'argent. ( http://forum.sa-mp.com/showthread.php?t=112915 ) ça n'as pas l'air de fonctionner.




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

Hors ligne anthony_54

  • *
  • Tueur en série
  • [FR]<<<<Jackass Team >>>>[FR]
  • Messages: 131
    • Voir le profil
Re : codes/scripts utiles
« Réponse #340 le: 24 Juillet 2011, 08:55:13 »
Voilà un petit codes pour un derby .
spawn avec véhicules.

Code: (pawn) [Sélectionner]
new gPlayerVehicles[MAX_PLAYERS];
new IsInDM[MAX_PLAYERS];
new initialname[MAX_PLAYERS][62];
new playerfinal[62];

////////////////////////////////////////////////////////////////////////////////

new Float:derby[7][4] =
{
{-1425.9888,957.4713,1027.6860,357.3053},
{-1478.7693,986.7899,1028.3901,280.7596},
{-1443.5608,1033.8302,1029.8827,193.7936},
{-1402.1676,1037.2571,1029.9587,179.2527},
{-1351.8804,1028.6732,1028.3414,162.3887},
{-1323.4956,979.3501,1027.8088,61.0256},
{-1361.0549,959.4532,1027.4058,25.7441}
};

////////////////////////////////////////////////////////////////////////////////

public OnPlayerSpawn(playerid)
{
if (IsInDM[playerid] != 0)
{
switch(IsInDM[playerid])
{
case 1:
{
new rand = random(sizeof(derby));
gPlayerVehicles[playerid] = CreateVehicle(503,derby[rand][0],derby[rand][1],derby[rand][2],derby[rand][3],-1,-1,900);
SetVehicleVirtualWorld(gPlayerVehicles[playerid], 15);
LinkVehicleToInterior(gPlayerVehicles[playerid], 15);
SetPlayerVirtualWorld(playerid,15);
SetPlayerInterior(playerid,15);
PutPlayerInVehicle(playerid,gPlayerVehicles[playerid],0);
SetVehicleHealth(gPlayerVehicles[playerid],1000.0);
SetVehicleParamsForPlayer(gPlayerVehicles[playerid],playerid,0,1);
}
}
}
return 1;
}

////////////////////////////////////////////////////////////////////////////////

public OnPlayerDisconnect(playerid, reason)
{
SendDeathMessage(INVALID_PLAYER_ID, playerid, 201);
if(IsInDM[playerid] != 0)
{
RemovePlayerFromVehicle(gPlayerVehicles[playerid]);
DestroyVehicle(gPlayerVehicles[playerid]);
gPlayerVehicles[playerid] = 0;
}
return 1;
}

////////////////////////////////////////////////////////////////////////////////

public OnPlayerDeath(playerid, killerid, reason)
{
RemovePlayerFromVehicle(gPlayerVehicles[playerid]);
DestroyVehicle(gPlayerVehicles[playerid]);
gPlayerVehicles[playerid] = 0;
return 1;
}
////////////////////////////////////////////////////////////////////////////////

public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/derby", cmdtext, true) == 0)
{
if(IsInDM[playerid] !=0)
{
SendClientMessage(playerid, 0xFFFFFF, "Vous êtes déjà dans un DM !");
return 1;
}
new rand = random(sizeof(derby));
gPlayerVehicles[playerid] = CreateVehicle(503,derby[rand][0],derby[rand][1],derby[rand][2],derby[rand][3],-1,-1,900);
SetVehicleVirtualWorld(gPlayerVehicles[playerid], 15);
LinkVehicleToInterior(gPlayerVehicles[playerid], 15);
SetPlayerVirtualWorld(playerid,15);
SetPlayerInterior(playerid,15);
PutPlayerInVehicle(playerid,gPlayerVehicles[playerid],0);
SetVehicleHealth(gPlayerVehicles[playerid],1000.0);
SetVehicleParamsForPlayer(gPlayerVehicles[playerid],playerid,0,1);
IsInDM[playerid] = 2;
format(playerfinal, 62, "[derby]%s", initialname[playerid]);
SetPlayerName(playerid, playerfinal);
new Name[MAX_PLAYER_NAME],phrase[240];
GetPlayerName(playerid,Name,sizeof(Name));
format(phrase,sizeof(phrase),"%s est au derby {0000FF}(/derby).",Name);
SendClientMessage(playerid, couleur_bleu, "Pour quitter le deathmatch ==>{FFFF00} /dmq");
SendClientMessageToAll(couleur_orange,phrase);
return 1;
}

////////////////////////////////////////////////////////////////////////////////

if(strcmp("/dmq", cmdtext, true) == 0)
{
if(IsInDM[playerid] == 0)
{
SendClientMessage(playerid, 0xFFFFFF, "Vous n'êtes pas dans un DM !");
return 1;
}
if(IsInDM[playerid] != 0)
{
RemovePlayerFromVehicle(gPlayerVehicles[playerid]);
DestroyVehicle(gPlayerVehicles[playerid]);
gPlayerVehicles[playerid] = 0;
}
IsInDM[playerid] = 0;
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerPos(playerid,-516.7958,2541.3340,53.5156);
SetPlayerFacingAngle(playerid,221.976);
SetPlayerName(playerid, initialname[playerid]);
new Name[MAX_PLAYER_NAME],phrase[240];
GetPlayerName(playerid,Name,sizeof(Name));
format(phrase,sizeof(phrase)," %s viens de quitter le DM {FFFF00}(/dmq).",Name);
SendClientMessageToAll(couleur_rouge,phrase);
return 1;
}

Voilà c'est pas grand choses mais bon ;)

Cordialement Anthony_54
« Modifié: 24 Juillet 2011, 08:57:27 par anthony_54 »

===================================================
[FR]<<<<Jackass Stunt/dm>>>>>[FR]

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : codes/scripts utiles
« Réponse #341 le: 24 Juillet 2011, 09:55:07 »
pourquoi ne pas avoir fait sa en FS car ce n'est pas un code mais un script
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : codes/scripts utiles
« Réponse #342 le: 24 Juillet 2011, 11:35:09 »
J'ai voulus réécrire la fonction de Eloctro que je trouvais pas très esthétique :P, et voilà le résultat.

http://pastebin.gtaonline.fr/pastebin.php?show=1140

Et voici la forme attendu:


[MAJUSCULE][minuscules]_[MAJUSCULE][minuscules]

Hors ligne Eloctro

  • Pawno Fan
  • *
  • Grand Banditisme
  • Aight !
  • Messages: 846
    • Voir le profil
    • GtaSA-RP
Re : codes/scripts utiles
« Réponse #343 le: 24 Juillet 2011, 11:59:13 »
Effectivement elle est mieux :)
Je savais que je pouvais éviter les boucles mais je n'ai jamais mis à jours par flemme X)

En tout cas merci je vais changer celle de mon RP par celle-ci :)

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : codes/scripts utiles
« Réponse #344 le: 28 Juillet 2011, 07:19:14 »
Mon code étant faux, on peut faire toujours mieux :P, merci à toi me l'avoir remontré, j'ai corrigé la fonction, mais elle est toujours aussi longue.
Je m'étais amusé avec un ami à rendre un code le plus petit possible, c'était assez enrichissant.


#include <a_samp>

forward _AddAllPlayerClass(Float:fX, Float:fY, Float:fZ, Float:fAngle);

public _AddAllPlayerClass(Float:fX, Float:fY, Float:fZ, Float:fAngle)
{
new iBadSkin[16] = {3, 4, 5, 6, 8, 42, 53, 65, 74, 86, 91, 119, 149, 208, 273, 289};

for(new i = 0; i <= 299; i++)
{
for(new i2 = 0; i2 <= sizeof(iBadSkin); i2++)
{
if (i != iBadSkin[i2])
{
AddPlayerClass(i, Float:fX, Float:fY, Float:fZ, Float:fAngle, 0, 0, 0, 0, 0, 0);
}
}
}
}
« Modifié: 28 Juillet 2011, 07:22:42 par Xartrick »