Beiträge von ~P4!N~

    Hallo ich wollte einen F-Chat mit Rangnamen machen aber das klappt irgendwie nicht .



    ocmd:f(playerid,params[])
    {
    new text[300],string[100];
    if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/f [Text]");
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
    {
    new rangname[64];
    if(GetPVarInt(i,"Fraktion")==5)
    {
    switch(GetPVarInt(i,"Fraktion")==1)
    {
    case 1:{rangname="Rekrut";}
    case 2:{rangname="Rekrut Second Class";}
    case 3:{rangname="Private";}
    case 4:{rangname="Private First Class";}
    case 5:{rangname="Sergeant";}
    case 6:{rangname="Sergeant First Class";}
    case 7:{rangname="Master Sergeant";}
    case 8:{rangname="First Sergeant";}
    case 9:{rangname="Sergeant Major";}
    case 10:{rangname="Commander Sergeant Major";}
    case 11:{rangname="General";}
    case 12:{rangname="General of Army";}
    }
    }
    if(GetPVarInt(i,"Fraktion")==5)
    {
    switch(GetPVarInt(i,"Rang"))
    {
    case 1:{rangname="Nachwuchs Reporter";}
    case 2:{rangname="Hobby Reporter";}
    case 3:{rangname="Kameramann";}
    case 4:{rangname="Professioneller Reporter";}
    case 5:{rangname="Wettermann";}
    case 6:{rangname="Nachwuchs Ressigeur";}
    case 7:{rangname="Hobby Ressigeur";}
    case 8:{rangname="Ressigeur";}
    case 9:{rangname="Professioneller Ressigeur";}
    case 10:{rangname="Der von der Maske";}
    case 11:{rangname="Co. Chef Ressigeur ";}
    case 12:{rangname="Chef Ressigeur";}
    }
    }
    format(string,sizeof(string),"%s %s: %s",rangname,SpielerName(playerid),text);
    SendClientMessage(i,HELLGRÜN,string);


    }
    }
    }
    return 1;
    }


    InGame steht nur Nachwuchs Reporter bei jedem Rang....

    hallo ich wollte ein Support System mit Textdraws ich hab angefangen habe aber keinen Plan wie ich weiter machen soll ..


    Das texdraw für die Anzeige(0,1,2,3...)


    Textdraw1 = TextDrawCreate(567.000000, 137.000000, "0");
    TextDrawBackgroundColor(Textdraw1, 255);
    TextDrawFont(Textdraw1, 1);
    TextDrawLetterSize(Textdraw1, 0.500000, 1.000000);
    TextDrawColor(Textdraw1, 16711935);
    TextDrawSetOutline(Textdraw1, 0);
    TextDrawSetProportional(Textdraw1, 1);
    TextDrawSetShadow(Textdraw1, 1);


    System:





    ocmd:sup(playerid,params[])
    {
    new text[256];
    if(sscanf(params,"s",text))
    {
    SendClientMessage(playerid, COLOR_GREY,"Benutze]: /sup [text]");
    }
    else
    {
    if(TicketAngenommen[playerid] == 0)
    {
    new pname[MAX_PLAYER_NAME],save[512],string[100];
    GetPlayerName(playerid,pname,sizeof pname);
    format(save,sizeof save,"Tickets/%s.ini",pname);
    if(!dini_Exists(save) && TicketZeile[playerid] == 0) // Wenn noch kein Ticket existiert und auch die TicketZeile auf 0 ist.
    {
    new adminmeldung[128];
    format(adminmeldung, sizeof(adminmeldung), "%s hat ein Support-Ticket geschrieben", pname);
    SendAdminMessage(0x05FF00FF, adminmeldung);
    SupportTicket[playerid] = 1;
    TicketZeile[playerid] = 1;
    dini_Create(save);
    dini_Set(save,"Suptext",text);
    SendClientMessage(playerid, COLOR_YELLOW, "[SUPPORT] Du hast ein Ticket mit folgendem Text geöffnet:");
    format(string, sizeof(string), "%s", text);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    SendClientMessage(playerid, COLOR_YELLOW, "[SUPPORT]Warte bis es ein Supporter annimmt!");
    SendClientMessage(playerid, COLOR_YELLOW, "[SUPPORT]Du kannst noch mit /sup 2 weitere Zeilen anhängen");
    return 1;
    }
    else if(TicketZeile[playerid] == 1) // Wenn die erste Zeile schon geschrieben wurde
    {
    new string2[128];
    dini_Set(save, "Suptext2",text);
    SendClientMessage(playerid, COLOR_YELLOW, "[SUPPORT] Du hast folgendes an dein Ticket anhängt:");
    format(string2, sizeof(string2), "%s", text);
    SendClientMessage(playerid, COLOR_YELLOW, string2);
    TicketZeile[playerid] = 2;
    return 1;
    }
    else if(TicketZeile[playerid] == 2) // Wenn bereits 2 Zeilen ausgefüllt sind
    {
    new string3[128];
    dini_Set(save, "Suptext3",text);
    SendClientMessage(playerid, COLOR_YELLOW, "[SUPPORT] Du hast folgendes an dein Ticket anhängt:");
    format(string3, sizeof(string3), "%s", text);
    SendClientMessage(playerid, COLOR_YELLOW, string3);
    TicketZeile[playerid] = 3;
    return 1;
    }
    else if(TicketZeile[playerid] == 3) // Wenn das Ticket bereits 3 Zeilen hat
    {
    SendClientMessage(playerid, COLOR_YELLOW, "[SUPPORT] Dein Ticket ist bereits randgefüllt!");
    return 1;
    }
    }
    if(TicketAngenommen[playerid] == 1) // Zum direkten Antworten per /sup , wenn das Ticket angenommen wurde.
    {
    new pID = DeinSupport[playerid];
    new antwort[128], antwort2[128], DerFragende[MAX_PLAYER_NAME], DerSup[MAX_PLAYER_NAME];
    GetPlayerName(playerid, DerFragende, sizeof (DerFragende));
    GetPlayerName(pID, DerSup, sizeof (DerSup));
    if(GetPVarInt(pID,"Adminlevel")==1)
    {
    format(antwort, sizeof (antwort),"Supporter %s : %s",SpielerName(pID),text);
    }
    if(GetPVarInt(pID,"Adminlevel")>1)
    {
    format(antwort, sizeof (antwort),"Admin %s : %s",SpielerName(pID),text);
    }
    SendClientMessage(playerid, COLOR_YELLOW, antwort);
    format(antwort2, sizeof (antwort2), "%s schrieb: %s", DerFragende, text);
    SendClientMessage(pID, COLOR_YELLOW, antwort2);
    }
    }
    return 1;
    }








    wenn ich mehr posten soll bitte sagen, ich brauche kein cop&paste ihr könnt mir auch sagen wie ich es machen soll ;)


    //edit: Rechtschreibung ^^



    Was ist der Sinn ?



    Du solltest das vielleicht so machen das das PutPlayerInVehicle erstmal herausfindet in welchem Car der ausführende sitzt....


    Oo Wie soll das PutPlayerInVehicle das heraus finden ? das setzt jemand in ein Auto ...


    ocmd:gethere(playerid,params[])
    {
    new pID;
    new k = GetPlayerInterior(playerid);
    new vehicleid = GetPlayerVehicleID(pID);
    if(sscanf(params,"u",pID)){return SendClientMessage (playerid,ROT,"NUTZE: /gethere [ID/Name]");}
    if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    if(!IsPlayerConnected(pID)){return SendClientMessage (playerid,ROT,"Niemand ist online mit dieser ID!");}
    new string[128],string2[128],aname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GetPlayerName(pID,name,sizeof(name));
    GetPlayerName(playerid,aname,sizeof(aname));
    format(string,sizeof(string),"Du wurdest zu %s teleportiert!",SpielerName(playerid));
    format(string2,sizeof(string2),"Du hast %s zu dir geportet!",SpielerName(pID));
    if(IsPlayerInAnyVehicle(pID))
    {
    new state=GetPlayerState(pID);
    if(state==PLAYER_STATE_DRIVER)
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    SetPlayerPos(pID,x,y,z);
    SetPlayerInterior(pID,k);
    SetVehiclePos(vehicleid,x,y,z);
    PutPlayerInVehicle(pID,vehicleid,0);
    }
    }
    else
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    SetPlayerPos(pID,x,y,z);
    SetPlayerInterior(pID,k);
    SendClientMessage(pID,GELB,string);
    SendClientMessage(playerid,GRÜN,string2);
    }
    return 1;
    }



    C:\Dokumente und Einstellungen\Admin\Eigene Dateien\Downloads\Script.pwn(1534) : error 001: expected token: "-identifier-", but found "state"
    C:\Dokumente und Einstellungen\Admin\Eigene Dateien\Downloads\Script.pwn(1535) : error 001: expected token: "-identifier-", but found "=="
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.


    Danke für die Hilfe im Vorraus ;)

    ocmd:respawn(playerid,params[])
    {
    if(GetPVarInt(playerid,"Fraktion") == 3)
    {
    for(new i=0; i<sizeof(fbicar); i++)
    {
    for(new m = 0; m < MAX_PLAYERS; m++)
    {
    if(IsPlayerConnected(m))
    {
    if(IsPlayerInVehicle(m, fbicar[i])) return SendClientMessage(playerid,GELB," BLAAAAAA");
    else if(!IsPlayerInVehicle(m, fbicar[i]))
    {
    SetVehicleToRespawn(fbicar[i]);
    }
    }
    }
    }
    }
    return 1;
    }


    Was ist da falsch ? Es geht zwar wenn ich im Fahrzeug sitze aber das das Auto nicht respawnt aber wenn ein anderer drinn sitzt wird das Auto trotzdem respawnt...

    Jaa es geht danke ;* ^^


    //Edit


    Nein es geht doch nicht ;( ich habe es jetzt so :


    ocmd:carrespawn(playerid,params[])
    {
    new string[50];
    format(string, sizeof(string), "%s respawnt die Fraktions Autos.", SpielerName(playerid));
    if(GetPVarInt(playerid,"Rang") == 12 )
    {
    if(GetPVarInt(playerid,"Fraktion") == 2)
    {
    for(new i=0; i<sizeof(lspdcar); i++)
    {
    for(new m = 0; m < MAX_PLAYERS; m++)
    {
    if(IsPlayerConnected(m))
    {
    if(GetPlayerVehicleID(m)!= lspdcar[i])
    {
    SetVehicleToRespawn(lspdcar[i]);
    }
    }
    }
    }
    }
    if(GetPVarInt(playerid,"Fraktion") == 1)
    {
    for(new i=0; i<sizeof(armycar); i++)
    {
    for(new m = 0; m < MAX_PLAYERS; m++)
    {
    if(IsPlayerConnected(m))
    {
    if(GetPlayerVehicleID(m)!= armycar[i])
    {
    SetVehicleToRespawn(armycar[i]);
    }
    }
    }
    }
    }
    for(new m = 0; m < MAX_PLAYERS; m++)
    {
    if(GetPVarInt(playerid,"Fraktion") == 1)
    {
    SendClientMessage(m,0xFF0037FF,string);
    }
    else if(GetPVarInt(playerid,"Fraktion") == 2)
    {
    SendClientMessage(m,0xFF0037FF,string);
    }


    }
    }
    }

    Hallo ich bin kurz vor der Perfektion meines Carrespawn Befehls hab nur ein Problem das die Autos respawnen trotzdem jemand drinn sitzt, eigentlich düften sie garnicht respawnen ich frage mich wo der fehler liegt ...


    ocmd:carrespawn(playerid,params[])
    {
    new string[50];
    format(string, sizeof(string), "%s respawnt die Fraktions Autos.", SpielerName(playerid));
    if(GetPVarInt(playerid,"Rang") == 12 )
    {
    if(GetPVarInt(playerid,"Fraktion") == 2)
    {
    for(new i=0; i<sizeof(lspdcar); i++)
    {
    for(new m = 0; m < MAX_PLAYERS; m++)
    {
    if(GetPlayerVehicleID(m //<-- mit playerid gehts aber wenn ich alle spieler abfrage nicht ...) != lspdcar[i])
    {
    SetVehicleToRespawn(lspdcar[i]);
    }


    }
    }
    }
    if(GetPVarInt(playerid,"Fraktion") == 1)
    {
    for(new i=0; i<sizeof(armycar); i++)
    {
    for(new m = 0; m < MAX_PLAYERS; m++)
    {
    if(GetPlayerVehicleID(m) != lspdcar[i])
    {
    SetVehicleToRespawn(armycar[i]);
    }
    }
    }
    }
    for(new m = 0; m < MAX_PLAYERS; m++)
    {
    if(GetPVarInt(playerid,"Fraktion") == 1)
    {
    SendClientMessage(m,0xFF0037FF,string);
    }
    else if(GetPVarInt(playerid,"Fraktion") == 2)
    {
    SendClientMessage(m,0xFF0037FF,string);
    }


    }
    }
    }

    if(blabla == 1) return Message(Du bsit nicht 1)


    ehhr.. das heißt doch aber du bist 1 und nichts anderes , weil z.b. >= heißt du bist größer als 1 oder 1 oder ?


    //edit: naja ich habs hin bekommen :D danke dir ^^

    Nope xD


    if(GetPVarInt(playerid,"Fraktion") != 1 || GetPVarInt(playerid,"Fraktion") != 2) return SendClientMessage (playerid,ROT,"Dazu bist du nicht Berechtigt.");


    Ist er nicht lspd/army returnt die nachricht

    != 1 also wenn es nicht 1 ist oder?


    ja also das || bedeutet ja oder, oder? xD


    also würde das heißen wenn er im LSPD ist sendet es die nachricht aber wenn er nicht in der Army ist auch die Fehlermeldung

    Geht nicht ich habs jetzt so :


    ocmd:gov(playerid,params[])
    {
    new t[128];
    new pID;
    if(sscanf(params,"u",pID)){return SendClientMessage (playerid,ROT,"Benutz: /gov [text]");}
    format(t, sizeof(t), "(( %s: %s ))", SpielerName(playerid), params);
    SendClientMessageToAll(0x00D7FFFF, t);
    if(GetPVarInt(playerid,"Fraktion") != 1 || GetPVarInt(playerid,"Fraktion") != 2) return SendClientMessage (playerid,ROT,"Dazu bist du nicht Berechtigt.");
    if(GetPVarInt(playerid,"Rang") <= 8) return SendClientMessage (playerid,ROT,"Dazu brauchst du Rang 9.");
    SendClientMessageToAll(0x00D7FFFF, t);
    return 1;
    }


    Ich denke das liegt an if(GetPVarInt(playerid,"Fraktion") != 1 || GetPVarInt(playerid,"Fraktion") != 2) aber ich weiß nicht wie ich das anders machen könnte

    Also ich wollte das so machen das nur Mitglieder des LSPD und der Army /gov machen können wenn sie mindestens Rang 9 haben...


    ocmd:gov(playerid,params[])
    {
    new t[128];
    new pID;
    if(sscanf(params,"u",pID)){return SendClientMessage (playerid,ROT,"Benutz: /gov [text]");}
    format(t, sizeof(t), "(( %s: %s ))", SpielerName(playerid), params);
    SendClientMessageToAll(0x00D7FFFF, t);
    if(GetPVarInt(playerid,"Fraktion") == 1 || GetPVarInt(playerid,"Fraktion") == 2)
    {
    if(GetPVarInt(playerid,"Rang") >= 9)
    {
    SendClientMessageToAll(0x00D7FFFF, t);
    }
    else
    {
    SendClientMessage (playerid,ROT,"Dazu brauchst du Rang 9.");
    }
    return 1;
    }
    else if(!isPlayerInFrakt(playerid,1) || isPlayerInFrakt(playerid,2))
    {
    SendClientMessage (playerid,ROT,"Dazu bist du nicht Berechtigt.");
    return 1;
    }
    return 1;
    }


    Das Problem ist das wenn man im LSPD ist und Rang 9 oder höher hat die Nachicht 2 mal gesendet wird und wenn man unter Rang 9 ist kommt "Dazu musst du Rang 9 haben" aber die Nachricht wird trotzdem abgesendet...//edit: und das selbe auch wenn man nicht in Der army oder lspd ist ...