Komande: /Veh i /Dveh


Započeo twoblqck.art, Januar 06, 2018, 21:39:04 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.



Komande:/Veh i /dveh
Cemu sluze komande /veh i /dveh?
Komanda /veh sluzi da se stvori bilo koje vozilo koje postoji u GTA SA,a komanda /dveh sluzi za unistavanje tih vozila,da se nebi stvarali nepotrebna vozila.
Evo dokaz da radi :D  CLICK
PS.Ovo je testano na UnderPoint MODU
Da poceno sa tutorijalom.
Prvo idemo definisati boje i ostalo
#define NARANDZASTA 			0xFF9900AA
#define GRAD2 					0xBFC0C2FF
#define ZELENA2 				0x48E31CFF
#define SCM SendClientMessage

Sada trebamo dodati new,a new su
new vehspawned[MAX_PLAYERS];
new vehid1[MAX_PLAYERS];
new ImenaVozila[][] = {
	"Landstal.","Bravura","Buffalo","Linerun","Pereniel","Sentinel","Dumper","Firetruck","Trash","Stretch","Manana","Infernus","Voodoo","Pony","Mule","Cheetah","Ambulance","Leviathan","Moonbeam","Esperanto",
	"Taxi","Washington","Bobcat","Mr Whoopee","BF Injection","Hunter","Premier","Enforcer","Securicar","Banshee","Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie","Stallion",
	"Rumpo","RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","Turismo","Speeder","Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van",
	"Skimmer","PCJ-600","Faggio","Freeway","RC Baron","RC Raider","Glendale","Oceanic","Sanchez","Sparrow","Patriot","Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR 350","Walton","Regina",
	"Comet","BMX","Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo","Greenwood","Jetmax","Hotring","Sandking","Bl.Compact","Police Maverick","Boxville","Benson",
	"Mesa","RC Goblin","Hotring Racer","Hotring Racer","Bloodring Banger","Rancher","Super GT","Elegant","Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain","Nebula","Majestic","Buccaneer","Shamal",
	"Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona","FBI Truck","Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight","Streak","Vortex",
	"Vincent","Bullet","Clover","Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster","Monster","Uranus","Jester",
	"Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer","Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley",
	"Stafford","BF-400","Newsvan","Tug","Trailer","Emperor","Wayfarer","Euros","Hotdog","Club","Trailer","Trailer","Andromada","Dodo","RC Cam","Launch","Police Car","Police Car","Police Car","Police Ranger",
	"Picador","S.W.A.T. Van","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer","Luggage Trailer","Stair Trailer","Boxville","Farm Plow","Utility Trailer"
};
new CmdString[256];
new engineOn[MAX_VEHICLES];
new kurac[128];
new Float:VehiclePos[MAX_VEHICLES][3];

Sada pod "public OnPlayerConnect" staviti ovo
vehspawned[playerid] = 0;
	vehid1[playerid] = 0;

Sada pod "public OnPlayerDisconnect" staviti ovo
if(vehspawned[playerid] == 1)
{
vehspawned[playerid] = 0;
DestroyVehicle(vehid1[playerid]);
}

I na kraju dodati ovo kod ostalih komandi
CMD:dveh(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >= 1)
	{
	if(vehspawned[playerid] == 0) return SCM(playerid, GRAD2, "{FF0000}GRESKA:{FFFFFF} Ti nemas spawnovano vozilo!");
	vehspawned[playerid] = 0;
	DestroyVehicle(vehid1[playerid]);
	SCM(playerid,GRAD2,"{0080C0}BM:{FFFFFF} Unistio si svoje stvoreno vozilo!");
	}
else return SCM(playerid, GRAD2, "{FF0000}GRESKA:{FFFFFF} Nisi ovlascen da koristis ovu komandu!");
return 1;
}

CMD:veh(playerid, params[])
{
	if( isnull( params ) ) return SendClientMessage(playerid, NARANDZASTA, "{0080C0}BM:{FFFFFF} /veh [ID Modela]");
	if(!IsPlayerConnected(playerid)) return 0;
	if(PlayerInfo[playerid][pAdmin] >= 1)
	{
		if(vehspawned[playerid] == 1) return SCM(playerid, GRAD2, "{FF0000}GRESKA:{FFFFFF} Vec ste spawnovali 1 vozilo koristite /dveh sa ga unistite!");
		new Float:Poz[4];
		if( isnull( params ) ) return SendClientMessage(playerid, NARANDZASTA, "{0080C0}BM:{FFFFFF} /veh [ID Modela]");
		GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
		GetPlayerFacingAngle(playerid, Poz[3]);
		vehid1[playerid] = CreateVehicle(strval(params), Poz[0]+4, Poz[1], Poz[2], Poz[3], 0, 0, -1);
		VehiclePos[vehid1[playerid]][0] = Poz[0];
        VehiclePos[vehid1[playerid]][1] = Poz[1];
        VehiclePos[vehid1[playerid]][2] = Poz[2];
		vehspawned[playerid] = 1;
		new kurac = vehid1[playerid];
		format(CmdString, sizeof CmdString, "{0080C0}BM:{FFFFFF} Vozilo stvoreno! [Vozilo ID: %d | Model vozila: %s]", vehid1v[playerid], ImenaVozila[strval(params) - 400]);
		SCM(playerid, ZELENA2, CmdString);
		SCM(playerid, NARANDZASTA, "{0080C0}BM:{FFFFFF} Prije nego sto stvoris drugo vozilo, moras unistiti trenutno. (/dveh)");
	    new engine, lights, alarm, doors, bonnet, boot, objective;
		GetVehicleParamsEx(kurac, engine, lights, alarm, doors, bonnet, boot, objective);
		SetVehicleParamsEx(kurac, 1, 1, alarm, doors, bonnet, boot, objective);
		engineOn[kurac] = true;
		PutPlayerInVehicle(playerid, kurac, 0);
		SetVehicleHealth(kurac, 995.00);
	}
	else return SCM(playerid, GRAD2, "{FF0000}GRESKA:{FFFFFF} Nisi ovlascen da koristis ovu komandu!");
	return 1;
}

To je to od ovog malog tutorijala

Pod tutorijal znači objašnjenje a ne stavi ovde i ovde i to je to.
Drugo, pola varijabli iz tvog "tutorijala" početnici nemaju u modu i napraviće se sranje u compileu, PlayerInfo[playerid][pAdmin]...
2 za trud

"I choose to have faith, because without that, I have nothing."


Citat: σgí poslato Januar 06, 2018, 21:43:55 POSLE PODNE
Pod tutorijal znači objašnjenje a ne stavi ovde i ovde i to je to.
Drugo, pola varijabli iz tvog "tutorijala" početnici nemaju u modu i napraviće se sranje u compileu, PlayerInfo[playerid][pAdmin]...
2 za trud
Nece posluzit onima koji prave od 0
Ako edituju samo promjene...

CitatSada trebamo dodati new,a new su
To se ne zovu 'new' nego varijable (variables)


vehspawned
vehid1
ImenaVozila
CmdString
engineOn
kurac
Float:VehiclePos

Odluči se kako ćeš deklarirati varijable, pola ti na engleskom pola na našem, pola camelCase pola ovakvo onako...


new kurac[128];

Neozbiljnost na nivou, čisto pokaziva da si neki nasumični napaljeni klinac od 13-14 godina...


new Float:VehiclePos[MAX_VEHICLES][3];

Ne vidimo svrhu ovog niza, popunio si ga pod komandom a nisi objasnio zašto niti ga igdje koristiš


new CmdString[256];
new kurac[128];

Neispravan način deklariranja nizova za korištenje stringa, deklariraš ih u heap dok si mogao iskoristiti stack


engineOn

TakoÄ'er neiskoriÅ¡tena, niti objaÅ¡njena varijabla


.....
Software Developer