Beiträge von IPrototypeI

    ich weiß nicht ob dies in dem script ,welches du benutzst schon existiert jedoch setzt du mal die accountvariabel


    gPlayerAccount auf 1 , wenn er überprüft ob der account vorhandne ist mit


    GetPlayerName(playerid, plname, sizeof(plname));
    format(string, sizeof(string), "/Accounts/%s.ini", plname);
    if(fexist(string))


    bei OnPlayerConnect danach machst du eine abfrage rein , dort wo dein logindialog aufgerufen wird machst du eine abfrage


    if(gPlayerAccount[playerid] == 1 && gPlayerLogged[playerid] == 0) wenn er schon ein account hat wird so der logidialog aufgerufen und mit


    else if(gPlayerAccount[playerid] == 0 && gPlayerLogged[playerid] == 0) wenn der account nicht vorhanden ist. dann sollte es klappen so wie du es willst

    Also wie BloodyEric schon erwähnt hatte wirst du ohne was besonderes die map nicht verkaufen. Wenn dann sollten da vllt ihrgend welche Features noch dazu kommen
    und auch ein gemapptes interior.


    weil genau so eine ähnliche map besitze ich auch zwar nicht am selben punkt doch ganz daneben und der aufwand ist auch nicht riesig.

    Sieht Super aus.


    Die Kirche find ich richtig gut gelungen 10/10


    jedoch die Bank so wie sie ist , ist es was ganz neues nur deine innen Einrichtung die könnte mein verfeinern ^^ weil es noch ziemlich leer aussieht auf den
    Screens aber trotzdem 7/10.

    mal ehrlich hast du überhaupt den command selbst gemacht ich denk eher nicht weil sonst würdest du dich mit parameter auskennen


    und was ist hier der parameter für den User ??? da schauen wir uns mal dne befehl genau an


    new KickSpieler;
    KickSpieler = ReturnUser(tmp);


    daraus schließt man das für KickSpieler wie auch hier verwendet


    if(IsPlayerConnected(KickSpieler))


    das der Parameter für den user kickspieler ist darum muss das dann auch so heißen


    Kick(KickSpiele);

    ^^
    also ging es nicht darum das man das tutorial nochmal machen muss , wenn man mitten im Tutorial das spiel verlässt


    wie du es hier geschrieben hast


    Accounts save system



    Guten Tag Liebes Breadfish.


    undzwar habe ich ein großes problem...In meinen Normalen Godfahter saven die accounts nicht


    also sie werden im Account ordner gespeichert aber wenn ich mich nach dem Tutorial auslogge


    und dann wieder ins game komme muss ich wieder das tutorial machen.Pls helfen oder mir per


    Teamviewer hefen , bin eigentlich ein guter scripter aber irgendwie bekomme ich das nicht hin ;(


    Mfg


    SounD


    weil sollte dies nicht so der fall sein wird überhaupt überprüft beim einloggen ob der account existiert.

    Du weisst auch das man keine neuen includes braucht je nach version nur Plugins müssen gepatcht werden auf die jeweilige samp Version.
    Darum kannst du jede Version der ocmd include verwenden



    /*-- --- . . --
    | | | |\ /| | \
    | | | | V | | |
    | | | | | | /
    --- --- | | --
    I.5.O by kleinerOpa*/
    //#include
    #define ocmd:%1(%2) forward ocmd_%1(%2);\
    public ocmd_%1(%2)
    public OnPlayerCommandText(playerid,cmdtext[])
    {
    cmdtext[0]='_';
    new ocmdStr[128],ocmdParams[128],bool:ocmdAffe,ocmdFu;
    for(new oi;oi<128;oi++)
    {
    if(cmdtext[oi]=='\0')break;
    if((cmdtext[oi]==' ')&&(!ocmdAffe))
    {
    ocmdAffe = true;
    continue;
    }
    if(!ocmdAffe)ocmdStr[oi] = tolower(cmdtext[oi]);
    else
    {
    ocmdParams[ocmdFu]=cmdtext[oi];
    ocmdFu++;
    }
    }
    format(ocmdStr,128,"ocmd%s",ocmdStr);
    if(!strlen(ocmdParams))format(ocmdParams,128," ");
    if(CallLocalFunction(ocmdStr,"ds",playerid,ocmdParams))return 1;
    cmdtext[0]='/';
    return CallLocalFunction("ocmdOnPlayerCommandText","ds",playerid,cmdtext);
    }
    #define OnPlayerCommandText ocmdOnPlayerCommandText
    forward ocmdOnPlayerCommandText(playerid,cmdtext[]);



    hier bitte habe dies hat mir NiLsx3 aka. Easy gepostet wo ich danach gefragt habe nach einer neueren Version der ocmd include


    [Suche] neue ocmd include

    In der Server.log aber was auch sein kann das er das Rcon hat, jedoch weiß ich nicht wie dein Befehl ist um Leute admin zu geben, wenn du bei der Abfrage ob der Spieler Admin ist
    auch nebenbei IsPlayerAdmin stehen hast so kann man den command auch benutzen wenn man im rcon eingeloggt ist.

    so hab was kleines probiert Heute Morgen und hab für dich den Test Command


    if(strcmp(cmdtext, "/test", true) == 0)
    {
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 497)
    {
    new Float:fPX, Float:fPY, Float:fPZ, Float:fVX, Float:fVY, Float:fVZ, Float:object_x, Float:object_y, Float:object_z, veh, point[128],Float: test;
    veh = GetPlayerVehicleID(playerid);
    GetVehiclePos(veh,fPX, fPY, fPZ);
    GetPlayerCameraFrontVector(playerid, fVX, fVY, fVZ);
    const Float:fScale = 100.0;
    GetPointZPos(fPX + floatmul(fVX,fScale), fPY + floatmul(fVY,fScale), test);
    object_x = fPX + floatmul(fVX,fScale);
    object_y = fPY + floatmul(fVY,fScale);
    //object_z = fPZ + floatmul(fVZ,test);
    object_z = test;
    CreateObject(345, object_x, object_y, object_z, 0.0, 0.0, 0.0);
    format(point, sizeof(point), "You have shot on the point: %f, %f, %f", object_x, object_y, object_z);
    SendClientMessage(playerid, 0xFFFFFFFF, point);
    printf("The Z-coordinate of X = %f | Y = %f is Z = %.02f", fPX, fPY, fScale);
    }
    else
    {
    SendClientMessage(playerid,0xFFFFFFFF,"you haven't got a helicopter");
    return 1;
    }
    return 1;
    }


    ich hoffe das ist das was du gesucht hast ^^ , falls du es nicht schon alleine gelöst hast.


    hier noch ein screen dazu


    26 Errors sind meisten ein Klammerfehler, sprich eine { oder } fehlt. Hier siehts so aus, als ob der If Block mit IsPlayerConnected nicht geschlossen ist


    Hagi um deinem post etwas zu ergänzen ^^ der fehler kommt davon das targetid
    nicht definiert ist

    Ich weiß nicht was du da siehst. Ich sehe einen völlig legitimen Code.


    stimmt Padorom hast recht ich hab davor ein wahrer scheiß zusammen geschrieben, hatte ein kleinen durchhänger ist mir gerade auch aufgefallen naja ich habe auch momentan was bessers zu tun


    was jedoch komplett fehlt ist das der Code


    unter OnDialogResponse muss


    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;
    }
    }
    }

    schau doch nochmal deinen command genauer an


    ocmd:call(playerid,params[])
    {
    new pID, nachricht[128];
    if(sscanf(params,"s",pID,nachricht))return SendClientMessage(playerid,BLAU,"/call [playerid] [nachricht]");
    format(nachricht,sizeof(nachricht),"(am Handy) %s: %s",SpielerName(playerid),nachricht);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    SendPlayerMessageToPlayer(playerid,BLAU,nachricht);
    }
    return 1;
    }


    /call [playerid] [nachricht]


    if(sscanf(params,"s",pID,nachricht))return SendClientMessage(playerid,BLAU,"/call [playerid] [nachricht]");


    if(sscanf(params,"us",pID,nachricht))return SendClientMessage(playerid,BLAU,"/call [playerid] [nachricht]");


    dir fehlt dein integer für den user und noch was welche version von sscanf benutzt du die neuste weil dort wird mit string als parameter auch anders gehandelt


    if(sscanf(params,"us[128]",pID,nachricht))return SendClientMessage(playerid,BLAU,"/call [playerid] [nachricht]");

    ich bitte dich das einzufügen wiirst du doch wohl noch hin bekommen

    }
    else
    {
    if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pSupporter] >= 1)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    if(SupMobilAbgeschlossen[vehicleid] == 0)
    {


    deine 26 Erros kommen durch einen Klammerfehler und bedeutet das du 1 Klammer zuviel hast

    Also die einzigste Möglichkeit könnte sein das du das Textdraw falsch eingfügt hast.


    Darum stellt sich auch die Frage wo hast du das eingefügt ?
    und was hast du eingefügt vllt ist auch ein Fehler bei dem Code ? ( Was jedoch nicht denke da du diesen Code ja schon wie du es hier geschrieben hast funktioniert hat nur auf dem Bar Script)

    Ich bin Dagegen. 100 Nachrichten reichen völlig aus sollte einem jedoch
    der platz zu knapp werden so kann man auch das postfach leeren, ganz
    einfach und wer will das seine wichtigen Pns erhalten bleiben der kann
    wie BlackAce schon erwähnt hat sich die Konversation runterlade.