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.

Cmd pas uitvoeren als je dichtbij iemand staat.

Geplaatst:

Hoe kan je een command maken die alleen maar werkt als je dicht bij de speler staat waarop je de command uitvoert.

Zegmaar als je iemand geld wil geven moet je eerst dichtbij diegene staan die je geld wil geven.

Ik heb wel iets gezien over ProxDetector ofzo?

Featured Replies

Geplaatst:

if(strcmp bladiebla) //De command
{
   for(new i = 0; i < GetMaxPlayers(); i++) //Zal alle spelerid's doorlopen
   {
       if(i != playerid) //Als de spelerid een ander id heeft dan jouw kunnen we verder
       {
           new Float:iX, Float:iY, Float:iZ; //Variabelen om de posities in op te slaan van de andere speler
           GetPlayerPos(i, iX, iY, iZ); //De posities ophalen van de andere speler
           if(IsPlayerInRangeOfPoint(playerid, 1.0, iX, iY, iZ)) //Als jij in 1 meter in de buurt bent van de ander (1.0 kan je dus veranderen naar het aantal meters dat tussen jouw en de andere persoon mag zitten)
           {
               GivePlayerMoney(i, 20); //Zal 20 dollar aan degene die dichtbij je staat geven, 20 kan je dus veranderen
               return 1; //De command is geëindigd
           }
           else //Anders, als je niet in de buurt bent van een andere speler
           {
               //Kan je bijvoorbeeld een error bericht senden met SendClientMessage(playerid, kleur, "bericht")
               return 1; //De command is geëindigd
           }
       }
   }
   return 1; //De command is geëindigd
}

Kan je natuurlijk ook nog een multiparam commando van maken, je zou eens de PMTL kunnen bekijken en dan voor DCMD kiezen, waarmee je makkelijk multiparam commando's kan maken.

Bewerkt: door Remi-X

Geplaatst:
  • Auteur
if(strcmp(cmd, "/uncuff", true) == 0) //De command

{

if(gTeam[playerid] == TEAM_COP0)

tmp = strtok(cmdtext, idx);

if(!strlen(tmp))

{

SendClientMessage(playerid, 0xFF0000AA, "Use: /cuff [id]");

return 1; //Stopt het commando

}

if(!IsPlayerConnected(giveplayerid))

{

SendClientMessage(playerid, 0xFF0000AA, "Player not online"); return 1;

}

for(new i = 0; i < GetMaxPlayers(); i++) //Zal alle spelerid's doorlopen

{

if(i != playerid) //Als de spelerid een ander id heeft dan jouw kunnen we verder

{

new Float:iX, Float:iY, Float:iZ; //Variabelen om de posities in op te slaan van de andere speler

GetPlayerPos(i, iX, iY, iZ); //De posities ophalen van de andere speler

if(!IsPlayerInRangeOfPoint(playerid, 1.0, iX, iY, iZ)) //Als jij in 1 meter in de buurt bent van de ander (1.0 kan je dus veranderen naar het aantal meters dat tussen jouw en de andere persoon mag zitten)

{

SendClientMessage(playerid, COLOR_RED, "You're not near the player");

return 1; //De command is geëindigd

}

TogglePlayerControllable(i, 1); //

return 1; //De command is geëindigd

}

}

return 1; //De command is geëindigd

}

Is dit een goede command?

Geplaatst:

Nee, dat is het niet. Als je je mode zou compilen zou je errors krijgen, en dus zelf al zien dat er wat fout is.

En plaats je code volgende keer in de code tags, dan is het allemaal wat beter leesbaar. [ code ] en [ /code ] (zonder spaties)

Dat wat jij hebt gedaan heeft trouwens ook helemaal geen nut, voor de manier die ik je gaf hoef je geen ID in te voeren. Ga gewoon behoorlijk dichtbij een ander staan, en typ de command die jij wilt. Maakt niet uit bij wie je staat, je zal geld aan hem geven als je bij een willekeurig persoon in de buurt staat. Als je zelf nog wil kiezen hoeveel geld je hem wilt geven, moet je wel params gaan gebruiken. Maar aan die command van net te zien was dat niet je bedoeling.

if(strcmp(cmd, "/geefgeld", true) == 0)
{
   for(new i = 0; i < GetMaxPlayers(); i++) //Zal alle spelerid's doorlopen
   {
       if(i != playerid) //Als de spelerid een ander id heeft dan jouw kunnen we verder
       {
           new Float:iX, Float:iY, Float:iZ; //Variabelen om de posities in op te slaan van de andere speler
           GetPlayerPos(i, iX, iY, iZ); //De posities ophalen van de andere speler
           if(IsPlayerInRangeOfPoint(playerid, 1.0, iX, iY, iZ)) //Als jij in 1 meter in de buurt bent van de ander (1.0 kan je dus veranderen naar het aantal meters dat tussen jouw en de andere persoon mag zitten)
           {
               GivePlayerMoney(i, 20); //Zal 20 dollar aan degene die dichtbij je staat geven, 20 kan je dus veranderen
               return 1; //De command is geëindigd
           }
           else //Anders, als je niet in de buurt bent van een andere speler
           {
               //Kan je bijvoorbeeld een error bericht senden met SendClientMessage(playerid, kleur, "bericht")
               return 1; //De command is geëindigd
           }
       }
   }
   return 1; //De command is geëindigd
}

Dat is alles dus voor je command.

Geplaatst:
  • Auteur

Ok bedankt, ik denk dat het wel gaat lukken. :)

Geplaatst:

Ok bedankt, ik denk dat het wel gaat lukken. :)

En let op je indentation, dit is zeker voor beginnende scripters belangrijk.

Correcte indentation!

Geloof het of niet: indentation is ongelofelijk belangrijk! Indentation is de uitlijning van jouw script. Kort gezegd: na elke { spring je een tab (of 4 spaties) verder, en na elke } ga je dat weer terug. Dit helpt jouw script veel overzichtelijker te maken. Voorbeeldjes:

Zonder goede indentation

public DelAllVehs()
{
for(new i = 0; i <= MAX_VEHICLES; i++)
{
if(SpawnedCar[i])
{
DestroyVehicle(i);
}
}
}

Met goede indentation

public DelAllVehs()
{
for(new i = 0; i <= MAX_VEHICLES; i++)
{
	if(SpawnedCar[i])
	{
		DestroyVehicle(i);
	}
}
}

Je ziet zelf al wel wat duidelijker is. Dit is makkelijk voor jou, omdat je script overzichtelijker wordt én het debuggen makkelijker.

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.