Beiträge von Privat

    Du musst einfach bei "OnPlayerKeyStateChange" eine "if" Abfrage machen.


    if(newkeys == KEYNAME{
    }



    In der "if" Abfrage schreibst du dann einfach rein, was passieren soll. Also in deinem Falle einfach dein Motorsystem darein kopieren.


    Grüße,
    TheBester

    Ja, wenn es kaputt geht, dann ist das doch wohl klar, dass es respawnt! Dazu kannst du nichts machen, außer die Position heraussuchen, und die dann einfach bei OnVehicleDeath wieder setzen.


    TheTutoFreak Du musst einfach so machen:


    CreateVehicle(vehicleid,x,y,z,0,0,-1); //-1 ES RESPAWNT NICHT, AUßER BEIM EXPLODIEREN, ETC.

    Fast, ein paar kleine Fehler, die ich dir ebend zeige:


    new id = CreateVehicle(522,x,y,z,rott,0,0,1);


    Du musst am Ende nicht "1" sondern "-1"


    new SpielerName;


    Zu: new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,SpielerName,sizeof(SpielerName));


    SendClientMessageToAll(playerid,Gelb,"%s ist im Dienst.",SpielerName);




    zu:
    new string[128];format(string,sizeof(string)," %s ist im Dienst.",SpielerName);SendClientMessageToAll(Gelb,string);




    Grüße,
    TheBester

    Du kennst bestimmt diese Zeichen: > <


    So, und wenn du abfragst
    if(Adminlevel[playeird]<1)



    Dann fragst du ab, ob das Adminlevel von playerid unter 1 ist, also 0!
    0 wäre dann kein Admin.
    Dann wird in deinem Befehl das Auto nur dann gespawnt, wenn der User(playerid) kein Admin ist!
    Deswegen das Problem mit der Nachricht.
    Das müsste alles so aussehen:
    if(Adminlevel[playerid] >=1){ //CREATEVEHICLE ...}else{ //NACHRICHT}


    Mit dem >=1 wird abgefragt, ob playerid das Adminlevel 1 oder höher besitzt. Sollte er das besitzen, so wird das Auto gespawnt, sollte er das nicht besitzen, bekommt er die Nachricht!


    Wenn du es nicht verstanden hast, dann sag noch mal bescheid :)


    Grüße,
    TheBester

    Dann mach einfach hinten an der CreateVehicle anstatt die letzte 0 eine -1


    Nachricht:
    Mach das so:


    if(Adminlevel[playerid] == 1){ //...}else{ //NACHRICHT}


    Das sollte so gehen, denn du hast abgefragt, wenn der User kein Admin ist, dann sollte das Auto spawnen, und wenn der Admin ist, kommt die Nachricht!


    Grüße,
    TheBester

    Das kann man so direkt glaub ich nicht machen, aber du könntest es mit einer Variable machen.


    Beispiel:
    oben im Script:
    new check[MAX_PLAYERS];


    SetPlayerCheckpoint(playerid,x,y,z,0);check[playerid] = 1;



    Bei OnPlayerCheckpoint


    if(check[playerid] == 1){ SendClientMessage(playerid,FARBE," Der Maker befindet sich .....");}



    Grüße,
    TheBester

    Wenn ich mich nicht irre, musst du das mit einer "For - Schleife" machen. Einfach so:


    for(new i = 0; i<MAX_PLAYERS;i++)
    {
    if(GetPlayerWantedLevel(i) >=1)
    {
    new string[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(name,sizeof(name));
    format(string,sizeof(string)," %s | %i",name,GetPlayerWantedLevel(i));
    SendClientMessage(playerid,FARBE,string);//FARBE = DEINE FARBE!!!
    }
    }


    Müsste so gehen, weiteres einfach selber hinzufügen :)


    Grüße,
    TheBester

    Du musst dir am besten schon einmal das Grundgerüst vom Befehl erstellen.


    ocmd:admins(playerid,params[])
    {
    return 1;
    }
    Danach machst du eine "For - Schleife" durch jeden Spieler.
    for(new i = 0;i<MAX_PLAYERS;i++)
    {


    }


    In der "For - Schleife" fragst du dann ab, ob ob ein Spieler ein Admin ist:
    if(IstSpielerAdmin(i,1))
    {


    }
    oder
    if(GetPVarInt(i,"Adminlevel")>=1)
    {


    }


    Wenn Admins online sind, schreibst du in der "if" Abfrage die Nachricht!


    new string[128];
    format(string,sizeof(string),"%s | Administratoren | %i",SpielerName(i),adminrang);
    SendClientMessage(playerid,FARBE,string);//FARBE = DEINE FARBE!!!


    Und wenn kein Admin online ist, dann schreibst du unter einen der beiden "if" Abfragen:


    else
    {
    SendClientMessage(playerid,FARBE," Es sind momentan keine Administratoren online!");//FARBE = DEINE FARBE!!!
    }


    Ich hoffe das hat die weiter geholfen, aber bei "adminrang" musst du dann oben ein:
    new adminrang[64];
    switch(GetPVarInt(i,"Adminlevel"))
    {
    case 1:{adminrang="1 Adminrang";}
    case 2:{adminrang="2 Adminrang";}
    //usw...
    }
    ocmd:admins(playerid,params[])
    {
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IstSpielerAdmin(i,1))
    {
    new string[128];
    new adminrang[64];
    switch(GetPVarInt(i,"Adminlevel"))
    {
    case 1:{adminrang="1 Adminrang";}
    case 2:{adminrang="2 Adminrang";}
    //usw...
    }
    format(string,sizeof(string),"%s | Administratoren | %i",SpielerName(i),adminrang);
    SendClientMessage(playerid,FARBE,string);//FARBE = DEINE FARBE!!!
    }
    else
    {
    SendClientMessage(playerid,FARBE," Es sind momentan keine Administratoren online!");//FARBE = DEINE FARBE!!!
    }
    }
    return 1;
    }