[Pomoc]Komande /rentcar /unrentcar /lock

Započeo marsmarin, Avgust 13, 2011, 15:27:12 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Street Stories Edit

Detaljan opis problema: Rentam auto sa /rentcar i onda kad ga idem /unrentcar pise mi SERVER: Unknown Command ali mi
                                       se auto respawna na mjesto di sam ga rento ali kad idem rentat drugi auto sa istom komandom
                                       /rentcar pise mi SERVER: Unknown Command.Također mi se javlja isti problem sa komandom /lock.
                                       Nadam se da ste shvatili znaci rentam auto sa /rentcar i onda ga unrentam sa /unrentcar i dobim
                                       ovu gresku SERVER: Unknown Command ali mi se auto respawna na mjesto na koje je bio na
                                       pocetku dok ga jos nisam rento i onda probam rentat drugi auto sa /rentcar i dobim ovaj error
                                       SERVER: Unknown Command.Ista stvar se desava sa komandom /lock.

Dio skripte:

/unrentcar

if(strcmp(cmd, "/unrentcar", true) == 0)
{
    if(IsPlayerConnected(playerid))
{
if(HireCar[playerid] != 299)
{
    SetVehicleToRespawn(HireCar[playerid]);
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
HireCar[playerid] = 299;
GameTextForPlayer(playerid, "~w~Vi ste vratili iznajmljeno vozilo", 5000, 3);
if(idcar == HireCar[playerid])
    {
        TogglePlayerControllable(playerid, 1);
    }
}
}
return 1;
}


/lock

if(strcmp(cmd, "/lock", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
new carid;
if (gTeam[playerid] == 2 || gTeam[playerid] == 1)
{
if(gLastCar[playerid] == 0 && PlayerInfo[playerid][pPhousekey] == 255)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vi nemate vozilo.");
return 1;
}
else if(gLastCar[playerid] != 0 && gLastCar[playerid] != PlayerInfo[playerid][pPhousekey]+1)
{
if (HireCar[playerid] != gLastCar[playerid] && HireCar[playerid] != 299)
{
gLastDriver[HireCar[playerid]] = 300;
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
}
HireCar[playerid] = gLastCar[playerid];
}
}
if (PlayerInfo[playerid][pPhousekey] == 255)
{
if(HireCar[playerid] == 299)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vi nemate vozilo.");
return 1;
}
}
carid = PlayerInfo[playerid][pPhousekey]+1;
if(HireCar[playerid] != 299 && !SwitchKey[playerid])
{
carid = HireCar[playerid];
}
//new driver = gLastDriver[carid];
new lockstatus = gCarLock[carid];
new Float:cx,Float:cy,Float:cz;
GetVehiclePos(carid, cx, cy, cz);
switch (lockstatus)
{
case 0:
{
if(HireCar[playerid] == 299 && PlayerInfo[playerid][pPhousekey] == 255)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vi nemate vozilo");
return 1;
}
if(HireCar[playerid] == carid && !SwitchKey[playerid])
{
GameTextForPlayer(playerid, "~w~Iznajmljeno vozilo ~r~Zakljucano", 5000, 6);
PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
gCarLock[carid] = 1;
LockCar(carid);
}
else if (PlayerInfo[playerid][pPhousekey] == carid-1)
{
GameTextForPlayer(playerid, "~w~Kucno vozilo ~r~Zakljucano", 5000, 6);
PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
gCarLock[carid] = 1;
LockCar(carid);
return 1;
}
}
case 1:
{
if(HireCar[playerid] == 299 && PlayerInfo[playerid][pPhousekey] == 255)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vi nemate vozilo");
return 1;
}
if(HireCar[playerid] == carid && !SwitchKey[playerid])
{
GameTextForPlayer(playerid, "~w~Iznajmljeno vozilo ~g~Otkljucano", 5000, 6);
PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
gCarLock[carid] = 0;
UnLockCar(carid);
}
if (PlayerInfo[playerid][pPhousekey] == carid-1)
{
GameTextForPlayer(playerid, "~w~Kucno vozilo ~g~Otkljucano", 5000, 6);
PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
gCarLock[carid] = 0;
UnLockCar(carid);
return 1;
}
}
default:
{
SendClientMessage(playerid, COLOR_GRAD2, "   Greska");
}
}
if(carid == 256)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Vi nemate vozilo !");
}
}
return 1;
}


/rentcar

if(strcmp(cmd, "/rentcar", true) == 0)
{
    new newcar = GetPlayerVehicleID(playerid);
        if(IsPlayerConnected(playerid))
{
if(newcar == burg1 || newcar == burg2 || newcar == burg3 || newcar == burg4 || newcar == burg5 || newcar == burg6 || newcar == burg7 || newcar == burg8 || newcar == burg9 || newcar == burg10 || newcar == burg11 || newcar == burg12 || newcar == burg13 || newcar == burg14)
{
new hirefee = HireCost(GetPlayerVehicleID(playerid));
if(SBizzInfo[0][sbProducts] == 0)
{
GameTextForPlayer(playerid, "~r~Rasprodato", 5000, 1);
return 1;
}
if (GetPlayerMoney(playerid) <  500)
{
SendClientMessage(playerid, COLOR_GRAD2, "   Nemate dovoljno novca !");
return 1;
}
if(HireCar[playerid] != 299)
{
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
SendClientMessage(playerid, COLOR_GREY, "Morate prvo da /unrentcar staro vozilo da bi iznajmili novo !");
return 1;
}
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(HireCar[i] == GetPlayerVehicleID(playerid))
    {
        SendClientMessage(playerid, COLOR_GREY, "    Neko je vec iznajmio ovo vozilo !");
        return 1;
    }
}
SafeGivePlayerMoney(playerid,-500);
SBizzInfo[0][sbTill] += 500;
ExtortionSBiz(0, SBizzInfo[0][sbEntranceCost]);
SBizzInfo[0][sbProducts]--;
HireCar[playerid] = GetPlayerVehicleID(playerid);
OnPropUpdate();
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "~w~Ne zaboravite da ~r~/unrentcar~n~~g~/lock ~w~da zakljucate vozilo.",hirefee);
SendClientMessage(playerid, COLOR_YELLOW2, "Sada mozete da upalite vozilo !");
gEngine[playerid] = 0;
engineOn[GetPlayerVehicleID(playerid)] = false;
GameTextForPlayer(playerid, string, 5000, 3);
}
}
return 1;
}


Definiran HireCar

new HireCar[MAX_PLAYERS];

HireCar[playerid] = 299;


Definiran gCarLock

new gCarLock[265];



Definiran UnLockCar

forward UnLockCar(carid);

public UnLockCar(carid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(!IsAPlane(carid))
{
SetVehicleParamsForPlayer(carid,i,0,0);
}
}
}
}


Definiran idcar

new idcar = GetPlayerVehicleID(playerid);


Definirani auti

new burg1, burg2, burg3, burg4, burg5, burg6, burg7, burg8, burg9, burg10, burg11, burg12, burg13, burg14;

U Funkciji OnGameModeInit
burg1 = AddStaticVehicleEx(545,1096.79345703,-928.13684082,42.88260269,182.00000000,-1,1,600); //Hustler
burg2 = AddStaticVehicleEx(545,1093.39147949,-928.21777344,42.85870743,182.00000000,1,1,600); //Hustler
burg3 = AddStaticVehicleEx(545,1085.74975586,-927.95623779,42.83689880,180.00000000,1,1,600); //Hustler
burg4 = AddStaticVehicleEx(545,1089.30151367,-928.02368164,42.84541702,180.00000000,-1,1,600); //Hustler
burg5 = AddStaticVehicleEx(545,1100.74670410,-928.05596924,42.87611008,180.00000000,1,1,600); //Hustler
burg6 = AddStaticVehicleEx(545,1104.48083496,-928.03576660,42.88219833,181.99963379,-1,1,600); //Hustler
burg7 = AddStaticVehicleEx(545,1107.97058105,-928.00726318,42.87968826,180.00000000,1,1,600); //Hustler
burg8 = AddStaticVehicleEx(545,1111.83666992,-927.95635986,42.87968826,180.00000000,-1,1,600); //Hustler
burg9 = AddStaticVehicleEx(545,1115.51843262,-928.02166748,42.87968826,180.00000000,1,1,600); //Hustler
burg10 = AddStaticVehicleEx(545,1119.26745605,-927.86541748,42.87509155,180.00000000,-1,1,600); //Hustler
burg11 = AddStaticVehicleEx(545,1122.92565918,-928.07434082,42.87495041,180.00000000,1,1,600); //Hustler
burg12 = AddStaticVehicleEx(545,1126.72509766,-927.98028564,42.87968826,180.00000000,-1,1,600); //Hustler
burg13 = AddStaticVehicleEx(545,1130.37829590,-928.00952148,43.12968826,182.00000000,1,1,600); //Hustler
burg14 = AddStaticVehicleEx(409,1142.15710449,-914.20153809,43.10468674,182.00000000,1,1,600); //Stretch

U Funkciji OnPlayerStateChange

if(newcar == burg1 || newcar == burg2 || newcar == burg3 || newcar == burg4 || newcar == burg5 || newcar == burg6 || newcar == burg7 || newcar == burg8 || newcar == burg9 || newcar == burg10 || newcar == burg11 || newcar == burg12 || newcar == burg13 || newcar == burg14)
{
if (HireCar[playerid] != newcar)
{
format(string, sizeof(string), "~w~Mozete da iznajmite ovo vozilo~n~Kosta:~g~$500~n~~w~Da iznajmite, ukucajte ~g~/rentcar~w~~n~da izadjete ~r~/exit");
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, string, 5000, 3);
}
}

Definiran newcar

new newcar = GetPlayerVehicleID(playerid);



Neke slike/video za lakse dobivanje pomoci(neobavezno): //

EDIT: Rijesio sam bio je problem u CarLock i UnLockCar funkciji ako nezelite da vam se ova greska ne javlja mozete samo stavit ove funkcije kao komentare ili mozete jednostavno nanovo napisat funkcije.Nadam se da ste me shvatili brzo sam piso.
Poslednja Izmena: Avgust 14, 2011, 03:23:23 PRE PODNE od marsmarin
<center></center>