if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 596) ...
Versuchs so mal
Also das was ich gepostet habe anstatt
if(IsPlayerInVehicle(playerid, 596))
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 596) ...
Versuchs so mal
Also das was ich gepostet habe anstatt
if(IsPlayerInVehicle(playerid, 596))
Zeig halt mal die Zeilen vom Login
Man muss an dieser Stelle echt mal sagen:
Entweder, man lernt scripten, oder lässt es.
Ich möchte jetzt nicht unbedingt sagen, dass ihr nicht scripten könnt, oder derartiges.
Aber das was ich da gepostet habe ähnelt ja schon seehr an *hust* Realschule *hust*.
Falls ihr als nächstes vor habt ein Dynamisches Fraktionsfahrzeuge System zu erschaffen, dann ist das eher Gymnasium.
Es gibt tausende Tutorials, aus denen ihr sehr viel erschließen könnt.
Grüße, Mau5
if(vID == v) return 1;
1000*60*10 = 10 Minuten
Du holst den Inhalt immer aus der Datenbank?
Sinnlos...
Hols einmal beim Fahrzeuge-Erstellen und speicher das in eine Globale Fahrzeugvariable.
Neue Spielervariable
new Spielercar[MAX_PLAYERS][3];
Darauf die Autos erstellen
Spielercar[playerid][0] = CreateVehicle(...);
Bei /ruf das Auto holen
GetPlayerPos, SetVehiclePos, PutPlayerInVehicle
Bei /des das Auto löschen
DestroyVehicle(...);
Zusätzlich beim Erstellen noch abfragen, ob das Car schon erstellt ist
if(Spielercar[playerid][0] == INVALID_VEHICLE_ID) { ... } else { SendClientMessage(...); }
Hoffe ich konnte helfen
Geht auch nicht
Servus, wieder ein Problem...
Wenn ich jetzt z.B. /createkey 01234567890123456789 eingebe, kommt immer "Nicht 20 Zeichen lang!", obwohl das doch eindeutig 20 Zeichen sind *_*
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,0xFF0000FF,"FEHLER: /createkey [20 Stelliger Key (Kann auch Buchstaben enthalten)]");
return 1;
}
if(strlen(tmp) != 20)
{
SendClientMessage(playerid,0xFF0000FF,"Der Key muss genau 20 Zeichen beinhalten.");
return 1;
}
else
{
CreateBetaKeyEigen(tmp);
format(tmp,128,"Du hast einen Key erstellt (%s).",tmp);
SendClientMessage(playerid,0xFF0000FF,tmp);
SendClientMessage(playerid,0xFF0000FF,"Du kannst ihn auch in der Datenbank nachlesen.");
return 1;
}
Hab das mal so:
stock CreateRandomBSZufall()
{
new bool:doesntWork=true;
while(doesntWork)
{
BSTemp="";
for(new cell;cell<20;cell++)
{
new xd = random(2);
if(xd == 1) BSTemp[cell]=acceptedLetters[random(sizeof(acceptedLetters))];
else BSTemp[cell]=acceptedNumbers[random(sizeof(acceptedNumbers))];
}
if(!strlen(BSTemp)) return "INVALID";
if(!DoesBSExists(BSTemp)) doesntWork = false;
}
return BSTemp;
}
Da schmiert aber iwie mein Pawn Compiler ab
new acceptedLetters[52]= //Letters to be used during generation
{
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','X','Y','Z',
'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','x','y','z'
};
new acceptedNumbers[10]= //Numbers to be used during generation
{
'1','2','3','4','5','6','7','8','9','0'
};
new BSTemp[20];
Joa ich mach hier son System, da möchte ich Zahlen mit Buchstaben mischen...
Aber mit random allein geht das ja nich
Gibts irgendeine andere Möglichkeit?
Klar wenn mans nich anpasst
if (strcmp(cmd, "/admins", true) == 0)
{
SendClientMessage(playerid, COLOR_ORANGE, "Wenn du Fragen oder Probleme hast nutze /report.");
SendClientMessage(playerid, COLOR_RED2, "Admins Online:");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
//SUPPORTER
if(isPlayerAnAdmin(i,1331))
{
if(isPlayerAnAdmin(i,1338))
{
GetPlayerName(i, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "Administrator : %s [Tel:%d]",giveplayer, PlayerInfo[i][pPnumber]);
SendClientMessage(playerid, COLOR_GRAD2, string);
}
else
{
GetPlayerName(i, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "Administrator : %s [Tel:%d]",giveplayer, PlayerInfo[i][pPnumber]);
SendClientMessage(playerid, COLOR_GRAD2, string);
}
}
}
}
return 1;
}
Falsches Pawno geöffnet?
public OnPlayerShootPlayer(playerid,otherplayer)
{
if(GetPlayerWeapon(playerid) == 0)
{
SetPlayerHealth(otherplayer,0);
}
return 1;
}
Kleines Beispiel
forward Float:GetVehicleSpeed(vehicleid,UseMPH);
public Float:GetVehicleSpeed(vehicleid,UseMPH)
{
new Float:speed_x,Float:speed_y,Float:speed_z,Float:temp_speed;
GetVehicleVelocity(vehicleid,speed_x,speed_y,speed_z);
if(UseMPH == 0)
{
temp_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*136.666667;
} else {
temp_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*85.4166672;
}
floatround(temp_speed,floatround_round);return temp_speed;
}
Jetzt nutzt du einfach das
floatround(GetVehicleSpeed(vehicleid,0))