Beiträge von Kaliber

    Schreib die Funktion so:


    stock trcar(const car[])
    {
    new tmp[128];
    strcat(tmp,car);
    for(new i=strlen(car); i!=-1; i--)
    {
    switch(tmp[i])
    {
    case '[': tmp[i]='(';
    case ']': tmp[i]=')';
    }
    }
    return tmp;
    }

    Hallo Kaliber,


    vielen dank auch für deine schnelle Hilfe. Mit dem Filterscript ist alles gut, Allerdings brauch ich einfach nur die blauen lichter die an / aus von selbstständig gehen sobald die da sind. Ich möchte ja wie in echt die lichter als Frontblitzer machen.


    Dann platzierst du da das Objekt welches aus ist und sobald er H drückt (prüfst du über OnPlayerKeyStateChange), dann ersetzt du das mit dem Objekt, welches an ist...

    mein server geht immer aus was machen?


    In CallLocalFunction dürfen keine Leeren Strings übergeben werden...evtl das mal prüfen...


    Passiert meistens wenn du keinen guten "CMD-Prozessor" verwendest...wechsel den einfach mal bzw Update ihn ^^


    Unknown column 'id' in 'where clause'


    Das bedeutet, dass das Feld ID nicht existiert...da du z.B. sowas machst:


    SQL
    SELECT * FROM `Bla` WHERE `id`='0'


    und dieses ID feld existiert nicht, dass musst du einfach erstellen :)


    mfg. :thumbup:

    Jeffry: Gibts da was?


    Auch wenn ich nicht Jeffry bin, ja das kannst du einfach mit SetPlayerPos machen :)


    //Ein Beispiel:
    new Float:x,Float:y,Float:z,Float:a;
    GetPlayerPos(playerid,x,y,z),GetPlayerFacingAngle(playerid,a);
    const Float:distance = 5.0; //Wie viele Meter er versetzt werden soll


    //Um den Spieler nachvorne zu setzen:
    x += (distance * floatsin(-a, degrees));
    y += (distance * floatcos(-a, degrees));
    //Um den Spieler nachhinten zu setzen:
    x += (-distance * floatsin(-a, degrees));
    y += (-distance * floatcos(-a, degrees));
    //Um den Spieler nach rechts zu setzen:
    a+=90.0;
    x += (distance * floatsin(-a, degrees));
    y += (distance * floatcos(-a, degrees));
    //Um den Spieler nach links zu setzen:
    a-=90.0;
    x += (distance * floatsin(-a, degrees));
    y += (distance * floatcos(-a, degrees));


    //Und dann halt einfach:
    SetPlayerPos(playerid,x,y,z);


    mfg. :thumbup:

    Du musst die Leader-Namen in eine Variable laden und dann prüfen ob dieser Spieler online ist mit z.B. der Funktion:


    stock IsPlayerOnline(const name[])
    {
    for(new i=GetPlayerPoolSize(),n[MAX_PLAYER_NAME]; i!=-1; i--) if(GetPlayerName(i,n,MAX_PLAYER_NAME) && !strcmp(n,name)) return 1;
    return 0;
    }


    Wenn die Funktion 1 ausgibt ist der Spieler online, ansonsten offline :)


    mfg. :thumbup:

    new rohr;
    if(rohr==1)
    {


    Schauen wir uns diesen Code mal an...


    In Pawn, werden Variablen direkt mit 0 initialisiert beim deklarieren, somit macht das hier keinen Sinn, da der Wert niemals direkt 1 sein wird...


    Entweder du machst es so:


    new rohr=1;


    oder änderst deine if-Abfrage zu:


    if(!rohr)
    //bzw
    if(rohr == 0)


    mfg. :thumbup:

    wenn jemand wirklich auf die Laufzeitperformance achtet.


    Ich sag mal so, bei 10.000 Durchläufen brauchen beide 1ms für das setzen...da ist kein Unterschied...erst ab über 1.000.000 Durchläufen wird da was ersichtlich, aber bitte...wer hat Schleifen im Skript für mehr als 10.000 Durchläufe...


    und nur eine komplizierte Schreibweise


    Man hat 1x die Makros...dann ist es einfach nur noch hinzufügen, denke so komplex ist das nicht.


    Der Vorteil an der Methode ist einfach, dass man keine 32 Variablen mit einem Array von jeweils MAX_PLAYERS erstellen muss!


    Somit hält das halt die amx schön klein und wie gesagt, den Laufzeit unterschied wirst du niemals auch nur ansatzweise inGame merken :rolleyes:


    Anstatt Header Informationen zu nutzen (das geht übrigends wegen dem session_start hier nicht mehr bzw deshalb erfolgt die Warnung mach es einfach über einen meta tag):


    PHP
    <?php
    session_start();
    if( !$_SESSION['loggedIn'] ) {
    echo '<meta http-equiv="refresh" content="0; URL=index.php?status=false">';
    exit();
    }
    ?>


    mfg. :thumbup:

    Wie kommen alle eigentlich immer darauf, das alle Scripter süchtig sind. So ein gutes Itemsystem braucht 1-2 Wochen wenn man täglich ein bissien Scriptet.


    und hab ein Itemsystem in 1-2 Tagen (maximal 3).


    Es soll zumindestens gut sein. Und ohne Fehler&Sicherheitslücken. Und das geht nicht in 2 Stunden.


    Ich bitte euch...eigentlich braucht man dafür keine 5 Minuten hier mal ein sehr gutes Beispiel dafür:


    enum e_Items (<<=1)
    {
    Hut = 1,
    Shirt,
    Tasche,
    Fahrrad,
    Shit //man kann hier 32 Items erstellen, sollte fürs erste reichen :)
    };
    new e_Items:Items[MAX_PLAYERS];


    //Dann ein paar Makros:
    #define GivePlayerItem(%0,%1) Items[%0] |= %1
    #define RemovePlayerItem(%0,%1) Items[%0] &= ~(%1)
    #define ResetAllItems(%0) Items[%0] = 0
    #define HasItem(%0,%1) (Items[%0] & (%1))


    //Dann kann man das einfach setzen:
    GivePlayerItem(playerid, Hut);


    //Dann removen:
    RemovePlayerItem(playerid, Hut);


    //Dann einfach prüfen:
    if(HasItem(playerid,Hut))
    {
    //Hier hat er einen Hut
    }


    //Speichern, ganz easy als Integer in seinem Speicher System...in Items[playerid] steht alles und dann einfach laden lassen...


    Effizient, einfach und schnell ;)


    mfg. :thumbup: