Beiträge von Monte

    Hey Leute,
    ich suche alle Fahrzeugmodels und Fahrzeugnamen in einem Array.
    Man sollte dann z.B. einen Sultan so aufrufen können:
    VehicleArr[560]
    Zur Erklärung, VehicleArr soll der ArrayName sein und 560 ist die Modelid vom Sultan.
    Der String "Sultan" soll also in dieser Variable gespeichert sein.
    Ich habe das schonmal irgendwo gesehen, finde dies aber leider nichtmehr.

    Boah du brauchst dein Beitrag nicht immer zitieren, er wird schon irgendwann antworten -.-
    Und die Errors sind so gut, schließlich kann jeder normale Mensch Englisch und ist andernfalls schlau genug sich ein Englisch -> Deutsch Buch zunehmen :O

    McTob: er will ins Forum und dieses ist aufgrund einer Attacke zurzeit offline.


    @Tokyo:
    Du hast doch selber geschrieben, wieso.
    "The SA-MP forum is offline due to an attack. Please try again later. "

    Überprüf mal ob irgendwo vorher returnt wird, dann wird alles was dahinter steht nichtmehr ausgeführt.
    Bei mir funktioniert es wunderbar.

    strcmp - Abkürzung für 'stringcompare' zu deutsch 'Zeichenketten vergleichen' - gibt 0 wieder, wenn die Zeichenketten übereinstimmen
    das ! davor fragt ab, ob es false bzw. 0 wiedergibt.


    strget kann ich jetzt nicht sogut erklären.


    cmdtext ist der erste string, welcher mit dem darauffolgendem string verglichen werden soll


    die 0 weiß ich grad nicht, schlage kurz nach im SA:MP Wiki


    "/makeleader" ist der zweite String, dieser soll mit dem ersten verglichen werden.

    Hab dir in der Zeile kommentiert, was falsch ist :D


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new modelid = GetPlayerVehicleID(playerid);
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(modelid == 472 || modelid == 473 || modelid == 493 || modelid == 595 || modelid == 484 || modelid == 430 || modelid == 453 || modelid == 452 || modelid == 446 || modelid == 454 )
    {
    if(PlayerInfo[playerid][pBootschein] == 0)
    {
    SendClientMessage(playerid, ROT, " Du hast keine Bootschein");


    }
    }
    else if(modelid == 592 || modelid == 577 || modelid == 511 || modelid == 512 || modelid == 593 || modelid == 520 || modelid == 553 || modelid == 476 || modelid == 519 || modelid == 460 || /* hier fehlte ein || */ modelid == 513 || modelid == 548 || modelid == 425 || modelid == 417 || modelid == 487 || modelid == 488 || modelid == 497 || modelid == 563 || modelid == 447 || modelid == 469 ) // 777
    {
    if(PlayerInfo[playerid][pFlugschein] == 0)
    {
    SendClientMessage(playerid, ROT, " Du hast keinen Flugschein !");
    }
    }
    else
    {
    SendClientMessage(playerid, ROT, " Du hast keinen Führerschein, ");
    SendClientMessage(playerid, ROT, " Solltest du erwischt werden, ");
    SendClientMessage(playerid, ROT, " musst du mit Konsequenzen rechnen. !");
    }
    }
    return 1;
    }

    Ich mache es noch anders, als es da oben steht. Finde die Klammern sollten mit der zugehörigen Abfrage/Schleife/... auf einer Ebene stehen, sonst siehts kacke aus :D
    So siehts bei mir aus:
    if (strcmp("/hilfe", cmdtext, true, 10) == 0)
    {
    SendClientMessage(playerid,BLAU,"---------<~*~>Hilfe<~*~>-----------------");
    SendClientMessage(playerid,GELB,"Account: /register /login /status /scheine");
    SendClientMessage(playerid,GELB,"Allgemein: /hilfe /karte");
    SendClientMessage(playerid,GELB,"Sonstiges: /animlist");
    SendClientMessage(playerid,GELB,"Fraktionen: Police, FBI ,Taxifahrer , weitere kommen");
    SendClientMessage(playerid,BLAU,"-----------------------------------------");
    return 1;
    }