Beiträge von Kasakow


    Pawn wäre nett wenn du mich einmal ganz in MySQL einweisen würdest
    Wie gesagt bin da noch Anfänger ;)


    Wenn du Bock hast sende mir doch deine Skype-Daten per PN oder Ts3 Daten


    L.G.
    heyho :)


    ich arbeite zwar mehr mit dini aber mit mysql kenn ich mich auch aus send mir deine daten und ich adde dich später

    new roller[zahl];


    roller[0] = funktion


    onplayerentervehicle(das public)


    for(new j = 0;j<MAX_VEHICLES, j++)
    {
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    if(vehicleid == roller[j]return SetPlayerPos(x,y,z+5); // slapt den spieler
    }



    hast du auch new array gemacht


    also


    new arryname[MAX_PLAYERS];


    daher kommt nähmlich der error

    //Timeban
    command(timeban, playerid, params[])
    {
    new string[128], reason[105], id, zeit;
    //Loggen
    new year, month, day;
    new hour,minute,second;
    getdate(year,month,day);
    gettime(hour,minute,second);
    if(sStats[playerid][pAdminlevel] < 2)
    return SendClientMessage(playerid, Rot, "Du bist kein Administrator oder dein Administratorenlevel ist zu niedrig!");
    if(GetPVarInt(playerid, "Adminduty") == 0)
    return SendClientMessage(playerid, Rot, "Du musst erst als Admin im Einsatz sein um andere Leute bannen zu können!");
    if(sscanf(params, "uds", id,zeit, reason))
    {
    SendClientMessage(playerid, Weiß, "Befehl: /timeban [Name/ID] [Zeit] [Grund]");
    SendClientMessage(playerid, Gelb, "Zeitangabe in Minuten.");
    return 1;
    }
    if(sStats[playerid][pAdminlevel] < 3 && zeit > 180)
    return SendClientMessage(playerid,Rot,"Du kannst den Spieler nur für max. 180 Minuten bannen!");
    if(id == playerid)
    return SendClientMessage(playerid,Rot,"Du kannst dich nicht selber bannen!");
    if(IsPlayerNPC(id))
    return SendClientMessage(playerid,Rot,"Du kannst keinen NPC/Bot bannen!");
    if(id == INVALID_PLAYER_ID)
    return SendClientMessage(playerid,Rot,"Dieser Spieler existiert nicht!");
    if(sStats[playerid][pAdminlevel] < sStats[id][pAdminlevel])
    return SendClientMessage(playerid, Rot, "Du kannst keinen Administrator bannen, welcher ein höheres Administratorenlevel hat wie du!");


    format(string, sizeof(string), "* Du wurdest vom Administrator %s für %d Minuten vom Server gebannt. Grund: %s", GetName(playerid),zeit, reason);
    SendClientMessage(id, Rot, string);
    format(string, sizeof(string), "* Spieler %s[%d] wurde vom Administrator %s für %d Minuten gebannt. Grund: %s", GetName(id),id, GetName(playerid),zeit, reason);
    SendClientMessageToAll(Rot, string);
    format(string,sizeof(string),"(%d/%d/%d) [%d:%d:%d] %s wurde vom Administrator %s fuer %d Minuten gebannt. Grund: %s",day,month,year,hour,minute,second,GetName(id),GetName(playerid),zeit,reason);
    BanLog(string);
    TogglePlayerControllable(id, false);
    sStats[id][pTimeBan] = gettime()+(60*zeit);
    SpielerSpeichern(id);
    SetTimerEx("KickTimer",1000,false,"i",id);
    return 1;
    }


    bei spielerladen:


    //Timeban
    if(gettime()<sStats[playerid][pTimeBan] && sStats[playerid][pTimeBan] > 0)
    {
    new days,hours,mins,string[800];
    new wartezeit = sStats[playerid][pTimeBan];
    new restzeit= wartezeit -gettime();
    days = floatround(restzeit / 86400,floatround_floor);
    hours = restzeit - (days * 86400);
    hours = floatround(hours / 3600,floatround_floor);
    mins = restzeit - ( (days * 86400) + (hours * 3600) );
    mins = floatround(mins / 60,floatround_floor);
    format(string, sizeof(string), "Du bist noch für %d Stunden und %d mins.",hours,mins);
    SendClientMessage(playerid, Rot,string);
    TogglePlayerControllable(playerid, false);
    SpielerSpeichern(playerid);
    SetTimerEx("KickTimer",1000,false,"i",playerid);
    return 1;
    }
    else
    {
    sStats[playerid][pTimeBan] = 0;
    }

    [quote='Grek','index.php?page=Thread&postID=1687440#post1687440']Wäre es nicht einfacher für Commands ohne parameter den public OnPlayerCommandText zu verwenden?
    dafür ist der doch schließlich da.[/quote]



    Öhm das würde ja auch gehen


    aber ocmd ist die beste cariante zcmd und ocmd deswefgeb lohnt es sich mehr


    ocmd:command(playerid)


    oder ocmd:command(playerid,params[])
    {
    #pragma unused pragma zu machen
    }

    so viele string zu verwenden führt zu laggs


    mach es so


    new query[1048];
    format(query,1048,"UPDATE .sqlname SET Level = `%s`, Where Name = `%s`,....);
    mysql_query(query);

    nativechecker und Crahdetect auf dem Server installieren, dann weisst du mehr, aber ich denke, das der Stremer und die Include nicht zusammen passen, einfach beides mal updaten.



    NativeChecker sagt dir auch, wenn eine Datei im ScriptfilesOrdner fehlt.
    Crashdetect sagt dir bei einem Servercrash woran es lag.



    er hat doch nativechecker drinne -.- ??



    genau brauchst da keine mach es weg oder oben hin beim command #pragma unused params

    Herbet hat ja schon teilweise erklärt was params


    sind


    PARAMS = parameter


    parameter ist tzusagen inhalt


    parameter werden heutzutage sehr oft benutzt


    ocmd:hallo(playerid,params[])
    {
    //Hier braucht meine keine params


    //Man kann es wegmachen oder #pragma unused pragma
    }


    SetTimerEx("name",time,bool,"i",id); i = der int param


    i = id


    u = id or namer


    s=text


    f=float


    d=dezi


    Hoffe konnte mal genauer drauf eingehen


    MFG


    PAWN