Beiträge von Jeffry

    Also du entfernst die Sirene bei OnPlayerExitVehicle und fragst warum die Sirene beim aussteigen weg geht? Hä? :D
    Poste bitte dein OnPlayerExitVehicle, dann schauen wir mal, ob man das raus machen kann.

    stock CutIntoLines(string[]) //©Jeffry
    {
    new tmp[1024], find, len;
    strcat(tmp, string);
    while((find = strfind(tmp, "\n")) != -1) strdel(tmp, find, find+1);
    len = strlen(tmp);
    for(new i=30; i<len; i+=31) strins(tmp, "\n", i);
    return tmp;
    }


    Versuche es damit.
    In SetObjectMaterialText schreibst du an die Stelle des Textes
    CutIntoLines(inputtext)
    hin.

    Nutze SendBigMessage anstatt SendClientMessage.


    Unten im Gamemode einfügen:
    stock SendBigMessage(playerid,color,string[]) //©Jeffry
    {
    if(strlen(string) < 128) return SendClientMessage(playerid,color,string);
    new buffer[131],tmp[1024];
    strcat(tmp, string);
    while(tmp[0] != EOS)
    {
    strmid(buffer,tmp,0,127);
    strdel(tmp,0,127);
    if(tmp[0] != EOS) strcat(buffer,"...");
    SendClientMessage(playerid,color,buffer);
    }
    return 1;
    }


    Wenn du wirklich nur 30 Zeichen anzeigen willst, pro SendClientMessage, ändere 128 zu 31, 127 zu 30 und 131 zu 34.
    Wenn du die Punkte nicht haben willst, dann entferne die Zeile:
    if(tmp[0] != EOS) strcat(buffer,"...");

    Naja, das ist ja auch irgendwie logisch, dass das nicht geht.
    Du hast jetzt oben in der Variable eine neue Dimension eingefügt, damit, dass ein Spieler mehrere Fahrzeuge haben kann, aber du hast keinen einzigen deiner Codes verändert. Das kann nicht klappen.


    Du musst natürlich dort wo du zuvor Carlist ohne Keys hattest, das so abändern, dass es für den entsprechenden Key, bzw. für alle Keys, gemacht wird.


    Die Funktion sähe dann so aus:
    GetPlayerFromCarlistCar(carid, &pid, &slot)
    {
    for(new i=0; i<sizeof(Carlist); i++)
    {
    for(new j=0; j<sizeof(Carlist[]); j++)
    {
    if(Carlist[i][j][Carid]==carid)
    {
    pid = i;
    slot = j;
    return 1;
    }
    }
    }
    return -1;
    }


    Natürlich musst du dann auch alle Codes die diese Funktion verwenden umschreiben, da du ja jetzt Besitzer UND Slot brauchst.


    Beim OnPlayerConnect musst du mit einer Schleife durch alle Keys gehen.

    Das sieht soweit alles gut aus, bis auf dass kein Result zurück kommt.
    Was steht denn in deiner Tabelle bei "password"? Kannst du von den Daten und von der Struktur der Tabelle mal einen Screenshot machen?

    Ok, das stimmt so. Dann ist es aber komisch, dass das Passwort leer ist.
    Sicher, dass du nur an den geposteten Stellen was auf "Passwort" in die Datei schreibst, und sonst nirgends?


    Ändere mal:
    dini_Set(Player,"Passwort",password);
    zu:
    dini_Set(Player,"Passwort",password);
    printf("Setze Passwort zu: '%s'", password);


    Dann poste was im Server Log steht, wenn du dich registrierst.


    Und poste deine SavePlayer Funktion.

    if(TutTime[i])
    {
    TutTime[i]++;
    if(TutTime[i] == 6)
    {
    SetPlayerPos(i,1479.1464,-1754.0496,33.4297);
    SetPlayerFacingAngle(i,357.8764);
    SetPlayerCameraPos(i,1482.5554,-1713.1638,36.7771);
    SetPlayerCameraLookAt(i,1482.1392,-1746.0701,25.7670);
    SetPlayerVirtualWorld(i,(i+1));
    for(new s=0; s<10; s++) SendClientMessage(i,Farbe_Schwarz," ");
    TextDrawHideForPlayer(i, IntroBox);
    TextDrawHideForPlayer(i, Projektleitung);
    TextDrawHideForPlayer(i, ProjektLeiterName);
    PlayerTextDrawSetString(i,Tutorialdraw[i][1],"(Tutorial) - Zivispawn");
    PlayerTextDrawSetString(i,Tutorialdraw[i][2],"Dies ist der Zivispawn unseres Servers~n~Hier Spawnst du wenn du dich einloggst~n~Jedoch kannst du dich in ein Haus einmieten~n~sodass du dort Spawnen kannst mit /spawnchange");
    for(new s=0;s<4;s++) PlayerTextDrawShow(i,Tutorialdraw[i][s]);
    }
    else if(TutTime[i] == 20)
    {
    SetPlayerPos(i,2122.5210,-1146.8610,30.7632);
    SetPlayerFacingAngle(i,359.3494);
    SetPlayerCameraPos(i,2128.5413,-1112.7592,42.8372);
    SetPlayerCameraLookAt(i,2129.6411,-1142.0074,25.0423);
    SetPlayerVirtualWorld(i,(i+1));
    for(new s=0; s<10; s++) SendClientMessage(i,Farbe_Schwarz," ");
    PlayerTextDrawSetString(i,Tutorialdraw[i][1],"(Tutorial) - Fraktionen");
    PlayerTextDrawSetString(i,Tutorialdraw[i][2],"Auf unserem Server gibt es X Fraktionen.~n~Ab Level 2 kannst du einer Gang/Mafia beitreten.~n~und ab Level 3 Staatsfraktionen.~n~Du kannst in diesem Forum bewerben www.folgt.de");
    for(new s=0;s<4;s++) PlayerTextDrawShow(i,Tutorialdraw[i][s]);
    }
    else if(TutTime[i] == 28)
    {
    SetPlayerPos(i,1460.4634,-1019.1107,48.1359);
    SetPlayerFacingAngle(i,181.6645);
    SetPlayerCameraPos(i,1461.5790,-1042.0156,24.2842);
    SetPlayerCameraLookAt(i,1462.4208,-1011.1050,30.0120);
    SetPlayerVirtualWorld(i,(i+1));
    for(new s=0; s<10; s++) SendClientMessage(i,Farbe_Schwarz," ");
    PlayerTextDrawSetString(i,Tutorialdraw[i][1],"(Tutorial) - Autohaeuser");

    PlayerTextDrawSetString(i,Tutorialdraw[i][2],"Wir besitzen X Autohaeuser.~n~Wir empfehlen dir das Guenstige Autohaus als erstes zu besuchen.~n~um dir einen Anfangs Wagen zuzulegen.~n~Wie du dort hingelangst? /navi");
    for(new s=0;s<4;s++) PlayerTextDrawShow(i,Tutorialdraw[i][s]);
    }
    else if(TutTime[i] == 46)
    {
    SetPlayerPos(i,1413.2452,-1640.2640,38.3088);
    SetPlayerFacingAngle(i,268.4439);
    SetPlayerCameraPos(i,1442.6525,-1624.4379,60.0615);
    SetPlayerVirtualWorld(i,(i+1));
    SetPlayerCameraLookAt(i,1489.9127,-1677.9097,15.6762);
    for(new s=0; s<10; s++) SendClientMessage(i,Farbe_Schwarz," ");
    PlayerTextDrawSetString(i,Tutorialdraw[i][1],"(Tutorial) - Was kann ich zuerst tun?");

    PlayerTextDrawSetString(i,Tutorialdraw[i][2],"- Perso beantragen.~n~- Job zulegen.~n~- Fuehrerschein absolvieren~n~- Anfangs Wagen zulegen.");
    for(new s=0;s<4;s++) PlayerTextDrawShow(i,Tutorialdraw[i][s]);
    }
    else if(TutTime[i] >= 60)
    {
    for(new s=0; s<10; s++) SendClientMessage(i,Farbe_Schwarz," ");
    for(new s=0;s<4;s++) PlayerTextDrawHide(i,Tutorialdraw[i][s]);
    SendClientMessage(i,Farbe_Gelb,"Tutorial geschafft!");
    SendClientMessage(i,Farbe_Weiß,"Dein Account wurde erfolgreich angelegt.");
    SendClientMessage(i,Farbe_Weiß,"Viel Spaß, fotze.");
    SetPlayerCheckpoint(i,1481.1222,-1765.4866,18.7958,2.5);
    PlayerPlaySound(i,1188,0.0,0.0,0.0);
    TutTime[i] = 0;
    TutStep[i] = 1;
    SpielerInfo[i][sTutorial] = 1;
    GivePlayerMoney(i,50000+random(1000));
    SpielerInfo[i][sBank] = 20000+random(20000);
    format(Text,sizeof(Text),"Wir haben einen Neuen Spieler: %s",SpielerInfo[i][sName]);
    SendClientMessageToAll(Farbe_Rot,Text);
    ShowPlayerDialog(i, DIALOG_Startbonus, DIALOG_STYLE_LIST, "Ende des Tutorials...", "Startbonus 10.000 $\nFührerschein\nStartlevel 5","Auswählen","-");
    StopAudioStreamForPlayer(i);
    SetPlayerSpawn(i);
    }
    }


    EDIT:
    Synchron: Kopiere dir den Code nochmal, ich dachte du hattest das schon geändert. ;)