Kanticaa


Započeo ..., April 08, 2018, 20:12:28 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

...

*

Problem(error/warning): Moze neka pomoc oko ove kantice kad odem na benz i kucam prvo /kupikanticu,onda /kanticagorivo i kad trebam /napunikanticu pise mi da se vec toci gorivo a ne toci ? Sta je problem
Dio skripte:
YCMD:kupikanister(playerid, params[], help)
{
    if(UlogovanProvera[playerid] == 0)
		return Error(playerid,"Moras biti prijavljen!");

    if (PI[playerid][pKanister] != 0)
		return Error(playerid, "Vec imate kanister! (/bacikanister | /napunikanister)");

	if (PI[playerid][pKanisterType] != 0)
	    return Error(playerid, "Vec imate kanister! (/bacikanister | /napunikanister)");

	if (PI[playerid][pMoney] < 3000)
	    return Error(playerid, "Kanister kosta 3000$!");

	if(!IgracNaBenzinskoj(playerid))
		return Error(playerid, "Morate biti na benzinsoj pumpi!!");
	new
		pumpa;
	if (IsPlayerInRangeOfPoint(playerid, 10.0, 1004.0422,-937.5357,42.3281))  { pumpa = 62;}
	else if (IsPlayerInRangeOfPoint(playerid, 10.0, 1382.2139,460.1810,20.3452))  { pumpa = 61;}
	else if (IsPlayerInRangeOfPoint(playerid, 10.0, 1942.3732,-1772.7740,13.6406))  { pumpa = 29;}
	else if (IsPlayerInRangeOfPoint(playerid, 10.0, -91.2488,-1169.7260,2.4204))  { pumpa = 63;}
	else if (IsPlayerInRangeOfPoint(playerid, 10.0, 171.6999,-1923.0776,4.4559))  { pumpa = 64;}
	else if (IsPlayerInRangeOfPoint(playerid, 10.0, 1375.4180,-1426.2119,13.5453))  { pumpa = 65;}
	else if(IsPlayerInRangeOfPoint(playerid, 10.0, 1539.1136,-2179.6636,13.6259))  { pumpa = 69;}
	else if(IsPlayerInRangeOfPoint(playerid, 10.0, 1539.0715,-2170.4048,13.6259))  { pumpa = 66;}
	else if(IsPlayerInRangeOfPoint(playerid, 10.0, 1375.7026,-1426.0779,13.5454))  { pumpa = 67;}
	else if(IsPlayerInRangeOfPoint(playerid, 10.0, 1374.6519,-1421.4581,13.5451))  { pumpa = 68;}

	PI[playerid][pKanister] = 1;
	PI[playerid][pKanisterLitara] = 0.0;
	PI[playerid][pKanisterType] = 0;
	g_NovacMinus(playerid, 3000);
	FirmaNovac(pumpa, (3000/2));
	SCM(playerid,SERVERBOJA,"* Kupili ste kanister, dopunite ga na benzinskoj pumpi! (/napunikanister)");
	SCM(playerid,SERVERBOJA,"* Prvo odredite gorivo u kanisteru! (/kanistergorivo)");
	SavePlayer(playerid);
	return 1;
}

YCMD:bacikanister(playerid, params[], help)
{
    if(UlogovanProvera[playerid] == 0)
		return Error(playerid,"Moras biti prijavljen!");

	if (PI[playerid][pKanister] != 1)
		return Error(playerid, "Nemate kanister!");

    PI[playerid][pKanister] = 0;
	PI[playerid][pKanisterLitara] = 0.0;
	PI[playerid][pKanisterType] = 0;

	SCM(playerid,SERVERBOJA,"* Bacio si kanister!");

	SavePlayer(playerid);
	return 1;
}

YCMD:kanistergorivo(playerid, params[], help)
{
    if(UlogovanProvera[playerid] == 0)
		return Error(playerid,"Moras biti prijavljen!");

	if (PI[playerid][pKanister] != 1)
		return Error(playerid, "Nemate kanister!");

	if (PI[playerid][pKanisterType] != 0)
	    return Error(playerid, "Vec ste odredili gorivo (/bacikanister)");

	static
	    TypeID;

	if (sscanf(params, "i", TypeID))
		return Koristi(playerid, "kanistergorivo [1. Dizel | 2. Benzin | 3. Kerozin]");

	if (TypeID > 3 || TypeID < 1)
	    return Error(playerid, "Upisite tacan ID goriva (1, 2, 3)!");

    PI[playerid][pKanisterType] = TypeID;

	static
	    string[100];
	format(string, sizeof string, "NJ: {FFFFFF}Uzeli ste kanister namijenjen za {FF0000}%s", GetFuelTypeByKanisterType(TypeID));
	SCM(playerid, CRVENA, string);
	return 1;
}
YCMD:napunikanister(playerid, params[], help)
{
    if(UlogovanProvera[playerid] == 0)
		return Error(playerid,"Moras biti prijavljen!");

	if (PI[playerid][pKanister] != 1)
	    return Error(playerid, "Vi ne posjedujete kanister! Kupite ga na trafici!");

	if(!IgracNaBenzinskoj(playerid))
		return SCM(playerid,-1, ""SERVER"NJV3: "C_BELA"Morate biti na benzinskoj pumpi da bi sipali u kanister.");
	new
		pumpa;
	if(IsPlayerInRangeOfPoint(playerid, 10.0, 1004.0422,-937.5357,42.3281))  { pumpa = 62;}
	if(IsPlayerInRangeOfPoint(playerid, 10.0, 1382.2139,460.1810,20.3452))  { pumpa = 61;}
	if(IsPlayerInRangeOfPoint(playerid, 10.0, 1942.3732,-1772.7740,13.6406))  { pumpa = 29;}
	if(IsPlayerInRangeOfPoint(playerid, 10.0, -91.2488,-1169.7260,2.4204))  { pumpa = 63;}
	if(IsPlayerInRangeOfPoint(playerid, 10.0, 171.6999,-1923.0776,4.4559))  { pumpa = 64;} //1375.4180,-1426.2119,13.5453
	if(IsPlayerInRangeOfPoint(playerid, 10.0, 1375.4180,-1426.2119,13.5453))  { pumpa = 65;} //1375.4180,-1426.2119,13.5453
	if(IsPlayerInAnyVehicle(playerid))
		return Error(playerid,"Morate biti van vozila!");
	new Float:l;
	if(sscanf(params, "f", l))
		return Koristi(playerid, "napunikanister [Litara npr 1.0]"), SCM(playerid, CRVENA, "CIJENE: {FFFFFF}Dizel - 60$, Benzin - 120$, Kerozin - 180$");


	if(l < 1 || l > 20)
		return Error(playerid, "Minimalan broj litara je 1 a maksimalan 20!");
		
	if (PuniGorivo[playerid] == true)
		return Error(playerid, "Vec tocis gorivo!");

	if ((PI[playerid][pKanisterLitara] + l) > 20)
	    return Error(playerid, "Sipajte manje, maksimalno litara je 20!");

	PuniGorivo[playerid] = true;

	if(PI[playerid][pKanisterType] == 1)
	{
	    if(PI[playerid][pMoney] < l*60) return Error(playerid,"Nemate dovoljno novca, 1 litar kosta 60$."), PuniGorivo[playerid] = false;
	  	PI[playerid][pKanisterLitara] += l;
		g_NovacMinus(playerid, floatround(l*60));

		static
		    string[100];
		format(string, sizeof string, "* Dizel se puni! Kupili ste %.2f litara, platili ste %d$.", l, floatround(l*50));
		SCM(playerid, SERVERBOJA, string);

		SetTimerEx("KanisterNapunjen", 7000, false, "d", playerid);
		TogglePlayerControllable(playerid, 0);
		FirmaNovac(pumpa, floatround(l*60)/2);
		SavePlayer(playerid);
	}
	else if(PI[playerid][pKanisterType] == 3)
	{
		if(PI[playerid][pMoney] < l*180) return Error(playerid,"Nemate dovoljno novca, 1 litar kosta 180$"), PuniGorivo[playerid] = false;
	  	PI[playerid][pKanisterLitara] += l;
		g_NovacMinus(playerid, floatround(l*180));

		static
		    string[100];
		format(string, sizeof string, "* Kerozin se puni! Kupili ste %.2f litara, platili ste %d$.", l, floatround(l*180));
		SCM(playerid, SERVERBOJA, string);

		SetTimerEx("KanisterNapunjen", 7000, false, "d", playerid);
		TogglePlayerControllable(playerid, 0);
		FirmaNovac(pumpa, floatround(l*180)/2);
		SavePlayer(playerid);
	}
	else if(PI[playerid][pKanisterType] == 2)
	{
		if(PI[playerid][pMoney] < l*120) return Error(playerid,"Nemate dovoljno novca, 1 litar kosta 120$."), PuniGorivo[playerid] = false;
	  	PI[playerid][pKanisterLitara] += l;
		g_NovacMinus(playerid, floatround(l*120));

		static
		    string[100];
		format(string, sizeof string, "* Benzin se puni! Kupili ste %.2f litara, platili ste %d$.", l, floatround(l*120));
		SCM(playerid, SERVERBOJA, string);

		SetTimerEx("KanisterNapunjen", 7000, false, "d", playerid);
		TogglePlayerControllable(playerid, 0);
		FirmaNovac(pumpa, floatround(l*120)/2);
		SavePlayer(playerid);
	}
	return 1;
}

YCMD:dopunikanisterom(playerid, params[], help)
{
	if(UlogovanProvera[playerid] == 0)
		return Error(playerid,"Moras biti prijavljen!");

	if (PI[playerid][pKanister] != 1)
	    return Error(playerid, "Vi ne posjedujete kanister! Kupite ga na trafici!");

	if (PI[playerid][pKanisterLitara] == 0.0)
	    return Error(playerid, "Kanister je prazan, dopunite ga na benzinskoj!");

	if (PuniGorivo[playerid] != false)
		return Error(playerid, "Vec punite gorivo!");


	new Float: l;
	if(sscanf(params,"f",l)) return Koristi(playerid,"dopunikanisterom [Litara]");

    if (PI[playerid][pKanisterLitara] < l)
    	return Error(playerid, "Vas kanister nema toliko litara goriva u sebi!");

	new
	    vehicleid = getPlayerNearestVehicle(playerid);

	if( VoziloJeMotor( GetVehicleModel(vehicleid) ) )
	{
		if ((Fuel[vehicleid] + l) > 45.0)
			return Error(playerid,"Zapremina rezervoara je 45 litara.");
	}
	if( VoziloJeAvion( GetVehicleModel(vehicleid) ) || VoziloJeBrod( GetVehicleModel(vehicleid) ) || VoziloJeKamion( GetVehicleModel(vehicleid) ) )
	{
		if ((Fuel[vehicleid] + l) > 85.0)
			return Error(playerid,"Zapremina rezervoara je 85 litara.");
	}
	else
	{
		if ((Fuel[vehicleid] + l) > 45.0)
			return Error(playerid,"Zapremina rezervoara je 45 litara.");
	}

	if (VoziloJeDizelas(vehicleid))
	{
	    if (PI[playerid][pKanisterType] != 1)
	        return Error(playerid, "Vozilo ispred vas je dizelas, a vi u kanisteru nemate dizel!");


		PuniGorivo[playerid] = true;
		TogglePlayerControllable(playerid, false);
		Fuel[vehicleid] += l;
		PI[playerid][pKanisterLitara] -= l;

		static
		    string[100];
		format(string, sizeof string, "[KANISTER] {FFFFFF}Dopunjavate auto gorivom dizel! Auto ce imati %.2f L goriva u sebi!", Fuel[vehicleid]);
		SCM(playerid, CRVENA, string);

		GameTextForPlayer(playerid, "~b~Dopunjavate gorivo!", 5000, 3);

		SetTimerEx("DopunioKanisterom", 5000, false, "d", playerid);
	}
	else if (IsVehicleLetelica(vehicleid))
	{
	    if (PI[playerid][pKanisterType] != 3)
	        return Error(playerid, "Vozilo ispred vas je letjelica, a vi u kanisteru nemate kerozin!");

        PuniGorivo[playerid] = true;
		TogglePlayerControllable(playerid, false);
		Fuel[vehicleid] += l;

		static
		    string[100];
		format(string, sizeof string, "[KANISTER] {FFFFFF}Dopunjavate auto gorivom dizel! Auto ce imati %.2f L goriva u sebi!", Fuel[vehicleid]);
		SCM(playerid, CRVENA, string);

		GameTextForPlayer(playerid, "~b~Dopunjavate gorivo!", 5000, 3);

		SetTimerEx("DopunioKanisterom", 5000, false, "d", playerid);
	}
	else
	{
	    if (PI[playerid][pKanisterType] != 2)
	        return Error(playerid, "Vozilo ispred vas je benzinac, a vi u kanisteru nemate benzina!");

		PuniGorivo[playerid] = true;
		TogglePlayerControllable(playerid, false);
		Fuel[vehicleid] += l;

		static
		    string[100];
		format(string, sizeof string, "[KANISTER] {FFFFFF}Dopunjavate auto gorivom dizel! Auto ce imati %.2f L goriva u sebi!", Fuel[vehicleid]);
		SCM(playerid, CRVENA, string);

		GameTextForPlayer(playerid, "~b~Dopunjavate gorivo!", 5000, 3);

		SetTimerEx("DopunioKanisterom", 5000, false, "d", playerid);
	}
	return 1;
}

Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): //
Slika/video ingame problema(obavezno ako je ingame problem): //