Beiträge von maxiking

    Achso und ich würde ers abfragen ob er in der nähe ist und nicht erst Abfragen ob das Tor auf oder zu ist, denn wenn er nicht in der nähe ist dann returnt er einfach ohne das nächte Tor abzufragen.



    Von

    if(!isPlayerInFrak(playerid,3) && !isAdmin(playerid,5)) return 1;
    {
    if(TorStatus[Army1Gate] == false)
    {
    if(!IsPlayerInRangeOfPoint(playerid,8,480.70001, 2379.6001, 30.8)) return 1;
    MoveObject(Army1Gatee,480.70001, 2379.6001, 30.8-10,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    TorStatus[Army1Gate] = true;
    }
    else
    {
    if(!IsPlayerInRangeOfPoint(playerid,8,480.70001, 2379.6001, 30.8)) return 1;
    MoveObject(Army1Gatee,480.70001, 2379.6001, 30.8,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    TorStatus[Army1Gate] = false;
    }
    if(TorStatus[Army2Gate] == false)
    {
    if(!IsPlayerInRangeOfPoint(playerid,8,-163.099609375, 2507.7001953125, 25)) return 1;
    MoveObject(Army2Gatee,-163.099609375, 2507.7001953125, 25-10,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    TorStatus[Army2Gate] = true;
    }
    else
    {
    if(!IsPlayerInRangeOfPoint(playerid,8,-163.099609375, 2507.7001953125,25)) return 1;
    MoveObject(Army2Gatee,-163.099609375, 2507.7001953125,25,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    TorStatus[Army2Gate] = false;
    }


    }


    Zu

    if(!isPlayerInFrak(playerid,3) && !isAdmin(playerid,5)) return 1;
    {
    if(IsPlayerInRangeOfPoint(playerid,8,480.70001, 2379.6001, 30.8))
    {
    if(TorStatus[Army1Gate] == false)
    {
    MoveObject(Army1Gatee,480.70001, 2379.6001, 30.8-10,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    TorStatus[Army1Gate] = true;
    }
    else
    {
    MoveObject(Army1Gatee,480.70001, 2379.6001, 30.8,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    TorStatus[Army1Gate] = false;
    }
    return 1;
    }
    else if(IsPlayerInRangeOfPoint(playerid,8,-163.099609375, 2507.7001953125, 25))
    {
    if(TorStatus[Army2Gate] == false)
    {
    MoveObject(Army2Gatee,-163.099609375, 2507.7001953125, 25-10,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    TorStatus[Army2Gate] = true;
    }
    else
    {
    MoveObject(Army2Gatee,-163.099609375, 2507.7001953125,25,5);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    TorStatus[Army2Gate] = false;
    }
    return 1;
    }
    }

    Ich weiß nicht ob es daran liegt aber habe auf jedenfall einen Fehler gefunden, änder mal das hier:


    if(pDaten[playerid][Bank] < strval(inputtext)) return format(string,128,"Wie viel Geld möchtest du dem Spieler %s überweisen?",GetName(pID)); ShowPlayerDialog(playerid,D_Ueberweisen3,DIALOG_STYLE_INPUT,"Bank - Überweisung",string,"Überweisen","Abbrechen");


    in das hier:



    if(pDaten[playerid][Bank] < strval(inputtext))
    {
    format(string,128,"Wie viel Geld möchtest du dem Spieler %s überweisen?",GetName(pID));
    ShowPlayerDialog(playerid,D_Ueberweisen3,DIALOG_STYLE_INPUT,"Bank - Überweisung",string,"Überweisen","Abbrechen");
    return 1;
    }

    Probiers mal so.



    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == DIALOG_LOGIN)//dialogid == ...
    {
    if(response == 0)
    {
    SendClientMessage(playerid,WEIS,"Sie haben den Login vorgang abgebrochen!");
    Kick(playerid);
    }
    if(strlen(inputtext))
    {
    SendClientMessage(playerid,WEIS,"ihr Kenntwort ist Fehlerhaft.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Ihr Account wurde gefunden,\nBitte geben sie das Kenntwort ein:","Anmelden","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    return 1;
    }
    //} Klammer zu viel.
    return 1;
    }
    if(dialogid == DIALOG_REGISTER)//dialogid == ...) Klammer zu
    {
    if(response == 0)
    {
    SendClientMessage(playerid,WEIS,"Sie haben den Registrier vorgang abgebrochen!");
    Kick(playerid);
    return 1;
    }
    if(response == 1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,WEIS,"Sie haben den Registrier vorgang abgebrochen!");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Sie haben bei uns noch kein Account.\nBitte geben sie ein Kennwort ein:","Registrieren","Abbrechen");
    return 1;
    }
    else
    {
    REGISTER(playerid,inputtext);
    return 1;
    }
    }//Klammer zu hat gefehlt
    return 1;
    }
    return 1;
    }

    Du erstellst die Objekte 16x, so sollte es klappen.



    new waffen_obj[16];
    new bool:waffen_status;



    ocmd:waffenfiguren(playerid)
    {
    if(!isPlayerInFrakt(playerid,6)) return SendClientMessage(playerid,ROT,"Du bist Kein Fahrschul Lehrer");
    if(waffen_status==false) //Wenns noch nicht gemacht wurde, wird es erstellt
    {
    //for(new i; i<sizeof(waffen_obj); i++)
    waffen_obj[0] = CreateDynamicObject(3018, -2013.41, -232.80, 37.96, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[1] = CreateDynamicObject(3018, -2014.88, -227.98, 37.96, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[2] = CreateDynamicObject(3020, -2013.42, -232.79, 37.94, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[3] = CreateDynamicObject(3021, -2013.41, -232.79, 37.96, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[4] = CreateDynamicObject(3022, -2013.41, -232.80, 37.94, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[5] = CreateDynamicObject(3023, -2013.42, -232.79, 37.92, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[6] = CreateDynamicObject(3019, -2013.43, -232.79, 37.94, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[7] = CreateDynamicObject(3024, -2013.44, -232.82, 37.92, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[8] = CreateDynamicObject(3025, -2013.36, -232.82, 37.86, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[9] = CreateDynamicObject(3019, -2014.89, -227.99, 37.94, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[10] = CreateDynamicObject(3020, -2014.92, -227.98, 37.94, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[11] = CreateDynamicObject(3021, -2014.95, -228.00, 37.96, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[12] = CreateDynamicObject(3023, -2014.92, -228.00, 37.92, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[13] = CreateDynamicObject(3022, -2014.95, -228.03, 37.94, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[14] = CreateDynamicObject(3024, -2014.95, -228.00, 37.92, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_obj[15] = CreateDynamicObject(3025, -2014.82, -227.93, 37.86, 0.00, 0.00, -90.00,-1,-1,-1,400.0,400.0);
    waffen_status = true;
    }
    else
    {
    //Zerstören
    for(new i; i<sizeof(waffen_obj); i++)
    DestroyDynamicObject(waffen_obj[i]);
    waffen_status = false;
    }
    return 1;
    }


    Ähh wenn mich jetzt nicht alles täuscht wird es nicht so sondern so geschrieben.



    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
    return CallLocalFunction("D_OnPlayerClickPlayerTextDraw","ii",playerid, playertextid);//PlayerText: einfach weglassen
    }

    Eigentlich habe ich es so eingestellt, dass man nach dem registrieren in die normale standard skinselection kommt und sich dann dort einen skin auswählt.


    Wenn ich das jetzt richtig verstanden habe dann musst du nur das hier raus löschen:

    if(GetPVarInt(playerid,"Registered")==1){
    SetSpawnInfo(playerid, 0, GetPVarInt(playerid,"Skin"), 943.8914,1733.1807,8.8516,265.3753, 0, 0, 0, 0, 0,0);
    SpawnPlayer(playerid);
    }


    Falls ich es falsch verstanden dann tut es mir leid.

    So sollte es klappen..


    ocmd:makeleader(playerid,params[])
    {
    if(SpielerInfo[playerid][pAlevel] >= 6)
    {
    new pID,string[144], aname[MAX_PLAYERS], frakid;
    GetPlayerName(playerid,aname,sizeof(aname));
    if(sscanf(params,"ui",pID,frakid))return SendClientMessage(playerid,Rot,"[FEHLER]{FFFFFF} Benutze: /makeleader [Name/ID] [0-10]");
    {
    SpielerInfo[pID][pFraktion] = frakid;//Ers Fraktion setzen dann abfragen
    format(string,sizeof(string),"[INFO]{FFFFFF} %s %s hat dich zum Leader der Fraktion %s ernannt!",GetPlayerAdminRank(playerid),aname,GetPlayerFraktion(pID));//playerid mit pID augetauscht
    SendClientMessage(playerid,Rot,string);
    }
    }
    return 1;
    }

    Hallo, dein Problem liegt da drinne, dass du jedesmal wenn er nicht in der nähe ist eine Nachricht sendet sprich du krichst 1x true und 199x false


    Hier eine Lösung wie du das Problem beheben könntest:



    ocmd:harvest(playerid,params[])
    {
    new check=0;
    for(new i;i<MAX_DRUGPLANTS;i++) {
    if(IsPlayerInRangeOfPoint(playerid,3,DPlantInfo[dPos][0],DPlantInfo[dPos][1],DPlantInfo[dPos][2])) {
    check=1;
    //Hier dein Code
    }
    }
    if(check==0) {
    SendClientMessage(playerid,COLOR_LIGHTRED,"Du bist nicht in der nähe einer Pflanze!");
    }
    check=0;
    return 1;
    }