Beiträge von IPrototypeI

    klar geht das nicht was du machst schau deine Parameter von dem Textdraw an und die von
    TextDrawHideForAll



    und jetzt nochmal extra für dich


    1. erstellen
    2. anzeigen für den Spieler
    3. verstecken für den Spieler
    4. Beim Disconnect zerstören


    bei deinem logo
    1. erstellen
    2. Anzeigen lassen nur für den Spieler
    3. verstecken für den Spieler


    und den Fehler wird bestimmt daher kommen das du bei deinem Logo wie du ja schon gesagt hattest
    TextDrawShowForAll benutzt wird

    Was du dazu brauchst wäre erstmal den client und das dazu gehörige plugin
    um gewissen prozesse zu überprüfen beziehungsweise daten austauschen.
    und allgemein von samp aus dazu würde mir spontan was mit MySql einfallen um dort durch das anschalten des clienten eine variabel auf 1 gesetzt wird und beim ausschalten
    auf 0 dies könnte man dann auch wieder abfragen.


    Naja ich denk es wird bestimmt noch weiteres lösungen geben wie man sowas machen könnte dazu sollte man sich auch erstmal mit c++
    auseinandersetzen.



    //edit


    hier ein kleiner link achte dabei auf das was momo schreibt


    Seit wann ist trollbeit und racksamp public Oo

    Das ist mir schon klar.


    Also ich hab dich auch etwas gefragt da mir das hier zu wenig informationen sind um dir noch eine gescheite Erklärung zu schreiben
    warum das Falsch ist was du gemacht hast und warum man dies nutzen soll.



    Aber da ich selbst gerade zu viel zu tun habe und du eine Erklärung forderst werde ich diese nun für dich aufschreiben:


    Zum Thema Textdraw an sich zum Anzeigen lassen:


    Um eine Textdraw anzeigen zu lassen für einen Spieler oder eine bestimmten Gruppe ist es nötig TextdrawShowForPlayer zu verwenden um es
    einer Spielerid anzuzeigen oder einer bestimmten Gruppe mit Hilfe eines Loops, welcher von 0 bis zu der definierten Zahl der Maximalen Spieler geht.
    http://wiki.sa-mp.com/wiki/TextDrawShowForPlayer


    Was davor wichtig ist, ist der Punkt das dieses Textdraw davor erstmal erstellen sollte, sei es über OnPlayerConnect was sich anbietet für Textdraws derren Inhalt individuel
    verändert wird oder über OnGameModeInit sollte sich das Textdraw nicht verändern , wie Beispielsweise für Logos oder Boxen.
    Der Unterschied zwischen TextDrawShowForPlayer und TextDrawShowForAll ist das im zweiten Fall http://wiki.sa-mp.com/wiki/TextDrawShowForAll
    das Textdraw für jeden angezeigt wird im gegensatz zu unserem ersten Fall nur für die Spielerid.


    Um das gewünschte Textdraw wieder zu verstecken gibt es die Funktion TextDrawHideForPlayer , hier wieder für die Spielerid und TextDrawHideForAll
    um damit zu bewerkstelligen ,dass dieses Textdraw nicht weiter umgewünscht angezeigt wird.
    http://wiki.sa-mp.com/wiki/TextDrawHideForPlayer
    http://wiki.sa-mp.com/wiki/TextDrawHideForAll
    Dazu wäre noch zu beachten das , dass jeweilige textdraw nicht beim Disconnect eines Spielers nicht zerstört wird und somit weiter neu erstellt wird bei OnPlayerConnect.


    Was bei PlayerTextDrawCreate jedoch anders ist und automatisch beim disconnect zerstört wird.
    http://wiki.sa-mp.com/wiki/CreatePlayerTextDraw



    Eine andere möglichkeit für

    Wieso als Gametext, wenn ich es als Textdraw haben will/möchte ô.O


    Screen:



    Woran kann es liegen, das bei meinem Freund auf seinem Root, das Script Spinnt? zB keine Tore gehen auf etc? liegt es am Server?


    @ Johan ich gehe mal davon aus es liegt daran das du das r und das w groß hast probier es mal so zum Beispiel ~r~
    es könnte daran liegen habs jedoch noch nie groß probiert und es ging bei mir immer.


    @ Kazutu merk dir dies mal du kannst bei spieler variabeln auch alles addieren dies ist natürlich auch möglich beispiel

    SetPVarInt(playerid, "Exp", GetPVarInt(playerid, "Exp") + 250);


    ich glaube sogar ich hab dir das auch geschrieben in dem einen post als beispiel ?


    @ Zyankali
    wie schon sonic bereits es geschrieben hat ist es die größe bei dem ersten beispiel ist es die größe von 100 von 100 zeichen das können so
    auch 100 variabeln als auch wie schon genannt ein string sein von zeichen.
    und bei MAX_PLAYER_NAME ist es der Maximale wert von den verwendeten Zeichen für den Namen dies kannst du im wiki nach schauen bei limits.


    @Sommerferien


    Auf deine Frage kann ich nicht genau antworten gehen nur die ganzen Tore nicht oder allgemein alle commands nicht mehr gehen sie jedoch auf dem homeserver
    könntest du vllt noch mehr Probleme auflisten welche entsehen wie beispiel keine Pickups und Objekte mehr weil sowas kann davon kommen wenn limit übergangen werden
    und sagt vllt die Serverlog was aus ?( bitte mehr Informationen )

    dazu hast du zwei möglichkeiten entweder du fragst immer erneut ab mit IsPlayerInRangeOfPoint oder du setzt deine tore in ein array
    und lässt dann die tore mit hilfe eines loops durch laufen und dazu hin solltest du wie oben das ganze auch abfragen ob der Spieler in der nähe
    des Punktes befindet , wenn ja dann lässt du das Tor mit MoveObject oder moveDynamicObject zu dem Punkt hin bewegen.


    new bool:no;
    for(new i=0;i<sizeof(mediccar);i++){
    if(IsPlayerInVehicle(playerid,mediccar[i])){
    no=false;
    break;
    }
    else no=true;
    }
    if(no) return SendClientMessage(playerid,0xA0A0A0FF,"Du befindest dich nicht in einem Medicfahrzeug!");


    viel zu erklären gibt es dazu nicht nur das so die schleife nicht unterbrochen wird.
    Es wird die ganzen Mediccars durchgehen und wenn der spieler in einem ist wird die schleife abgebrochen und der wert bleibt
    false beziehungsweise 0 falls dieser Fall nicht eintreten sollte so bleibt der wert dann durch das else auf true und
    wird zum schluss wenn no true sein sollte die Nachricht ausgegeben.

    Naja das kann man nicht wirklich erklären, es ist ja auch nix anderes als beim speichern von account daten daher kannst es entweder so machen
    wie im Tutorial von maddin oder mit sscanf, da du den wert so wieso beim auslesen einer variabel zuordnest .

    Wie kann ich machen das bei /respawncars NUR die unbenutzten Fahrzeuge (Das heißt Kein Fahrer/Beifahrer drin) respawnt werden?

    du musst dazu überprüfen ob jemand in dem auto sitzt


    new bool:besetzt[MAX_VEHICLES];
    for(new slots = GetMaxPlayers(), i; i < slots; i++){
    if(IsPlayerConnected(i)){
    if(IsPlayerInAnyVehicle(i)) { besetzt[GetPlayerVehicleID(i)]=true; }
    }
    }
    for(new i; i < MAX_VEHICLES; i++){
    if(!besetzt[i]) { SetVehicleToRespawn(i); }
    }


    wenn ja dann wird daraus true wenn nicht dann halt eben false und so kann man das dann auch abfragen bei der zweiten forschleife ob das auto besetzt ist oder
    nicht wenn ja also ist die variabel besetzt auf false und das auto wird zurück respawnt