Beiträge von SAMP_Nutzer

    Hallo,


    ich habe eine Frage zu dini.
    Undzwar habe ich eine Datei, in die ich mit einem Befehl mehrer Dinge speicher.
    Wenn ich diesen nun zum zweiten mal ausführen und speichern möchte, updatet sich die Datei nur mit den entsprechenden neuerungen.


    Ich möchte aber eine fortlaufende Datei haben, die bei erneutem nutzen des Befehles die Neuerungen ergänzt.


    Wie mache ich das?
    Danke im Vorraus :love:

    Hallo,


    ich wüsste gerne, warum mein Befehl unten, die Variable "adresse" nicht speichern kann.
    Er soll die Eingabe speichern, welche nach /sethouse kommt... also "/sethouse eingabe"


    new adresse wird oben im script gespeichert, ist also vorhanden.





    ocmd:sethouse(playerid,params[])
    {
    new string[128];
    new string2[128];
    format(string,sizeof(string)," [%s]",adresse);
    dini_Set(HAUS_DATEI,"Adresse:",string);

    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    format(string2,sizeof(string2)," %f, %f, %f", Pos[0], Pos[1], Pos[2]);
    dini_Set(HAUS_DATEI,"Koordinaten:",string2);
    return 1;
    }

    Ne, habe ich schon probiert geht leider nicht.
    Ich habe jetzt folgendes:



    ocmd:sethouse(playerid,params[])
    {
    new Float:Pos[3];
    new string[128];
    new adresse;
    new kosten;
    new level;
    new id;
    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    format(string,sizeof(string)," [%s] -- [%f, %f, %f]",adresse, Pos[0], Pos[1], Pos[2]);
    dini_Set(HAUS_DATEI,"Adresse:",string);


    return 1;
    }



    Meine Koords werden jetzt korrekt gespeichert, allerdings noch immer nicht das, was ich nach /sellhouse (adresse) schreibe :(

    Hallo,


    ich benötige ganz dringend Hilfe bei dem unten stehenden Befehl.
    Ich komme dort einfach nicht mehr weiter.


    Ich will damit folgende Funktion erreichen "/sethouse [adresse]" und dann für die Variable adresse ein Wort speichern sowie die koordinaten vom aktuellen ort. alledings kommt bei adresse garnichts und bei der position wird nur X gespeichert, aber warum?





    ocmd:sethouse(playerid,params[])
    {
    new Float:Pos[3];
    new string[128];
    new adresse;


    format(string,sizeof(string)," [%s]",adresse);
    dini_Set(HAUS_DATEI,"Adresse:",string);

    dini_FloatSet(HAUS_DATEI,"Koordianten",GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]));
    return 1;
    }

    Hallo,


    ich bin auf der Suche nach einer Möglichkeit, im Spiel Häuser schnell zu erstellen, welche gekauft und verkauft werden können.
    Zudem kann jeder User diese Häuser mieten und die Miete Kündigen.


    Dazu ist jetzt meine Frage, wie gehe ich das am besten an und wie kann ich dafür sorgen, dass der User, wenn er das Haus kauf oder Mietet auch dort spawnt?

    Ja, das hilft mir schon ein bisschen Weiter....
    Ich spiele da mal ein wenig mit rum und meld mich sobald wieder :D








    Edit:


    Das hat soweit alls funktioniert, jetzt habe ich versucht das ganze mit einem /s Chat zu machen aber ich komme einfach mit den Strings nicht zurecht, kann mir da jemand evtl erklären, wie ich bestimmte Dinge aus einem "Befehl" auslesen kann? Wie sage ich Ihm, dass er im Beispiel unten nur den Bunten teil auslesen soll?


    /s hallo

    Hallo,


    ich benötige Hilfestellung bei der Erstellung eines reallife mäßigen Chat's.


    Ich stelle mir das ganze so vor:


    Ein User schreibt etwas ganz normale ohne CMD: User sagt: Hallo. Radius 10
    Ein User schreibt /s [TEXT]: User schreit: Hallo! Radius 20
    Ein User schreibt /w [ID] [Text] User flüster zu User²






    Zudem wäre es ganz schön, wenn mir jemand mal erklärt, wie ich nach einem CMD den eingegebenen Text verarbeiten kann. Z.b. User tippt /s [TEXT] wie kann ich den Text "abgreifen".
    Eine Erklärung zu Strings wäre ganz schön, Wiki habe ich schon gelesen.


    Vielen Dank im Vorraus!
    P.S. Suchfunktion wurde benutzt, dennoch nicht genaue Antworten auf meine Frage.

    Ansatzweise alles korrekt. Aber hier der Lösungsvorschlag:


    Einen neuen Bool erstellen

    Zitat

    new bool:tot[MAX_PLAYERS];

    Neuen Public

    Zitat

    forward KrankenhausTimer(playerid);

    Dann unter OnPlayerDeath


    Public KrankenhuasTimer


    Dann ganz wichtig unter OnPlayerSpawn


    Zitat

    if(tot[playerid] == true)
    {
    SetPlayerPos(playerid,1162.871704, -1339.109619, 14.297291); //Coords, wo er nach dem Krankenhaus spawnen soll
    tot[playerid] = false;//bool:tot auf 0 bzw false setzten, damit der ganze mist beim nächsten tot wieder klappt
    }

    Hallo,


    ich verzweifel solangsam an meinem bestehenden System.
    Undzwar möchte ich die Skinauswahl nur nach dem Registrieren anzeigen lassen. Das ganze ist nun so, dass beim Regi in die User Datei der Skin 800 gespeichert wird. Diesen gibt es natürlich nicht, diehnt auch nur der If Abfrage. Jedenfalls soll das so sein, dass die Skinauswahl mit Skin 800 angezeigt werden soll und bei allen anderen sofort mit dem ausgewählten Skin gespawnt.


    public OnPlayerRequestClass(playerid, classid)
    {
    new Account[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Account, sizeof(Account),"/Accounts/%s.txt",name);
    if(dini_Int(Account,"Skin") == 800)
    {
    SetPlayerPos(playerid, 303.4827,-1624.9719,114.4219);
    SetPlayerFacingAngle(playerid, 44.3145);
    SetPlayerCameraPos(playerid, 298.5444,-1619.9141,114.4163);
    SetPlayerCameraLookAt(playerid, 303.4827,-1624.9719,114.4219);
    }
    SpawnPlayer(playerid);
    return 1;
    }


    So habe ich mir das gedacht, man merkt auch, dass er versucht etwas zu verarbeiten weil er die Skinauswahl nicht mehr zeigt nach dem zweiten Connecten. Allerdings habe ich dann zusätzlich zu meinem Startschirm noch immer den Button zum Skin auswählen oder Spawnen. Wenn ich nun auf Spawnen klicke, macht er auch mit dem Skin den ich ausgesucht habe das was gefordert ist...
    aber genau dies möchte ich umgehen - nach dem Login soll er sofort spawnen.
    Der Skin wird auch vergeben.



    Bitte um Hilfe :love: