Skip to content
View in the app

A better way to browse. Learn more.

GTAGames.nl - De Nederlandse Grand Theft Auto Community!

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

speel limit

heeft iemand een code van: dat als je harder dan 100 gaat dat je dan een ster krijgt? of weet iemand hoe je dat kan maken, ik heb al op google zitten zoeken maar ik kan niks vinden. alvast bedankt :bier:

Featured Replies

  • Author

Ik heb wel iets als dit gevonden.

stock GetPlayerSpeed(playerid) // zet dit vanonder in je gamemode!
{
new Float:X, Float:Y, Float:Z;
if(IsPlayerInAnyVehicle(playerid))
{
	GetVehicleVelocity(GetPlayerVehicleID(playerid), X, Y, Z);
	return floatround(floatmul(floatmul(floatsqroot(floatpower(floatabs(X), 2) + floatpower(floatabs(Y), 2) + floatpower(floatabs(Z), 2)), 100), 1.621371192), floatround_round);
}
else
{
	GetPlayerVelocity(playerid, X, Y, Z);
	return floatround(floatmul(floatmul(floatsqroot(floatpower(floatabs(X), 2) + floatpower(floatabs(Y), 2) + floatpower(floatabs(Z), 2)), 100), 1.621371192), floatround_round);
}
}

maar weet iemand hoe je hiermee kan maken dat als je harder dan 100 gaat je 1 ster krijgt?

Timer of OnPlayerUpdate.

if(GetPlayerSpeed(playerid) > 100))
{
   new level = GetPlayerWantedLevel(playerid);
   SetPlayerWantedLevel(playerid, level+1);
}

Het probleem hiermee is echter dat je sterren zal blijven krijgen zolang je harder als 100 rijdt.

Om het op te lossen kan je een variabele gebruiken.

Timer of OnPlayerUpdate.

if(GetPlayerSpeed(playerid) > 100))
{
   new level = GetPlayerWantedLevel(playerid);
   SetPlayerWantedLevel(playerid, level+1);
}

Het probleem hiermee is echter dat je sterren zal blijven krijgen zolang je harder als 100 rijdt.

Om het op te lossen kan je een variabele gebruiken.

Waarom die extra variable? Dat is enkel maar verspilling van geheugen.

if(GetPlayerSpeed(playerid) > 100))
{
   SetPlayerWantedLevel(playerid, GetPlayerWantedLevel(playerid)+1);
}

Edited by megadreams

Zo bedoel ik het niet.

Stel: Die timer is om de 1000 ms herhaald.

Op een gegeven moment rijd je meer dan honderd. Je krijgt nu 1 ster. Eén seconde later rijd je waarschijnlijk nog steeds meer dan honderd. Je krijgt nu een tweede ster. Etcetera

Om dit te voorkomen zal je een variabele (niet new level, dat hoort er niet bij) moeten zetten zodat je niet eindeloos sterren blijft krijgen.

Ja weet ik maar ik zorgde er gewoon voor dat in dat mini stukje je geen teveel geheugen gebruikt. :puh:

  • Author

error :-( :

(873) : error 029: invalid expression, assumed zero

873 if(GetPlayerSpeed(playerid) > 100))

ben ik misschien wat vergeten?

Edited by ted80

  • Author

forward speed(playerid);

public OnGameModeInit()
{
SetTimer("speed", 1000, true);
return 1;
}

public speed(playerid)
{
if(GetPlayerSpeed(playerid) > 100))
{
	SetPlayerWantedLevel(playerid, GetPlayerWantedLevel(playerid)+1);
}
return 1;
}

Je maakt een public met een variabele (playerid), maar je geeft die variabele nergens door.

Dus maak je ofwel een timer voor elke speler apart ofwel een loop:

forward speed();

public OnGameModeInit()
{
       SetTimer("speed", 1000, true);
       return 1;
}

public speed()
{
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
       if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i)) continue;
       if(GetPlayerSpeed(i) > 100))
       {
           SetPlayerWantedLevel(i, GetPlayerWantedLevel(i)+1);
       }
   }
   return 1;
}

Edited by Big Boss

We hebben beide dezelfde fout behouden in GetPlayerSpeed die laatste ) moet weg.

forward speed();

public OnGameModeInit()
{
       SetTimer("speed", 1000, true);
       return 1;
}

public speed()
{
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
       if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i)) continue;
       if(GetPlayerSpeed(i) > 100)
       {
           SetPlayerWantedLevel(i, GetPlayerWantedLevel(i)+1);
       }
   }
   return 1;
}

EDIT: Deze code kan je gebruiken als je wil dat hij niet gaat proberen het wanted lvl hoger te zetten dan 6 wat natuurlijk niet gaat:

forward speed();

public OnGameModeInit()
{
       SetTimer("speed", 1000, true);
       return 1;
}

public speed()
{
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
       if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i)) continue;
       if(GetPlayerWantedLevel(i) >= "6") continue;
       if(GetPlayerSpeed(i) > 100)
       {
           SetPlayerWantedLevel(i, GetPlayerWantedLevel(i)+1);
       }
   }
   return 1;
}

Edited by megadreams

Oke, maar zoals ze al hebben gezegd: Nu krijg je steeds extra wanted, elke seconde lang!

Je kan er ook voor zorgen dat je elke minuut één extra kan krijgen. Ik zal ALLES even geven ;)

#include <a_samp>

#define MAX_SPEED 100 //Maximale snelheid, veranderen!

new wantedup[MAX_PLAYERS];

forward GetPlayerSpeed(playerid);
forward WantedAgain(playerid);
forward speed();

public OnFilterScriptInit()
{
SetTimer("speed", 1000, true);
	return 1;
}

public speed()
{
for(new i = 0; i < MAX_PLAYERS; i++)
	{
	if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i)) continue;
		if(GetPlayerSpeed(i) >= MAX_SPEED)
		{
			if(wantedup[i] == 0)
			{
		SetPlayerWantedLevel(i, (GetPlayerWantedLevel(i)+1));
		SetTimerEx("WantedAgain", 60000, false, "i", i);
		wantedup[i] = 1;
		}
		}
	}
}

public WantedAgain(playerid)
{
wantedup[playerid] = 0;
}

stock GetPlayerSpeed(playerid)
{
new Float:X, Float:Y, Float:Z;
	if(IsPlayerInAnyVehicle(playerid))
	{
	GetVehicleVelocity(GetPlayerVehicleID(playerid), X, Y, Z);
		return floatround(floatmul(floatmul(floatsqroot(floatpower(floatabs(X), 2) + floatpower(floatabs(Y), 2) + floatpower(floatabs(Z), 2)), 100), 1.621371192), floatround_round);
	}
	else
	{
		GetPlayerVelocity(playerid, X, Y, Z);
		return floatround(floatmul(floatmul(floatsqroot(floatpower(floatabs(X), 2) + floatpower(floatabs(Y), 2) + floatpower(floatabs(Z), 2)), 100), 1.621371192), floatround_round);
	}
}

Ik weet niet of hij het doet, maar ik ga er wel van uit ;)

Je hebt iig geen errors/warnings

Gvm

Edited by Kwarde

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Search

Search

Configure browser push notifications

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.