Beiträge von Marschl

    Ich hab inGame in Befehl erstellt:


    Code
    ocmd:fraktion(playerid, params[])
    {
    	new str[128];
    	format(str, sizeof(str), "* Hinweis: "HTML_WEIS"Du bist in der Fraktion %s, dein Rang heißt %s, und die Frakid ist %s", fInfo[sInfo[playerid][pFraktion]][f_name], fInfo[sInfo[playerid][pFraktion]][f_rang1], fInfo[sInfo[playerid][pFraktion]][f_id],Handle);
    	SendClientMessage(playerid, COLOR_ROT, str);
    	return 1;
    }

    Nur leider steht nur das da: "Du bist in der Fraktion"
    mehr nicht

    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

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


    Hier mein OnPlayerSpawn:

    Meine Ladefunktion


    Mein Serverlog:



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


    @Jeffry

    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ß

    Bin der gleichen Meinung...
    ich hatte es ja davor so:
    cache_get_field_content(i,"f_name", Handle,32);


    Das gab halt keine Error's oder Warnings
    Und ich hab dann gedacht das sei richtig

    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

    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;
    }

    Diese Methode bringt leider ein error


    cache_get_row_float(i,"f_x", fInfo[i][f_x], Handle);


    Code
    C:\Users\marci\Desktop\NewLife-Roleplay\Server\gamemodes\NewLife.pwn(584) : error 035: argument type mismatch (argument 2)
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    1 Error.

    Ich habe es jetzt so kappiert...


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

    stock FraktionLaden(){ mysql_function_query(Handle, "SELECT * FROM `fraktionen`", true, "OnFraktionLaden", ""); return 1;}


    forward OnFraktionLaden();public OnFraktionLaden(){ new rows = cache_num_rows(); for(new i = 0; i < rows; i++) { cache_get_field_content(i,"fname", fInfo[i][f_name],Handle,32); //Rest hier auslesen... } return 1;}

    Ich benutze das R31 also dann cache_get_field_content_int oder?

    So, jetzt nochmal zur absicherund... @Jeffry


    Ist das so richtig?



    stock FraktionLaden()
    {
    for(new i=0;i<MAX_FRAKT;i++)
    {
    new str[128];
    format(str,sizeof(str),"SELECT * FROM `fraktionen` WHERE `fid` = '%i'",i);
    mysql_function_query(Handle, str, true, "OnFraktionLaden", "d", i);
    }
    return 1;
    }