Beiträge von Goldkiller

    Da hast du dir es aber einfach gemacht den Fehler zu umgehen 0o.
    //new BadWord[30];
    //new text[256];
    for(new i; i < sizeof(BadWords); i++)
    {
    if(strfind(text,BadWords[i],true,0) != -1)
    {
    GetPlayerName(playerid, badplayer, sizeof(badplayer));
    format(string,sizeof(string),"** AdmWarning: [%d]%s hat ein boeses Wort benutzt.(\"%s\") **",playerid, badplayer, BadWords[i]);
    SendAdminMessage(COLOR_YELLOW,string);
    SendClientMessage(playerid, COLOR_RED,"Du darfst keine Badwords nutzen! Bitte unterlasse dies demnächst.");
    return 0;
    }
    }
    new BadWord[30] und new BadWords[][30] sind zwei unterschiedliche Sachen.


    PS:Glaub die BadWords-Liste ist sogar von mir =D .
    //Edit: Jup,ist meine x'D. gsg9 und tonne sind wohl keine Schimpfwörter,hab ich damals aus Spaß eingefügt.gsg9 war ein Clan,tonne ein Username.

    Nur vom lesen des Textes konnte man den Fehler leicht finden.
    navi2=Menu:CreateMenu("~w~Navigation Menu 2",1,130,150,300);
    AddMenuItem(navi1,0," Drogendealer"); // <- Da liegt der Fehler, nicht navi1 sondern navi2.
    AddMenuItem(navi2,0," navi 2");
    AddMenuItem(navi2,0," navi 3");
    AddMenuItem(navi2,0," navi 4");


    //Edit: Sowas sollte man aber selber sehe :0.

    danke war nur ein kleiner fehler bei Dir^^


    CallRemoteFunction("filterscriptname", "%d", Sultan); muss in diesem Fall %s sein weil es ein wort und keine zahl ist ^^



    Du hast dir 1000%-ig nicht den Eintrag im Wikipedia angeguckt,sonst wüsstest du,dass das totaler Quatsch ist :cursing: .

    Zitat

    muss in diesem Fall %s sein weil es ein wort und keine zahl ist ^^


    Nein?Du hast die Variable Sultan nicht als String definiert,außerdem weisst du sowieso Sultan einen Zahlenwert zu X__o.

    Warum guckt man nicht im Wikipedia nach?
    >> CallRemoteFunction()


    Du bräuchtest in deinem 2Filterscript eine Public Funktion,die du über CallRemoteFunction aufrufst.Dort übergibst du dann die vehicleid des Sultan's aus dem 1Filterscript an die Variable im 2Filterscript.


    //1Filterscript
    CallRemoteFunction("GetSultanID","d",Sultan);
    //2Filterscript
    new SultanVID; //


    forward GetSultanID(vehicleid);
    public GetSultanID(vehicleid) {
    SultanVID = vehicleid;
    return 1;
    }

    Man sollte sich die Funktion auch mal genauer angucken.
    return newnick;

    Dir sollte also klar sein,dass die Funktion den neuen String zurück gibt.Daher musst du es eigentlich so benutzten müsstest.
    public OnPlayerText(playerid, text[]){
    text=str_replace("ä", "ae", text);
    ...
    }


    Würde dir aber trotzdem du dieser str_replace Variante raten
    stock str_replace(sSearch[], sReplace[], const sSubject[], &iCount = 0)
    {
    new
    iLengthTarget = strlen(sSearch),
    iLengthReplace = strlen(sReplace),
    iLengthSource = strlen(sSubject),
    iItterations = (iLengthSource - iLengthTarget) + 1;


    new
    sTemp[128],
    sReturn[128];


    strcat(sReturn, sSubject, 128);
    iCount = 0;


    for(new iIndex; iIndex < iItterations; ++iIndex)
    {
    strmid(sTemp, sReturn, iIndex, (iIndex + iLengthTarget), (iLengthTarget + 1));


    if(!strcmp(sTemp, sSearch, false))
    {
    strdel(sReturn, iIndex, (iIndex + iLengthTarget));
    strins(sReturn, sReplace, iIndex, iLengthReplace);


    iIndex += iLengthTarget;
    iCount++;
    }
    }


    return sReturn;
    }
    Würdest du ebenfalls benutzten wie oben im Beispiel:
    public OnPlayerText(playerid, text[]){
    text=str_replace("ä", "ae", text);
    ...
    }

    Würde mal tippen,es funktioniert nicht wegen dem return 1; das immer nach if (IsPlayerInAnyVehicle(playerid)) und if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 437).Es müsste aber trotzdem führ TourA funktionieren :\
    public OnPlayerEnterRaceCheckpoint(playerid)
    {
    if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 437) // Model ID 408, bedeutet, dass das ganze,was unten geschicet nur dann geht, wenn man im Model 408 drinne sitzt.
    {
    if(MachtArbeitA[playerid] == 1) // Dies passiert nur dann, wenn man /mission geschieben hat.
    {
    CheckpointStatusA[playerid]++; // Hier werden die Checkpoints aufgezählt.
    if(CheckpointStatusA[playerid] < MAX_RACE_POINTSA) // Ist der checkpoint Status kleiner als die maximale Anzahl der Checkpoints, bedeutet dieser Code.
    {
    DisablePlayerRaceCheckpoint(playerid); // Beendet den Checkpoint
    SetPlayerRaceCheckpoint(playerid,0,buschecka[CheckpointStatusA[playerid]][0],buschecka[CheckpointStatusA[playerid]][1],buschecka[CheckpointStatusA[playerid]][2],buschecka[CheckpointStatusA[playerid]+1][0],buschecka[CheckpointStatusA[playerid]+1][1],buschecka[CheckpointStatusA[playerid]+1][2],3.0);
    } // Bedeutung: SetPlayerRaceCheckpoint(playerid, Checkpointtype, X[CheckpointSTatus], Y[CheckpointStatus], Z[CheckpointStatus], NächsterX[Nächster CheckpointSTatus],NächsterY[Nächster CheckpointSTatus],NächsterZ[Nächster CheckpointSTatus], size);
    else
    { // Wenn der Checkpoint STatus die maximale Anzahl erreich hat. Passiert folgendes:
    MachtArbeitA[playerid]= 0; // Hier wird die Mission beendet.
    CheckpointStatusA[playerid] = 0; // Hier wird definiert, dass, der Checkpoint Status bei Null liegt.
    DisablePlayerRaceCheckpoint(playerid); // Damit wird der Race Checkpoint beendet.
    }
    }
    else if(MachtArbeitB[playerid] == 1) // Dies passiert nur dann, wenn man /mission geschieben hat.
    {
    CheckpointStatusB[playerid]++; // Hier werden die Checkpoints aufgezählt.
    if(CheckpointStatusB[playerid] < MAX_RACE_POINTSB) // Ist der checkpoint Status kleiner als die maximale Anzahl der Checkpoints, bedeutet dieser Code.
    {
    DisablePlayerRaceCheckpoint(playerid); // Beendet den Checkpoint
    SetPlayerRaceCheckpoint(playerid,0,buscheckb[CheckpointStatusB[playerid]][0],buscheckb[CheckpointStatusB[playerid]][1],buscheckb[CheckpointStatusB[playerid]][2],buscheckb[CheckpointStatusB[playerid]+1][0],buscheckb[CheckpointStatusB[playerid]+1][1],buscheckb[CheckpointStatusB[playerid]+1][2],3.0);
    } // Bedeutung: SetPlayerRaceCheckpoint(playerid, Checkpointtype, X[CheckpointSTatus], Y[CheckpointStatus], Z[CheckpointStatus], NächsterX[Nächster CheckpointSTatus],NächsterY[Nächster CheckpointSTatus],NächsterZ[Nächster CheckpointSTatus], size);
    else
    { // Wenn der Checkpoint STatus die maximale Anzahl erreich hat. Passiert folgendes:
    MachtArbeitB[playerid]= 0; // Hier wird die Mission beendet.
    CheckpointStatusB[playerid] = 0; // Hier wird definiert, dass, der Checkpoint Status bei Null liegt.
    DisablePlayerRaceCheckpoint(playerid); // Damit wird der Race Checkpoint beendet.
    }
    }
    else if(MachtArbeitC[playerid] == 1) // Dies passiert nur dann, wenn man /mission geschieben hat.
    {
    CheckpointStatusC[playerid]++; // Hier werden die Checkpoints aufgezählt.
    if(CheckpointStatusC[playerid] < MAX_RACE_POINTSC) // Ist der checkpoint Status kleiner als die maximale Anzahl der Checkpoints, bedeutet dieser Code.
    {
    DisablePlayerRaceCheckpoint(playerid); // Beendet den Checkpoint
    SetPlayerRaceCheckpoint(playerid,0,buscheckc[CheckpointStatusC[playerid]][0],buscheckc[CheckpointStatusC[playerid]][1],buscheckc[CheckpointStatusC[playerid]][2],buscheckc[CheckpointStatusC[playerid]+1][0],buscheckc[CheckpointStatusC[playerid]+1][1],buscheckc[CheckpointStatusC[playerid]+1][2],3.0);
    } // Bedeutung: SetPlayerRaceCheckpoint(playerid, Checkpointtype, X[CheckpointSTatus], Y[CheckpointStatus], Z[CheckpointStatus], NächsterX[Nächster CheckpointSTatus],NächsterY[Nächster CheckpointSTatus],NächsterZ[Nächster CheckpointSTatus], size);
    else
    { // Wenn der Checkpoint STatus die maximale Anzahl erreich hat. Passiert folgendes:
    MachtArbeitC[playerid]= 0; // Hier wird die Mission beendet.
    CheckpointStatusC[playerid] = 0; // Hier wird definiert, dass, der Checkpoint Status bei Null liegt.
    DisablePlayerRaceCheckpoint(playerid); // Damit wird der Race Checkpoint beendet.
    }
    }
    }
    return 1;
    }


    //Edit:
    Hab es ebend getestet,funktioniert bei mir einwandfrei 0o.

    SetTimer("Woof", 1000, 1);
    forward Woof(playerid);
    public Woof(playerid)
    {
    new money = PlayerInfo[playerid][pCash];
    new wert = strval(string);
    format(string,sizeof(string),"%d",wert); // Ok...
    TextDrawSetString(Textdraw1, money); // FAIL ... Da müsste sowieso string hin.
    return 1;}
    Sehe nicht wo er dort die Variable string her hat.Glaube kaum,dass er die Global hat,da er ja sowieso aus string eine Zahl ziehen möchte.


    public Woof(playerid)
    {
    new string[16];
    format(string,sizeof string,"%d",PlayerInfo[playerid][pCash]);
    TextDrawSetString(Textdraw1, string);
    return 1;
    }

    Verstehe nicht ganz wozu du einen Loop brauchst.Du solltest dir außerdem mal den Unterschied zwischen VehicleID & ModelID angucken.
    stock Motorrad(vehicleid) {
    switch(GetVehicleModel(vehicleid)) {
    case 461, 463, 468, 521, 522, 581: return 1;
    default: return 0;
    }
    return 0;
    }
    // Test
    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    if(Motorrad(vehicleid)) {
    printf("PlayerID %d ist von einem Motorrad (VehicleID %d) abgestiegen",playerid,vehicleid);
    }
    return 1;
    }

    Zitat

    Naja aber bei dem Afghanistan Einsatz geht es doch nicht darum einen Mitgliedsstaat zu "verteidigen" oder sonst etwas sondern um das Land wieder aufzubauen, oder etwa nicht?


    Es ist der Kampf gegen den Internationel Terrorismus.Die UNO ist dafür hauptsächlich im Einsatz wie im Fall Afghanistan.


    Zitat

    Im Ernst: Welcher Mitgliedsstaat wird denn angegriffen?


    Versteh ich ernsthaft nicht ?(


    Der Anschlag vom 11.Sept auf die USA war Ausschlagspunkt für den ganzen Einsatz in Afghanistan.Die UNO bzw unter Druck von den USA wollten sich Bin Laden ausliefern lassen von den Taliban,was aber nicht passiert.Damit gingen Angriffe auf die Taliban in Afghanistan los und alles nahm seinen lauf.
    Alles genau erklären kann ich selber nicht mehr,dazu müsste ich mich nochmal schlau machen x|.