FrakLoad

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Also dass heißt, dass dies falsch ist?


    forward OnFraktionLaden();
    public OnFraktionLaden()
    {
    new rows, fields;
    cache_get_data(rows, fields);
    for(new i = 0; i < rows; i++)
    {
    cache_get_field_content(i,"fid", fInfo[i][f_id],Handle);
    cache_get_field_content(i,"fname", fInfo[i][f_name],Handle,32);


    //Cords


    cache_get_row_float(i,"f_x", fInfo[i][f_x],Handle);
    cache_get_field_content(i,"f_interoir", fInfo[i][f_interior],Handle);
    cache_get_field_content(i,"f_world", fInfo[i][f_world],Handle);
    cache_get_field_content(i,"f_color", fInfo[i][f_color],Handle);
    cache_get_field_content(i,"f_kasse", fInfo[i][f_kasse],Handle);
    //Rangnamen
    cache_get_field_content(i,"f_rang1", fInfo[i][f_rang1],Handle);
    cache_get_field_content(i,"f_rang2", fInfo[i][f_rang2],Handle);
    cache_get_field_content(i,"f_rang3", fInfo[i][f_rang3],Handle);
    cache_get_field_content(i,"f_rang4", fInfo[i][f_rang4],Handle);
    cache_get_field_content(i,"f_rang5", fInfo[i][f_rang5],Handle);
    cache_get_field_content(i,"f_rang6", fInfo[i][f_rang6],Handle);
    printf("Fraktionen geladen");
    }
    return 1;
    }

  • Du solltest wirklich mehr Eigeninitiative zeigen und wenigstens mal einen Blick in das Wiki schauen, dort sind die Funktionen jeweils mit einem Beispiel erklärt, das kann man eigentlich dann nicht mehr falsch machen.
    Wenn ich dir das alles vorschreibe lernst du gar nichts dabei.


    forward OnFraktionLaden();
    public OnFraktionLaden()
    {
    new rows, fields;
    cache_get_data(rows, fields);
    for(new i = 0; i < rows; i++)
    {
    fInfo[i][f_id] = cache_get_field_content_int(i,"fid",Handle);
    cache_get_field_content(i,"fname", fInfo[i][f_name],Handle,32);
    //Cords
    fInfo[i][f_x] = cache_get_field_content_float(i,"f_x", Handle);
    fInfo[i][f_interior] = cache_get_field_content_int(i,"f_interoir",Handle);
    fInfo[i][f_world] = cache_get_field_content_int(i,"f_world", Handle);
    fInfo[i][f_color] = cache_get_field_content_int(i,"f_color", Handle);
    fInfo[i][f_kasse] = cache_get_field_content_int(i,"f_kasse", Handle);
    //Rangnamen
    cache_get_field_content(i,"f_rang1", fInfo[i][f_rang1],Handle);
    cache_get_field_content(i,"f_rang2", fInfo[i][f_rang2],Handle);
    cache_get_field_content(i,"f_rang3", fInfo[i][f_rang3],Handle);
    cache_get_field_content(i,"f_rang4", fInfo[i][f_rang4],Handle);
    cache_get_field_content(i,"f_rang5", fInfo[i][f_rang5],Handle);
    cache_get_field_content(i,"f_rang6", fInfo[i][f_rang6],Handle);
    printf("Fraktionen geladen");
    }
    return 1;
    }

  • Du solltest wirklich mehr Eigeninitiative zeigen und wenigstens mal einen Blick in das Wiki schauen, dort sind die Funktionen jeweils mit einem Beispiel erklärt, das kann man eigentlich dann nicht mehr falsch machen.
    Wenn ich dir das alles vorschreibe lernst du gar nichts dabei.


    forward OnFraktionLaden();public OnFraktionLaden(){ new rows, fields; cache_get_data(rows, fields); for(new i = 0; i < rows; i++) { fInfo[i][f_id] = cache_get_field_content_int(i,"fid",Handle); cache_get_field_content(i,"fname", fInfo[i][f_name],Handle,32); //Cords fInfo[i][f_x] = cache_get_field_content_float(i,"f_x", Handle); fInfo[i][f_interior] = cache_get_field_content_int(i,"f_interoir",Handle); fInfo[i][f_world] = cache_get_field_content_int(i,"f_world", Handle); fInfo[i][f_color] = cache_get_field_content_int(i,"f_color", Handle); fInfo[i][f_kasse] = cache_get_field_content_int(i,"f_kasse", Handle); //Rangnamen cache_get_field_content(i,"f_rang1", fInfo[i][f_rang1],Handle); cache_get_field_content(i,"f_rang2", fInfo[i][f_rang2],Handle); cache_get_field_content(i,"f_rang3", fInfo[i][f_rang3],Handle); cache_get_field_content(i,"f_rang4", fInfo[i][f_rang4],Handle); cache_get_field_content(i,"f_rang5", fInfo[i][f_rang5],Handle); cache_get_field_content(i,"f_rang6", fInfo[i][f_rang6],Handle); printf("Fraktionen geladen"); } return 1;}

    Danke :)
    ich scripte noch nicht lange und habe diese Wiki nicht verstanden.
    Entschuldigung

  • ich scripte noch nicht lange und habe diese Wiki nicht verstanden.
    Entschuldigung

    Das ist ja dann kein Problem, dann musst du aber auch sagen, dass du es nicht verstehst, dann kann man es dir erklären. ;)
    Deine Posts haben allerdings den Eindruck gemacht, dass du es dir gar nicht angeschaut hast, da du keine zwei Minuten später wieder gepostet hast.


    Das Wichtigste am ganzen Prozess ist ja, dass du ihn verstehst und etwas dabei lernst, um es auch in Zukunft korrekt machen zu können.

  • Ist ja kein Problem, dafür gibt es die Scripting Base ja.
    Nur musst du sagen, wenn du etwas nicht verstehst, dann erklärt man dir das gerne (ich zumindest) - da kommt auf jeden Fall nicht der Eindruck auf, dass jemand nur alles vorgemacht haben will, hauptsache es funktioniert, sondern man weiß, dass derjenige auch etwas dabei lernen will. Da investiere ich auch gerne etwas mehr Zeit in eine Erklärung.


    Für's nächste mal dann, falls du etwas nicht verstehst, Bescheid sagen. :)


    Das Prinzip der drei Funktionen (für String, Integer und Float) ist dir nun aber klar, oder?

  • Das hab ich jetzt verstanden :D
    Mein anderes Problem ist wenn ich connecte kommt "Stay within the world boundaries"


    Hier meine DatenBank:
    http://prntscr.com/a204kt


    So lasse ich die Spieler Spawnen:


    public OnPlayerSpawn(playerid){pTimer[playerid] = SetTimerEx("PayDay", (1000*60), true, "i", playerid);spielzeitTimer[playerid] = SetTimerEx("SpielZeitTimer", (1000*60), true, "i", playerid);switch(sInfo[playerid][pSpawn]){case 0: //Neulingsspawn{new fID;fID = sInfo[playerid][pFraktion];SetPlayerPos(playerid, fInfo[fID][f_x], fInfo[fID][f_y], fInfo[fID][f_z]);SetPlayerFacingAngle(playerid, fInfo[fID][f_r]);}case 1: //Fraktion{// Was passieren soll}case 2: //Haus{// Was passieren soll}}return 1;}


    Woran kiegt das?


    PS: Wie schaffe ich es den Pawn code richtig einzufügen?




    Und bei dem Frakload lass ich die Fraktionen Printen die geladen wurden... die letzten 3 fehlen, Warum?


    Gruß

    Einmal editiert, zuletzt von Marschl ()

  • Woran kiegt das?

    Kannst du bitte von der Meldung im Spiel einen Screenshot machen?



    PS: Wie schaffe ich es den Pawn code richtig einzufügen?

    Über den Quellcode-Editor (Kästchen neben den beiden Pfeilen).



    Und bei dem Frakload lass ich die Fraktionen Printen die geladen wurden... die letzten 3 fehlen, Warum?

    Möglicherweise ist dein fInfo Array zu klein, sprich für zu wenige Fraktionen vorgesehen.

  • Meine Ladefunktion


    Mein Serverlog:



    Der Screenshot:
    http://prntscr.com/a21d61


    @Jeffry

  • Irgendwie ist es jetzt richtig :D
    Aber werde nach dem Login nicht auf den Cordinaten gespawnt.


    Hier mein OnPlayerSpawn:

  • Ich schätze dem Code mal nach, dass es so sein müsste:
    public OnPlayerSpawn(playerid)
    {
    pTimer[playerid] = SetTimerEx("PayDay", (1000*60), true, "i", playerid);
    spielzeitTimer[playerid] = SetTimerEx("SpielZeitTimer", (1000*60), true, "i", playerid);
    switch(sInfo[playerid][pSpawn])
    {
    case 0: //Neulingsspawn
    {
    // Was passieren soll
    }
    case 1: //Fraktion
    {
    new fID = sInfo[playerid][pFraktion];
    SetPlayerPos(playerid, fInfo[fID][f_x], fInfo[fID][f_y], fInfo[fID][f_z]);
    SetPlayerFacingAngle(playerid, fInfo[fID][f_r]);
    }
    case 2: //Haus
    {
    // Was passieren soll
    }
    }
    return 1;
    }

  • stimmt :D aber wenn er fraktion 0 ist muss man neulingsspawn eintragen :D
    Und man sollte auch den Neulingsspawn auswählen können wenn man in einer fraktion ist. Dafür speicher ich ja pSpawn

    Einmal editiert, zuletzt von Marschl ()