GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: MrToinou le 30 Avril 2011, 00:36:18

Titre: Topic de S3T0W.
Posté par: MrToinou le 30 Avril 2011, 00:36:18
Bonsoir a tous (Apres un petit bout de temps :D)

Donc voila je me suis lancé dans un RP (Nooon me tapez pas) apres avoir fait un GM DM je vous rassure  :angelnot mais voila en tant que débutant dans se domaine j'ai quelque probleme sur certaine création de commandes et autres donc je crée se topic pour evitez d'en crée plusieurs pour rien.

Donc je commence avec mon premier probleme.

Apres avoir fait des modification sur la faction Bikers (J'utilise le GM de U2C) j'aimerai que les bikers ai la commande pour reparer les véhicules comme les mécanos (/reparer) donc j'ai ajouté PlayerInfo[playerid][pMember] == 14 || PlayerInfo[playerid][pLeader]== 14) dans le script /reparer et quand je vais IG et je tape la commande en etant biker sa marque Vous n'ete pas mécano. donc je cherche l'erreur depuis un bon moment et je revient sur se fofo pour obtenir de l'aide.

Merci a tous & Bonne soirée.

PS: le script /reparer : http://pastebin.com/9yZT4rYY (http://pastebin.com/9yZT4rYY)
Titre: Re : Topic de S3T0W.
Posté par: Xartrick le 30 Avril 2011, 00:44:01
Je te redirige vers un tutoriel de Sim, les opérateurs.

http://www.gtaonline.fr/forums/index.php/topic,6175.0.html (http://www.gtaonline.fr/forums/index.php/topic,6175.0.html)
Titre: Re : Topic de S3T0W.
Posté par: aerotun le 30 Avril 2011, 01:01:55
oulala ta pas de warn / erreur avec se scripte regarde le pastein comment il est lol
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 30 Avril 2011, 01:28:00
Pour le tuto j'ai un peu de mal a comprendre  :closedeyes même Apres l'avoir lu plusieurs fois, tu peut pas me donner le truc car sa fait un peu plus de 2jours que j'ai cette chose a réglé et j'ai du mal avec les tuto donc si tu pourai m'expliquer avec tes mot a toi.

Et non j'ai pas de warn ni d'erreur et ces pas le sujet du topic merci de plus posté de HS.
Titre: Re : Topic de S3T0W.
Posté par: Foo le 30 Avril 2011, 11:05:21
Salut !

C'est parfaitement logique ce que ça te fait ^^

Regarde bien comment le code est formé au début, on trouve PlayerInfo[playerid][pJob] != 7, si cette condition est vérifiée alors on renverra un message au joueur comme quoi il n'est pas mécanicien. Cette condition est fausse ( a cause du "!=" ), ce qui signifie que tous les joueurs qui n'ont PAS le job numéro 7 recevront le message suivant "Vous n'êtes pas mécanicien!"

Exactement le même principe pour les factions ;)
Titre: Re : Topic de S3T0W.
Posté par: Xartrick le 30 Avril 2011, 11:22:54
Foo, c'est là que les opérateurs interviennes, les opérateurs || signifie OU, donc pour que la condition soit vérifié, il faut que, au minimum, une condition soit valide, je te conseil d'ailleurs d'aller également voir le tutoriel de Sim ;).
Ton explication serait correct si les opérateurs utilisés serait && qui signifie ET.
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 30 Avril 2011, 14:31:54
Salut a tous

Merci pour vos réponse, donc j'ai mis "&&" a la place de "| |" met maintenant tout le monde peut taper la commande /reparer, donc je sais vous allez me prendre pour un .. met j'ai regarder le tuto de Sim et j'ai fait sa
  if(PlayerInfo[playerid][pJob] == 7 && PlayerInfo[playerid][pMember] == 14 && PlayerInfo[playerid][pLeader]== 14)
Voila.
Titre: Re : Topic de S3T0W.
Posté par: S!m le 30 Avril 2011, 15:06:28
Salut,

si tu veut un conseil pour ce genre de chose, pense par étape (et code le par étape au besoin).

Exemple:

Dans un premier lieu, le joueur doit avoir le boulot 7.
Si c'est le cas, il doit être de la team 14 (ce qui revient à dire estMembre ||(OU) estLeader et non pas avec le && (ET))

les conditions de ce genre sont plus faciles a écrire lorsque l'on sépare en sous conditions.

C'est le principe de "Diviser pour mieux régner".
Un principe de base en programmation, c'est le concept même des fonctions, des classes etc...

++Sim++
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 01 Mai 2011, 22:43:19
Je laisse sa de coté pour l'instant merci de vos réponses.  ;)

J'ai un nouveau problème concernant les MoveObjects donc j'ai suivi le tuto de.. Eloctro je crois, mais quand je tape la commande '/ouvrirgrille' sa marque la phrases comme quoi la grille s'ouvre mais elle s'ouvre pas, Merci de m'aider.

new Gbiker;
Gbiker = CreateObject(980, 1652.9783,-2134.6001,13.5547,0, 0.0000, 0.0000);
public GateClose3()
{
      MoveStreamObject(Gbiker, 1652.9783,-2134.6001,13.5547, 1.5);
      return 1;
}

http://pastebin.com/LJgDtYM3 (http://pastebin.com/LJgDtYM3) Premiere partie

http://pastebin.com/Tm5sma73 (http://pastebin.com/Tm5sma73) Deuxieme partie

Voila.
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 02 Mai 2011, 22:53:24
UUP.
Titre: Re : Topic de S3T0W.
Posté par: Toxx le 02 Mai 2011, 22:56:53
Si personne ne te réponds, c'est que personne n'as de réponse à ton problème ..  ???

++
Titre: Re : Re : Topic de S3T0W.
Posté par: cristab le 03 Mai 2011, 08:39:58
Si personne ne te réponds, c'est que personne n'as de réponse à ton problème ..  ???

++
faux on a pas vu

dan sta commande il y a sa

 MoveStreamObject(Gbiker,1652.9783,-2134.6001,13.5547, 1.5);

dans la fermeture il y a sa

 MoveStreamObject(Gbiker,1652.9783,-2134.6001,13.5547, 1.5);

tu la declare comme sa

Gbiker = CreateObject(980, 1652.9783,-2134.6001,13.5547,0, 0.0000, 0.0000);

A quelle moment tu ouvre la grille pour moi et le script jamais ;)
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 03 Mai 2011, 13:09:17
Salut,

Bon.. comme d'habitude c'etait un truc bete et je le remarque jamais ...  :snip

Merci cristab :)

Si d'autre problème je poste mais pour le moment sa ma l'air bon.
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 04 Mai 2011, 13:40:31
Rebonjour a tous.

Donc j'ai besoin d'une petite aide  :cheers

J'aimerai désactiver l'affichage de l'argent (En bas des barre de santé) et les activé sur un textdraw? j'aimerai savoir comment on fait  :-[

Merci de votre aide (encore une fois :) )
Titre: Re : Topic de S3T0W.
Posté par: cristab le 04 Mai 2011, 14:21:02
tu ne peu pas desactiver l'affichage de l'argent
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 04 Mai 2011, 15:29:03
Je me suis mal exprimer peut etre mais que les chiffres s'affiche pas par exemple (0000000100$) je veut seulement que les 100$ s'affiche que sur le textdraw et nom sur l'affichage en haut
Titre: Re : Topic de S3T0W.
Posté par: cristab le 04 Mai 2011, 16:00:41
dans ce cas la il faut te faire un systeme d'argent interne a ton GM c'est tres simple j'en avait fais un mais je l'ai perdu si j'ai un peu de temps je verrais a le refaire
Titre: Re : Topic de S3T0W.
Posté par: MrToinou le 04 Mai 2011, 16:15:30
Tu pourrai m'expliquer maintenant ou j'attend que tu fini pour que tu m'explique ?
Titre: Re : Topic de S3T0W.
Posté par: cristab le 04 Mai 2011, 16:20:19
ben il te faut un TD que tu actualise avec un variable enfin en gros c'est tres simple a faire quelque exemple

new Argent[MAX_PLAYERS];
a la connexion

Argent[playerid] = 0;
la fonction pour donner de l'argent

DonneArgent(playerid,montant)
{
   Argent[playerid]= Argent[playerid] + montant;
}

pour voir combien j'ai d'argent

Combienargent(playerid)
{
   return Argent[playerid];
}

retirer de l'argent

RetireArgent(playerid,montant)
{
   Argent[playerid] = Argent[playerid] - montant;
}

en gros voila donc apres il te suffit d'actualiser ton TD pour afficher l'argent