Beiträge von Cr4sh

    Hallo Breadfish :)


    Ich suche eine Abfrage, ob ein Auto auf oder zu ist.
    Wenn es auf ist, kann man einsteigen, wenn es zu ist, dann halt nicht.
    Aber wenn es zu ist dann sollte es nicht so sein, das der Player erst einsteigt und dann wieder aussteig, weil das Auto ja abgeschlossen ist.


    Ob das Auto auf oder zu ist speicher ich so ab:
    CarInfo[carid][carLock] = dini_Int(pfad,"Lock");


    Also eig müsste ich nur wissen, unter welchem public die Abfrage muss xD


    //edit: wenn man das Auto auf/zuschließt, dann sollte für ca. 2-3 sekunden mitten auf dem screen ein Text erscheinen.
    Weiß wer wie das geht? :)

    Wenn ich jetzt /haus [option] eingebe, dann kommt immer die fehlermeldung..aber ich hab grad ne idee :)
    die mal ausprobieren^^


    Okay, wenn auch ein bisschen umständlich, aber ich habe das problem gelöst :)
    Danke an alle Poster! :thumbup:

    Okay danke.


    Ich bin keiner der das einfach kopiert also um sicherzugehen, dass ich alle übernommen habe:
    du hast nur in jede sscanf abfrage die option eingebaut, oder?

    Hier mal der komplette Befehl..


    //------------------------------------/haus-----------------------------------//
    dcmd_haus(playerid,params[])
    {
    new option[25];
    if(sscanf(params,"s",option))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /haus [text] [miete]");
    {
    if(strfind(option,"text",true) == 0)
    {
    for(new haus;haus<MAX_HAUS;haus++)
    {
    if(IsPlayerInRangeOfPoint(playerid,5,HausInfo[haus][Haus_X],HausInfo[haus][Haus_Y],HausInfo[haus][Haus_Z]) && strcmp(HausInfo[haus][Haus_Besitzer],SpielerName(playerid),false) == 0)
    {
    new pfad[50],msg[128];
    if(sscanf(params,"s",msg))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /haus text [Dein Text]");
    format(pfad,sizeof(pfad),"/Häuser/%d.txt",haus);
    dini_Set(pfad,"Text",msg);
    KillHaus(haus);
    LoadHaus(haus);
    return true;
    }
    }
    }
    if(strfind(option,"miete",true) == 0)
    {
    for(new haus;haus<MAX_HAUS;haus++)
    {
    if(IsPlayerInRangeOfPoint(playerid,5,HausInfo[haus][Haus_X],HausInfo[haus][Haus_Y],HausInfo[haus][Haus_Z]) && strcmp(HausInfo[haus][Haus_Besitzer],SpielerName(playerid),false) == 0)
    {
    new pfad[50],miete;
    if(sscanf(params,"i",miete))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /haus miete [Deine Miete 100$ +]");
    format(pfad,sizeof(pfad),"/Häuser/%d.txt",haus);
    dini_IntSet(pfad,"Miete",miete);
    KillHaus(haus);
    LoadHaus(haus);
    return true;
    }
    }
    }
    if(strfind(option,"test",true) == 0)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Kann das überhaupt gehen?");
    }
    if(strfind(option,"erstellen",true) == 0)
    {
    if(IsPlayerAnAdmin(playerid,5))
    {
    new Float:x,Float:y,Float:z,preis;
    if(sscanf(params,"i",preis))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /haus erstellen [Preis]");
    GetPlayerPos(playerid,x,y,z);
    CreateHaus(x,y,z,preis,"Keiner",0);
    return true;
    }
    }
    if(strfind(option,"löschen",true) == 0)
    {
    if(IsPlayerAnAdmin(playerid,5))
    {
    for(new haus;haus<MAX_HAUS;haus++)
    {
    if(IsPlayerInRangeOfPoint(playerid,5,HausInfo[haus][Haus_X],HausInfo[haus][Haus_Y],HausInfo[haus][Haus_Z]))
    {
    new pfad[50],msg[50],msg2[75];
    format(pfad,sizeof(pfad),"/Häuser/%d.txt",haus);
    format(msg,sizeof(msg),"ehemaliger Besitzer: %s",HausInfo[haus][Haus_Besitzer]);
    format(msg2,sizeof(msg2),"Du hast das Haus mit der ID [%i] erfolgreich gelöscht.",haus);
    dini_Remove(pfad);
    KillHaus(haus);
    SendClientMessage(playerid,COLOR_BLUE,msg2);
    SendClientMessage(playerid,COLOR_BLUE,msg);
    return true;
    }
    }
    }
    }
    if(strfind(option,"clearung",true) == 0)
    {
    if(IsPlayerAnAdmin(playerid,5))
    {
    for(new haus;haus<MAX_HAUS;haus++)
    {
    if(IsPlayerInRangeOfPoint(playerid,5,HausInfo[haus][Haus_X],HausInfo[haus][Haus_Y],HausInfo[haus][Haus_Z]))
    {
    new pfad[50],preis;
    if(sscanf(params,"i",preis))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /haus clearung [neuer Preis]");
    format(pfad,sizeof(pfad),"/Häuser/%d.txt",haus);
    dini_Set(pfad,"Besitzer","Keiner");
    dini_IntSet(pfad,"Preis",preis);
    KillHaus(haus);
    LoadHaus(haus);
    return true;
    }
    }
    }
    }
    }
    return 1;
    }

    Hallo Breadfish :)


    Mal wieder ein kleines Problem...
    Wenn ich ingame /haus eingebe, dann kommen die optionen (wie gewollt)
    wenn ich dann /haus erstellen eingebe, dann kommt wieder eine Fehlermeldung, undzwar das man den Preis vergessen hat. (auch wie gewollt)
    Wenn man aber /haus erstellen 500 eingibt, dann kommt die Fehlermeldung, das man den preis vergessen haben soll, trotzdem und es wird kein haus erstellt...


    Hier der Code:
    //------------------------------------/haus-----------------------------------//
    dcmd_haus(playerid,params[])
    {
    new option[25];
    if(sscanf(params,"s",option))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /haus [erstellen]");
    {
    if(strfind(option,"erstellen",true) == 0)
    {
    new Float:x,Float:y,Float:z,preis;
    if(sscanf(params,"i",preis))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /haus erstellen [Preis]");
    GetPlayerPos(playerid,x,y,z);
    CreateHaus(x,y,z,preis,"Keiner",0);
    return true;
    }
    }
    return 1;
    }


    Jemand ne idee, warum der die 2te sscanf abfrage nicht erkennt oderso?