Beiträge von rocco95

    das ist oben drüber und unten drunter der zeile 21



    //Defines
    #define DIA_REG 1
    #define DIA_LOG 2
    #define DIA_SEX 3
    #define DIA_TUT 4
    #define ROT 0xFF0000FF
    #define GRÜN 0x00FF00FF
    #define CHATCOLOR 0xFFFFFFFF


    //Join-Musik
    new sound[3];
    sound[0]=1183; (zeile 21)
    sound[1]=1185;
    sound[2]=1187;


    main()
    {
    print("\n----------------------------------");
    print(" By Leitwolf");
    print("----------------------------------\n");
    }

    also ich hab so nen fehler wenn ich im acp bei samp die daten also ip un so eintrage dann kackt die seite bei mir auch ab


    also könnte es bei ihm auch der fall sein, dass er oder jemand anders die daten eingetragen hat

    das sthet im fenster:


    C:\Dokumente und Einstellungen\Rocco\Desktop\samp03e_svr_win32\gamemodes\test.pwn(21) : error 010: invalid function or declaration
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.



    zeile 21 ist sound[0]= 1183;

    geht trotzdem nicht:



    new sound[3];
    sound[0]=1183;
    sound[1]=1185;
    sound[2]=1187;



    new zufall;
    zufall=random(sizeof(sound));
    PlayerPlaySound(playerid,sound[zufall],0,0,0);


    gleicher error

    so das steht im script oben (in keiner funktion)



    new Sound[3];
    sound[0]=1183;
    sound[1]=1185;
    sound[2]=1187;


    und das steht unter OnPlayerConnect



    new zufall;
    zufall=random(sizeof(Sound));
    PlayerPlaySound(playerid,Sound[zufall],0,0,0);

    ich habe zwei probleme


    hier erstmal meine script teile:


    ocmd:kick(playerid,params[])
    {
    new Account[64];
    format(Account, sizeof(Account), "/Accounts/%s", SpielerName(playerid));
    if (playerid, getInt:Account("Admin") == 0)
    {
    return 1;
    }
    else
    {
    new target, reason[128];
    if (sscanf(params, "rs",target,reason))
    {
    return SendClientMessage(playerid, ROT, "USAGE: /kick [SPIELER] [GRUND]");
    }
    if (!IsPlayerConnected(target))
    {
    return SendClientMessage(playerid, ROT, "Dieser Spieler ist nicht Online.");
    }
    new kickmsg[128];
    new targetname[MAX_PLAYER_NAME];
    GetPlayerName(target,targetname,sizeof(targetname));
    format(kickmsg, sizeof(kickmsg), "SERVER: %s wurde vom Server gekickt. Grund: %s",targetname,reason);
    SendClientMessageToAll(ROT, kickmsg);
    Kick(target);
    return 1;
    }
    }


    ocmd:ban(playerid,params[])
    {
    new Account[64];
    format(Account, sizeof(Account), "/Accounts/%s", SpielerName(playerid));
    if (playerid, getInt:Account("Admin") == 0)
    {
    return 1;
    }
    else
    {
    new target, reason[128];
    if (sscanf(params, "rs",target,reason))
    {
    return SendClientMessage(playerid, ROT, "USAGE: /ban [SPIELER] [GRUND]");
    }
    if (!IsPlayerConnected(target))
    {
    return SendClientMessage(playerid, ROT, "Dieser Spieler ist nicht Online.");
    }
    new banmsg[128];
    new targetname[MAX_PLAYER_NAME];
    GetPlayerName(target,targetname,sizeof(targetname));
    new BannedAcc[64];
    format(BannedAcc, sizeof(BannedAcc), "/Accounts/%s", targetname);
    setInt:BannedAcc("Banned",1);
    format(banmsg, sizeof(banmsg), "SERVER: %s wurde vom Server gebannt. Grund: %s",targetname,reason);
    SendClientMessageToAll(ROT, banmsg);
    Kick(target);
    return 1;
    }
    }


    1. in der console steht bei ausführung der befehle:


    sscanf warning: strings without a length are deprecated, please add a destination size


    2. bei dem ban befehl steht unten das in der zielaccountdatei banned auf 1 gesetzt werden soll (siehe script-> unterer teil des ban scriptes mit hsa)
    aber es wird nicht gemacht es steht immernoch auf 0 in der zielaccountdatei


    wo liegen die probleme ?


    EDIT:// hab den code nochmal abgeändert damit ihr den aktuellen habt zum nachschauen

    new join[3];
    sound[0]=1183; (zeile 18)
    sound[1]=1185;
    sound[2]=1187;


    hier bekomme ich folgenden error:


    test.pwn(18) : error 010: invalid function or declaration


    das is der rest für den zufall sound:


    new joinmusik;
    joinmusik=random(sizeof(join));
    PlayerPlaySound(playerid,join[joinmusik],0,0,0);

    ohne die 6 ist das gleiche:


    hier mal der code für den login dialog


    if (dialogid == DIA_LOG)
    {
    if (response)
    {
    if (!strcmp(inputtext,getString:Account("Passwort"),false,))
    {
    SendClientMessage(playerid, ROT, "Falsches Passwort!");
    ShowPlayerDialog(playerid, DIA_LOG, DIALOG_STYLE_PASSWORD, "Einloggen", "Bitte logge dich ein:", "Login", "Abbrechen");
    }
    else
    {
    AccountLaden(playerid,inputtext);
    SendClientMessage(playerid, GRÜN, "Du hast dich erfolgreich eingeloggt.");
    }
    }
    else
    {
    Kick(playerid);
    }
    }

    danke :)


    das mit dme passwort abfragen spinnt schon wieder rum -.-


    if (!strcmp(inputtext,getString:Account("Passwort"),false,6))


    wenn ich im spiel beim einloggen kein passwort also nichts eingebe und auf einloggen gehe kommt falsches passwort


    aber wenn ich irgendwas ein gebe egal ob das passwort falsch ist oder nicht loggt er mich ein

    ja ich frager es ja per fexist ab nur wenn ich oben drüber bei


    format(Account, sizeof(Account), "/Accounts/%s.hsa", SpielerName(playerid));


    das .hsa weg lasse findet er meine account datei nicht und möchte das ich mich registriere


    hänge ich sie ran findet er zwar meine account datei erstellt aber eine leere datei mit meinem namen mit der endung .hsa.hsa


    und somit habe ich meine normale account datei und dann noch mal eine leere datei und das möchte ich ja nicht ^^

    ok habs danke :)


    habe nun ein anderes kleines problem:


    public OnPlayerConnect(playerid)
    {
    new Account[64];
    format(Account, sizeof(Account), "/Accounts/%s.hsa", SpielerName(playerid));
    if (getInt:Account("Banned") == 0)
    {
    if (fexist(Account))
    {
    ShowPlayerDialog(playerid, DIA_LOG, DIALOG_STYLE_PASSWORD, "Log-In", "Bitte logge dich ein:", "Login", "Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid, DIA_REG, DIALOG_STYLE_PASSWORD, "Registrieren", "Du hast hier noch keinen Account. Registriere dich zunächst hier:", "Register", "Abbrechen");
    }
    }
    else
    {
    SendClientMessage(playerid, ROT, "Du bist auf diesem Server gebannt.");
    Kick(playerid);
    }
    return 1;
    }



    findet er den account kommt auch das feld für den login nur leider erstellt er dann noch eine XYZ(spielername).hsa.hsa


    wenn ich oben bei:


    format(Account, sizeof(Account), "/Accounts/%s.hsa", SpielerName(playerid));
    das .hsa weg mache kommt immer das registrieren fenster also er findet die account datei irwie nicht



    kann mir bitte einer helfen ?


    :)