Beiträge von Kaliber

    Nun, dass League Of Legends und TeamSpeak³ geöffnet werden kannst du ganz einfach machen mit z.B. Diesem Code:


    Code
    start "" "C:\Riot Games\League of Legends\lol.launcher.exe"
    start "" "C:\Program Files\TeamSpeak 3 Client\ts3client_win64.exe"


    Musst dann halt evtl die Pfade anpassen ;)


    Dass mit den Login-Daten kannst du über eine Batch Datei nicht lösen ;)


    mfg. :thumbup:

    Selbst wenn die DrawDistance zu hoch eingestellt sein sollte, bedenke, dass die StreamDistance auch noch eine Rolle spielt.
    D.h. ist das Objekt nicht eingestreamt, wird die "DrawDistance" auch nicht "beachtet"


    Jap...sry mein Fehler, ich rede natürlich von der StreamDistance ^^

    Joa, schreib es so:


    public SpielerSpeichern(playerid)
    {
    if(IsPlayerNPC(playerid) || !Spieler[playerid][pEingeloggt])return 1;
    format(longquery,sizeof(longquery),"UPDATE `accounts` SET `Admin`='%i',`Level`='%i',`Geld`='%i',`Skin`='%i',`Hanfsamen`='%i',`Kokssamen`='%i',`LSDsamen`='%i',`Fraktion`='%i',`Leader`='%i',",Spieler[playerid][pAdmin],Spieler[playerid][pLevel],Spieler[playerid][pGeld],Spieler[playerid][pSkin],Spieler[playerid][pHanfsamen],Spieler[playerid][pKokssamen],Spieler[playerid][pLSDsamen],Spieler[playerid][pFraktion],Spieler[playerid][pLeader],Spieler[playerid][pAccountID]);
    format(longquery,sizeof(longquery),"%s`Rank`='%i',`MuteTime`='%i',`Muted`='%i',`Banned`='%i',",longquery,Spieler[playerid][pRank],Spieler[playerid][pMuteTime],Spieler[playerid][pMuted],Spieler[playerid][pBanned]);
    format(longquery,sizeof(longquery),"%s`Death`='%i',`Totx`='%f',`Toty`='%f',`Totz`='%f',`Totint`='%i',`Totvirtual`='%i',`Deathtime`='%i',",longquery,Spieler[playerid][pDeath],Spieler[playerid][tot_x],Spieler[playerid][tot_y],Spieler[playerid][tot_z],Spieler[playerid][tot_int],Spieler[playerid][tot_world],Spieler[playerid][pDeathTime]);
    format(longquery,sizeof(longquery),"%s`Prison`='%i',`PrisonTime`='%i',`Geschlecht`='%i',`Age`='%i',`Letzte_X`='%f',`Letzte_Y`='%f',`Letzte_Z`='%f',",longquery,Spieler[playerid][pPrison],Spieler[playerid][pPrisonTime],Spieler[playerid][pSex],Spieler[playerid][pAge],Spieler[playerid][LastInGamePos_x],Spieler[playerid][LastInGamePos_y],Spieler[playerid][LastInGamePos_z]);
    format(longquery,sizeof(longquery),"%s`Letzte_Interior`='%i',`Letzte_VirtualWorld`='%i' WHERE `AccountID`='%i'",longquery,Spieler[playerid][LastInGamePos_int],Spieler[playerid][LastInGamePos_world],Spieler[playerid][pAccountID]);
    mysql_function_query(db,longquery,false,"","");
    return 1;
    }


    Dann sendet der nur 1nen Query an die Datenbank anstatt 5 ^^


    PS: longquery, sollte einen Array von so ca. 600 haben... :D


    mfg. :thumbup:

    Beim Zivispawn, wo ebenfalls von meinem Freund gemappt wurde sind es 716 und bei der Fahrschule tatsächlich 999.


    Dann nutzt du entweder noch in deinem Script CreateObject...nutze wirklich überall CreateDynamicObject (auch in Filterscripts etc)


    Oder du hast die StreamDistance bei manchen Objekten zu hoch eingestellt, so dass man sie von überall aus sehen kann...bzw in dieser Reichweite.


    Oder die Fahrschule ist einfach wirklich schlecht gemappt und es sind mehr als 1000 Objekte auf einem Fleck :rolleyes:


    mfg. :thumbup:

    Wie kann ich per Befehl die aktuellen Koordinaten via ocmd und sscanf anzeigen lassen? Bekomme das irgendwie nicht hin, dass die angezeigt werden im Chat.


    Einfach so:
    ocmd:coords(playerid) {
    new Float:p[3],string[64];
    GetPlayerPos(playerid,p[0],p[1],p[2]);
    format(string, sizeof string,"Deine Koordinaten sind X: %.02f | Y: %.02f | Z: %.02f",p[0],p[1],p[2]);
    return SendClientMessage(playerid,-1,string);
    }


    mfg. :thumbup:

    Das objekt kommt einfach nicht.


    Also bei mir schon, zwar nicht an seiner richtigen Position, aber es erscheint ^^


    Nutzt du evtl eine Commandprozesser oder ist evtl der Codeblock in einem ungültigen Directive?


    Schreib mal einen print rein und schau ob der Befehl überhaupt aufgerufen wird, denn das müsste funktionieren ;)


    mfg. :thumbup:

    Hm, klappt nicht. Bei mir switched es einfach durch ohne zu warten.


    In diesem Fall, vielleicht hilft dir dieses Makro: [ MAKRO ] Sleep Funktion


    Es kommt nichts in den Chat, ich bekomme aber auch keine Error


    Schreib das mal so:


    public OnPlayerText(playerid, text[])
    {
    new Float:p[3],n[MAX_PLAYER_NAME],str[144];
    GetPlayerName(playerid, n, sizeof(n)),GetPlayerPos(playerid, p[0], p[1], p[2]);
    format(str, sizeof(str), "%s sagt: %s", n, text);
    for(new i; i < MAX_PLAYERS; i++){
    if(!IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i, 25.0, p[0], p[1], p[2])) continue;
    SendClientMessage(i, 0xFFFFFFFF, str);
    }
    return 0;
    }


    mfg. :thumbup:

    Was machst du da auch? :huh:


    Schreib es so:


    enum oDATA {
    objectid,
    Float:X,
    Float:Y,
    Float:Z,
    };


    new RandomTexture[][] = {
    {0, 8839, "vgsecarshow", "lightred2_32"},
    {0, 8839, "vgsecarshow", "lightblue2_32"}
    }, Textur[][oDATA] ={
    { 19362, 120.39700, 1868.46973, 720.62543 },
    { 19362, 149.28700, 1864.98975, 720.62543 },
    { 19362, 146.07700, 1864.98975, 720.62543 },
    { 19362, 149.28700, 1857.98975, 720.62543 },
    { 19362, 142.86700, 1857.98975, 720.62543 },
    { 19362, 142.86700, 1850.98975, 720.62543 },
    { 19362, 120.39700, 1850.98975, 720.62543 },
    { 19362, 136.44701, 1836.98975, 720.62543 }
    };


    //und das unten


    public OnPlayerSpawn(playerid)
    {
    new rand;
    for( new i; i < sizeof(Textur); i++ ) {
    for( new x; x < sizeof(Textur[]); x++ ) {
    rand= random(sizeof(RandomTexture));
    SetObjectMaterial(CreateObject(Textur[i][x][objectid],Textur[i][x][X],Textur[i][x][Y],Textur[i][x][Z],0.0,0.0,0.0), RandomTexture[rand][0],RandomTexture[rand][1],RandomTexture[rand][2],RandomTexture[rand][3]);
    }
    }
    return 1;
    }


    mfg. :rolleyes:

    Also er zäht hoch und bei den zeichen runter :/


    Ja, was eine Überraschung :D


    Um dir dieses Phänomen mal zu erklären, es ist ganz einfach:


    //Nehmen wir einen String:
    new string[6] = "Hallo";


    //Printen wir nun etwas:
    print(string[0]); //Hier printet er: Hallo
    //Da alles ab dem 0ten Zeichen bis zum Ende ausgegeben wird.


    print(string[1]); //Hier printet er: allo
    //Da alles ab dem 1ten Zeichen bis zum Ende ausgegeben wird.


    Um das Problem, welches du hast zu lösen, musst du einfach dem String noch eine Dimension geben, da du ja noch Zeichen hast, sprich:


    LastDriver[vehicleid] = "Hallo";
    //Das ist falsch, da du z.B. jetzt nicht das H als Zeichen ausgeben kannst, sondern nur den ganzen String, oder halt ab dem Zeichen.


    new LastDriver[MAX_VEHICLES][6];
    LastDriver[vehicleid] = "Hallo";
    //Jetzt kannst du es ausgeben:
    LastDriver[vehicleid][0] // -> Das würde jetzt das H ausgeben


    Sprich du musst noch eine Dimension mit MAX_LENGTH des Strings angeben ;)


    mfg. :thumbup:

    Entscheid dich doch mal für eine Art von Commandprozessor...


    In deinem Server.log steht, du nutzt ocmd, dann kann es zu Komplikationen kommen, wenn du auch noch dcmd nutzt. Da der Callback gehookt wird und somit nicht mehr aufgerufen wird. Du müsstest das dcmd Makro in einen anderen von ocmd gefertigten Callback schreiben.


    Also nutze doch entweder nur ocmd oder dcmd, das wäre um einiges leichter :rolleyes:


    mfg. :thumbup: