Skocz do zawartości
Kuras

Aby komenda była tylko dla jednej frakcji

Rekomendowane odpowiedzi

Witajcie. Chcę zrobic szlaban dla PD aby otwierał sie tak jak szlaban.  :) I jest on. Kordy wiem jak dać i wszystko. Tylko chcę aby ta komenda była tylko dla danej frakcji np MC. Jak doda aby komenda działała tylko dla tej frakcji.

 

Oto kodzik:

#include <a_samp>
#pragma tabsize 0
new brama;

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(" Blank Filterscript by your name here");
	print("--------------------------------------\n");
	brama = CreateObject(2933,2464.98632812,-1659.28417969,14.02030277,0.00000000,0.00000000,269.99996948); //Pozycja bramy zamkniętej lub otwartej, zależy jaką chcemy mieć przy odpaleniu serwera.
	return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/br", true) == 0)
{
GameTextForPlayer(playerid, "~n~Otwieranie", 2500, 5);
MoveObject(brama, 2464.98632812, -1659.28417969, 17.77030182, 4); //pozycja otwartej bramy
return 1;
}
if(strcmp(cmdtext, "/br", true) == 0)
{
GameTextForPlayer(playerid, "~n~Zamykanie Bramy", 2500, 5);
MoveObject(brama, 2464.98632812, -1659.28417969, 14.02030277, 4); //pozycja zamknietej bramy
return 1;
}
	return 0;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Sory że tak późno ale nie miałem neta ostatni. Oto ten kodzik:

CMD:numery(playerid, cmdtext[])
{
	if(!ToFrakcja(playerid,1)) return 1;
	new f=PlayerInfo[playerid][pFrakcja];
	if(!DoInRange(30.0,playerid,FrakcjaInfo[f][fSpawnX],FrakcjaInfo[f][fSpawnY],FrakcjaInfo[f][fSpawnZ]))
	{
		GuiInfo(playerid,"Nie jesteś na komendzie!");
		return 1;
	}
    new numer,str[150];
	if(sscanf(cmdtext, "i",numer))
	{
	    GuiInfo(playerid,""BIALY"Użyj: /numery (numer)");
 		return 1;
	}
	if(numer<2)
	{
	    GuiInfo(playerid,"Nie znaleziono pojazdu o takim numerze rejestracyjnym!");
	    return 1;
	}
    for(new nr = 1; nr < LIMIT_POJAZDOW; nr++)
	{
	    if(SamochodInfo[nr][sAktywny]==true&&SamochodInfo[nr][sRejestracja]==numer)
	    {
	        format(str, sizeof(str),""MAPA"Pojazd: (%d) %s\nWłaściciel: %s\nWartość: %d$",nr,SamochodInfo[nr][sNazwa],SamochodInfo[nr][sWlasciciel],SamochodInfo[nr][sCena]);
			GuiInfo(playerid,str);
	        return 1;
	    }
	}
	GuiInfo(playerid,"Nie znaleziono pojazdu o takim numerze rejestracyjnym!");
	return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Coś takiego zobacz.

public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp(cmdtext, "/br", true) == 0)
    {
        if(!ToFrakcja(playerid,1))
        {
            GameTextForPlayer(playerid, "~n~Otwieranie", 2500, 5);
            MoveObject(brama, 2464.98632812, -1659.28417969, 17.77030182, 4); //pozycja otwartej bramy
        }
        return 1;
    }
    if(strcmp(cmdtext, "/br", true) == 0)
    {
        if(!ToFrakcja(playerid,1))
        {
            GameTextForPlayer(playerid, "~n~Zamykanie Bramy", 2500, 5);
            MoveObject(brama, 2464.98632812, -1659.28417969, 14.02030277, 4); //pozycja zamknietej bramy
        }
        return 1;
    }
    return 0;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
C:\DOCUME~1\DAMIAN~1\Pulpit\Centrum.pwn(9) : error 017: undefined symbol "ToFrakcja"
C:\DOCUME~1\DAMIAN~1\Pulpit\Centrum.pwn(18) : error 017: undefined symbol "ToFrakcja"
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
 
 
2 Errors.

 

Takie 2 erroriki

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Tak zobacz.

public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp(cmdtext, "/br", true) == 0)
    {
        if(!ToFrakcja(playerid,1)) return 1;
        {
            GameTextForPlayer(playerid, "~n~Otwieranie", 2500, 5);
            MoveObject(brama, 2464.98632812, -1659.28417969, 17.77030182, 4); //pozycja otwartej bramy
        }
        return 1;
    }
    if(strcmp(cmdtext, "/br", true) == 0)
    {
        if(!ToFrakcja(playerid,1)) return 1;
        {
            GameTextForPlayer(playerid, "~n~Zamykanie Bramy", 2500, 5);
            MoveObject(brama, 2464.98632812, -1659.28417969, 14.02030277, 4); //pozycja zamknietej bramy
        }
        return 1;
    }
    return 0;
}
Edytowane przez Testosteron

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

Witajcie. Chcę zrobic szlaban dla PD aby otwierał sie tak jak szlaban.  :) I jest on. Kordy wiem jak dać i wszystko. Tylko chcę aby ta komenda była tylko dla danej frakcji np MC. Jak doda aby komenda działała tylko dla tej frakcji.

 

Oto kodzik:

#include <a_samp>
#pragma tabsize 0
new brama;

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(" Blank Filterscript by your name here");
	print("--------------------------------------\n");
	brama = CreateObject(2933,2464.98632812,-1659.28417969,14.02030277,0.00000000,0.00000000,269.99996948); //Pozycja bramy zamkniętej lub otwartej, zależy jaką chcemy mieć przy odpaleniu serwera.
	return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/br", true) == 0)
{
GameTextForPlayer(playerid, "~n~Otwieranie", 2500, 5);
MoveObject(brama, 2464.98632812, -1659.28417969, 17.77030182, 4); //pozycja otwartej bramy
return 1;
}
if(strcmp(cmdtext, "/br", true) == 0)
{
GameTextForPlayer(playerid, "~n~Zamykanie Bramy", 2500, 5);
MoveObject(brama, 2464.98632812, -1659.28417969, 14.02030277, 4); //pozycja zamknietej bramy
return 1;
}
	return 0;
}

Nie lepiej wdrożyć to do gamemoda?

 

 

 

 

C:\DOCUME~1\DAMIAN~1\Pulpit\Centrum.pwn(9) : error 017: undefined symbol "ToFrakcja"
C:\DOCUME~1\DAMIAN~1\Pulpit\Centrum.pwn(18) : error 017: undefined symbol "ToFrakcja"
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
 
 
2 Errors.

 

Takie 2 erroriki

 

Masz błędy, ponieważ wkleiłeś tutaj funkcje z gamemoda, nie deklarując jej wcześniej w skrypcie. :P

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

brama = CreateObject(2933,2464.98632812,-1659.28417969,14.02030277,0.00000000,0.00000000,269.99996948);

To wrzucasz do public OnGameModeInit - W gamemodzie

 

CMD:bramaopen(playerid, cmdtext[])
{
if(!ToFrakcja(playerid,1)) return 1;
GameTextForPlayer(playerid, "~n~Otwieranie", 2500, 5);
MoveObject(brama, 2464.98632812, -1659.28417969, 17.77030182, 4); //pozycja otwartej bramy
return 1;
}
CMD:bramalock(playerid, cmdtext[])
{
if(!ToFrakcja(playerid,1)) return 1;
GameTextForPlayer(playerid, "~n~Zamykanie Bramy", 2500, 5);
MoveObject(brama, 2464.98632812, -1659.28417969, 14.02030277, 4); //pozycja zamknietej bramy
return 1;
}

to dajesz do gamemoda tam gdzie wszystkie 'CMD:'

 

klikasz: CTRL+F i wpisujesz: CMD:

i potem naciskasz okej noi tam masz wszystkie komendy nad jakąś komendą wrzuć to co wyżej.

 

new brama;

to daj na górze mapy pod #include

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Aha dobra dzięki. A bo tak. Tych bram będą dwie bo to są cele i dam komendę ocela1 i ocela2 itp. I gdy dam dą deugą bramę to to samo daję inen kordy i ''brama'' bez zmian? Czy brama1 brama 2?

brama = CreateObject(2933,2464.98632812,-1659.28417969,14.02030277,0.00000000,0.00000000,269.99996948);

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Aha dzięki. Może i tak ale zrobię jak będzie mi lepiej wyglądało  :D

I taki problem w GM nie mam zawartego tego public coś tam. Gdzie dodać?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

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

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

×