• 20 Mai 2024, 16:27:16


Auteur Sujet: [Problème] Script admin  (Lu 1792 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
[Problème] Script admin
« le: 21 Octobre 2012, 10:24:44 »
Bonjour,

Je fais un filterscript qui vas permettre aux admins, en faisant la commande /minigun pour avoir un minigun, commande /bazooka pour avoir un bazooka et  la commande /rocket pour avoir un lance-rocket. Le problème c'est que,
Si je fais plusieurs  if(strcmp(cmdtext, "/unecmd", true) == 0) sa m'affiche des erreurs. Voici un bout du script :

Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[])
{
     if(strcmp(cmdtext, "/minigun", true) == 0)      //1ère commande
{
     if(IsPlayerAdmin(playerid))
     {
     
     GivePlayerWeapon(playerid,38,999);
SendClientMessage(playerid,COLOR_GREEN,"Vous venez de recevoir un Minigun");
return 1;
     }
     else
     {
     return SendClientMessage(playerid, COLOR_RED, "Arme réservée au Staff !");
     return 1;
}
}
}


public OnPlayerCommandText(playerid, cmdtext[])
{
     if(strcmp(cmdtext, "/bazooka", true) == 0)     //2ème commande
{
     if(IsPlayerAdmin(playerid))
     {

     GivePlayerWeapon(playerid,36,999);
SendClientMessage(playerid,COLOR_GREEN,"Vous venez de recevoir un Bazooka");
return 1;
     }
     else
     {
     return SendClientMessage(playerid, COLOR_RED, "Arme réservée au Staff !");
     return 1;
}
}
}



Et quand je compile, voici ce qui s'affiche :


C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(57) : warning 225: unreachable code
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(60) : warning 209: function "OnPlayerCommandText" should return a value
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(64) : error 021: symbol already defined: "OnPlayerCommandText"
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(77) : warning 225: unreachable code
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(80) : warning 209: function "OnPlayerCommandText" should return a value
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


1 Error.



Je ne vois pas ce qui ne vas pas. Sa dis que le GivePlayerWeapon est déjà définie, mais je suis obligé de le définir plusieurs fois, si je veut créer plusieurs commande !

Quel est le problème ?


Je vous remercie d'avance.



Toute réponse hors-sujet seras immédiatement signalée à l'administration. Le règlement du forum est disponible sur le lien suivant : http://www.gtaonline.fr/forums/index.php/topic,2.0.html
« Modifié: 21 Octobre 2012, 10:36:59 par Ssk »
Prefer the quality is better now

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : [Problème] Script admin
« Réponse #1 le: 21 Octobre 2012, 10:38:53 »
Deux fois la même callback OnPlayerText, deux return à la suite.

J'en dis pas plus sinon tu va jamais rien apprendre et tu va continuer à faire 5 postes par jour.


PS : Postes tes bouts code PAWN dans la balise de code PAWN.
PPS : On ne sait pas à quoi correspond les numéros de lignes ici ;)



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

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Re : [Problème] Script admin
« Réponse #2 le: 21 Octobre 2012, 13:31:41 »
Deux fois la même callback OnPlayerText, deux return à la suite.

J'en dis pas plus sinon tu va jamais rien apprendre et tu va continuer à faire 5 postes par jour.


PS : Postes tes bouts code PAWN dans la balise de code PAWN.
PPS : On ne sait pas à quoi correspond les numéros de lignes ici ;)




En effet, mais sa n'arrange toujours pas les choses. Regarde, j'ai fais ce que tu ma dis :


Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[])
{
     if(strcmp(cmdtext, "/minigun", true) == 0)      //1ère commande
{
     if(IsPlayerAdmin(playerid))
     {
     
     GivePlayerWeapon(playerid,38,999);
SendClientMessage(playerid,COLOR_GREEN,"Vous venez de recevoir un Minigun");
return 1;
     }
     else
     {
     return SendClientMessage(playerid, COLOR_RED, "Arme réservée au Staff !");
     return 1;
     }
     }
     }





     if(strcmp(cmdtext, "/bazooka", true) == 0)     //2ème commande
{
     if(IsPlayerAdmin(playerid))
     {

     GivePlayerWeapon(playerid,36,999);
SendClientMessage(playerid,COLOR_GREEN,"Vous venez de recevoir un Bazooka");
return 1;
     }
     else
     {
     return SendClientMessage(playerid, COLOR_RED, "Arme réservée au Staff !");
     return 1;
}
}
}




Quand je compile voici les erreurs qui s'affichent :


C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(57) : warning 225: unreachable code
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(60) : warning 209: function "OnPlayerCommandText" should return a value
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(66) : error 010: invalid function or declaration
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(68) : error 010: invalid function or declaration
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(71) : error 021: symbol already defined: "GivePlayerWeapon"
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(73) : error 010: invalid function or declaration
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(75) : error 010: invalid function or declaration
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(77) : error 010: invalid function or declaration
C:\Users\Anthony\Desktop\serveur samp\filterscripts\AdminCMD.pwn(78) : error 010: invalid function or declaration
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


7 Errors.



Comment faire pour résoudre ce problème ?


Je vous remercie d'avance.
« Modifié: 21 Octobre 2012, 13:34:40 par JohnAnto »
Prefer the quality is better now

Hors ligne pa2m972

  • Chef de la Team FOD | Scripteur de Darkseno
  • *
  • Tueur
  • Cool ta vie, mange un Kiwi
  • Messages: 59
    • Voir le profil
    • http://libertyworldroleplay.xooit.com/index.php
Re : [Problème] Script admin
« Réponse #3 le: 21 Octobre 2012, 14:31:22 »
ya 2 Return  ( 1 sur la ligne du MSG ) et l'autre en dessous, retire celui qui est DESSUS


◄¤| Leader FOD Team | Criminel | C'Helper |¤►

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Re : [Problème] Script admin
« Réponse #4 le: 21 Octobre 2012, 14:47:29 »
ya 2 Return  ( 1 sur la ligne du MSG ) et l'autre en dessous, retire celui qui est DESSUS



De la 1ère ou 2ème commande ?
Prefer the quality is better now

Hors ligne pa2m972

  • Chef de la Team FOD | Scripteur de Darkseno
  • *
  • Tueur
  • Cool ta vie, mange un Kiwi
  • Messages: 59
    • Voir le profil
    • http://libertyworldroleplay.xooit.com/index.php
Re : [Problème] Script admin
« Réponse #5 le: 21 Octobre 2012, 22:11:03 »
Peut importe look, tu as fais Return sur la ligne de la commande 2 jcrois

puis en dessous Return 1 , retire le Return sur la ligne de la commande 2


◄¤| Leader FOD Team | Criminel | C'Helper |¤►

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : [Problème] Script admin
« Réponse #6 le: 22 Octobre 2012, 19:40:32 »
J'ai indenté le code, voit maintenant ton erreur:

Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[]) {
if (strcmp(cmdtext, "/minigun", true) == 0) {
if (IsPlayerAdmin(playerid)) {
GivePlayerWeapon(playerid, 38, 999);
SendClientMessage(playerid, COLOR_GREEN, "Vous venez de recevoir un Minigun");

return 1;
}
else {
return SendClientMessage(playerid, COLOR_RED, "Arme réservée au Staff !");
return 1;
}
}
}

if (strcmp(cmdtext, "/bazooka", true) == 0) {
if (IsPlayerAdmin(playerid)) {
GivePlayerWeapon(playerid, 36, 999);
SendClientMessage(playerid, COLOR_GREEN, "Vous venez de recevoir un Bazooka");

return 1;
}
else {
return SendClientMessage(playerid, COLOR_RED, "Arme réservée au Staff !");
return 1;
}
}
}