Beiträge von 4#Future

    Der vorsorgliche Einbau für solche Zwecke
    sind absoluter Schwachsinn!


    Bei einem nicht ausgelasteten Netzteil, können einzelne
    CPUs Probleme mit der Strongversorgung haben.


    OHNE eine Diskussion hervorzurufen:


    Wer es nicht glaubt, der frage einen Computer Service!


    Abgesehen davon, wieso sollte ein so startkes Netzteil
    förderlich, wenn es nicht gebraucht wird? Ist Euch die Stromrechung bewusst?



    [ NACHTRAG ]


    Wie in der PN bereits beantwortet, dient der Lüfter nach innen nur dazu,
    die warmen Luftmassen aus dem PC zu saugen und ihn somit zu kühlen.


    Deswegen geht am Netzteil selbst, noch ein kleinerer Lüfter nach hinten hinaus...

    Laut StrickenKids Deklaration verwendest Du die Funktion wie folgt:


    new Float:sqlFloat;


    sqlFloat = mysql_fetch_float();
    Sollte das nicht funktionen oder der Fehler kommen,
    dass keine Argumente gegeben sind, musst Du mal im
    englischen Forum nach seinem Beitrag schauen.


    Wo möglich hat er es dort besser erklärt.

    Beispielsweise mit einem Timer, der jede Minute ausgeführt wird.


    Du musst aber keinen neuen erstellen, sondern schaust mal,
    ob es nicht schon einen gibt, der jede Sekunde oder eben
    öfters ausgeführt wird.


    In dieser Funktion aktualisierst Du dann einfach Dein Level.

    SetTimer("Funktion", 300000, true); // 300000 = 5 Minuten


    forward Funktion();


    public Funktion()
    {
    variable += 5;
    }
    Pass das an Deine Variable an und das wars schon.

    Problemlösung:


    MySQL und PAWN sind beide case sensitiv.


    An der Stelle, an der die Position des Spielers, also
    beim Einloggen in die Spielervariablen gespeichert
    wurden, war eine falsche MySQL Tabelle angegeben.


    im Script: Accounts


    in MySQL: accounts



    Das funktioniert natürlich nicht.

    IMMER die Groß- und Kleinschreibung beachten!
    :thumbup:



    Übrigens, ich habe für diesen kleinen Tipp KEIN Geld entgegen genommen!

    Die Variable wird jedes mal wieder auf true
    sein, wenn Du diese nicht in einer Datei oder
    in einem anderen System speicherst.


    Eine andere Möglichkeit ist auch folgende:


    Speichere aller Spielerinhalte in einer Datei.


    Verbindet sich der Spieler, fragst Du ab, ob bereits
    eine Datei vorhanden ist, die dem Spielername entspricht.


    Wenn ja, brauch er das Tutorial nicht.
    Wenn nein, ist er also neu.


    So einfach geht das :thumbup:

    Ich habe es Dir doch bereits geschrieben...


    Schreib Dir eine simple Funktion, die Dir die
    Fahrzeug ID angibt, wenn Du einsteigst und
    dann kannst Du mit dieser ID arbeiten.


    Dieser sollte dann immer gleich sein, wenn
    vor diesem erstellten Fahrzeug, im Script
    keine anderen neuen erstellt werden.


    Die Anweisung, um die ID dann abzufragen lautet:


    if(GetPlayerVehicleID(playerid) == 123)
    {
    // Fraktion 1
    }

    Genau so, wie ich es Dir gerade beschrieben habe.


    Mit dem, dass Du oben gezeigt hast, kann es nicht
    funktionieren. Denn hast Du zwei identische Fahrzeug
    Modelle für unterschiedliche Fraktionen, kommt das Problem wieder.

    Dann darfst Du Deine Abfragen nicht an der Model ID
    orientieren, sondern musst diese an den Fahrzeug ID's
    anlegen.


    Denn kein Fahrzeug halt die selbe ID.


    Dazu benutzt Du die Anweisung:


    if(GetPlayerVehicleID(playerid) == INTEGER)
    Vorher musst Du im Script natürlich deklarieren, welche
    Fahrzeuge welche ID haben, oder findest diese einfach
    im Spiel heraus, wenn Du einen Funktion schreibst, die
    Dir die ID anzeigt.

    Um die Y - Größe der Box zu ändern, musst Du
    einfacher weise die Textgröße ändern, darfst
    aber nicht vergessen als Text STRING einen
    Platzhalter anzugeben.


    Es empfiehlt sich hier der Zeilenumbruch: ~n~

    Danke für die Feedbacks!


    In den nächsten Versionen werden einige Neuerungen
    kommen, wie bsp. das komplett eingebaute Durst-System,
    dass alle Automaten im Spiel gleich mit einbezieht.


    Sehr gut fande ich auch die Idee, des Schlafbedürfnisses.


    Bei eventuellen Schlafmangel, könnte sich der Bildschirm
    dann, dank Textdraw, langsam verdunkeln, bis fast nichts
    mehr zu sehen ist. (quasi, zieht es einem die Augen zu)


    Alles andere werde ich dann vorweg schonmal posten.



    Freundliche Grüße


    4#Future | Fake - Philip

    Ok ich präzisiere mich mal.


    InGame startest Du den TextDrawEditor.
    Du erstellst einen neuen TextDraw und fügst als String folgendes ein:


    Code
    ~n~


    Das ist ein normaler Zeilenumbruch.


    Dann editierst Du die Schriftgröße so, dass sich die Box dahiner,
    die Du vorher aktivieren musst, Deiner Vorstellung nach vergrößert.


    Das wars!


    Also so einen Quatsch habe ich auch noch nicht gelesen.


    Ich erklär Dir mal, einfachstes Programmierwissen.



    Ist eine Variable mit 1 definiert, also true, kannst Du
    diese in der Anweisung auch einfach so abfragen:


    Code
    if(variable)
    
    
    ENSPRICHT EXAKT
    
    
    if(varialbe == 1)


    Ist diese Variable nicht definiert, also false, kannst Du
    diese durch ein Ausrufezeichen "!" abfragen:


    Code
    if(!variable)
    
    
    ENTPRICHT EXAKT
    
    
    if(varialbe == 0)


    ZUM NACHLESEN aller Operatoren: SAMP -WIKI



    Nun aber Schluss, das gehört nicht zum Thema!


    Die unsauberen Methoden zur PAWN-Programmierung könnten
    nun allmälig eigentlich verblassen... Oder nicht?


    Seit dem es die Spieler Variablen gibt, die den Server "schonen",
    muss ich den Leuten nicht mehr empfehlen, veraltete Varianten
    zu verwenden.


    Nur mal so als kleiner Tipp.