Beiträge von Dario

    Hallo


    Wie bekomme ich heraus, wo sich ein Spieler befindet (LS/SF/LV). Also sowas wie IsPlayerInRangeOfPoint(...);


    2. Frage:


    public SendFamilyMessage(color, string[])
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(SpielerInfo[i][pFraktion] !=0)
    {
    SendClientMessage(i, color, string);
    }
    }
    }
    }
    Was ist an diesem Code verkehrt. Fehler kommt inGame, da alle die Meldung (außer Zivis) bekommen, wenn einer /f [Text] eingibt.


    Gruß Dario

    Da musste in den Code von magnussoft ein MoveObject einfügen. dabei dann die Objekt-ID einfügen und wohin du es es verschieben willst (x, Y, Z-Koordinate). Das gleiche dann bei Pd2.


    Gruß Dario

    naja pName ist ist hier mit drin:
    enum SpielerDaten
    {
    pName[MAX_PLAYER_NAME],
    pLevel,
    pGeld,
    pKills,
    pTode,
    Float:pHealth,
    pAdminLevel,
    pFraktion,
    pRang,
    pJob,
    pBan,
    pBanAdmin[128],
    pBanGrund[128],
    pPlayedTime,
    pPayDay,
    pMute,
    pWarn,
    }
    new SpielerInfo[MAX_PLAYERS][SpielerDaten];


    Wenn ich da den Spielernamen am besten nochmal den Spielnamen hole, geht dass dann so:
    new a = SpielerInfo[player][pName]
    if(mysql_GetInt("userdata", "Fraktion", "Name", a) == 1)

    Bevor du den Befehl machst /f machst, musst du die if-Abfrage machen. In deinem Quelltext seh ich nirgends, wann ein Spieler /f macht, was passiert.


    Ich würde es so machen:


    Das hier ganz unten rein:
    public SendFamilyMessage(color, string[])
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(SpielerInfo[i][pFraktion] !=0)
    {
    SendClientMessage(i, color, string);
    }
    }
    }
    }


    und irgendwo im Script:
    ocmd:f(playerid,params[])
    {
    new string[128], pID;
    new fraktion1 = mysql_GetInt("userdata", "Fraktion", "Name", SpielerInfo[pID][pName]);
    new fraktion2 = mysql_GetInt("userdata", "Fraktion", "Name", SpielerInfo[playerid][pName]);
    if(fraktion1 == fraktion2)
    {
    if(sscanf(params,"s",string))return SendClientMessage(playerid,farbe_blau,"/f [Text]");
    format(string,sizeof(string),"%s %s: %s", FraktionsRang(playerid),SpielerInfo[playerid][pName], string);
    SendFamilyMessage(COLOR_FCHAT,string);
    }
    return 1;
    }
    Musst bloß mal gucken, ob du mysql benutzt.


    Gruß Dario

    Hallo


    Ich habe ein Problem mit einem Filterscript, welches ich selber geschrieben habe. Ich wollte es jetzt mit der server.cfg-Datei einfügen. Das ging alles auch gut.
    Mein Problem jetzt ist:
    if(mysql_GetInt("userdata", "Fraktion", "Name", SpielerInfo[playerid][pName]) == 1)
    Das Filterscript verbindet sich zwar mit der Tabelle "userdata" und sucht dort auch die Fraktion, allerdings fügt er keinen Spielernamen (playerid) ein, mit der er suchen soll.
    Auszug aus der mysql_log:

    Code
    CMySQLHandler::Query(SELECT Fraktion FROM userdata WHERE Name = ' ') - Successfully executed.



    Wie kann ich das jetzt ändern, dass der meine playerid erkennt?


    Gruß Dario

    Ok geht, War ein Fehler von mir im Script, habe FraktionsRang(playerid) im Script noch als integer definiert, obwohl es ja jetzt ein String ist.


    Danke an alle die geholfen haben.


    Gruß Dario

    laut /stats Befehl bin ich in der Fraktion 1 (bei mir FBI) und habe den Rang 0 ("New Agent" zum Test erstamal so genannt).


    Gruß Dario


    /Edit:

    Für einen Rangnamen braucht man keine 256, das ist Verschwendung. Nimm 32, das dürfte locker reichen.

    32 reichen nicht muss 64 nehmen, da ich einen Rang habe, der 33 Zeichen lang ist.

    Ok hab jetzt mal FraktionsRang(playerid) genommen.


    Allerdings kommt da jetzt eine 70 als Rang InGame, anstatt der Fraktionsname, den ich eingefügt habe.


    Gruß Dario

    Das Problem ist nur, wenn ich dann irgend wo im Script dann frn schreibe, steht dann als Fehler, dass er frn nicht kennt.


    Gruß Dario

    Hallo


    Ich brauche noch einmal Hilfe.


    Und zwar habe ich das Problem, dass ich die Rangnamen jeder Fraktion einfügen möchte. Allerdings weiß ich nicht, wie ich das machen kann. Es wird ja nicht so gehen, wie bei den Fraktionen, die ich über #defines definiert habe. Es sollen ja für alle Fraktionen eigene Rangnamen erscheinen dann. Wie kann ich das lösen?


    Gruß Dario

    Hallo


    Frage: Wie kann man das machen, dass ein User HP automatisch HP verliert. Als Fahrer aber beispielsweise mehr als als Beifahrer? Beim Laufen dann genauso viel wie beim Fahren.


    Gruß Dario

    Hallo


    Ich hab jetzt das Filterscript gl_realtime eingefügt. Allerdings würde ich jetzt noch ein Datum unter die Uhrzeit haben wollen bzw. die Uhrzeit eins tiefer und obendrüber dann das Datum. Wie kann ich das scripten mit dem Datum?


    Gruß Dario