Beiträge von Optiimal

    if(dialogid == shopmenu) // Name des Menüs, das wir als ID 0 definiert haben
    {
    if(response)
    {
    if(listitem == 0) // handy
    {
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");
    if(Spieler[playerid][handy] >= 1 )return SendClientMessage(playerid,0xFFFFFFFF,"Du hast schon ein Handy.");
    GivePlayerMoney(playerid, -400);
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dir ein Handy Gekauft");
    Spieler[playerid][handy] = 1;
    }
    if(listitem == 1) // handyver
    {
    if(Spieler[playerid][handyver] >= 1 )return SendClientMessage(playerid,0xFFFFFFFF,"Du hast schon ein Handyvertrag.");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast ein Vertrag Unterschrieben");
    SendClientMessage(playerid,0xFFFFFFFF,"Du zahlst bei jedem Payday jetzt 150$");
    Spieler[playerid][handyver] = 1;
    }
    if(listitem == 2) // handyver Kündigen
    {
    if(Spieler[playerid][handyver] >= 0 )return SendClientMessage(playerid,0xFFFFFFFF,"Du hast kein Vertrag.");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast deinen Vertrag Gekündigt");
    Spieler[playerid][handyver] = 0;
    }
    if(listitem == 3) // handyguthaben 20 $
    {
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dir 20 $ Guthabengekauft");
    Spieler[playerid][handygut] = 20;
    }
    if(listitem == 4) // handyguthaben 40 $
    {
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dir 40 $ Guthabengekauft");
    Spieler[playerid][handygut] = 40;
    }


    Es funkt nur handykaufen und handy vertrag kaufen


    bei handyvertrag kündigen kommt immer du hast kein vertrag


    und beim Guthaben passiert gar nichts -.- ?
    MFG Mipu

    Das bei den new´s
    new preise[] = {1000,2000,4000};



    und das in denn CMD rein
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");


    also so


    if(strcmp("/weapons", cmdtext, true, 10) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");
    GivePlayerWeapon(playerid,4,1);
    GivePlayerWeapon(playerid,23,300);
    GivePlayerWeapon(playerid,41,500);
    GivePlayerMoney(playerid,-12000);
    SendClientMessage(playerid, COLOR_RED,"Bedenke: Nach einem Teleport sind die Waffen weg!");
    }
    return 1;
    }

    Es sollen alle 10 Sekunden 2 $ vom "handygut" abgezogen werden aber das funkt nicht irgendwie bricht nach der zeit die verbindung ab und ich habe trozdem noch das Guthaben was ich vorher hatte (=



    public handypu(playerid)
    {
    new handykost =2;
    GivePlayerMoney(handygut,-handykost);
    new pid = floatround(floatabs(float(telefonanfrage[playerid])));
    if(Spieler[playerid][handygut] == 0)
    if(Spieler[playerid][telef]== 1)
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Dein Guthaben ist leer");
    format(tmpstring,sizeof(tmpstring),"~~~ Die Verbindung zu %s ging verloren ~~~",PlayerName(playerid));
    SendClientMessage(pid,COLOR_BLUE,tmpstring);
    PlayerPlaySoundEx(pid,klingeltonarten[klingelton[pid]]+1);
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_STOPUSECELLPHONE);
    SetPlayerSpecialAction(pid,SPECIAL_ACTION_STOPUSECELLPHONE);
    telefoniert[playerid] = false;
    telefoniert[pid] = false;
    telefonanfrage[playerid] = MAX_PLAYERS;
    telefonanfrage[pid] = MAX_PLAYERS;
    Spieler[playerid][telef] = 0;


    return 1;
    }

    Public OnGameModeInit
    handyday[playerid] = SetTimerEx("handypu",10000,1,"i",playerid);


    if(strcmp(cmd, "/anrufen", true) == 0) {
    tmp = strtok(cmdtext, idx);
    if(Spieler[playerid][handy] == 1 )
    if(Spieler[playerid][handygut] ==0 ) { SendClientMessage(playerid,COLOR_WHITE,"Du hast kein Guthaben auf deinem Handy"); }
    else if(Spieler[playerid][handyver] == 0 ) return SendClientMessage(playerid,COLOR_WHITE,"Du hast kein Guthaben auf deinem Handy und keinen HandyVertrag!");
    else if(Spieler[playerid][handyver] == 1 ) { SendClientMessage(playerid,COLOR_WHITE,"Du hast kein Guthaben auf deinem Handy daher telefonierst du nun über deinen Vertrag!"); }



    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /anrufen [playerid]");
    return 1;
    }
    new pid = strval(tmp);

    if(!IsPlayerConnected(pid))
    {
    SendClientMessage(playerid,COLOR_RED,"Diesen Spieler gibt es nicht");
    return 1;
    }
    if(telefoniert[playerid])
    {
    SendClientMessage(playerid,COLOR_RED,"Du telefonierst bereits.");
    return 1;
    }
    if(telefoniert[pid])
    {
    SendClientMessage(playerid,COLOR_RED,"Es ist Besetzt");
    return 1;
    }
    if(Spieler[pid][handy] == 0 )return SendClientMessage(playerid,0xFF0000FF,"Der Spieler hat kein Handy");
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_USECELLPHONE);
    PlayerPlaySoundEx(pid,klingeltonarten[klingelton[pid]]);
    format(tmpstring,sizeof(tmpstring),"~~~ %s ruft an!!! ~~~",PlayerName(playerid));
    SendClientMessage(pid,COLOR_BLUE,tmpstring);
    format(tmpstring,sizeof(tmpstring),"~~~ Du rufst %s an... ~~~",PlayerName(pid));
    SendClientMessage(playerid,COLOR_BLUE,tmpstring);
    telefonanfrage[pid] = playerid*(-1);
    telefonanfrage[playerid] = pid*(-1);
    telefoniert[pid] = true;
    telefoniert[playerid] = true;
    Spieler[playerid][telef] = 1;
    return 1;
    }

    Am besten machst du das so


    forward Ports(playerid);
    forward doPort();
    Bei
    OnGameModeInit
    public doPort()
    {
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(!IsPlayerConnected(i) ||IsPlayerNPC(i))continue;
    Ports(i);
    }
    return 1;
    }
    CreatePickup(1559, 23,x,y,z); das 1559 ist der pickup das 23 weis ich nicht ^^ aber braucht man auch


    public Ports(playerid)
    {
    if (PlayerToPoint(1, playerid,x,y,z)) //eingang
    SetPlayerInterior(playerid, 0);
    SetPlayerPos(playerid, x,y,z); // Die coords von interrior
    SetPlayerFacingAngle(playerid, 0.0);
    }
    else if (PlayerToPoint(1, playerid,x,y,z)) //ausgang
    {
    SetPlayerInterior(playerid, 0);
    SetPlayerPos(playerid, x,y,z); // die coords draussen dann wieder
    SetPlayerFacingAngle(playerid, 90.0);
    }
    }

    hmm sieht nice Aus


    aber muss man die funktionen auch irgendwie anders schreiben


    weil bei dcmd und strget sind die funktionen auch komplett verschieden

    new paydayzeit = dini_Int(string, "zeitseitpayday");
    new spielzeitinsgesamt = dini_Int(string, "spielzeit");
    pSincePayday[playerid] = paydayzeit;
    pPlaytime[playerid] = spielzeitinsgesamt;


    }
    else // die Datei existiert nicht
    {
    dini_Create(string);
    }


    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1113) : warning 217: loose indentation
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1121) : error 029: invalid expression, assumed zero
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1126) : warning 217: loose indentation
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Der fehler liegt bei dem else

    Zitat

    (17901) : warning 209: function "OnPlayerLogin" should return a value
    (17902) : error 010: invalid function or declaration


    Hier steht aber error 010: invalid function or declaration und er hat 4 klamer zu und 1 nur offen


    aber schauen wir mal wenn er denn ganzen public geschickt hat

    gTeam[playerid] = PlayerInfo[playerid][pTeam];
    {
    gPlayerLogged[playerid] = 1;
    SpawnPlayer(playerid);
    format(tmp2, sizeof(tmp2), "~w~Willkommen ~n~~y~ %s", playername2);
    DateProp(playerid);
    GameTextForPlayer(playerid, tmp2, 5000, 1);
    SendClientMessage(playerid, COLOR_YELLOW, motd);
    if(PlayerInfo[playerid][pFMember] < 255)
    {
    format(tmp2, sizeof(tmp2), "Family MOTD: %s.", FamilyInfo[PlayerInfo[playerid][pFMember]][FamilyMOTD]);
    SendClientMessage(playerid, COLOR_YELLOW, tmp2);

    }
    return 1;
    }


    Versuchs mal so

    @ DarknessKing das mit profi oder sonstiges hat nichts zu tun ob man profi ist oder nicht das kommt auf die beiträge an und ich bin schon zimlich lang registriert also spar dir solche meldungen -.-


    @ [BFX]∑xþ└øšîøµ Danke dir ich werde mir das dann anschauen

    Gibt es sowas wie
    ToggleVehicleControllable(playerid,0);


    weil ich will die energie von auto überprüfen lassen das weis ich ja wie das funkt und das dass auto dann steht wenn die energie des autos fast kaputt ist ?

    MFG Mipu

    Vielen dank und soll ich das hier einfügen


    public MyDialogStatsSystem(playerid)
    {
    //new name[MAX_PLAYER_NAME];
    new String[128];
    format(String, sizeof(String) ,"bank:%d$\nWanteds:%d\nteam:%d\nGeld:%d$\nhandy:nteam:%d\nhandygut:%d$",Spieler[playerid][bank], Spieler[playerid][wanted],Spieler[playerid][team],Spieler[playerid][Geld],Spieler[playerid][handy],Spieler[playerid][handygut]);
    ShowPlayerDialog(playerid, DIALOG_STYLE_MSGBOX, 0, "Mein Spiel Stand", String, "Weiter", "abbrechen");
    return 1;
    }