befehl funktioniert nicht

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
  • hallo ihr lieben,



    wenn ich ingame /aherstellen eingebe, kommt alles was da rein muss, aber wenn ich es ausfülle passiert nichts...



    [list=1][*]ocmd:aherstellen(playerid, params[])
    [*]{
    [*] new erstellteAutohauser, aBesitz[MAX_PLAYER_NAME], aInteil[MAX_PLAYER_NAME], aName[40], gGekauftJaNein;
    [*] if(sscanf(params, "sssd",aBesitz, aInteil, aName,gGekauftJaNein)) return SendClientMessage(playerid, Weiss, "/aherstellen [Besitzer][Inteilhaber][AutohausName[Siehe Vorgaben]][0 = Zukaufen 1= Verkauft]");
    [*] for(new i = 0; i<Max_Autohauser; i++)
    [*] {
    [*] new Float:aa_x, Float:aa_y, Float:aa_z;
    [*] GetPlayerPos(playerid, aa_x, aa_y, aa_z);
    [*] AutohausInfo[i][ah_ID] = i;
    [*] AutohausInfo[i][aa_Name] = aName;
    [*] AutohausInfo[i][aa_Besitzer] = aBesitz;
    [*] AutohausInfo[i][aa_Inteilhaber] = aInteil;
    [*] AutohausInfo[i][Pos_x] = aa_x;
    [*] AutohausInfo[i][Pos_y] = aa_y;
    [*] AutohausInfo[i][Pos_z] = aa_z;
    [*] AutohausInfo[i][GekauftJaNein] = gGekauftJaNein;
    [*]
    [*]
    [*] new path[64];
    [*] format(path, sizeof(path), "/Autohauser/%d.ini", i);
    [*] if(!fexist(path)) continue;
    [*] dini_Create(path);
    [*] dini_IntSet(path, "aa_ID", i);
    [*] dini_Set(path, "aaName", aName);
    [*] dini_Set(path, "Besitzer", aBesitz);
    [*] dini_Set(path, "Inteilhaber", aInteil);
    [*] dini_IntSet(path, "Kasse", 0);
    [*] dini_FloatSet(path, "aa_x", aa_x);
    [*] dini_FloatSet(path, "aa_y", aa_y);
    [*] dini_FloatSet(path, "aa_z", aa_z);
    [*] dini_IntSet(path, "GekauftJaNein", gGekauftJaNein);
    [*] SpeichereAutohauser();
    [*] new string[200];
    [*] format(string, sizeof(string), "%s\nBesitzer: %s\nInteilhaber: %s\nKasse: %d$", AutohausInfo[i][aa_Name], AutohausInfo[i][aa_Besitzer], AutohausInfo[i][aa_Inteilhaber],AutohausInfo[i][aa_Kasse]);
    [*] print(string);
    [*] Label[i] = Create3DTextLabel(string, Weiss, AutohausInfo[i][Pos_x], AutohausInfo[i][Pos_y], AutohausInfo[i][Pos_z]+0.5,5,0,0);
    [*] erstellteAutohauser++;
    [*] }
    [*] return 1;
    [*]}
    [/list]

    Mit freundlichen Grüßen,
    Dachdecker

  • Der sscanf sieht in Ordnung aus meiner Sicht nach. Schau mal ob er dir den Print beim Ausführen des Befehls in der server.log anzeigt.




    ocmd:aherstellen(playerid, params[])
    {
    new erstellteAutohauser, aBesitz[MAX_PLAYER_NAME], aInteil[MAX_PLAYER_NAME], aName[40], gGekauftJaNein;
    if(sscanf(params, "sssd",aBesitz, aInteil, aName,gGekauftJaNein)) return SendClientMessage(playerid, Weiss, "/aherstellen [Besitzer][Inteilhaber][AutohausName[Siehe Vorgaben]][0 = Zukaufen 1= Verkauft]");
    for(new i = 0; i<Max_Autohauser; i++)
    {
    print("Schleife geladen");
    new Float:aa_x, Float:aa_y, Float:aa_z;
    GetPlayerPos(playerid, aa_x, aa_y, aa_z);
    AutohausInfo[i][ah_ID] = i;
    AutohausInfo[i][aa_Name] = aName;
    AutohausInfo[i][aa_Besitzer] = aBesitz;
    AutohausInfo[i][aa_Inteilhaber] = aInteil;
    AutohausInfo[i][Pos_x] = aa_x;
    AutohausInfo[i][Pos_y] = aa_y;
    AutohausInfo[i][Pos_z] = aa_z;
    AutohausInfo[i][GekauftJaNein] = gGekauftJaNein;




    new path[64];
    format(path, sizeof(path), "/Autohauser/%d.ini", i);
    if(!fexist(path)) continue;
    dini_Create(path);
    dini_IntSet(path, "aa_ID", i);
    dini_Set(path, "aaName", aName);
    dini_Set(path, "Besitzer", aBesitz);
    dini_Set(path, "Inteilhaber", aInteil);
    dini_IntSet(path, "Kasse", 0);
    dini_FloatSet(path, "aa_x", aa_x);
    dini_FloatSet(path, "aa_y", aa_y);
    dini_FloatSet(path, "aa_z", aa_z);
    dini_IntSet(path, "GekauftJaNein", gGekauftJaNein);
    SpeichereAutohauser();
    new string[200];
    format(string, sizeof(string), "%s\nBesitzer: %s\nInteilhaber: %s\nKasse: %d$", AutohausInfo[i][aa_Name], AutohausInfo[i][aa_Besitzer], AutohausInfo[i][aa_Inteilhaber],AutohausInfo[i][aa_Kasse]);
    print(string);
    Label[i] = Create3DTextLabel(string, Weiss, AutohausInfo[i][Pos_x], AutohausInfo[i][Pos_y], AutohausInfo[i][Pos_z]+0.5,5,0,0);
    erstellteAutohauser++;
    }
    return 1;
    }

  • Der sscanf sieht in Ordnung aus meiner Sicht nach. Schau mal ob er dir den Print beim Ausführen des Befehls in der server.log anzeigt.



    ocmd:aherstellen(playerid, params[]){ new erstellteAutohauser, aBesitz[MAX_PLAYER_NAME], aInteil[MAX_PLAYER_NAME], aName[40], gGekauftJaNein; if(sscanf(params, "sssd",aBesitz, aInteil, aName,gGekauftJaNein)) return SendClientMessage(playerid, Weiss, "/aherstellen [Besitzer][Inteilhaber][AutohausName[Siehe Vorgaben]][0 = Zukaufen 1= Verkauft]"); for(new i = 0; i<Max_Autohauser; i++) { print("Schleife geladen"); new Float:aa_x, Float:aa_y, Float:aa_z; GetPlayerPos(playerid, aa_x, aa_y, aa_z); AutohausInfo[i][ah_ID] = i; AutohausInfo[i][aa_Name] = aName; AutohausInfo[i][aa_Besitzer] = aBesitz; AutohausInfo[i][aa_Inteilhaber] = aInteil; AutohausInfo[i][Pos_x] = aa_x; AutohausInfo[i][Pos_y] = aa_y; AutohausInfo[i][Pos_z] = aa_z; AutohausInfo[i][GekauftJaNein] = gGekauftJaNein; new path[64]; format(path, sizeof(path), "/Autohauser/%d.ini", i); if(!fexist(path)) continue; dini_Create(path); dini_IntSet(path, "aa_ID", i); dini_Set(path, "aaName", aName); dini_Set(path, "Besitzer", aBesitz); dini_Set(path, "Inteilhaber", aInteil); dini_IntSet(path, "Kasse", 0); dini_FloatSet(path, "aa_x", aa_x); dini_FloatSet(path, "aa_y", aa_y); dini_FloatSet(path, "aa_z", aa_z); dini_IntSet(path, "GekauftJaNein", gGekauftJaNein); SpeichereAutohauser(); new string[200]; format(string, sizeof(string), "%s\nBesitzer: %s\nInteilhaber: %s\nKasse: %d$", AutohausInfo[i][aa_Name], AutohausInfo[i][aa_Besitzer], AutohausInfo[i][aa_Inteilhaber],AutohausInfo[i][aa_Kasse]); print(string); Label[i] = Create3DTextLabel(string, Weiss, AutohausInfo[i][Pos_x], AutohausInfo[i][Pos_y], AutohausInfo[i][Pos_z]+0.5,5,0,0); erstellteAutohauser++; } return 1;}

    Das "print(string);" àndern zu "printf("%s",string)"