Skip to content
Bekijk in de app

Een betere weg om onze GTA community te volgen. Leer meer.

GTAGames.nl - De Nederlandse Grand Theft Auto Community!

Een volledig scherm app op het beginscherm inclusief notificaties, badges en meer.

Om deze app op je iPhone en iPad te installeren
  1. Druk op het icoon in Safari
  2. Scroll in het menu en druk op Zet op beginscherm.
  3. Druk op Voeg toe rechts bovenaan.
Om deze app op je Android toe te voegen
  1. Druk op het 3-punten menu (⋮) rechts bovenaan in de browser.
  2. Druk op Toevoegen aan beginscherm of Installeer app.
  3. Druk op Toevoegen om te bevestigen.

Veranderend commando maken

Geplaatst:

Ik probeer dus een keypad script te makne met:

/setcode [4 nummbers] (/setcode 9999 als voorbeeld)

en

/armory [4 numbers] (/armory [9999]

Dus als je /setcode 9999 intypt,

dat je daarna /armory 9999 moet doen zodat er een variable verandert.

maar hoe kan ik deze dus synchroon laten lopen?

Featured Replies

Geplaatst:

new CommandCode = 9873;

public OnPlayerCommandText(playerid, cmdtext[])
{
   new cmd[256],tmp[256];
   new idx;
   cmd = strtok(cmdtext, idx);
   if (strcmp("/setcode", cmd, true) == 0)
   {
       if(!IsPlayerAdmin(playerid)) return 0;
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp)) return SendClientMessage(playerid, 0xFF0000AA, "USE: /setcode [code]");
       CommandCode = strval(tmp);
       return 1;
   }
   if (strcmp("/armory", cmd, true) == 0)
   {
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp)) return SendClientMessage(playerid, 0xFF0000AA, "Use: /armory [code]");
       if(strval(tmp) != CommandCode) return SendClientMessage(playerid, 0xFF0000AA, "Wrong code");
       SetPlayerArmour(playerid, 100);
       return 1;
   }
   return 0;
}

Geplaatst:
  • Auteur

new CommandCode = 9873;

public OnPlayerCommandText(playerid, cmdtext[])
{
   new cmd[256],tmp[256];
   new idx;
   cmd = strtok(cmdtext, idx);
   if (strcmp("/setcode", cmd, true) == 0)
   {
       if(!IsPlayerAdmin(playerid)) return 0;
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp)) return SendClientMessage(playerid, 0xFF0000AA, "USE: /setcode [code]");
       CommandCode = strval(tmp);
       return 1;
   }
   if (strcmp("/armory", cmd, true) == 0)
   {
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp)) return SendClientMessage(playerid, 0xFF0000AA, "Use: /armory [code]");
       if(strval(tmp) != CommandCode) return SendClientMessage(playerid, 0xFF0000AA, "Wrong code");
       SetPlayerArmour(playerid, 100);
       return 1;
   }
   return 0;
}

o.O bedankt Sandra je bent de beste :D

EDIT: probleempje:

C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(120) : warning 217: loose indentation
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(126) : error 017: undefined symbol "strtok"
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(126) : error 033: array must be indexed (variable "cmd")
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(130) : error 017: undefined symbol "strtok"
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(130) : error 033: array must be indexed (variable "tmp")
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(132) : error 017: undefined symbol "CommandCode"
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(138) : error 017: undefined symbol "strtok"
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(138) : error 033: array must be indexed (variable "tmp")
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(140) : error 017: undefined symbol "CommandCode"
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(125) : warning 203: symbol is never used: "idx"
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(125 -- 148) : warning 225: unreachable code
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(125 -- 148) : warning 217: loose indentation
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(235) : warning 217: loose indentation
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(241) : warning 217: loose indentation
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(247) : warning 217: loose indentation

Bewerkt: door TEH_GTA_COLLECTOR

Geplaatst:

Je moet de strtok-functie nog toevoegen aan je script (gewoon onderaan zetten):

strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
	index++;
}

new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
	result[index - offset] = string[index];
	index++;
}
result[index - offset] = EOS;
return result;
}

Geplaatst:
  • Auteur

Je moet de strtok-functie nog toevoegen aan je script (gewoon onderaan zetten):

strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
	index++;
}

new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
	result[index - offset] = string[index];
	index++;
}
result[index - offset] = EOS;
return result;
}

C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(132) : error 017: undefined symbol "CommandCode"
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(140) : error 017: undefined symbol "CommandCode"

Geplaatst:

Je bent

new CommandCode = 9873;

vergeten toe te voegen boven aan je script. Wel onder

#include <...>

Geplaatst:

Ja, je bent de bovenste regel in mijn 1e reactie vergeten ;)

Geplaatst:
  • Auteur

Volgend probleem:

public OnPlayerCommandText(playerid, cmdtext[])
{

   if (strcmp("/gear", cmdtext, true, 10) == 0)
//No GTeam so rebels can break in and raid the armory.
	{
   			if(PlayerToPoint(1.0, playerid, 240.52, 1876.69, 11.46))

			{
				if lock[playerid]=1
				{
				ResetPlayerWeapons(playerid);
				ShowMenuForPlayer(Gear, playerid);
				}
			}
			return 1;
	}


new cmd[256],tmp[256];
   new idx;
   cmd = strtok(cmdtext, idx);
   if (strcmp("/setcode", cmd, true) == 0)
   {
	//Ad UC parameter here, so UC can change the code.
	tmp = strtok(cmdtext, idx);
       if(!strlen(tmp)) return SendClientMessage(playerid, 0xFF0000AA, "USE: /setcode [code]");
       CommandCode = strval(tmp);
       return 1;
   }
   if (strcmp("/armory", cmd, true) == 0)
   {
       //Do not add parameter here, so Rebels are avle to crack the code.
       tmp = strtok(cmdtext, idx);
       if(!strlen(tmp)) return SendClientMessage(playerid, 0xFF0000AA, "Use: /armory [code]");
       if(strval(tmp) != CommandCode) return SendClientMessage(playerid, 0xFF0000AA, "Wrong code");
       armed[playerid]=1;
       return 1;
   }
if (strcmp("/closearmory", cmd, true) == 0)
    {
     armed[playerid]=0;
       }
   return 0;

}

return 1;
}

Wat is er mis? Hij geeft me errors.

C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(118) : warning 211: possibly unintended assignment
C:\Users\Robin\Downloads\samp03asvr_R3_win32\NEW FILES THAT NEED UPLOADS\armory.pwn(119) : error 029: invalid expression, assumed zero

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...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.

Account

Navigatie

Zoeken

Zoeken

Configureer push berichten

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.