Jump to content

Command + ID


Recommended Posts

Geplaatst:
if(!strcmp(cmd, "/su", true))
{
       new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp))
       {
               SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
               return 1;
       }
       giveplayerid = strval(tmp);

       if(!IsPlayerConnected(giveplayerid))
       {
               SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
               return 1;
       }

       GetPlayerName(giveplayerid, pName, sizeof(pName));
       GetPlayerName(playerid, oName, sizeof(oName));
       format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
       for(new i;i<MAX_PLAYERS;i++) if(gTeam[i] == TEAM_COP) SendCientMessage(i,0xff0000AA,string);
       return 1;
}

  • Reacties 49
  • Created
  • Laatste reactie

Top Posters In This Topic

  • Johannetje2

    24

  • GTAguillaume

    12

  • Wanted

    5

  • Freaksken

    4

Geplaatst:

misschien kan ik heel vervelend over komen, maar ik wil dat alleen mensen in "TEAM_COP" dat commando in kunnen voeren.

Geplaatst:

Dan voeg je bovenaan het commando de volgende if toe:

if(gTeam[playerid] == TEAM_COP)

En open en sluit je die vanzelfsprekend af. Niet vergeten de uitlijning aan te passen, overigens.

Geplaatst:

Als dat al niet lukt kun je misschien beter stoppen met een RP script?

if(!strcmp(cmd, "/su", true))
{
   if(gTeam[playerid] == TEAM_COP)
   {        
       new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
       tmp = strtok(cmdtext, idx);        
       if(!strlen(tmp))        
       {                
           SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
           return 1;       
       }        
       giveplayerid = strval(tmp);        
       if(!IsPlayerConnected(giveplayerid))        
       {                
           SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
           return 1;        
       }        
       GetPlayerName(giveplayerid, pName, sizeof(pName));
       GetPlayerName(playerid, oName, sizeof(oName));
       format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
       for(new i;i<MAX_PLAYERS;i++) if(gTeam[i] == TEAM_COP) SendCientMessage(i,0xff0000AA,string);
   }
   else
   {
       SendClientMessage(playerid, 0xFF0000AA, "Je bent geen Cop!");
   }
   return 1;
}

Geplaatst:

Als dat al niet lukt kun je misschien beter stoppen met een RP script?

if(!strcmp(cmd, "/su", true))
{
   if(gTeam[playerid] == TEAM_COP)
   {        
       new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
       tmp = strtok(cmdtext, idx);        
       if(!strlen(tmp))        
       {                
           SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
           return 1;       
       }        
       giveplayerid = strval(tmp);        
       if(!IsPlayerConnected(giveplayerid))        
       {                
           SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
           return 1;        
       }        
       GetPlayerName(giveplayerid, pName, sizeof(pName));
       GetPlayerName(playerid, oName, sizeof(oName));
       format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
       for(new i;i<MAX_PLAYERS;i++) if(gTeam[i] == TEAM_COP) SendCientMessage(i,0xff0000AA,string);
   }
   else
   {
       SendClientMessage(playerid, 0xFF0000AA, "Je bent geen Cop!");
   }
   return 1;
}

Ik drukte op een knop, en toen maakte pawno er een puinhoop van... :duh:

Geplaatst:

Sorry maar ik zie nergens die editknop dus dan maar dubbelposten

C:\Users\Johan Wenting\Documents\Server\pawno\include\dutils.inc(28) : warning 219: local variable "string" shadows a variable at a preceding level

C:\Users\Johan Wenting\Documents\Server\pawno\include\dutils.inc(132) : warning 219: local variable "string" shadows a variable at a preceding level

C:\Users\Johan Wenting\Documents\Server\pawno\include\dutils.inc(172) : warning 219: local variable "string" shadows a variable at a preceding level

C:\Users\Johan Wenting\Documents\Server\pawno\include\dutils.inc(280) : warning 219: local variable "string" shadows a variable at a preceding level

C:\Users\Johan Wenting\Documents\Server\pawno\include\dutils.inc(337) : warning 219: local variable "string" shadows a variable at a preceding level

C:\Users\Johan Wenting\Documents\Server\pawno\include\dutils.inc(379) : warning 219: local variable "string" shadows a variable at a preceding level

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(103) : error 003: declaration of a local variable must appear in a compound block

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(105) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(107) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(110) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(111) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(114) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(118) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(121) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(124) : error 021: symbol already defined: "GetPlayerName"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(127) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(129) : error 010: invalid function or declaration

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : warning 203: symbol is never used: "gTeam"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : warning 203: symbol is never used: "giveplayerid"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : warning 203: symbol is never used: "pName"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : warning 203: symbol is never used: "string"

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

11 Errors.

Geplaatst: (bewerkt)

kan je eens je scriptje van lijn 103 tot 131 geven?

Ik denk dat je ergens een '{' bent vergeten

Bewerkt: door GTAguillaume
Geplaatst:

public OnPlayerCommandText(playerid, cmdtext[])
if(!strcmp(cmd, "/su", true))
{
   if(gTeam[playerid] == TEAM_COP)
   {
       new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp))
       {
           SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
           return 1;
       }
       giveplayerid = strval(tmp);
       if(!IsPlayerConnected(giveplayerid))
       {
           SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
           return 1;
       }
       GetPlayerName(giveplayerid, pName, sizeof(pName));
       GetPlayerName(playerid, oName, sizeof(oName));
       format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
       for(new i;i<MAX_PLAYERS;i++) if(gTeam[i] == TEAM_COP) SendCientMessage(i,0xff0000AA,string);
   }
   else
   {
       SendClientMessage(playerid, 0xFF0000AA, "Je bent geen Cop!");
   }
   return 1;
}
  return 0;
}

Nu krijg ik deze errors:

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(103) : error 017: undefined symbol "cmd"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(108) : error 017: undefined symbol "tmp"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(108) : error 017: undefined symbol "idx"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(109) : error 017: undefined symbol "tmp"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(114) : error 017: undefined symbol "tmp"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(123) : error 017: undefined symbol "SendCientMessage"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : warning 209: function "OnPlayerCommandText" should return a value

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : error 010: invalid function or declaration

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

7 Errors.

Geplaatst: (bewerkt)

public OnPlayerCommandText(playerid, cmdtext[])
{
   new idx, tmp[256];
   if(!strcmp(cmd, "/su", true))
   {
       if(gTeam[playerid] == TEAM_COP)
       {        
           new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
           tmp = strtok(cmdtext, idx);        
           if(!strlen(tmp))        
           {                
               SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
               return 1;       
           }        
           giveplayerid = strval(tmp);        
           if(!IsPlayerConnected(giveplayerid))        
           {                
               SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
               return 1;        
           }        
           GetPlayerName(giveplayerid, pName, sizeof(pName));
           GetPlayerName(playerid, oName, sizeof(oName));
           format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
           for(new i;i<MAX_PLAYERS;i++) 
           if(gTeam[i] == TEAM_COP) // <-------- hier dus.
           {
               SendCientMessage(i,0xff0000AA,string);
           }
       }
       else
       {
           SendClientMessage(playerid, 0xFF0000AA, "Je bent geen Cop!");
       }
       return 1;
   }
   return 0;
}

Ik heb altijd geleerd dat er naar elke 'if' een accolade moet. Toegevoegd. ;)

Bewerkt: door Remcconen
Geplaatst: (bewerkt)

public OnPlayerCommandText(playerid, cmdtext[])
{
   new idx, tmp[256];
   if(!strcmp(cmd, "/su", true))
   {
       if(gTeam[playerid] == TEAM_COP)
       {        
           new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
           tmp = strtok(cmdtext, idx);        
           if(!strlen(tmp))        
           {                
               SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
               return 1;       
           }        
           giveplayerid = strval(tmp);        
           if(!IsPlayerConnected(giveplayerid))        
           {                
               SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
               return 1;        
           }        
           GetPlayerName(giveplayerid, pName, sizeof(pName));
           GetPlayerName(playerid, oName, sizeof(oName));
           format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
           for(new i;i<MAX_PLAYERS;i++) 
           if(gTeam[i] == TEAM_COP) // <-------- hier dus.
           {
               SendCientMessage(i,0xff0000AA,string);
           }
       }
       else
       {
           SendClientMessage(playerid, 0xFF0000AA, "Je bent geen Cop!");
       }
       return 1;
   }
   return 0;
}

Ik heb altijd geleerd dat er naar elke 'if' een accolade moet. Toegevoegd. ;)

Je kunt het ook op mijn manier doen, maar ik denk dat jij nu juist nog meer errors gaat creëren:

Ik denk dat je weer je

new idx, cmd[256],tmp[256];
cmd = strtok(cmdtext, idx);

Bent vergeten...

public OnPlayerCommandText(playerid, cmdtext[])
{
   new idx, cmd[256],tmp[256];
   cmd = strtok(cmdtext, idx); 
   if(!strcmp(cmd, "/su", true))
   {
       if(gTeam[playerid] == TEAM_COP)
       {        
           new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
           tmp = strtok(cmdtext, idx);        
           if(!strlen(tmp))        
           {                
               SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
               return 1;       
           }        
           giveplayerid = strval(tmp);        
           if(!IsPlayerConnected(giveplayerid))        
           {                
               SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
               return 1;        
           }        
           GetPlayerName(giveplayerid, pName, sizeof(pName));
           GetPlayerName(playerid, oName, sizeof(oName));
           format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
           for(new i;i<MAX_PLAYERS;i++)if(gTeam[i] == TEAM_COP)SendCientMessage(i,0xff0000AA,string);
       }
       else
       {
           SendClientMessage(playerid, 0xFF0000AA, "Je bent geen Cop!");
       }
       return 1;
   }
   if(!strcmp(cmd, "/Een Andere command...", true))
   {
       //doe hier iets anders...
       return 1;
   }
   return 0;
}

Bewerkt: door GTAguillaume
Geplaatst:

public OnPlayerCommandText(playerid, cmdtext[])
if(!strcmp(cmd, "/su", true))
{
   if(gTeam[playerid] == TEAM_COP)
   {
       new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100];
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp))
       {
           SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /su [id]");
           return 1;
       }
       giveplayerid = strval(tmp);
       if(!IsPlayerConnected(giveplayerid))
       {
           SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!");
           return 1;
       }
       GetPlayerName(giveplayerid, pName, sizeof(pName));
       GetPlayerName(playerid, oName, sizeof(oName));
       format(string, sizeof(string), "Cop Message: %s heeft %s verdacht gemaakt!", oName,pName);
       for(new i;i<MAX_PLAYERS;i++) if(gTeam[i] == TEAM_COP) SendCientMessage(i,0xff0000AA,string);
   }
   else
   {
       SendClientMessage(playerid, 0xFF0000AA, "Je bent geen Cop!");
   }
   return 1;
}
  return 0;
}

Nu krijg ik deze errors:

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(103) : error 017: undefined symbol "cmd"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(108) : error 017: undefined symbol "tmp"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(108) : error 017: undefined symbol "idx"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(109) : error 017: undefined symbol "tmp"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(114) : error 017: undefined symbol "tmp"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(123) : error 017: undefined symbol "SendCientMessage"

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : warning 209: function "OnPlayerCommandText" should return a value

C:\Users\Johan Wenting\Documents\Server\filterscripts\COPCMD.pwn(131) : error 010: invalid function or declaration

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

7 Errors.

Kan iemand nou nog helpen?

Geplaatst:

Nogmaals, zet gewoon vanboven dit bij OnPlayerCommandText dit ivp het bij elk command te zetten:

public OnPlayerCommandText(playerid, cmdtext[])
{
   new idx, cmd[256],tmp[256];cmd = strtok(cmdtext, idx);//dit moet je dus niet meer herhalen

   if(strcmp(cmd, "/su", true))
   {
    ...
   return 1;
   }   
   return 0;
}

En waarom zet jij dit:

if(!strcmp(cmd, "/su", true))

IPV dit:

if(!strcmp(cmd, "/su", true))

:duh:

Geplaatst:

Nogmaals, zet gewoon vanboven dit bij OnPlayerCommandText dit ivp het bij elk command te zetten:

public OnPlayerCommandText(playerid, cmdtext[])
{
   new idx, cmd[256],tmp[256];cmd = strtok(cmdtext, idx);//dit moet je dus niet meer herhalen

   if(strcmp(cmd, "/su", true))
   {
    ...
   return 1;
   }   
   return 0;
}

En waarom zet jij dit:

if(!strcmp(cmd, "/su", true))

IPV dit:

if(!strcmp(cmd, "/su", true))

:duh:

Geef dan die hele code eens :@

Geplaatst: (bewerkt)

Alsof je niet weet wat je daar moet zetten!

Kijk dan tog eens goe welkj stukje er overeen komt met de vorige posts.

Als je al ineens niet probeert om te zoeken help ik ook niet meer!!!

Ahja, en moest je niet weten over welk stukje ik het heb dit is het dus :duh: :

if(strcmp(cmd, "/su", true))    
{     
...    
return 1;
}

Hmm, met wat zou dit nu tog overeenkome.

Ahja, met geen want er staat een "!" te veel.

Bewerkt: door Freaksken

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.

×
×
  • Create New...