CMD:newcar(playerid,params[])
{
if(belepve[playerid] == 1)
{
if(pInfo[playerid][Admin] >=3)
{
new kocsinev[35],string[128],szin1,szin2,ar;
if(sscanf(params,\"s[35]ddd\",kocsinev,szin1,szin2,ar)) return msg(playerid,barna,\"(( Használat: /newcar [ModelID/Név] [szin1] [szin2] [Ár] ))\");
for(new u=0; u<212; u++)
{
format(string,sizeof(string),\"%s\",kocsinevek);
if(!strcmp(kocsinev,string,false))
{
new Float:x,Float:y,Float:z,Float:a,id=u+400;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,a);
kocsik++;
vInfo[kocsik][KocsiID] = id;
strmid(vInfo[kocsik][Tulaj],\"Senki\",0,24,24);
vInfo[kocsik][szin1] = szin1;
vInfo[kocsik][szin2] = szin2;
vInfo[kocsik][X] = x+1;
vInfo[kocsik][Y] = y+1;
vInfo[kocsik][Z] = z;
vInfo[kocsik][A] = a;
vInfo[kocsik][Ar] = ar;
vInfo[kocsik][eladva] = 0;//nem
vInfo[kocsik][Ajto] = 0; //nyitva
CreateVehicle(vInfo[kocsik][KocsiID],vInfo[kocsik][X],vInfo[kocsik][Y],vInfo[kocsik][Z],vInfo[kocsik][A],vInfo[kocsik][szin1],vInfo[kocsik][szin2],-1);
//JarmuMentes();
format(string,sizeof(string),\"(( Név: %s | Szin1: %d | Szin2: %d | Ár: %d | ID: %d ))\",kocsinevekN,szin1,szin2,ar,kocsik);
msg(playerid,sotetzold,\"(( Jármű létrehozva! ))\");
msg(playerid,sotetzold,string);
}
}
}else{
msg(playerid,feher,\"(( Ismeretlen parancs! ))\");
}
}
return 1;
}
CMD:newcar(playerid,params[])
{
if(belepve[playerid] == 1)
{
if(pInfo[playerid][Admin] >=3)
{
new kocsinev[35],string[128],szin1,szin2,ar;
if(sscanf(params,\"s[35]ddd\",kocsinev,szin1,szin2,ar)) return msg(playerid,barna,\"(( Használat: /newcar [ModelID/Név] [szin1] [szin2] [Ár] ))\");
format(string,sizeof(string),\"%s\",kocsinevek);
if(!strcmp(kocsinev,string,false))
{
new Float:x,Float:y,Float:z,Float:a,id=u+400;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,a);
kocsik++;
vInfo[kocsik][KocsiID] = id;
strmid(vInfo[kocsik][Tulaj],\"Senki\",0,24,24);
vInfo[kocsik][szin1] = szin1;
vInfo[kocsik][szin2] = szin2;
vInfo[kocsik][X] = x+1;
vInfo[kocsik][Y] = y+1;
vInfo[kocsik][Z] = z;
vInfo[kocsik][A] = a;
vInfo[kocsik][Ar] = ar;
vInfo[kocsik][eladva] = 0;//nem
vInfo[kocsik][Ajto] = 0; //nyitva
CreateVehicle(vInfo[kocsik][KocsiID],vInfo[kocsik][X],vInfo[kocsik][Y],vInfo[kocsik][Z],vInfo[kocsik][A],vInfo[kocsik][szin1],vInfo[kocsik][szin2],-1);
//JarmuMentes();
format(string,sizeof(string),\"(( Név: %s | Szin1: %d | Szin2: %d | Ár: %d | ID: %d ))\",kocsinevekN,szin1,szin2,ar,kocsik);
msg(playerid,sotetzold,\"(( Jármű létrehozva! ))\");
msg(playerid,sotetzold,string);
}
}
}
}
return 1;
}
kiszedtem azt a fort ami volt annak volt ott egy else \"ismeretlen parancs\" szöveggel. Nem teszteltem!
Én mikor zcmd-vel csináltam akkor nekem is volt ilyen kódom de én így oldottam meg:
Te kódod:
if(sscanf(params,\"s[35]ddd\",kocsinev,szin1,szin2,ar)) return msg(playerid,barna,\"(( Használat: /newcar [ModelID/Név] [szin1] [szin2] [Ár] ))\");
Ami nekem volt:
if(sscanf(params,\"sddd\",kocsinev,szin1,szin2,ar)) return msg(playerid,barna,\"(( Használat: /newcar [ModelID/Név] [szin1] [szin2] [Ár] ))\");
Már meg ne haragudj, de ez full hülyeség.. Muszáj megadni hosszt a karakterláncoknak, MINDIG!
CMD:newcar(playerid,params[])
{
if(belepve[playerid] == 1)
{
if(pInfo[playerid][Admin] >=3)
{
new kocsinev[35],string[128],szin1,szin2,ar;
if(sscanf(params,\"s[35]ddd\",kocsinev,szin1,szin2,ar))
return msg(playerid,barna,\"(( Használat: /newcar [ModelID/Név] [szin1] [szin2] [Ár] ))\");
new modelid = JarmuNevToID(kocsinev);//Megnézzük, hogy az adott tömbben megtalálja - e a beírt nevet
if(modelid == -1)//Ha nem (visszatér -1-el)
{
modelid = strval(params);//Akkor átalakítjuk intigerré
if(modelid > 611 || modelid < 400)//Ha rossz ID-t adott meg
return SendClientMessage(playerid, -1, \"A modelid legyen 400 és 611 között!\");//visszatérünk egy hibaüzenettel
}
new Float:x,Float:y,Float:z,Float:a;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,a);
kocsik++;
vInfo[kocsik][KocsiID] = modelid;
strmid(vInfo[kocsik][Tulaj],\"Senki\",0,24,24);
vInfo[kocsik][szin1] = szin1;
vInfo[kocsik][szin2] = szin2;
vInfo[kocsik][X] = x+1;
vInfo[kocsik][Y] = y+1;
vInfo[kocsik][Z] = z;
vInfo[kocsik][A] = a;
vInfo[kocsik][Ar] = ar;
vInfo[kocsik][eladva] = 0;//nem
vInfo[kocsik][Ajto] = 0; //nyitva
CreateVehicle(vInfo[kocsik][KocsiID],vInfo[kocsik][X],vInfo[kocsik][Y],vInfo[kocsik][Z],vInfo[kocsik][A],vInfo[kocsik][szin1],vInfo[kocsik][szin2],-1);
//JarmuMentes();
format(string,sizeof(string),\"(( Név: %s | Szin1: %d | Szin2: %d | Ár: %d | ID: %d ))\", VehicleNames[modelid - 400],szin1,szin2,ar,kocsik);
msg(playerid,sotetzold,\"(( Jármű létrehozva! ))\");
msg(playerid,sotetzold,string);
}
else
msg(playerid,feher,\"(( Ismeretlen parancs! ))\");
}
return 1;
}
Amikre még szükséged lehet:
new VehicleNames[212][] =
{
{\"Landstalker\"},{\"Bravura\"},{\"Buffalo\"},{\"Linerunner\"},{\"Perrenial\"},{\"Sentinel\"},{\"Dumper\"},
{\"Firetruck\"},{\"Trashmaster\"},{\"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 1\"},{\"Previon\"},
{\"Coach\"},{\"Cabbie\"},{\"Stallion\"},{\"Rumpo\"},{\"RC Bandit\"},{\"Romero\"},{\"Packer\"},{\"Monster\"},
{\"Admiral\"},{\"Squalo\"},{\"Seasparrow\"},{\"Pizzaboy\"},{\"Tram\"},{\"Trailer 2\"},{\"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\"},{\"Blista Compact\"},{\"Police Maverick\"},{\"Boxville\"},{\"Benson\"},
{\"Mesa\"},{\"RC Goblin\"},{\"Hotring Racer A\"},{\"Hotring Racer B\"},{\"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\"},{\"MonsterA\"},{\"MonsterB\"},{\"Uranus\"},{\"Jester\"},
{\"Sultan\"},{\"Stratum\"},{\"Elegy\"},{\"Raindance\"},{\"RC Tiger\"},{\"Flash\"},{\"Tahoma\"},{\"Savanna\"},
{\"Bandito\"},{\"Freight Flat\"},{\"Streak Carriage\"},{\"Kart\"},{\"Mower\"},{\"Duneride\"},{\"Sweeper\"},
{\"Broadway\"},{\"Tornado\"},{\"AT-400\"},{\"DFT-30\"},{\"Huntley\"},{\"Stafford\"},{\"BF-400\"},{\"Newsvan\"},
{\"Tug\"},{\"Trailer 3\"},{\"Emperor\"},{\"Wayfarer\"},{\"Euros\"},{\"Hotdog\"},{\"Club\"},{\"Freight Carriage\"},
{\"Trailer 3\"},{\"Andromada\"},{\"Dodo\"},{\"RC Cam\"},{\"Launch\"},{\"LSPD\"},{\"SFPD\"},
{\"LVPD\"},{\"Police Ranger\"},{\"Picador\"},{\"SWAT Van\"},{\"Alpha\"},{\"Phoenix\"},{\"Glendale\"},
{\"Sadler\"},{\"Trailer A\"},{\"Trailer B\"},{\"Trailer\"},{\"Boxville\"},{\"Farm Plow\"},
{\"Utility Trailer\"}
};
És:
stock JarmuNevToID(const vehiclename[])
{
new i = 0;
for(;++i < sizeof(VehicleNames);)
{
if(!strfind(VehicleNames, vehiclename, true))
return i + 400;
}
return -1;
}
CMD:newcar(playerid,params[])
{
if(belepve[playerid] == 1)
{
if(pInfo[playerid][Admin] >=3)
{
new kocsinev[35],string[128],szin1,szin2,ar;
if(sscanf(params,\"s[35]ddd\",kocsinev,szin1,szin2,ar)) return msg(playerid,barna,\"(( Használat: /newcar [ModelID/Név] [szin1] [szin2] [Ár] ))\");
format(string,sizeof(string),\"%s\",kocsinevek);
if(!strcmp(kocsinev,string,false))
{
new Float:x,Float:y,Float:z,Float:a,id=u+400;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,a);
kocsik++;
vInfo[kocsik][KocsiID] = id;
strmid(vInfo[kocsik][Tulaj],\"Senki\",0,24,24);
vInfo[kocsik][szin1] = szin1;
vInfo[kocsik][szin2] = szin2;
vInfo[kocsik][X] = x+1;
vInfo[kocsik][Y] = y+1;
vInfo[kocsik][Z] = z;
vInfo[kocsik][A] = a;
vInfo[kocsik][Ar] = ar;
vInfo[kocsik][eladva] = 0;//nem
vInfo[kocsik][Ajto] = 0; //nyitva
CreateVehicle(vInfo[kocsik][KocsiID],vInfo[kocsik][X],vInfo[kocsik][Y],vInfo[kocsik][Z],vInfo[kocsik][A],vInfo[kocsik][szin1],vInfo[kocsik][szin2],-1);
//JarmuMentes();
format(string,sizeof(string),\"(( Név: %s | Szin1: %d | Szin2: %d | Ár: %d | ID: %d ))\",kocsinevekN,szin1,szin2,ar,kocsik);
msg(playerid,sotetzold,\"(( Jármű létrehozva! ))\");
msg(playerid,sotetzold,string);
}
}
}
}
return 1;
}
kiszedtem azt a fort ami volt annak volt ott egy else \"ismeretlen parancs\" szöveggel. Nem teszteltem!
[/quote]
Látod, ezért kell tesztelni. Ha kitörölted a ciklust, akkor mégis hogyan fogja megkapni a jármű ID-jét a nevéből? Kicsit gondolkozz, mielőtt cselekedsz..