Skocz do zawartości
Ghostek456

[ROZWIĄZANY]jak zrobić nitro na przycisk

Rekomendowane odpowiedzi

 

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	
	if(newkeys == 1 || newkeys == 9 || newkeys == 33 && oldkeys != 1 || oldkeys != 9 || oldkeys != 33)
	{
		new vehicleid = GetPlayerVehicleID(playerid);
		AddVehicleComponent(vehicleid, 1010);
		
	}
	return true;
}

 

Pozdrawiam :)

Edytowane przez Vandils.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Vandils, twój kod będzie działał na każdym przycisku. W tłumaczeniu na polski ten warunek to 

"jeśli ID jest równe 1 lub jest równe 9 lub nie jest równe 9 lub nie jest równe 33 lub.. jest równe 1 i jest równe 33".
A jak wiadomo nie da się np. nie mieć wciśniętego i mieć wciśnięty za razem jeden klawisz.

Prawidłowy kod:

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) //gdy gracz zmienia wciśnięte/puszczone klawisze
{
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) //jeśli jest kierowcą
    {
        new vid = GetPlayerVehicleID(playerid); //pobieramy ID jego pojazdu do nowej zmiennej "vid"
  
        if((newkeys & KEY_FIRE)) //jeśli gracz ma wciśnięty między innymi klawisz KEY_FIRE (gdyby zamiast & dać == wtedy jest reguła "jeśli ma wciśnięty tylko KEY_FIRE)"
            AddVehicleComponent(vid, 1010); //dodajemy komponent do pojazdu o takim ID, które jest przechowywane w zmiennej "vid". Komponent ma ID 1010 (nitro)
        if((oldkeys & KEY_FIRE)) //jeśli gracz puścił klawisz "KEY_FIRE" (gdyby dać == wtedy jest reguła "gdy puścił tylko KEY_FIRE)
            RemoveVehicleComponent(vid, 1010); //usuwamy komponent 1010 (nitro) z pojazdu o takim ID, które jest przechowywane w zmiennej "vid".

    } //kończymy działanie w "jeśli gracz jest kierowcą"
    return 1; //kończymy wykonywanie się kodu w OnPlayerKeyStateChange ze zwrotną wartością funkcji 1.
}

     

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
if(strcmp(cmdtext, "/tuning", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid)) {
AddVehicleComponent(GetPlayerVehicleID(playerid), 1010);
SendClientMessage(playerid, -1,"---> Dostałeś nitro <---");
}
else {
SendClientMessage(playerid,-1,"Musisz być w pojeździe!");
}
return 1;
}

 

zmien sobie formatowanie i powinno byc git

 

Jestem na tele, wiec moga byc bledy xD

Edytowane przez RebelianT

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

CMD:nitro(playerid, params[])
{
	if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, "Nie jesteś w żadnym pojeździe!"); //wysyłamy wiadomość, gdy gracz nie jest w pojeździe.
	{
		if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, -1, "Musisz być kierowcą pojazdu!"); //wysyłamy wiadomość, gdy gracz nie jest kierowcą.
		{
			new vehicleid;
			vehicleid = GetPlayerVehicleID(playerid);
			
			AddVehicleComponent(vehicleid, 1010); //dodajemy nitro.
			return true;	
		}
	}
}

 

Proszę. :D
W razie problemów, napisz.

Edytowane przez Vandils.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
6 godzin temu, Ghostek456 napisał:

Tak jak w temacie jak zrobić że gdy dodam nitro do pojazdu to jeżdże i go niemam dopiero jak klikne LPM to sie uzywa a jak puszcze LPM to niema

 

6 godzin temu, Ghostek456 napisał:

Ale jeszcze najpierw musi mieć to nitro np komenda /tuning idpojazdu 1010 i dopiero wtedy moze uzywac

O to mi chodzi

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×