Jump to content

Het gebruiken van een hotkey om je auto te fixen.

Geplaatst:
comment_1256977

Hey mensen, misschien wel handig om een kleine code te hebben om '2' te gebruiken als vehicle fix.

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	if(newkeys == KEY_SUBMISSION && IsPlayerInAnyVehicle(playerid)==1)
{
	new car = GetPlayerVehicleID(playerid);
	SetVehicleHealth(car, 1000.0);

	return SendClientMessage(playerid, COLOR_GREEN, "Your Vehicle has been fixed.");
}

	return 1;
}

Je post dit helemaal onderaan, dus onder de laatste callback.

De KEY_SUBMISSION is '2'.

Greetz.

Bewerkt: door Sniperx

Featured Replies

Geplaatst:
comment_1266102
Dit forum board is bedoelt voor als je vragen/problemen hebt met sa:mp, niet voor tips&trucs.

Nee hoor.. Hoeft niet persee. Sandra heeft toch ook een tutorial gemaakt. En het heet SA:MP Scripting. Dus je mag ook je scripts showen. Dus het mag wel :Y

  • 2 weken later...
Geplaatst:
comment_1273813

wat vinden jullie van deze?

1keer klikken met de linkermuis knop en je auto word geflipt en gefixt

#define COLOR_BASIC 0x0066FFAA

new MouseFunction[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
MouseFunction[playerid] = 1;
return 1;
}


public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if ((newkeys & KEY_FIRE)) //repair and flip your vehicle
{
	if(MouseFunction[playerid] == 1)
	{
		  if (IsPlayerInAnyVehicle(playerid))
		{
			  SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
				SendClientMessage(playerid,COLOR_BASIC,"[Server] your vehilce is fixed/flipped");
				//
			new Float:X,Float:Y,Float:Z,Float:Angle;
			GetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z);
			GetVehicleZAngle(GetPlayerVehicleID(playerid),Angle);
			SetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z+2);
			SetVehicleZAngle(GetPlayerVehicleID(playerid),Angle);
		}
	}
}
return 1;
}

:D:D

Geplaatst:
comment_1274617
wat vinden jullie van deze?

1keer klikken met de linkermuis knop en je auto word geflipt en gefixt

#define COLOR_BASIC 0x0066FFAA

new MouseFunction[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
MouseFunction[playerid] = 1;
return 1;
}


public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if ((newkeys & KEY_FIRE)) //repair and flip your vehicle
{
	if(MouseFunction[playerid] == 1)
	{
		  if (IsPlayerInAnyVehicle(playerid))
		{
			  SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
				SendClientMessage(playerid,COLOR_BASIC,"[Server] your vehilce is fixed/flipped");
				//
			new Float:X,Float:Y,Float:Z,Float:Angle;
			GetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z);
			GetVehicleZAngle(GetPlayerVehicleID(playerid),Angle);
			SetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z+2);
			SetVehicleZAngle(GetPlayerVehicleID(playerid),Angle);
		}
	}
}
return 1;
}

:D:D

waarom gebruik je: if(MouseFunction[playerid] == 1) de variable word nergens veranderd.

Geplaatst:
comment_1274745
waarom gebruik je: if(MouseFunction[playerid] == 1) de variable word nergens veranderd.

boeiend, het werkt tog.

Het is onnodige code. Bovendien is het een variabele en slurpt dus geheugen op. Als je een groot script hebt met veel ongebruikte variabelen in, kan dat op den duur traag gaan reageren. Bovendien is de kans op fouten veel groter.

Geplaatst:
comment_1275462

SRRY :-( , ik had teveel gezopen.

hier de code, wat je alles duidelijk maakt (hoop ik)

	if (strcmp("/CMD", cmdtext, true, 10) == 0) //kon niks anders bedenken.
{
GameTextForPlayer(playerid,"~w~ /CMD - is now: ~g~ ON",5000,5);
MouseFuntion[playerid] = 1);
} else {
GameTextForPlayer(playerid,"~w~ /CMD - is now: ~r~ OFF",5000,5);
MouseFuntion[playerid] = 0);
return 1;
}

als dr fouten in zitten, kan het best, het was even snel uit me hoofd

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.