Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2014-07-17, 12:30


Mati4139







Wiek: 27
Na forum: 5125 dni
Posty: 17

Piwa: 204

Respekt: 50

Witam, mam problem, korzystam z gamemode GeoGaming i mam takie pytanie, jak naprawi? to, ?e jak gracz wejdzie do auta frakycjnego dostaje kicka od systemu?

Prawdopodobnie potrzebne kody:
Kod:


public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(KomendySprawdz(playerid) || GetPVarInt(playerid, "AnimkaPostrzal") == 1) return 1;
new Float:Pos[3];
GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
if(doors)
{
SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]+0.01);
Unfreeze(playerid, 1);
if(SamochodInfo[vehicleid][sAlarm]==1)
{
SetVehicleParamsEx(vehicleid,engine,lights,1,doors,bonnet,boot,objective);
}
}
if(SamochodInfo[vehicleid][sOwner]==2&&!ispassenger)
{
if(SamochodInfo[vehicleid][sOwnerID]==PlayerInfo[playerid][pGrupa1] || SamochodInfo[vehicleid][sOwnerID]==PlayerInfo[playerid][pGrupa2] || SamochodInfo[vehicleid][sOwnerID]==PlayerInfo[playerid][pGrupa3]) return 1;
SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]+0.01);
return error(playerid);
}
if(SamochodInfo[vehicleid][sOwner]==3)
{
if(pItem(playerid, 8,13,vehicleid)) return 1;
if(SamochodInfo[vehicleid][sOwnerID]!=PlayerInfo[playerid][pUID]&&!ispassenger)
{
SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]+0.01);
return error(playerid);
}
return 1;
}
return 1;
}


Kod:


public OnPlayerStateChange(playerid, newstate, oldstate)
{
new vehicleid=GetPlayerVehicleID(playerid),str[250];
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
{
new Weap[2];
GetPlayerWeaponData(playerid, 4, Weap[0], Weap[1]);
SetPlayerArmedWeapon(playerid, Weap[0]);
}
if(oldstate==PLAYER_STATE_ONFOOT)
{
if(doors&&vehicleid!=0)
{
format(str, sizeof(str),"Nieautoryzowane wejscie do Pojazdu /kick (%d).",vehicleid);
return Kara(0,playerid,-1,str,0);
}
}
if(newstate==PLAYER_STATE_DRIVER)
{
if( pPojazd(playerid, vehicleid) == 0 && Global[playerid][gAdmin]!=6 )
{
if(GetPlayerState(playerid)==PLAYER_STATE_DRIVER&&vehicleid!=0)
{
format(str, sizeof(str),"Nieautoryzowane wejscie do Pojazdu /kick (%d).",vehicleid);
Kara(0,playerid,-1,str,0);
}
}
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
}
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
{
if(SamochodInfo[vehicleid][sAudio]==1)
{
PlayAudioStreamForPlayer(playerid, SamochodInfo[vehicleid][sAudioLink]);
}
}
if(oldstate==PLAYER_STATE_DRIVER)
{
TextDrawHideForPlayer(playerid,Licznik[playerid]);
Okupowany[Okupuje[playerid]]=MAX_PLAYERS;
Okupuje[playerid]=0;
}
if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
{
StopAudioStreamForPlayer(playerid);
}
return 1;
}


Dzi?ki, za wszelk? pomoc :piwo: :piwo: :piwo:

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-17, 18:01


wiktorp







Wiek: 28
Na forum: 4566 dni
Posty: 85
Nick w MP: Maslo

Piwa: 458

Respekt: 35,8

Cze??.

U g?ry:
Kod:

new PojazdyFrakcyjne[MAX_VEHICLES];


W OnGameModeInit(); lub OnFilterScript();
Kod:


PojazdyFrakcyjne[0] = AddStaticVehicle(411, 1,1, 1,1 1,1, 1,1);
PojazdyFrakcyjne[1] = AddStaticVehicle(411, 1,1, 1,1 1,1, 1,1);

i tak dalej [2], [3]. [4]

w public OnPlayerStateChange:

Kod:

public OnPlayerStateChange(playerid, newstate, oldstate)
{

if(newstate == PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(playerid);
for(new i; i < sizeof(PojazdyFrakcyjne); i++)
{
if(GetPlayerVehicleID(playerid) == PojazdyFrakcyjne[i])
{
if(!twojarangalubfrakcja) // tutaj twoja ranga kt?ra mo?e u?ywa? tych pojazd?w je?li ma korzysta? z tych pojazd?w wi?cej frakcji/rang zmien na: if(!jakasfrakcja && !jakasfrakcja2); i tak dalej ...
{
SCM(playerid, -1, " Nie mo?esz kierowa? tym pojazdem. Wylatujesz z serwera hehehe :) ");
Kick(playerid); // ja osobicie proponowa?bym u?y?: RemovePlayerFromVehicle(playerid); kt?ra dzia?a tak, ?e wyrzuca po prostu z pojazdu osob? bez rangi/frakcji

}
}
}


Pozdrawiam :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-17, 20:11


Mati4139







Wiek: 27
Na forum: 5125 dni
Posty: 17

Piwa: 204

Respekt: 50

Tylko to mi wyt?umacz"
Kod:


if(!twojarangalubfrakcja) // tutaj twoja ranga kt?ra mo?e u?ywa? tych pojazd?w je?li ma korzysta? z tych pojazd?w wi?cej frakcji/rang zmien na: if(!jakasfrakcja && !jakasfrakcja2); i tak dalej ...

Da si? to zrobi?, ?e na ID grupy? Nie na nazwe frakcji?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-18, 11:49


wiktorp







Wiek: 28
Na forum: 4566 dni
Posty: 85
Nick w MP: Maslo

Piwa: 458

Respekt: 35,8

Podaj mi te "ID" grupy kt?r? zrobi?e?.

@edit:

Nie wiem czy o to Ci chodzi ale:

if(Hehe[playerid] < 2) retrun SCM(playerid, -1, "Z tych pojazd?w mo?e korzysta? firma Hehe i ludzie z wi?ksz? id = 2 ");

Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-18, 12:58


Mati4139







Wiek: 27
Na forum: 5125 dni
Posty: 17

Piwa: 204

Respekt: 50

Ranga ka?da, ale chodzi o grupe, nie da rady wpisa? nazwy - tworzy si? je dynamicznie. Podaje ci przyk?ad cmd, grupa typu "0" mo?e to robi?, a ja chc? tak, ?e ta grupa b?dzie mia?a ID na serwerze np. "2", rozumiesz?
Kod:


CMD:kolczatka(playerid, params[])
{
if(GrupaTypPracownik(playerid, 0)==-1) return error(playerid);
if(KomendySprawdz(playerid)) return 1;
if(Kolczatki>=5) return Tip(playerid, "Nie mo?na postawi? ju? ?adnej kolczatki.");
if(Kolczatka[playerid] != -1)
{
DestroyObject(Kolczatka[playerid]);
Tip(playerid, "Kolczatka usuni?ta pomy?lnie.");
Kolczatki--;
return Kolczatka[playerid] = -1;
}
new Float:x, Float:y, Float:z, Float:ang;
GetPlayerPos(playerid, x, y, z);
Kolczatki++;
GetPlayerFacingAngle(playerid, ang);
Kolczatka[playerid] = CreateObject(2892, x, y, z-1, 0, 0, ang+90);
Tip(playerid, "Kolczatka utworzona pomy?lnie.");
return 1;
}


Postaw piwo autorowi tego posta
 

 
Wysłany: 2014-07-18, 18:29


wiktorp







Wiek: 28
Na forum: 4566 dni
Posty: 85
Nick w MP: Maslo

Piwa: 458

Respekt: 35,8

Gotowca Ci nie napisz?, ale mo?esz to zrobi? jako warunek o ile nie zapisujesz tego na jaki? system (dini, mysql itd.)

Postaw piwo autorowi tego posta
 

 
Tagi: wywala :: aut :: frakcyjnych
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku