Beiträge von Goldkiller

    Gar nicht.
    Denn a) , kannst du durch keine native Funktion auslesen,welcher Text auf einem Textdraw angewandt wurde. Du müsstest es machen,bevor du den Text für den Textdraw einstellst.Da solltest du aber sowieso wissen,wie oft du ~n~ in den Text/String einfügst. Dann noch b), funktionieren tut die Funktion von BlackAce eh nicht richtig.

    Wie du das prüfst? Eine Abfrage ob größer oder kleiner, hab' ich doch geschrieben.
    Wie eine Abfrage geht,solltest du doch wissen :-O!


    if( gettime() >= GetPVarInt(playerid, "Mute") ) {
    // Nicht mehr gemutet, da der aktuelle Unix-Timestamp größer ist als der Timestamp,bis wann der Spieler gemutet ist.
    }

    Na den:
    Mins=gettime()+(60*time);
    SetPVarInt(pID,"Mute",Mins);
    bzw speicherst du es doch auch bestimmt direkt in seiner Spielerdatei ( da SpielerSpeichern(pID); ) und ließt den Wert aus,sobald der Spieler den Server wieder betritt.
    Du merkst dir hier doch,bis WANN der Spieler seinen Mute hat. Ob das jetzt in der PVar ist oder Spielerdatei.
    Den Wert prüfst einfach gegen den aktuellen Unix-Timestamp ( gettime() ) um zu sehen,ob er noch gemutet ist oder nicht.Ist der aktuelle Unix-Timestamp größer,ist seine Entsperrung in der Vergangenheit und somit aufgehoben -> Nicht mehr gemutet .

    INI_ReadString sieht auch von der Syntax bischen Anders aus.
    INI_ReadString(dest[], key[], maxlength = sizeof(dest))
    Heisst also,du musst INI_ReadString vor der if()- Abfrage machen.

    new sPasswort[32];
    INI_ReadString(sPasswort, "Passwort", sizeof(sPasswort) );
    if(!strcmp(key,sPasswort,false))// <- 4049


    //Edit:
    Zum "unreachable code".
    Sowohl bei dem if() als auch im else() Zweig hast du jeweils ein return.Dadurch wird die Funktion ja beendet. Es wird daher unter "if(INI_Open(PlayerData)) " niemals dazu kommen,dass der Code bis
    "INI_Close();// <- 4066" kommt.Entfern einfach die beiden return - Zeilen aus dem if und dem else - Zweig.
    Kannst die returns auch lassen,dann müsstest aber "INI_Close()" über dem return jeweils einfügen ;).

    Schwer zu sagen.
    Lass dir doch mal mainquery per print/printf ausgeben und probier den Query dann mal in phpmyadmin oder ähnliches aus.Dann wird man dir dort schon sagen,ob es klappt ;).
    Am Ende von query1 und query2 fehlt schon mal im STRING ein , ( Komma ) , damit die die Werte auch getrennt werden.Denn sonst hast:


    SQL
    ,Interior = '%d',VirtualWorld = '%d'AbgeschlepptPreis = '%d',AbgeschlepptGrund = '%s',


    Da fehlt dann zwischen VirtualWorld = '%d'AbgeschlepptPreis = '%d' ein Komma .

    Mins=gettime()+(60*time);
    gettime gibt einen Unix-Timestamp.
    Gerade liegt der bei 1337027564. Da kommt noch 60 * time drauf.
    Die Zeit die du dort dann in "Mins" speicherst,ist der Unix-Timestamp,bis wann der User gemutet sein soll. Soweit ist ja auch alles richtig.
    Du müsstest dann nur beim Einloggen bzw Sprechen schauen,ob der aktuelle Unix-Timestamp ( gettime() ) größer ist,als der Wert dem du den Spieler zuweist.

    Ja,man merkt du hast es von Mr Tutorial gelernt.
    Denn PAWNO = C ist völliger Blödsinn. Auch PAWN = C ist Blödsinn, denn PAWN ist die Sprache und PAWNO nur die IDE ( Der Editor ). Ich kann meine Scripte auch mit Nodepad bearbeiten, sag ich deswegen die Sprache heisst "Nodepad" bzw "Nodepad = C "?.
    Woher du glaubst,dass PAWN C ist wäre auch gut zu wissen.

    Zitat

    pawn is a simple, typeless, 32-bit extension language with a C-like syntax. A pawn "source" program is compiled to a binary file for optimal execution speed. The pawn compiler outputs P-code (or bytecode) that subsequently runs on an abstract machine. Execution speed, stability, simplicity and a small footprint were essential design criteria for both the language and the abstract machine.


    Schau dich lieber in der Tutorial Sektion um.

    Ich bin mir nicht ganz sicher was du genau meinst,denke aber du meinst sowas:
    new bla[64];
    // Datei öffnen
    INI_Open("Datei.txt");
    INI_ReadString(bla,"URL",sizeof(bla));
    if(!strcmp(bla,"www.meine-homepage.de")) {
    // ...
    }
    // Datei schließen
    INI_Close();
    Du musst allerdings vorher die Datei öffnen,sonst funktioniert es nicht ( Liegt an der Art wie SII arbeitet ).

    Immer diese falschen Antworten :/.
    Der Fehler ist was Anderes.Entweder man weiss wo der Fehler liegt und hilft oder man lässt es sein.


    Möglichkeit a) wäre du entfernst das Wort "Fraktionskasse" bei deiner Aufzählung ( enum ) oder b) du schreibst vor frak=LSPD immer den Namen des enum's ( Fraktionskasse: ) und entfernst das Tag ( Fraktionskasse ) direkt wieder.


    Es kommen auch keine Warnungen wenn man das Tag vor LSPD ( zB ) direkt entfernt ( _: ) .

    Spoiler anzeigen

    frak=_:(Fraktionskasse:LSPD);
    frak=_:LSPD;

    Ob beides identisch kompiliert weiss ich ehrlich gesagt auch nicht,denke aber schon.


    Methode a) wäre aber die einfachere auf den ersten Blick. Könnte es aber auch nicht sein,je nachdem wie du Fraktionskasse noch benutzt.


    //Edit:
    Die Fehlermeldung kommt daher,dass LSPD,Army usw alle vom Typ "Fraktionskasse" sind und damit zusammenhängen ( so wie das Tag Float,nur eben Fraktionskasse ).

    Ich hatte ihn zuletzt verwarnt.Wie die Begründung in den Bann kommt weiss ich nicht :/.

    Nee,funktioniert nicht ganz.
    pID ist völlig unnötig.Außerdem ist der Rückgabewert von GetPlayerName nicht brauchbar.
    Nimm direkt playerid in Zeile 15.
    Ein break kannst du auch noch einfügen,man kann ja sowieso nur in einem Fahrzeug sitzen.Falls wir bereits in einem sitzen und die Nachrichte versendet haben,brauchen wir die restlichen Fahrzeuge nicht mehr überprüfen.


    Übrigens würde ich die VehicleID einmalig außerhalb der Schleife auslesen und in einer Variable ablegen und immer mit dieser vergleichen in der Schleife.

    pAdmin ist bei dir wohl auch ein Wert im enum,daher auch das tag-mismatch.Woher ist das weiss ?
    if(SpielerInfo[playerid][pAdmin]==6){
    Du solltest besser die Tabelle updaten wo der Spielername steht,nicht eine ID. Denn ich glaube nicht,dass du die ID als Primärschlüssel in der Tabelle hast mit auto-increment.