Naja, ich habe mir so ein Führerscheinsystem geschrieben und wenn der Spieler z.B. keinen Autoschein hat, wird er vom car gekickt. Dazu muss man aber erstmal abfragen ob es ein Auto ist und z.B. kein LKW. Das meine ich.
Beiträge von Maksimo007
-
-
Hey,
ich würde gerne abfragen, dass wenn sich ein Spieler in ein Car setzt, ob es ein Auto oder z.B. ein LKW ist. Wie stelle ich das an?Mfg Maksimo007
-
-
Das ganze sieht nun so aus:ocmd:spawncar(playerid,params[]){
new carID, Colour1, Colour2;
new vID;
new string[128];
new Float:x,Float:y,Float:z;
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,Color_DarkRed,"Du bist kein Admin!");
if(sscanf(params,"iii",carID,Colour1,Colour2))return SendClientMessage(playerid,Color_DarkRed,"/spawncar [CarID] [Colour1] [Colour2]");
if(carID<400||carID>611)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if(Colour1>127)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if(Colour2>127)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if (GetPVarInt(playerid, "Lastvehicle"))
{
DestroyVehicle(GetPVarInt(playerid, "Lastvehicle"));
}
SetPVarInt(playerid,"LastVehicle",vID);
GetPlayerPos(playerid,x,y,z);
vID=AddStaticVehicle(carID,x-3.0,y,z,0.0,Colour1,Colour2);
format(string,sizeof(string),"CarSpawn: Du hast ein Fahrzeug gespawnt!");
SendClientMessage(playerid,Color_Orange,string);
SavePlayer(playerid);
return 1;
}Allerdings steht das alte Auto immer noch da... (nicht wundern, hab das CreateVehicle durch AddStaticVehicle ausgetauscht)
-
Hmm...habs jetzt ausbessert, aber das alte Fahrzeug steht immer noch da
-
Hey,
ich habe mir ein Fahrzeugspawn-Kommando erstellt. Nun will ich aber, wenn der Admin wieder /spawncar eingibt, das alte Auto gelöscht wird. Wie stelle ich das an?
Habs schon mit DestroyVehicle versucht, allerdings wird das nur gelöscht, wenn das Fahrzeug kapput geht.
Code: ocmd:spawncar(playerid,params[]){
new carID, Colour1, Colour2;
new string[128];
new Float:x,Float:y,Float:z;
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,Color_DarkRed,"Du bist kein Admin!");
if(sscanf(params,"iii",carID,Colour1,Colour2))return SendClientMessage(playerid,Color_DarkRed,"/spawncar [CarID] [Colour1] [Colour2]");
if(carID<400||carID>611)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if(Colour1>127)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if(Colour2>127)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if (GetPVarInt(playerid, "lastvehicle"))
{
DestroyVehicle(GetPVarInt(playerid, "lastvehicle"));
}
SetPVarInt(playerid,"LastVehicle",carID);
GetPlayerPos(playerid,x,y,z);
CreateVehicle(carID,x-3.0,y,z,0.0,Colour1,Colour2,300);
format(string,sizeof(string),"CarSpawn: Du hast ein Fahrzeug gespawnt!");
SendClientMessage(playerid,Color_Orange,string);
SavePlayer(playerid);
return 1;
}Mfg Maksimo007
-
sry.., aber wo füge ich diesen sscanf-code dann ein?
Edit: Habs jetzt drin, geht aber iwie nicht (Also wie mache ich das nun mit switch und das mit /spawncar Infernus zum Beispiel?) -
Wie meinst du das genau, Ditti?
-
Wenn ich CarID als String definiere, dann kommen folgende Fehlermeldungen:
error 033: array must be indexed (variable "-unknown-")error 033: array must be indexed (variable "carID")error 035: argument type mismatch (argument 1)Die Fehler sind bei Zeilen: 5, 13 und 17
-
Hey,
ich hab ein kleines "Switch" Problem (habe schon gesucht, die vorhandenen Threads haben mir aber nicht geholfen).
Hier habe ich meinen "/spawncar" Befehl:
ocmd:spawncar(playerid,params[])
{
new carID, Colour1, Colour2;
new string[128];
switch(carID)
{
case 400:{carID="Landstalker";}
case 401:{carID="Bravura";}
}
new Float:x,Float:y,Float:z;
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,Color_DarkRed,"Du bist kein Admin!");
if(sscanf(params,"iii",carID,Colour1,Colour2))return SendClientMessage(playerid,Color_DarkRed,"/spawncar [CarID] [Colour1] [Colour2]");
if(carID<400||carID>611)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if(Colour1>127)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
if(Colour2>127)return SendClientMessage(playerid,Color_DarkRed,"Bitte eine gültige Zahl eingeben!");
GetPlayerPos(playerid,x,y,z);
CreateVehicle(carID,x-3.0,y,z,0.0,Colour1,Colour2,300);
format(string,sizeof(string),"CarSpawn: Du hast das Auto '%s' gespawnt!",carID);
SendClientMessage(playerid,Color_Orange,string);
return 1;
}Das Switch hier gibt eine Fehlermeldung aus:
error 006: must be assigned to an array
error 006: must be assigned to an array
Fehler sind bei Zeile 7 und 8.Ich hoffe, ihr könnt mir weiterhelfen.^^
Mfg Maksimo007