• 05 Juin 2026, 20:17:27


Auteur Sujet: Systeme de Recherche  (Lu 2229 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Systeme de Recherche
« le: 22 Août 2012, 23:33:31 »
Bonjour j'aimerais crée un systeme de recherche d'arme comme le "/getvid" de Lalu's Stunt et j'aimerais savoir si il existe un "ReturnModelByName" mais pour les armes.

J'ai chercher, beaucoup chercher  :wall

[/url]

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Re : Systeme de Recherche
« Réponse #1 le: 23 Août 2012, 02:24:58 »
/getvid ? Peut-tu nous en dire plus ? Tout le monde ne va pas sur Lalu Stunt ^^ :bangin

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3551
    • Voir le profil
Re : Systeme de Recherche
« Réponse #2 le: 23 Août 2012, 02:27:28 »
Ce que je peux dire, c'est qu'il faut surement répertorier toutes les armes dans ton gm, et ensuite .... Je sais pas :/

Mais commence par les répertoriés.


Adju ♥
(-_-)



Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Systeme de Recherche
« Réponse #3 le: 23 Août 2012, 12:25:10 »
Cadeau : http://wiki.sa-mp.com/wiki/GetWeaponName

Comme ça tu va pouvoir te créer la fonction facilement ;)



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

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Systeme de Recherche
« Réponse #4 le: 23 Août 2012, 13:08:50 »
En faite il veut le faire pour les armes, donc la méthode la plus simple c'est de parcourir avec la fonction que j'ai donné toute les id d'armes valide et faire un strfind sur le nom de l'arme retourné et celui recherché, si strfind ne retourne pas -1 c'est que c'est peut-être l'arme qu'on recherche donc on retourne l'id.



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

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Systeme de Recherche
« Réponse #5 le: 23 Août 2012, 14:25:52 »
Merci Gzsume, je vais me documenter sur le strstr. Et pour le GetWeaponName je vois pas trop comment s'en servir pour rechercher les armes  ;D

[/url]

Hors ligne Gilux

  • *
  • Mafioso
  • GOOBY PLS
  • Messages: 2209
    • Voir le profil
Re : Systeme de Recherche
« Réponse #6 le: 23 Août 2012, 14:47:25 »
Si tu veux faire ta recherche dans le sens inverse (obtenir l'id en fonction du nom), GetWeaponName ne sera pas utile.

Il faut mettre le nom de toutes les armes dans un array (regarde gfunctions.inc, il est déjà dedans avec les noms d'armes en français), ensuite tu fais une boucle qui teste (avec strfind) si le nom de l'arme que tu as tapé dans ta commande correspond à l'une des armes de l'array, tu donnes son ID.
Je vais essayer de coder ça, j'éditerai ce post ;)

<?php

new WeaponNames[][] = {
{
"Poing"},
{
"Poing Américain"},
{
"Club de Golf"},
{
"Matraque"},
{
"Couteau"},
{
"Batte de Baseball"},
{
"Pelle"},
{
"Queue de Billard"},
{
"Katana"},
{
"Tronçonneuse"},
{
"Dildo"},
{
"Vibrator"},
{
"Gros Vibrator"},
{
"Vibrator Argenté"},
{
"Fleurs"},
{
"Canne"},
{
"Grenade"},
{
"Gaz Toxique"},
{
"Cocktail Molotov"},
{
""}, // Rien
{""}, // Rien
{""}, // Rien
{"9mm"},
{
"9mm Silencieux"},
{
"Desert Eagle"},
{
"Fusil à pompe"},
{
"Fusil à canon scié"},
{
"Fusil de combat"},
{
"Uzi"},
{
"MP5"},
{
"AK-47"},
{
"M4"},
{
"Tec9"},
{
"Fusil de Campagne"},
{
"Sniper"},
{
"Lance Roquettes"},
{
"Lance Roquettes Thermique"},
{
"Lance Flammes"},
{
"Minigun"},
{
"Charge Explosive"},
{
"Detonnateur"},
{
"Peinture"},
{
"Extincteur"},
{
"Appareil Photo"},
{
"Lunettes Nocturnes"},
{
"Lunettes Thermiques"},
{
"Parachute"}
}; 
// Ca c'est l'array avec les noms d'armes, j'ai retiré le véhicule et la dernière arme qui est invalide.


CMD:getwepid(playerid,params[]) // J'utilise zcmd et sscanf
{
    new 
nom[25];
    if(!
sscanf(params,"s",nom))
    {
        
format(nom,sizeof(nom),params); // Je sais pas du tout si c'est bon, enfin c'est pour mettre le texte dans la variable "nom".
        
new message[30];
        for(new 
i=0<= 47i++)
        {
             if(
strfind(WeaponNames[i],nom,true) != -1// Pareil, ici c'est faux mais tu devrais comprendre comment ça fonctionne.
             
{
                   
format(message,30,"%s : ID %i",WeaponNames[i],i+1); // Faux ici aussi, n'oublie pas le "i+1" car les ID d'armes commencent à 1, pas comme l'array.
                   
SendClientMessage(playerid,0xFFFFFFFF,message);
             }
        }
    }
    return 
1;
}
        

Voilà, je pense que c'est compréhensible même si ça doit être bourré d'erreurs, j'ai plus l'habitude des doubles crochets pour les arrays de texte avec le PHP  :ninja
« Modifié: 23 Août 2012, 15:05:48 par Gilux »

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Systeme de Recherche
« Réponse #7 le: 23 Août 2012, 14:53:48 »
Lisez ma réponse, elle réponds à ta question KonVict92x ainsi qu'à toi Gilux.



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

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Systeme de Recherche
« Réponse #8 le: 23 Août 2012, 15:45:11 »
Je n'utilise pas le ZCMD alors j'y comprend pas grands chose Gilux. Et Ssk je n'ai aucune idée de comment faire ce que tu explique  ;D

Juste une question, avec strtok j'arrive a recuperer le chiffre derriere mon "/wep" (Car je fait une commande /wep <ID>) mais serait-ce possible de recuperer du texte ? (Je sais que c'est possible mais ca n'utilise pas le meme procédé que pour les chiffres)
« Modifié: 23 Août 2012, 17:14:41 par KonVict92x »

[/url]

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Re : Systeme de Recherche
« Réponse #9 le: 23 Août 2012, 17:51:31 »
Avec une chaîne de caractère. (STRING)

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Systeme de Recherche
« Réponse #10 le: 23 Août 2012, 21:56:14 »
T'a pas un exemple d'utilisation ? Parceque ca m'aide pas beaucoup la...  :dry

[/url]

Hors ligne Gilux

  • *
  • Mafioso
  • GOOBY PLS
  • Messages: 2209
    • Voir le profil
Re : Systeme de Recherche
« Réponse #11 le: 23 Août 2012, 22:02:23 »
Bah utilise sscanf + zcmd, tu vas voir c'est super simple :P
Sinon il faut utiliser strtok mais ça prend plus de place et c'est plus compliqué à utiliser  ;)

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Systeme de Recherche
« Réponse #12 le: 23 Août 2012, 22:06:02 »
Bon bah, je vais me lancer dans le Zcmd alors  :P

Edit : En faite non, je suis toujours en train de chercher...
« Modifié: 24 Août 2012, 22:42:09 par KonVict92x »

[/url]