• 04 Juin 2026, 20:11:57


Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Andrew_Shakur

Pages: [1]
1
Salut,
Encore moi désolée.. Mais bon la je bloque vraiment, j'ai beau tout essayer rien y faire donc voilà je veux spawn un véhicule avec une couleur, donc l'id de la couleur marche bien mais l'id du véhicule me met: 65535

Voici ma commande:
CMD:veh(playerid, params[])
{
           if(PlayerInfo[playerid][pAdmin] >= 3)
{
        new Float:X, Float:Y, Float:Z, Float:A;
        new vModel, Float:VX, Float:VY, Float:VZ, Float:VA;
            new vid;
            new pid;
            new str[126];
            new string[128];
            new color;
            if(sscanf(params,"ud", pid, color)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /veh [Voiture ID] [Color ID]");
            GetPlayerPos(playerid, X,Y,Z);
            GetPlayerFacingAngle(playerid, A);
            vid = CreateVehicle(pid, X, Y, Z, A, color, color, 600);
            GetPlayerPos(playerid, VX, VY, VZ);
GetVehicleZAngle(GetPlayerVehicleID(playerid), A);
AddVehicleToFile(VEHICLE_FILE_NAME, VX, VY, VZ, A, pid, color);
            PutPlayerInVehicle(playerid,vid,0);
            format(string, sizeof(string),"[ADMIN-SPEC]: %s spawn le véhicule (ID: %d) (Couleur: %d).", PlayerName(playerid), pid, color);
             SendAdminMessage(COLOR_RED,string);
           
        }
            return 1;
}

Merci de votre aide!

2
Salut tous le monde,
Alors depuis hier je développe un système de spawn/save véhicule mais j'ai un problème avec le spawn ( il spawn que le couleur noir malgré que j'ai défini les variables voici ce que donne mon code, ce code sert à chargé les véhicules et les spawn:


public LoadVeh(DFileName[])
{
if(!fexist(DFileName)) return 0;

new File:VehicleFile, vModel, color, Float:VX, Float:VY, Float:VZ, Float:VA, vTotal, Line[128];

VehicleFile = fopen(DFileName, io_read);
while(fread(VehicleFile, Line))
{
    if(Line[0] == '/' || isnull(Line)) continue;
    unformat(Line, "ffffi", VX, VY, VZ, VA, vModel, color);
    AddStaticVehicle(vModel, VX, VY, VZ, VA, color, color, 5);
    SendClientMessageToAll(COLOR_RED, "ID DE LA COULEUR: %d", color);
    vTotal++;
}
fclose(VehicleFile);
    return 1;
   
}

Et voici mon fichier (DFileName) vehicle.txt:

716.116455 -1401.171630 12.935154 250.139617 522 4
701.202514 -1398.202636 13.088924 266.403717 560 2
740.376953 -1410.555053 13.150145 268.603210 560 0
735.310119 -1389.901245 13.288833 86.797546 560 1

Donc normalement il devrait chargé le vehicule 1 en couleur ID 4 et le 2 en couleur ID2 ... Sauf que ce n'est pas le cas et mon SendClientMessage me dit que l'id de la couleur est 21 .. Hors non ont voit bien que j'ai mis 4, 2, 0 et 1

J'espère que vous avez compris merci de m'aidez, pour le save c'est bon c'est juste le spawn qui foire je suis débutant dans le PAWN merci de m'aidez.

Bonne journée.

3
Scripting SA-MP [Pawn center] / Problème de commande, aide.
« le: 06 Mars 2014, 17:55:20 »
Bonjour,

Je m'explique ce matin j'ai developpé un gamemode DM avec un système de clan, avec donc une commande /mettreclan [ID] pour les admins qui puissent mettre un clan a eu même.

( J'utilise zcmd )

Donc voilà, je fait /mettreclan 2 ( sa fonctionne pour le clan BICO ), ensuite /mettreclan 0 ( fonctionne pour le clan Recrute ) et quand je fait /mettreclan 1 et autres que 2 et 0 sa marche pas sa fait un ( ÿ ). Voici le screen:



Voici mon code:
CMD:mettreclan(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] == 5)
{

new str[126];
    new mor;
    if(sscanf(params, "u", mor)) return SendClientMessage(playerid, -1, "USAGE: /mettreclan [id]");
   
    format(str, sizeof(str), "Clan ajouté par un admin, id: %s", mor);
    SendClientMessageToAll(COLOR_RED, str);
      PlayerInfo[playerid][pClan] = mor;
PlayerInfo[playerid][pRankClan] = 2;

       
}
else SendClientMessage(playerid, COLOR_RED, "Vous n'avez pas accès à cette commande, merci d'utiliser /aide pour avoir la liste de vos commandes.");
return 1;
}

+1 à celui qui m'aide, merci de votre aide c'est important.
Bonne journée.

4
Bonjour tous le monde,

Donc voilà aujourd'hui je suis en pleins développement d'un système de braquage avec /poserbombe qui posera une bombe au sol et avec un timer une explosion et l'ouverture de la porte de la banque.

Puis lors de ma première version que j'ai fait il y'a 4 jours tous fonctionné bien, et puis j'ai du réinstaller mon serveur linux (pour des raisons personnels) mais maintenant a chaque fois que je compile mon gamemode j'ai cette erreur dans les logs:


----------
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3z, (C)2005-2014 SA-MP Team

[06:30:57] filterscripts = ""  (string)
[06:30:57]
[06:30:57] Server Plugins
[06:30:57] --------------
[06:30:57]  Loading plugin: streamer.so
[06:30:57]

*** Streamer Plugin v2.5.2 by Incognito loaded ***

[06:30:57]   Loaded.
[06:30:57]  Loading plugin: mysqlback.so
[06:30:57]

  > MySQL plugin R5 successfully loaded.

[06:30:57]   Loaded.
[06:30:57]  Loading plugin: mysql.so
[06:30:57]   Failed (libssl.so.0.9.8: cannot open shared object file: No such file or directory)
[06:30:57]  Loading plugin: Whirlpool.so
[06:30:57] 
[06:30:57]  ==================
[06:30:57] 
[06:30:57]   Whirlpool loaded
[06:30:57] 
[06:30:57]  ==================
[06:30:57] 
[06:30:57]   Loaded.
[06:30:57]  Loaded 3 plugins.

Donc voilà si quelqu'un à une solution à ce problème.. Je sais vraiment pas d'ou sa vient j'ai beau chercher "libssl.so.0.9.8" je ne trouve rien depuis hier a vrai dire c'est vraiment enervant donc je ne plus trop de motivation à chercher sachant que j'ai pratiquement tout fait.

PS: C'est une base de SARP.

Merci à celui qui pourras m'aidez,
Bonne journée.

5
Salut,

   En cherchant sur le Wiki je suis tombé sur cette fonction :
Code: (Pawn) [Sélectionner]
SetPlayerAttachedObject();
Ça te permet de faire tenir le tous en une ligne, apparemment, mais ça limite à 10 objets (ce qui plus que suffisant).

Oui 10 objects, sachant que le braquage autorise seulement à prendre 4 sacs, c'est à dire 4 objects donc c'est parfait, je vais essayer de faire quelque chose, après si tu pourrait le faire sur mon code directement sa serait parfait :)

6
Salut tous le monde,
C'est ma dernière demande puis ensuite, j'arrête en tout cas je remercie d'avance ceux qui pourront m'aider! Alors hier soir, je me suis amuser à faire un système de braquage plutôt réussi, et très fonctionnel, ceci-dit pour rendre la scène plus réaliste j'ai voulue donner un sac aux joueurs qui auront pris les sacs, donc c'est à dire par une commande. Voici un aperçus du sac que j'aimerait spawn en Object.



Voici ma commande actuel, elle a encore aucunes fonctions prêtes, c'est juste pour testé si le sac apparait:

else if(strcmp(cmd, "/sac", true) == 0)
 {
    new sacbillets1;
    sacbillets1 = CreateObject(1550,0.1,0.1,0.1,0.1,0.1,0.1);
    AttachObjectToPlayer(sacbillets1, playerid, 0, -0.3, 0.0, 0, 0, 180);
    return 1;
   
 }

Pourtant quand je tape /sac rien ne se passe dans le jeux.
( Si quelqu'un à un bout de code précis compréhensible, qu'il le poste en commentaire merci beaucoup! )

Merci de votre aide,
Bonne journée.

7
Pas de soucis, c'est vrai que mon explication n'était pas très compréhensible si tu ne développes pas au quotidien. Je vais essayer de faire plus simple (je ne promets rien) :

CreateHousePickup() est la fonction que tu utilises pour afficher un pickup (objet à ramasser en jeu) à chaque maison disponible (à vendre ou achetée). Si tu souhaites afficher une icône sur la carte (une mapicon), tu dois comme tu l'as dit utiliser la fonction SetPlayerMapIcon(). Elle demande pour fonctionner une variable playerid qui correspond à l'identifiant d'un joueur. Dans ton cas, tu souhaites afficher cette icône pour tous les joueurs. Tu vas donc devoir faire une boucle pour parcourir tous les identifiants et appeler la fonction pour chacun des joueurs, un à un.

Ce qui donne donc (code corrigé mais pas compilé, il se peut qu'il affiche des erreurs) :


Code: (pawn) [Sélectionner]
// CreateHouse serait plus adapté puisqu'on ne se charge plus uniquement du pickup
public CreateHousePickup()
{
print("Lancement Boucle 331");

for(new h = 0; h < totalbizz; h++)
{
if(BizzInfo[h][bOwned] == 0)
          {
            BizPickup[h] = CreateDynamicPickup(1272,
1,
BizzInfo[h][bEntranceX],
BizzInfo[h][bEntranceY],
BizzInfo[h][bEntranceZ],
0,
0,
-1,
PICKUP_STREAM_DISTANCE);
          }

        if(BizzInfo[h][bOwned] == 1)
          {
// Ici, je fais une boucle sur le nombre maximum de joueurs
for(new p=0; p<GetMaxPlayers(); p++)
{
// Sur la ligne suivante, j'utilise la variable utilisée dans la boucle pour afficher l'icône à chaque joueur
            BizPickup[h] = SetPlayerMapIcon(p,
313,
BizzInfo[h][bEntranceX],
BizzInfo[h][bEntranceY],
BizzInfo[h][bEntranceZ],
31,
0,
MAPICON_LOCAL );
              }

BizPickup[h] = CreateDynamicPickup(1239,
1,
BizzInfo[h][bEntranceX],
BizzInfo[h][bEntranceY],
BizzInfo[h][bEntranceZ],
0,
0,
-1,
PICKUP_STREAM_DISTANCE);}
          }
      }

    print("Fin Boucle 331");
}

Note : désolé, comme j'ai rédigé ça directement sur le forum, mes tabulations sont un peu larges...

Tu dois appliquer la même technique pour la première condition (si la maison est disponible à la vente).

En espérant avoir été plus clair,
Bonne journée. ;-)


Merci déjà pour cette rédaction, j'ai mieux compris, sauf que maintenant tous ce passe bien lors de la compilation ect.. Mais rien ne s'affiche dans mon jeux sauf les CreateDynamicPickup, en gros, je n'ai toujours pas l'icone sur la mini carte.

EDIT: j'ai rien dit tu es un génie ! J'avait oublier que la maison devait être acheter pour apparaître sur la minimap, merci beaucoup, sujet résolus à lock.

8
La fonction utilise une variable (en l'occurence, playerid) sauf qu'elle ne connaît pas sa valeur. Il est donc affiché que le symbole playerid (la variable) n'est pas défini. Si tu ajoutes playerid dans l'appel de la fonction, il faut modifier ses instructions pour prendre en compte la variable, et aussi le prototype (une sorte de définition qui explique au serveur comment la fonction se présente et quels arguments elle prend en compte). J'espère que c'est assez clair, c'est assez difficile à expliquer. ^^

J'ai pas trop compris, comme je l'ai dit dans le topic je suis pas scripteur et je l'avoue car je ne veut pas me faire passer pour quelqu'un de fort, ce que je ne suis pas! C'est possible que tu te base sur mon bout de code et m'en donne un qui fonctionne ou même des explication moins difficile à comprendre ^^

9
y0 tous le monde!

Ce soir en modifiant un peut mon script ( n'étant pas scripteur mais mappeur ) j'ai essayé de faire en sortes que chaque maisons disponible sur le serveur ( liée à une base de donnée, base de sarp ) sois visible sur la map comme ceci ( les petites maisons vertes):



J'ai alors entrer, le code avec SetPlayerMapIcon();
Ce qui ma donner cela:

public CreateHousePickup(playerid)
{
    print("Lancement Boucle 331");
    for(new h = 0; h < totalbizz; h++)
{
if(BizzInfo[h][bOwned] == 0)
{BizPickup[h]=CreateDynamicPickup(1272, 1, BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ], 0, 0, -1, PICKUP_STREAM_DISTANCE);}
if(BizzInfo[h][bOwned] == 1)
{
BizPickup[h]=SetPlayerMapIcon(playerid, 313, BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ], 31, 0, MAPICON_LOCAL );
    BizPickup[h]=CreateDynamicPickup(1239, 1, BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ], 0, 0, -1, PICKUP_STREAM_DISTANCE);}
}
print("Fin Boucle 331");
}

J'ai ajouter (playerid) dans public CreateHousePickup(ici), car quand je ne mettez pas playerid j'avait une erreur qui disait:

Citer
undefined symbol "playerid"

Donc voilà, j'espère avoir été clair dans mes propos, +1 à celui qui m'aidera résoudre ce problème.
Bonne soirée!

Pages: [1]