[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Beitrag von James.Spader ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.

  • ocmd:unban(playerid,params[])
    {
    if(SpielerInfo[playerid][pAlevel] >= 1)
    {
    new pID,string[256],aname[MAX_PLAYERS],unbanname[MAX_PLAYER_NAME],query[256];
    GetPlayerName(playerid,aname,sizeof(aname));
    if(sscanf(params,"s[24]",unbanname)) return SendClientMessage(playerid,0xFF0000FF,"[FEHLER]{FFFFFF} /UnBan [Name]");
    /*if(mysql_GetInt("spielertimebanned", "Banned", "Name", unbanname) == 1)
    {
    format(query,sizeof(query),"DELETE FROM user WHERE `Name`='%s'",unbanname);
    mysql_query(query);
    format(string,sizeof(string),"[A-INFO]{FFFFFF} Der Timeban von %s wurde von %s vollständig gelöscht(TimeBan-Entfernt)!",unbanname,aname);
    SendAdminMessage(0xFF0000FF,string);
    }*/
    if(mysql_GetInt("user", "Banned", "Name", unbanname) == 1)
    {
    format(query, sizeof(query), "INSERT INTO `user` (`Banned`) VALUES (0)",SpielerInfo[pID][pBanned]);
    mysql_query(query);
    format(string,sizeof(string),"[A-INFO]{FFFFFF} %s hat den Ban von %s vollständig gelöscht!(Ban-Entfernt)",unbanname,aname);
    SendAdminMessage(0xFF0000FF,string);
    }
    else if(SpielerInfo[pID][pBanned] == 0 || mysql_CheckTBanAccount(pID) == 0)
    {
    SendClientMessage(playerid,0xFF0000FF,"[FEHLER] {FFFFFF}Dieser Spieler wurde nicht gebannt!");
    }
    }

    return 1;
    }


    Habe zwar geschafft dass erkannt beim Banned aber es wird eine neue spalte hinzugefügt?

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Okay, und wie wär dass mit den Timeban? Das der Timeban entfertn wird?


    /*if(mysql_GetInt("spielertimebanned", "???", "Name", unbanname) == 1)
    {
    format(query,sizeof(query),"DELETE FROM user WHERE `Name`='%s'",unbanname);
    mysql_query(query);
    format(string,sizeof(string),"[A-INFO]{FFFFFF} Der Timeban von %s wurde von %s vollständig gelöscht(TimeBan-Entfernt)!",unbanname,aname);
    SendAdminMessage(0xFF0000FF,string);
    }*/

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Moin,



    kleine Frage, ich suche ein Rundes Object sowas wie ein Kreis worin ich einen Player setzen kann, das Object sollte einseitig textturiert sein.
    Sodass ausenstehend das Objekt nicht sehen.
    Ich glaub es gab mal eine Rampe oder so? Bitte die ID nennen wäre nett.


    L.G.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen

  • Jeffry:


    Kannst du mir da weiter helfen ?

  • Solche Fragen gehören eigentlich in einen eigenen Thread, da das keine "kleine Frage" ist (so viel Code macht diesen Thread sehr unübersichtlich, vor allem wenn es nicht gleich klappt).



    Ich erkläre dir mal wie du vorgehen musst:
    Du erstellst global unter den Includes folgende Variable:
    new Float:totenKopfPos[MAX_PLAYERS][3];


    Beim Erstellen des Totenkopfs speicherst du dann x in totenKopfPos[playerid][0], y in [1] und z in [2].


    Beim /wiederbeleben dann in das IsPlayerInRangeOfPoint die totenKopfPos[i][0] bis 3 packen.


    Wenn du Fragen hast, kannst du natürlich gerne nachfragen.

  • ocmd:unban(playerid,params[])
    {
    new name[50],string[128],pID;
    if(SpielerInfo[playerid][pAdminlevel] < 3) return SendClientMessage(playerid,Rot,"M�glich ab: "COLO" Adminrank 3");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Rot,"Keiner ist Verbunden mit dieser ID!");
    if(sscanf(params,"s[50]",name))return SendClientMessage(playerid,Rot,""COLO"Verwendung: "COLR"/unban [Name]");
    mysql_SetInt(Tabelle_Spieler,"Ban",0,"Name",GetName(pID));
    format(string,sizeof(string),"Du hast den Spieler %s ungebannt!",GetName(pID));
    SendClientMessage(playerid,Rot,string);
    return 1;
    }
    Ist das so richtig?

  • Ein Spieler der gebannt ist kann ja schlecht online sein.
    Also so:
    ocmd:unban(playerid,params[])
    {
    new name[50],string[128];
    if(SpielerInfo[playerid][pAdminlevel] < 3) return SendClientMessage(playerid,Rot,"Möglich ab: "COLO" Adminrank 3");
    if(sscanf(params,"s[50]",name))return SendClientMessage(playerid,Rot,""COLO"Verwendung: "COLR"/unban [Name]");
    mysql_SetInt(Tabelle_Spieler,"Ban",0,"Name",name);
    format(string,sizeof(string),"Du hast den Spieler %s ungebannt!",name);
    SendClientMessage(playerid,Rot,string);
    return 1;
    }


  • Je nach dem wie deine Spalte für den Timeban heißt.
    format(query,sizeof(query),"UPDATE user SET TimeBanned = 0 WHERE Name='%s'",unbanname);

    Bei mir ist aber eine ganze Datenbank , nicht unter User.. sonder hat seine eigene... das soll dann einfach gelöscht werden, ich weiß nur nicht wie ich drauf zugreifen kann..

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Beitrag von [PeL]Smiley ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Ich weiß jetzt leider auch nicht was du brauchst genau.. ich sag es dir mal:


    Spieler wird Time-Banend, und dann wird auch in der Hauptdatenbank unter SPIELERTIMEBANNED eine neue spalte erstellt was special dafür ist.


    und wenn die Zeit abgelaufen ist, wird auch ganz normal die spalte mit dem Spieler gelöscht, das ist alles schon fertig... beim /unban befehl soll halt nur abgefragt werden ob eine spalte exestiert unter diesen Namen. wenn ja soll die Spalte gelöscht werden, wenn nein dann soll nichts passieren.


    Könntest du evlt. ein Beispiel geben wie man sowas aufbaut?

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Du hast es mir mal erstellt:



    stock LoadTBanAccount(playerid)
    {
    new query[256],spieler[MAX_PLAYERS];
    GetPlayerName(playerid, spieler, MAX_PLAYER_NAME);
    format(query, sizeof(query), "SELECT banID FROM spielertimebanned WHERE Name = '%s' AND Dauer < %d", spieler, gettime());
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows())
    {
    format(query, sizeof(query), "DELETE FROM spielertimebanned WHERE banID = %d", mysql_fetch_int());
    mysql_query(query);
    }
    else
    {
    mysql_free_result();
    format(query, sizeof(query), "SELECT Dauer FROM spielertimebanned WHERE Name = '%s' AND Dauer >= %d",spieler, gettime());
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows())
    {
    new dauer = mysql_fetch_int() - gettime();
    new minuten = dauer / 60;
    new str[145];
    format(str, sizeof(str), "[INFO] {FFFFFF}Du bist noch {00FF00}%d Minuten {FFFFFF}gebannt!", minuten);
    SendClientMessage(playerid, 0xFF0000FF, str);
    Kick(playerid);
    }
    }
    mysql_free_result();
    return true;
    }

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen