Beiträge von [My]Kevin

    Viel zu Recourssenfressend, jedes mal wenn man etwas mit Häusern macht >>> Datein Auslesen x 100,
    und das den auch noch mit "Dini" ...
    Zwar nett gemacht, aber eine einzelne Datei würde es auch tun, hinzu fehlen features wie Heal \ Armor \ Safebox ect.


    Punkte: 6 / 10 aber auch nur weil es umsonst ist.


    MfG Kevin

    Laptop oder Desktop-Computer?
    Wie alt?
    Wird der Computer zu heiß? Fühlen pls!


    Wenn Laptop:


    Wird der Lüfter immer lauter?
    ZoneAlarm installiert?
    Die System Disk gelöscht? (nicht C: oder Windows oder so, sondern die bei Laptops vorgefertigte Partition)
    AntiVir?


    Ansonsten mal Hardware üpberprüfen.

    Bisher habe ich alle dinge die für Personen gescriptet habe komplett eingerichtet oder in den Gamemode geschrieben, bevor die Personen gezahlt haben, habe ich denen die AMX zukommen lassen, um das ganze zu testen. Ob man es den haben möchte bleibt einem selbst überlassen.


    MfG Kevin

    Gangfight oder auch Gangwar genannt, können hier nur sehr wenige, deshalb wirst du es auch nicht umsonst bekommen, dass Gangautohaus gehört auch dazu ...
    Am besten ist ein LoH.
    Begib dich zum Markplatz hier im forum, dort kannst du gegen Geld Gangwar/Gangfight Scripts erhalten.


    MfG Kevin

    enum tbSyS
    {//Oben mit zu deinen enums!
    tbName[MAX_PLAYER_NAME],
    tbIp[16],
    tbMinutes
    };
    new TimebanInfo[100][tbSyS];
    stock LoadTempBans()//In den OnGameModeInit
    {
    new File:tbFile=fopen("tempbans.cfg",io_read),Content[64],tb;
    while(fread(tbFile,Content) && tb < sizeof(TimebanInfo))
    {
    StripNewLine(Content);
    sscanf(Content,"ssd",TimebanInfo[tb][tbName],TimebanInfo[tb][tbIp],TimebanInfo[tb][tbMinutes]);
    if(TimebanInfo[tb][tbMinutes])
    tb++;
    }
    fclose(tbFile);
    return 1;
    }
    stock SaveTempBans()//In den OnGameModeExit
    {
    new File:tbFile=fopen("tempbans.cfg",io_write),Content[64];
    for(new tb;tb<sizeof(TimebanInfo);tb++)
    {
    if(TimebanInfo[tb][tbMinutes])
    {
    format(Content,sizeof(Content),"%s %s %d\r\n",TimebanInfo[tb][tbName],TimebanInfo[tb][tbIp],TimebanInfo[tb][tbMinutes]);
    fwrite(tbFile,Content);
    }
    }
    fclose(tbFile);
    return 1;
    }
    stock IsPlayerBanned(playerid)//Am Besten beim erfolgreichen Login anwenden.
    {
    new tbPlayerName[MAX_PLAYER_NAME],tbPlayerIp[16];
    GetPlayerName(playerid,tbPlayerName,MAX_PLAYER_NAME);
    GetPlayerIp(playerid,tbPlayerIp,16);
    for(new tb;tb<sizeof(TimebanInfo);tb++)
    {
    if(TimebanInfo[tb][tbMinutes])
    {
    if(!strcmp(TimebanbanInfo[tb][tbIp],tbPlayerIp,false) || !strcmp(TimebanInfo[tb][tbName],tbPlayerName,false))
    {
    TimebanInfo[tb][tbIp] = tbPlayerIp;
    Ban(playerid);
    return 1;
    }
    }
    }
    return 0;
    }
    stock TimebanPlayer(playerid,minutes)//Die Funktion in deinem Befehl anwenden.
    {
    for(new tb;tb<sizeof(TimebanInfo);tb++)
    {
    if(!TimebanInfo[tb][tbMinutes])
    {
    GetPlayerName(playerid,TimebanInfo[tb][tbName],MAX_PLAYER_NAME);
    GetPlayerIp(playerid,TimebanInfo[tb][tbIp],16);
    TimebanInfo[tb][tbMinutes] = minutes;
    Ban(playerid);
    return 1;
    }
    }
    return 0;
    }
    stock RemoveTimeban(const By[])//Benutzen beim entbannen: Ip-Adresse oder Name!
    {
    if(strlen(By) >= 3)
    {
    for(new tb;tb<sizeof(TimebanInfo);tb++)
    {
    if(TimebanInfo[tb][tbMinutes])
    {
    if(!strcmp(TimebanbanInfo[tb][tbIp],By,true) || !strcmp(TimebanInfo[tb][tbName],By,true))
    {
    new tbCommand[64];
    format(tbCommand,sizeof(tbCommand),"unbanip %s",TimebanbanInfo[tb][tbIp]);
    SendRconCommand(tbCommand);
    SendRconCommand("reloadbans");
    TimebanInfo[tb][tbMinutes] = 0;
    return 1;
    }
    }
    }
    }
    return 0;
    }
    stock TimebanTime()//Muss in einen Minuten timer heißt 60000 MS <<< sonst läuft die Zeit nicht ab!
    {
    for(new tb;tb<sizeof(TimebanInfo);tb++)
    {
    if(TimebanInfo[tb][tbMinutes])
    {
    TimebanInfo[tb][tbMinutes]--;
    if(!TimebanInfo[tb][tbMinutes])
    {
    new tbCommand[64];
    format(tbCommand,sizeof(tbCommand),"unbanip %s",TimebanbanInfo[tb][tbIp]);
    SendRconCommand(tbCommand);
    SendRconCommand("reloadbans");
    }
    }
    }
    return 1;
    }
    Weiß jetzt nicht ob das Funktioniert, hab das jetzt nicht getestet ... den Befehl musste selber schreiben.
    Falls irgendwas fehlt, naja sags einfach :P


    MfG Kevin

    EDIT: oO 2x Fehler entdeckt.

    format(CarInfo[i][Besitzer],MAX_PLAYER_NAME,dini_Get(string,"Besitzer"));
    format(CarInfo[i][Kennzeichen,30,dini_Get(string,"Kennzeichen"));


    Oder du setzt die Größe von den Arrays auf 255.


    MfG Kevin

    Dann musste abfragen ob es ein Gangfightkill war...


    Die GangZone's bringst du zum blinken mit:

    GangZoneShowForPlayer(playerid,FARB_CODE);//Hier muss der Farbcode hin, in der die Zone zu sehen sein soll!
    GangZoneFlashForPlayer(playerid,FARB_CODE);//Hier muss der Farbcode hin, in der die Zone blinken soll! Muss anders sein als oben :D


    Ansonsten wäre ein wenig code nicht schlecht ...
    Alles was mit Gangfight zu tun hat von:
    public OnPlayerDeath(playerid, killerid, reason)
    {
    //<<<
    return 1;
    }
    Das blinken musst du unter den Angriffsbefehl setzten....

    Asmiiir,


    schreib mir ne PN mit den Teamviewer daten von dir ...
    Ich mach es dir ebend, du hast warscheinlich die Funktionen vergessen die das Script benötigt.


    MfG Kevin