Beiträge von VitoHusky

    Du benutzt doch die API von Santiago richtig?
    Dann kannst du mit "CreateText" einen Text erstellen
    Kannst du in der wiki nachlesen
    Das ding ist 2d
    Stell dir einfach ein Schachfeld vor.
    Dieses ist dein Bldschirm
    Dann sagst du du willst oben Links den Text schreiben
    -> Wäre Koordinate 0,0
    wenn du ihn weiter rechts schreiben willst(sagen wir ab dem 3. Feld) nimmst du die Koordinaten 3,0
    Das wäre 3 Felder nach rechts und 0 nach unten


    sagen wir du willst es 3 felder rechts und 2 felder unten haben
    wäre dann 3,2


    Ablauf: Finger auf 0,0 (ganz oben links)
    du bewegst ihn 3 Felder nach rechts (wäre dann 3,0)
    gehst 2 Felder nach unten (3,2)
    Dort würde dann dein Text stehen


    So besserß :D

    am einfachsten ist es auszuprobieren


    oben links in der Ecke ist 0,0
    weiter rechts wäre dann
    1,0
    noch weiter
    2,0 usw


    das erste ist x (wie weit von links entfernt)
    und das zweite y (wie weit von oben entfernt)


    Gruß

    Ganz einfach:
    Logisch nachdenken


    Level -> 3
    Oder glaubst du die User erreichen Level 1000 ?
    Stell dir einfach vor Anzahl = maximale "Länge"


    3 -> 999
    4 -> 9999
    5 -> 99999


    usw halt


    11 ist die normale Integer Länge die sogennante "Geldgrenze" in GTA.
    Mehr kann er nicht fassen. Danach geht er in den - Bereich. Wenn du wissen willst wieso das so ist musst du in den binären Bereich gehen.


    Name -> 24. Wieso? MAX_PLAYER_NAME = 24 ;) (und Varchar)


    beispiel Autoführerschein:
    1 Wieso? kann nur 0 oder 1 sein. Wieso? Man speichert es so -> 0 hat keinen 1 -> hat einen


    Gruß

    Du solltest einfach eine Variable erstellen, die die Zeit bis zum Respawn angibt.
    das ganze könntest du in einem dynamischen enum speichern und dann darin ein Teil der sich "Created" nennt und einen "TimeTillRespawn"
    Wenn TimeTillRespawn 0 ist ausm enum die Coords laden und erstellen mit der selben Objekt Variable


    Gruß

    Probier es aus oder such dir einen Editor.
    Habe das script in meinen Tiefen des PCs verloren sonst würde ich sie dir geben


    Ansonsten lad mal Bayside Roleplay runter da ist die ID mit Koords schon fertig ;)
    Da brauchste uns nicht nach Code angammeln


    Gruß

    Kleiner Tipp meinerseits:


    Gameserver Namen erstellung.


    Der Name bildet sich beliebt aus 3 Wörtern.
    Ist momentan gesellschaftlich gerne genutzt.


    Häufig Variationen wie
    German [Platzhalter] Roleplay
    Es gibt aber auch neue Veränderungen wie zum Beispiel
    German [Platzhaltzer] Reallife


    Letzteres soll der aller neuste Schrei sein.
    Für den Platzhalter auch ein insider Tipp:
    Wörterbuch aufschlagen WICHTIG AUGEN ZU! dann irgendwo aufschlagen -> Mit dem Finger auf ein Wort tippen und das einsetzen
    So kommt bei mir grade folgendes:
    German Bescheiden Roleplay
    Abwechslung gäbe es bei German bescheidenes Roleplay
    Hoffe ich konnte helfen ;)


    Gruß




    Ansonsten zur Werbung:
    3 / 10 für die Mühe und die Bilder usw.
    Sieht mir aber leider nicht einzigartig aus.

    ocmd:editname(playerid, params[])
    {
    CFG[servername] = "Hallo";
    }


    zu


    ocmd:editname(playerid, params[])
    {
    format(CFG[servername], MAX_SERVER_NAME, "Hallo");
    }


    und das hier
    enum serverconfig
    {
    servername,
    ooc
    }
    new CFG[][serverconfig];


    zu
    enum serverconfig
    {
    servername[32],
    ooc
    }
    new CFG[serverconfig];


    uuund ganz oben
    #define MAX_SERVER_NAME 32


    Grüßlein

    Ganz easy


    Einfach Rcon Commands senden


    SendRconCommand("hostname DEIN NEUER HOSTNAME");


    Das ganze einfach mit format formatieren und absenden
    fertisch.


    Jedoch kannst du den Gamemode nicht darüber laden
    zumindest wäre es unschlau da es nichts gibt was vor der cfg. geladen wird


    btw:
    wiesonew CFG[][serverconfig] ???
    Sinn?
    Brauchst nur eine Dimension:
    new CFG[serverconfig]


    Gruß

    Dann musst du den String "auftrennen"
    -> Google


    DIE BEITRAGSANZEIGE IST JA AN :OOO


    Naja und dann halt schauen ob links und rechts vom _ mehr als 3 Zeichen sind.
    Wenn ja hurra wenn nicht KICK!


    Trennen müsstest du halt mit dem Zeichen "_"


    Gruß

    Klar


    Du kannst es entweder in der Playerdata laden (enum usw) oder eben in einer Extra Variable.
    Generell ist deine mysql "Lade methode" blöd. Einfach aber sehr ressourcen fressend.


    Naja da ich deine Playerdata nicht kenne nehme ich die 2. Variante


    Also dann würdest du oben eine Variable erstellen
    enum SpawnInfo
    {
    Float:posx,
    Float:posy,
    Float:posz,
    Float:posa,
    interior,
    virtualworld,
    skin
    }
    new sInfo[MAX_PLAYERS][SpawnInfo];


    Laden halt:
    sInfo[playerid][posx] = mysql_GetFloat("accounts","Spawnz","Name",SpielerInfo[playerid][pName]);
    sInfo[playerid][posy] = mysql_GetFloat("accounts","Spawny","Name",SpielerInfo[playerid][pName]);


    usw eben.
    Dann SetspawnInfo
    SetSpawnInfo(playerid,0,SpielerInfo[playerid][pNSkin],sInfo[playerid][posx],sInfo[playerid][posy],sInfo[playerid][posz],sInfo[playerid][posa],0,0,0,0,0,0);
    SpawnPlayer(playerid);


    Wenn das nicht geht lässt du dir die Variablen via printf ausgeben


    Ansonsten nutze ich immer noch die einfache Methode
    Einfach unter OnPlayerSpawn ;)


    OnPlayerSpawn(playerid)
    {
    SetPlayerPos(playerid, sInfo[playerid][posx],sInfo[playerid][posy],sInfo[playerid][posz]);
    SetPlayerFacingAngle(playerid, sInfo[playerid][posa]);
    SetCameraBehindPlayer(playerid);
    }


    Falls alles nicht geht -> debuggen
    Variablen ausgeben, datenbank anschauen ob es dort richtig ist.
    Undsowas halt xD


    Hoffe konnte dir helfen



    Gruß

    Vorstellung sieht in Ordnung aus jedoch verbesserungswürdig. Bilder ein paar mehr eventuell mehr Aussagende BIlder usw.
    dafür: 6 / 10


    Script ist (wie es scheint) kein Godfather zu sein was eigendlich viel wert ist, da man dadurch sehr viel
    Zeit und "Spaß" investiert hat
    Für den Server: 8 / 10


    Forum ist meiner Meinung nach grausam. Ein besseres bzw. wenigstens neues Design ist schon von Nöten.
    Einen Designer zu bekommen ist nicht so schwer solltet ihr euch vllt. überlegen wenn ihr keinen habt.
    Aber so wie es jetzt ist: 3 / 10


    Server werde ich nicht testen aber nicht wegen euch sondern weil ich nicht so aktiv spiele grade ;)

    Schau mal in die mysql log usw


    Dennoch ist deine Variante (nicht böse gemeint) scheisse.
    Wieso machst du nicht bei Loadplayer eine Variable mit 6 Dimensionen auf alle Player?
    Dann lädst du da die Daten rein und setzt die Spawnkoordinaten da rein


    Gruß

    Spricht mich nicht direkt an


    Schade das ihr euch nicht von der Menge abhebt.
    Macht doch was was EUCH auszeichnet!
    Macht euch Mühe das Script MASSIV zu verändern.
    Versucht doch bitte kein 0815 Server zu sein.
    Auch wenn es schwer fällt! BITTE
    Es gibt genug Server wie euch.


    Runterladen -> Maps verändern
    Wuhu leute neuer Server alle drauf wir kommen in den SAMP Olymp!
    Wir brauchen umbedingt einen Sponsor mit 500 Slots damit wir den dann nie voll kriegen.


    Etwas viel Ironie sorry.
    Aber bitte. Müllt die Serverliste nicht voll mein Gott..


    //edit
    Tastatur neu hat via macro ausversehen abgesendet deswegen eben so halb geschrieben xD

    Also der Anfangs Weg ist schoneinmal nicht gut.
    Ich würde es per Befehl machen mit ocmd und sscanf
    Das würde dann so aussehen (Aus dem Kopf ich garantiere für nichts)


    Globale Variablen
    new Baustelle_Aktiv;
    new Baustelle_Objekte_1[34];
    new Baustelle_Timer;


    OnGameModeInit
    Baustelle_Aktiv = -1;


    Befehl zum erstellen
    ocmd:baustelle(playerid, params[])
    {
    if ( Baustelle_Aktiv != -1 ) return SendClientMessage(playerid, -1, "Es ist noch eine Baustelle aktiv! (/baustelldel zum entfernen)");
    new baustellenid;
    if ( sscanf(params,"i",baustellenid) ) return SendClientMessage(playerid, -1, "Nutze /baustelle [ID(1 - 1)]");
    if ( baustellenid == 1 )
    {
    Baustelle_Create(1);
    }
    }


    Befehl zum löschen
    ocmd:baustelledel(playerid, params[])
    {
    if ( Baustelle_Aktiv == -1 ) return SendClientMessage(playerid, -1, "Es ist keine Baustelle aktiv! (/baustelle zum erstellen))");
    Baustelle_Destroy(Baustelle_Aktiv);
    }


    Dann einen Timer der jede MInute aufgerufen wird
    Dort dann rein
    if ( Baustelle_Aktiv != -1 )
    {
    Baustelle_Timer --;
    if ( Baustelle_Timer <= 0 )
    {
    Baustelle_Destroy(Baustelle_Aktiv);
    }
    }


    Dann die Funktionen:
    Baustelle_Create(id)
    {
    if ( id == 1 )
    {
    //Nachricht bla bla bsn sperre blub xD
    // Objekte erstellen nur bitte ohne [playerid]!!
    }
    else
    {
    id = -1;
    }
    Baustelle_Aktiv = id;
    }


    Baustelle_Destroy(id)
    {
    if ( id == 1 )
    {
    for ( new i = 0; i < sizeof(Baustelle_Objekte_1); i++ )
    {
    DestroyObject(Baustelle_Objekte_1[i]);
    }
    }
    else
    {
    id = -1;
    }
    Baustelle_Aktiv = -1;
    }



    Habs im forum Editor geschrieben deswegen keine Einrückung
    Aber das kannste ja selber machen :b


    Hoffe ich konnte dir helfen.

    Nutz mal den Nativechecker.
    Runterladen und bei den plugins zu packen.


    Das Plugin selber läd richtig aber der Gamemode anscheinend nicht
    Compile ihn nocheinmal neu und überprüf die Connection Daten usw.


    Germany-Reallife wenn du per Teamviewer helfen magst gerne nur ist es für alle anderen Nutzer im Forum schwachsinnig, da die diese Lösung nicht mitbekommen.