[Pomoc]Vozila samo za zaposlene i ugovor


Započeo SpawneR., Januar 20, 2013, 12:17:33 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Burn Gaming od 0
Detaljan opis problema: Kako da namestim da samo zaposleni mogu da voze kosilicu? i kako da namestim da treba da se ispuni 4h ugovra da bi ste dali otkaz?

Dio skripte:

otkaz komanda za ugovor :)
YCMD:otkaz(playerid, params[], help)
{
    #pragma unused help
    if(PlayerInfo[playerid][pPosao] < 1) return SendClientMessage(playerid,-1,"Niste zaposljeni!"); 
	PlayerInfo[playerid][pPosao] = 0; 
	SendClientMessage(playerid,-1,"Dali ste otkaz");
	return true;
    }



dobro posto ni payday ni level system nisam jos radio reci mi kako da namestim da samo kosac trave moze da vozi kosilicu?  :)

Ovako stavi za ta vozila, samo da se moze vozit kad se zaposlis:

forward KosacVozilo(carid);
new kosacvozilo;

public KosacVozilo(carid)
{
	for(new i = 0; i < sizeof(kosacvozilo); i++)
	{
		if(carid == kosacvozilo[i])	return 1;
	}
	return 0;
}
//--Ovo dodas u OnPlayerStateChange
if(newstate == PLAYER_STATE_DRIVER)
{
if(KosacVozilo(newcar))
{
if(PlayerInfo[playerid][pJob]== 4)  // Stavi svoj ID posla umjesto 4
{
 CanTurnEngine[playerid] = newcar; 
}
else
{
SafeRemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, COLOR_LIGHTBLUE, "** Nemate kljuceve ovoga vozila!");
}
}
}
// Ovo dodas u OnGamemodeInit
kosacvozilo = AddStaticVehicle(--------------------)


Samo ljepo namjesi ovo, jer nemogu pomaknit s TAB-om...

Blaeks

*

Madmen

CMD:otkaz(playerid, params[])
{
        new satiposla = 5 - PlayerInfo[playerid][pContractTime];
	if(PlayerInfo[playerid][pJob] == 0) return SCM(playerid, GRAD2, "(greska) Ne mozete dati otkaz, kada niste zaposleni!");
	if(PlayerInfo[playerid][pContractTime] < 5) return SCMF(playerid, SVETLOPLAVA, "Ne mozete dati otkaz, odradili ste %d od potrebnih 5 sati ugovora!", satiposla / 5);
	PlayerInfo[playerid][pJob] = 0;
	SCM(playerid, -1, "* Dali ste otkaz,zelimo vam vise srece u drugom poslu.");
	return 1;
}
pcontract time izmeni u tvoju varijablu za sate igranja

Wegy - ja vec imam definisan stock za vozilokosaca
stock VoziloKosaca(carid)
{
	for(new i = 0; i < sizeof(kosilica); i++) 
	{
		if(carid == kosilica[i])	return 1;
	}
	return 0;
}


a ovo tvoje sto sam stavio pod OnPlayerStateChange
sam prilagodio mom poslu ovako:

public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if(newstate == PLAYER_STATE_DRIVER)
	{
	if(VoziloKosaca(newcar))
	{
	if(PlayerInfo[playerid][pPosao]== 1)
	{
	 CanTurnEngine[playerid] = newcar;
	}
	else
	{
	SafeRemovePlayerFromVehicle(playerid);
	SendClientMessage(playerid, COLOR_LIGHTBLUE, "** Nemate kljuceve ovoga vozila!");
	}
	}
	}
	return 1;
}


izbacuje mi ove errore

d:\My Documents\Desktop\Burn Gaming Roleplay\gamemodes\BG.pwn(1084) : error 017: undefined symbol "newcar"
d:\My Documents\Desktop\Burn Gaming Roleplay\gamemodes\BG.pwn(1088) : error 017: undefined symbol "CanTurnEngine"
d:\My Documents\Desktop\Burn Gaming Roleplay\gamemodes\BG.pwn(1088) : warning 215: expression has no effect
d:\My Documents\Desktop\Burn Gaming Roleplay\gamemodes\BG.pwn(1088) : error 001: expected token: ";", but found "]"
d:\My Documents\Desktop\Burn Gaming Roleplay\gamemodes\BG.pwn(1088) : error 029: invalid expression, assumed zero
d:\My Documents\Desktop\Burn Gaming Roleplay\gamemodes\BG.pwn(1088) : fatal error 107: too many error messages on one line


na ovoj liniji:

CanTurnEngine[playerid] = newcar;



Blaeks

*

Madmen

zato sto ti je on dao Gf kodove, prelistaj to u tvoje varijable iz 0

Citat: Blaeks poslato Januar 20, 2013, 12:57:35 POSLE PODNE
zato sto ti je on dao Gf kodove, prelistaj to u tvoje varijable iz 0

S'a be?! Kakve iz 0?

Dodaj ovo gore na pocetak di su ti svi "new"

new CanTurnEngine[MAX_PLAYERS];


Ovo dodaj posle "if(newstate == PLAYER_STATE_DRIVER)"

new newcar = GetPlayerVehicleID(playerid);

Probaj ovako radit ako ti je lakše.

new KosaciCar[4];

forward IsAKosacCar(carid);

public IsAKosacCar(carid)
{
	for(new i = 0; i < sizeof(KosaciCar); i++)
	{
		if(carid == KosaciCar[i])
	        return 1;
	}
	return 0;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
	if(newstate == PLAYER_STATE_DRIVER)
	{
		if(IsAKosacCar(newcar))
		{
	    	if(PlayerInfo[playerid][pJob] == idposla) {}
	    	else
	    	{
	     		RemovePlayerFromVehicle(playerid);
	        	SendClientMessage(playerid, COLOR_GREY,"Nemate kljuceve od ovog vozila.");
	    	}
	    }
	}
	return 1;
}

	// OnGameModeInit
	KosaciCar[0] = AddStaticVehicleEx(koordinate); 
	KosaciCar[1] = AddStaticVehicleEx(koordinate); 
	KosaciCar[2] = AddStaticVehicleEx(koordinate);
BIG RESPEKT: Blaeks,  [CRP] Joey_, David (Sabljak) A.k.A SABO(T), joXy_, Dimi, Sexserghy ♥, TerminuS, H1TM4N

Reseno! Lock
Poslednja Izmena: Januar 20, 2013, 17:23:28 POSLE PODNE od SpawneR.