Beiträge von hearteyy

    Beiträge: 563


    Ich glaube manche spammen hier im Forum nur rum, dass die kp von den einfachsten Dingen haben bei sovielen Beiträgen. O___o


    Was der Fehler heißt, kannst du dir auch selbst beantworten. Zumindest müsstest du (zumindest etwas) Englischkenntnissen besitzen.

    Versuch es mal bitte so:



    public OnPlayerText(playerid, text[])
    {
    new string[256];
    new tmp[128];
    ...
    if(atmabheben[playerid] == 1) {
    new betrag = strval(text);
    if (betrag <= 2500 && betrag > 0) {
    if(PlayerInfo[playerid][pBank] >= betrag) {
    GivePlayerCash(playerid,betrag);
    PlayerInfo[playerid][pBank] = PlayerInfo[playerid][pBank]-betrag;
    format(string, sizeof(string), "[INFO:] Du hast $%d von deinem Konto abgehoben, Neuer Kontostand: $%d", betrag,PlayerInfo[playerid][pBank]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    PlayerActionMessage(playerid,15.0,"nimmt ein paar Scheine aus dem Geldautomat");
    OnPlayerDataSave(playerid);
    TogglePlayerControllable(playerid,1);
    atmabheben[playerid] = 0;
    return 1;
    }
    else {
    SendClientMessage(playerid, COLOR_LIGHTRED, "[ERROR:] Dein Konto ist nicht ausreichend gedeckt!");
    TogglePlayerControllable(playerid,1);
    atmabheben[playerid] = 0;
    }
    }
    else {
    SendClientMessage(playerid,COLOR_LIGHTRED,"[INFO:] Du kannst an einem Geldautomaten höchstens $2500 abheben.");
    TogglePlayerControllable(playerid,1);
    atmabheben[playerid] = 0;
    }
    return false;
    }
    if(atmeinzahlen[playerid] == 1) {
    new betrag = strval(text);
    if (betrag <= 2500 && betrag > 0) {
    if(GetPlayerCash(playerid) >= betrag) {
    GivePlayerCash(playerid,-betrag);
    PlayerInfo[playerid][pBank] = PlayerInfo[playerid][pBank]+betrag;
    format(string, sizeof(string), "[INFO:] Du hast $%d auf dein Konto eingezahlt, Neuer Kontostand: $%d", betrag,PlayerInfo[playerid][pBank]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    PlayerActionMessage(playerid,15.0,"schiebt ein paar Scheine in den Geldautomat");
    OnPlayerDataSave(playerid);
    TogglePlayerControllable(playerid,1);
    atmeinzahlen[playerid] = 0;
    return 1;
    }
    else {
    SendClientMessage(playerid, COLOR_LIGHTRED, "[ERROR:] Dein Konto ist nicht ausreichend gedeckt!");
    TogglePlayerControllable(playerid,1);
    atmeinzahlen[playerid] = 0;
    }
    }
    else {
    SendClientMessage(playerid,COLOR_LIGHTRED,"[INFO:] Du kannst an einem Geldautomaten höchstens $2500 einzahlen.");
    TogglePlayerControllable(playerid,1);
    atmeinzahlen[playerid] = 0;
    }
    return false;
    }


    Neue Variable, logged[MAX_PLAYERS] im Header erstellen und bei /login Variable auf 1 setzen. (Besser wäre is mit ner bool aber das is egal)



    public OnPlayerRequestSpawn(playerid)
    {
    if(logged[playerid] == 0) return false;
    return true;
    }

    Warnings sind nicht Schlimm.. Sie bedeuten einfach nix ignorier sie xD..


    Omg wenn ich sowas schon lese......



    public OnPlayerSpawn(playerid)
    {
    if(gTeam[playerid] == TEAM_SFPD) {
    SetPlayerColor(playerid, 0x33CCFFAA);
    }
    return true;
    }



    public OnPlayerDeath(playerid, killerid, reason)
    {
    SendClientMessage(killerid,0xAA333AA,"Du bist ein Mörder");
    return true;
    }



    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp("/schein",cmdtext,false,7) == 0) { // Einfache Variante,ausschmücken kannst denk ich selber ;D
    new tmp[130];
    tmp = zcmd(1,cmdtext);
    new id = strval(tmp);
    if(!strlen(tmp)) return SendClientMessage(playerid,0xAA3333AA,"Keine ID angegegeben!");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid,0xAA3333AA,"Angegebene ID ist nicht online!");
    Fuhrerschein[id] = 1;
    SendClientMessage(playerid,0xAA3333AA,"Führerschein vergeben!");
    SendClientMessage(id,0xAA3333AA,"Führerschein erhalten!");
    return true;
    }
    return false;
    }



    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(Fuhrerschein[playerid] == 0) {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,0xAA3333AA,"Du hast keinen Führerschein ;D!");
    return true;
    }
    return true;
    }



    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    return true;
    }



    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new newcar= GetPlayerVehicleID(playerid);
    new carmodel = GetVehicleModel(newcar);
    // mehr code war nicht da..
    return true;
    }



    zcmd(param, cmdtext[])
    {
    new string[128], pos, var;
    format(string, sizeof(string), "%s ", cmdtext);


    while((pos = strfind(string, " ", true)) != -1) {
    if(var == param) return string;
    var++;


    strdel(string, 0, pos + 1);
    if(strcmp(string, " ", true, pos) == 0) goto end;
    }


    end:
    string[0] = '\0';
    return string;
    }


    KornChief nichts persönliches und soll auch kein Flame sein, habs auch vor ein paar Tagen erst entdeckt, aber TidyPawn von Draco Blue formatiert dir dein Code perfekt. Einfach reinkopieren, auf formatieren klicken und den oberen Teil nehmen. So ist dein Code besser zu lesen. Hier dieser Code als Beispiel mit TidyPawn formatiert:



    // Ganz oben:
    #define rot 0xAA3333AA
    new Fuhrerschein[MAX_PLAYERS];


    // Unter OnPlayerCommandText
    if(strcmp("/schein",cmdtext,false,7) == 0) // Einfache Variante,ausschmücken kannst denk ich selber ;D
    {
    new tmp[130];
    tmp = zcmd(1,cmdtext);
    new id = strval(tmp);
    if(!strlen(tmp)) return SendClientMessage(playerid,rot,"Keine ID angegegeben!");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid,rot,"Angegebene ID nicht on!");
    Fuhrerschein[id] = 1;
    SendClientMessage(playerid,rot,"Führerschein vergeben!");
    SendClientMessage(id,rot,"Führerschein erhalten!");
    return 1;
    }



    // Unter OnPlayerEnterVehicle
    if(Fuhrerschein[playerid] == 0)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,rot,"Du hast keinen Führerschein ;D!");
    }



    // Und nun bei OnPlayerDisconnect
    Fuhrerschein[playerid] == 0


    // Falls du den zcmd Cod nicht hast, hier:
    zcmd(param, cmdtext[])
    {
    new string[128], pos, var;
    format(string, sizeof(string), "%s ", cmdtext);


    while((pos = strfind(string, " ", true)) != -1) {
    if(var == param) return string;
    var++;


    strdel(string, 0, pos + 1);
    if(strcmp(string, " ", true, pos) == 0) goto end;
    }


    end:
    string[0] = '\0';
    return string;
    }