Beiträge von Dr. Frauenarzt


    case DIALOG_TAXI:
    {
    if(response)
    {
    if(listitem == 0)
    {
    if(strval(inputtext) < 1 || strval(inputtext) > 200)
    {
    strdel(DialogString, 0, sizeof(DialogString));
    format(DialogString, sizeof(DialogString), COLOR_HEX_WHITE"Du kannst nun den Preis festlegen, den die Fahrgäste jede 10 Sekunden bezahlen\nDer Preis muss mindestens 1$ und maximal 200$ sein.");
    ShowPlayerDialog(playerid, DIALOG_TAXI, DIALOG_STYLE_INPUT, "Taxi Company", DialogString, "Weiter", "Aussteigen");
    }
    return 1;
    }
    if(listitem == 1)
    {
    RemovePlayerFromVehicle(playerid);
    return 1;
    }
    }
    }



    Hey, ich hab noch eine frage


    Wen der Spieler sich jetzt reinsetzt und 200$ z.b angibt soll sich der3D Textlabel in:


    Taxi Company\n\nFahrer: %s/nKosten: %d


    Der Mindestpreis für Taxis liegt bei 1$ und max. 200$.


    -> Hat der Spieler ein Preis angegeben und er hat ein Fahrgast muss der Fahrgast das angegebene Geld am ende zahlen z.b 100$ wird das immer alle 10 Sekunden steigen auf 200 dann 300 usw
    -> Der Spieler muss nach dem aussteigen das geld was angerechnet wurde bezahlen (bekommt der Taxifahrer bar auf die hand) (Automatisch)
    -> Spieler sollte Gelbe Farbe bekommen. (Taxi Fahrer)
    -> Sollte der Spieler das Taxi verlassen hat der Spieler 2 Minuten Zeit das er wider ins Taxi steigt sonst respawnt es und er ist als Taxifahrer nicht mehr ihm Dienst. (Taxi Fahrer)
    -> Spieler erhält wider die weiße farbe (sobald der Dienst beendet ist) (Taxi Fahrer)

    Ja, das hab ich bereits rausgefunden.



    so aber jetzt hab ich ein Problem jetzt ist das viel zu groß... obwohl es eigentlich nur um die Stadthalle geht...



    Commerce = GangZoneCreate(1392.0396,1558.8539,-1866.5282,-1727.6683);




    AddPlayerClass(230,1392.0396,-1866.5282,13.3828,106.4665,0,0,0,0,0,0); // No DM 1 Ecke 1
    AddPlayerClass(230,1558.8539,-1727.6683,13.3828,259.6646,0,0,0,0,0,0); // No DM 2 Ecke 2


    public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart)
    {
    if(Spieler[issuerid][pHitsound] == 1)
    {
    PlayerPlaySound(issuerid, 17802, 0.0, 0.0, 0.0);
    }
    if(x > 1392.0396 && x < 1558.8539 && y > -1866.5282 && y < -1727.6683 && z > 0 && z < 100)
    {
    format(string, sizeof(string),"*No-DM Zone* Du wurdest von %s in Commerce angegriffen (%.0f Schaden.)", GetName(playerid), amount);
    SendClientMessage(playerid, COLOR_ANNOUNCE, string);
    }
    return 1;
    }



    so?

    if(x > 1392.0396 && x < 1558.8539 && y > -1866.5282 && y < -1727.6683 && z > 0 && z < 100){ //In Zone //Beachte, -1866 ist KLEINER als -1727}

    Unter was soll man das einfügen wen man Fragen darf.


    So wen ich jetzt mache



    format(string, sizeof(string),"*No-DM Zone* Du wurdest von %s in Commerce angegriffen (z.b 1 Schaden.)", GetName(playerid));
    SendClientMessage(playerid, COLOR_ANNOUNCE, string);


    Wie lass ich



    if(x > 1392.0396 && x < 1558.8539 && y > -1866.5282 && y < -1727.6683 && z > 0 && z < 100)
    {
    format(string, sizeof(string),"*No-DM Zone* Du wurdest von %s in Commerce angegriffen (z.b 1 Schaden.)", GetName(playerid));
    SendClientMessage(playerid, COLOR_ANNOUNCE, string);
    }



    Wie lasse ich den schaden auslesen?


    AddPlayerClass(230,1392.0396,-1866.5282,13.3828,106.4665,0,0,0,0,0,0); // No DM 1
    AddPlayerClass(230,1558.8539,-1727.6683,13.3828,259.6646,0,0,0,0,0,0); // No DM 2



    Ich habe eine Frage ich wollte eine No DM Zone machen für die Stadthalle.
    Welche posen muss ich dafür nehmen das es rot auf der map angezeigt wird.


    Wen der Spieler in dem Bereich ist wen er geschalten wird kommt die Nachricht:


    *No-DM Zone* Du wurdest von %s in Commerce angegriffen (z.b 1 Schaden.)


    CMD:find(playerid, params[])
    {
    if(!IsLoggedIn(playerid))return 1;
    if(!(Spieler[playerid][pJob] == 2))return SendClientMessage(playerid, COLOR_GREY, "** Du bist kein Detektiv.");
    new pID, string[128], Float:pos[3], ort[36];
    if(sscanf(params, "u", pID))return SendClientMessage(playerid, COLOR_GREY, "Befehl: /find [Spieler]");
    if(pID == playerid)return SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selber suchen.");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid, COLOR_GREY, ERROR_OFFLINE);
    if(IsPlayerNPC(pID))return 1;
    if(!(Spieler[pID][pLoggedIn]))return SendClientMessage(playerid, COLOR_GREY, "Der Spieler ist nicht online.");
    GetPlayer2DZone(pID, ort, 36);
    if(pDetektivAbkling[playerid] > 0)
    {
    format(string, sizeof(string), "Mit deinem Skilllevel kannst du diesen Befehl nur alle %d Sekunden verwenden.", pDetektivAbkling[playerid]);
    SendClientMessage(playerid, COLOR_GREY, string);
    return 1;
    }
    if(GetPlayerInterior(pID) > 0)
    {
    GetPlayerPos(pID, pos[0], pos[1], pos[2]);
    SetPlayerCheckpointEx(playerid, pos[0], pos[1], pos[2], 3.0, CP_FIND, INVALID_CHECKPOINT_TYPE);
    format(string, sizeof(string), "Der Spieler befindet sich in Gebäudekomplex %d.%d", GetPlayerInterior(pID), GetPlayerVirtualWorld(pID));
    SendClientMessage(playerid, COLOR_GREEN, string);
    GivePlayerDeteSkill(playerid, 5);
    switch(Spieler[playerid][pDetektivSkill])
    {
    case 1: pDetektivAbkling[playerid] = 120;
    case 2: pDetektivAbkling[playerid] = 90;
    case 3: pDetektivAbkling[playerid] = 60;
    case 4: pDetektivAbkling[playerid] = 30;
    case 5: pDetektivAbkling[playerid] = 5;
    }
    }
    else if(GetPlayerInterior(pID) == 0)
    {
    GetPlayerPos(pID, pos[0], pos[1], pos[2]);
    SetPlayerCheckpointEx(playerid, pos[0], pos[1], pos[2], 3.0, CP_FIND, INVALID_CHECKPOINT_TYPE);
    format(string, sizeof(string), "Der Spieler befindet sich in %s", ort);
    SendClientMessage(playerid, COLOR_GREEN, string);
    GivePlayerDeteSkill(playerid, 5);
    switch(Spieler[playerid][pDetektivSkill])
    {
    case 1: pDetektivAbkling[playerid] = 120;
    case 2: pDetektivAbkling[playerid] = 90;
    case 3: pDetektivAbkling[playerid] = 60;
    case 4: pDetektivAbkling[playerid] = 30;
    case 5: pDetektivAbkling[playerid] = 5;
    }
    }
    return 1;
    }



    Hey ich habe eine frage wie mache ich für den Job Detektiv /showpos also das X möchte Y die pose von Z ziegen wie mach ich das


    new sTime = Others[sDoppelRPTime];
    if(Others[sDoppelRP] == 1)
    {
    if(sTime <= gettime())
    {
    Others[sDoppelRP] = 0;
    Others[sDoppelRPTime] = 0;
    SendClientMessageToAll(COLOR_YELLOW, "* Doppel-RP Event wurde beendet. Danke für die Teilnahme an alle!");
    }
    }





    if(Others[sDoppelRP] == 1)
    {
    new string[128], xZhours, xZminutes, xZdays;
    new zTime = Others[sDoppelRPTime];
    new xTime = (zTime - gettime());
    xZdays = xTime / 86400;
    xTime -= xZdays * 86400;
    xZhours = xTime / 3600;
    xTime -= xZhours * 3600;
    xZminutes = xTime / 60;
    xTime -= xZminutes * 60;
    if(xZhours < 1 && xZdays == 0){
    format(string, sizeof(string), COLOR_HEX_DARKORANGE"[Payday Event] "COLOR_HEX_YELLOW"Das Payday Event wurde gestartet (noch %d Minuten).", xZminutes);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }else if(xZdays < 1 && xZhours > 0){
    format(string, sizeof(string), COLOR_HEX_DARKORANGE"[Payday Event] "COLOR_HEX_YELLOW"Das Payday Event wurde gestartet (noch %d Stunden und %d Minuten).", xZhours, xZminutes);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }else if(xZdays > 0){
    format(string, sizeof(string), COLOR_HEX_DARKORANGE"[Payday Event] "COLOR_HEX_YELLOW"Das Payday Event wurde gestartet (noch %d Tage, %d Stunden und %d Minuten).",xZdays, xZhours, xZminutes);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    SendClientMessage(playerid, COLOR_YELLOW, "[Payday Event] "COLOR_HEX_YELLOW"Du erhältst am Payday einen zusätzlichen Respekt Punkt.");
    }






    Hallo ich hab noch ein Problem wen ich jetzt das event starte und den server restarte kommt * Doppel-RP Event wurde beendet. Danke für die Teilnahme an alle!
    obwohl es eigentlich aktiv ist was ist daran falsch?


    -> Kann man iwie einfügen





    CMD:doublerp(playerid, params[])
    {
    if(Spieler[playerid][pAdmin] < 3)return SendClientMessage(playerid, COLOR_GREY, ERROR_ADMIN);
    new stunden, cmd[8], string[128];
    if(sscanf(params, "s[8]i", cmd, stunden))return SendClientMessage(playerid, COLOR_GREY, "** Benutze /doublerp [Stunden/Tage] [Zeit]");
    if(stunden < 0 || stunden > 99)return SendClientMessage(playerid, COLOR_GREY, "** Wähle eine Zahl zwischen 0 und 99 aus.");
    if(strcmp(cmd, "Stunden", true) == 0)
    {
    if(stunden == 0){
    Others[sDoppelRP] = 0;
    Others[sDoppelRPTime] = 0;
    SendClientMessageToAll(COLOR_YELLOW, "* Doppel-RP Event wurde vorzeitig beendet. Danke für die Teilnahme an alle!");
    return 1;
    }
    new doubleTime;
    doubleTime = gettime()+(60*60*stunden);
    Others[sDoppelRP] = 1;
    Others[sDoppelRPTime] = doubleTime;
    format(string, sizeof(string), "* Administrator %s hat das Doppelte-RP Event für %d Stunden gestartet. Viel Spaß!", GetName(playerid), stunden);
    SendClientMessageToAll(COLOR_YELLOW, string);
    return 1;
    }
    if(strcmp(cmd, "Tage", true) == 0)
    {
    if(stunden == 0){
    Others[sDoppelRP] = 0;
    Others[sDoppelRPTime] = 0;
    SendClientMessageToAll(COLOR_YELLOW, "* Doppel-RP Event wurde vorzeitig beendet. Danke für die Teilnahme an alle!");
    return 1;
    }
    new doubleTime;
    doubleTime = gettime()+(60*60*24*stunden);
    Others[sDoppelRP] = 1;
    Others[sDoppelRPTime] = doubleTime;
    format(string, sizeof(string), "* Administrator %s hat das Doppelte-RP Event für %d Tage gestartet. Viel Spaß!", GetName(playerid), stunden);
    SendClientMessageToAll(COLOR_YELLOW, string);
    return 1;
    }
    else
    {
    return cmd_doublerp(playerid, "");
    }
    }



    Kann man da hinzufügen das sich der Admin aussuchen kann wieviel % mehr job gehalt gibt?
    Spieler[i][pJobMoney] so bekommt er das geld vom job "Falls benötigt"


    stock CreateVehicleEx(vehicletype, Float:x, Float:y, Float:z, Float:rotation, color1, color2, respawn_delay, bool:reset=false, siren, bool:train=false)
    {
    new vehicleid;
    if(vehicletype < 400 || vehicletype > 611)return 0;
    if(!train) vehicleid = CreateVehicle(vehicletype, x, y, z, rotation, color1, color2, respawn_delay, siren);
    else vehicleid = AddStaticVehicle(vehicletype, x, y, z, rotation, color1, color2);
    if(Vehicle[vehicleid][vehMotor])KillTimer(Vehicle[vehicleid][VehicleTimer]);
    Vehicle[vehicleid][vehMotor] = false;
    Vehicle[vehicleid][vehLicht] = false;
    Vehicle[vehicleid][vehHaube] = false;
    Vehicle[vehicleid][vehKRaum] = false;
    Vehicle[vehicleid][vehPosX2] = x;
    Vehicle[vehicleid][vehPosY2] = y;
    Vehicle[vehicleid][vehPosZ2] = z;
    Vehicle[vehicleid][vehSiren] = siren;
    Vehicle[vehicleid][vehProds] = 0;
    Vehicle[vehicleid][vehText] = CreateDynamic3DTextLabel(" ", 0x33CCFFAA, 50.0, 60.0, 110.0, 20.0, INVALID_PLAYER_ID, vehicleid, 0, -1, -1, -1, 100.0); // <<< das ist das fürn bus
    if(reset == true)
    {
    if(IsValidVehicle(vehicleid))
    Vehicle[vehicleid][vehTankKM] = 0;
    Vehicle[vehicleid][vehKMStandCount] = 0;
    Vehicle[vehicleid][vehKMStand] = 0;
    Vehicle[vehicleid][vehFuel] = VehicleData[vehicletype-400][vehMaxTank];
    Vehicle[vehicleid][vehNeonID] = 0;
    Vehicle[vehicleid][vehProds] = 0;
    DestroyDynamicObject(Vehicle[vehicleid][vehNeon1]);
    DestroyDynamicObject(Vehicle[vehicleid][vehNeon2]);
    DestroyDynamicObject(Vehicle[vehicleid][vehSiren1]);
    DestroyDynamicObject(Vehicle[vehicleid][vehSiren2]);
    DestroyDynamicObject(Vehicle[vehicleid][vehSiren3]);
    DestroyDynamicObject(Vehicle[vehicleid][vehSiren4]);
    DestroyDynamicObject(Vehicle[vehicleid][vehSiren5]);
    DestroyDynamicObject(Vehicle[vehicleid][vehUCL]);
    Vehicle[vehicleid][vehNeon1] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehNeon2] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehSiren1] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehSiren2] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehSiren3] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehSiren4] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehSiren5] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehUCL] = INVALID_OBJECT_ID;
    Vehicle[vehicleid][vehUCLCreated] = 0;
    }
    return vehicleid;
    }

    Vehicle[vehicleid][vehText] = CreateDynamic3DTextLabel(" ", COLOR_LIGHTBLUE, 50.0, 60.0, 110.0, 20.0, INVALID_PLAYER_ID, vehicleid, 0, -1, -1, -1, 100.0);




    Hallo, ich habe eine Frage bei mir zeigt es den 3DTextLabel so Dunkel an obwohl die farbe heller ist warum? im Chat passt die farbe ja auch....... nur auf den Fahrzeugen ist es so komisch


    case DIALOG_BUYPRIVATEVEHICLE:
    {
    new string[228];
    if(!response)
    {
    SetCameraBehindPlayer(playerid);
    UnfreezePlayer(playerid);
    RemovePlayerFromVehicle(playerid);
    SetVehicleParamsEx(GetPlayerVehicleID(playerid), VEHICLE_PARAMS_OFF, VEHICLE_PARAMS_OFF, alarm, doors, bonnet, boot, objective);
    return 1;
    }
    if(response)
    {
    for(new i=0;i<sizeof(autoVehicles);i++)
    {
    if(GetPlayerVehicleID(playerid) == autoVehicles[i])
    {
    if((GetMoney(playerid) - VehicleShop[i][Preis]) < 0)
    {
    SendClientMessage(playerid, COLOR_LIGHTBLUE, ERROR_MONEY);
    SetCameraBehindPlayer(playerid);
    UnfreezePlayer(playerid);
    RemovePlayerFromVehicle(playerid);
    SetVehicleParamsEx(GetPlayerVehicleID(playerid), VEHICLE_PARAMS_OFF, VEHICLE_PARAMS_OFF, alarm, doors, bonnet, boot, objective);
    return 1;
    }
    if(GetPlayerVehicleCount(playerid) >= MAX_PLAYER_VEHICLES)
    {
    SendClientMessage(playerid, COLOR_GREY, "* Du kannst keine weiteren Fahrzeuge kaufen.");
    SetCameraBehindPlayer(playerid);
    UnfreezePlayer(playerid);
    RemovePlayerFromVehicle(playerid);
    SetVehicleParamsEx(GetPlayerVehicleID(playerid), VEHICLE_PARAMS_OFF, VEHICLE_PARAMS_OFF, alarm, doors, bonnet, boot, objective);
    return 1;
    }
    GiveMoney(playerid, -VehicleShop[i][Preis]);
    format(string, sizeof(string), "Du hast dir ein %s gekauft.~n~Das Fahrzeug steht am Ausgabe Punkt bereit.~n~Mit /carhelp siehst du die Fahrzeug Befehle", VehicleShop[i][Name]);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    new color1 = 1, color2 = 1;
    CreatePlayerVehicle(playerid, VehicleShop[i][modelid], VehicleShop[i][buySpawnX], VehicleShop[i][buySpawnY], VehicleShop[i][buySpawnZ], VehicleShop[i][buySpawnA], COLOR_HEX_DARKBLUE"- TÜV -", (VehicleShop[i][Preis]/2), 0, color1, color2);
    SetCameraBehindPlayer(playerid);
    UnfreezePlayer(playerid);
    RemovePlayerFromVehicle(playerid);
    SetVehicleParamsEx(GetPlayerVehicleID(playerid), VEHICLE_PARAMS_OFF, VEHICLE_PARAMS_OFF, alarm, doors, bonnet, boot, objective);
    if(Spieler[playerid][pTutorial] > 0) //Genau hier ist die abfrage
    {
    ShowInfo(playerid, "Du hast dich also fuer~n~dieses Auto entschieden.~n~Wenn du ein schoenen~n~Ort findest, indem du~n~dein Auto parken moechtest,~n~tippe /parken ein. Achja,~w~dein Auto verliert jedes~nmal, wenn der Motor~n~eingeschaltet ist, an Benzin~n~Du solltest also immer~n~auf dein Tank achten.~n~~n~Steige in dein gekauftes~n~~b~Fahrzeug ~w~ein und fahre~n~zum ~r~Checkpoint~w~!"); //<-
    SchonGewusst(playerid, "Wir besitzen auch eine~n~~b~Fachebook ~w~Page");
    SetPlayerCheckpointEx(playerid, 1003.9152,-939.3000,42.1797, 2.0, CP_TUTORIAL_10, CP_TYPE_TUTORIAL);
    }
    return 1;
    }
    }
    }
    }



    Ich hab ein Problem wen ich jetzt im TUTORIAL bin und ein Auto kaufe kommt ERROR tiled oder so


    So hab aber eine abfrage gemacht wen der Spieler im Tutorial ist soll das kommen.
    Aber wen er es kauft kommt ERROR tiled obwohl eig der Text erscheinen soll

    Also:


    Der Spieler muss pro Reuse 400m entfernt sein Reuse für Reuse.
    So wen der Spieler /fisching macht steht Reuse 1: Ausgelegt (z.b 1 Minute) -> So kann er sehn wielang die Reuse schon im Wasser liegt.
    angenommen die Reuse liegt jetzt 4 Minuten drinnen und er Sie rausholen möchte (Wen er in Checkpoint rein fährt sollte eine Nachricht kommen (er muss z.b noch x Minuten warten um die Reuse raus zu holen.


    Hat er die 5 Minuten gewartet und er holt die Reuse raus soll die % Chance wie folgt aussehn


    Hering (80% Chance, Verkaufspreis: 3$)
    Makrele (70% Chance, Verkaufspreis: 4$)
    Lachs (60% Chance, Verkaufspreis: 5$)
    Forelle (50% Chance, Verkaufspreis: 6$)
    Rotbarsch (40% Chance, Verkaufspreis: 8$)
    Karpfen (35% Chance, Verkaufspreis: 10$)
    Seeteufel (15% Chance, Verkaufspreis: 16$)



    So jetzt hat er Chance auf diese Fische die oben angegeben sind.
    Wen er jetzt sein Boot voll hat (2500/2500) kann er /fishing eingeben und den Abgabe punkt anklicken wen er da rein fährt sollte es automatisch verkauft werden.
    Oben sind die Verkaufspreise angegeben.
    Sollte halt angenommen (177 Hering pro Hering 3$ heißt es soll addiert werden.
    das genauso wie bei all anderen Fischen.



    ShowPlayerDialog(playerid, DIALOG_FISHING_1, DIALOG_STYLE_MSGBOX, "Hering:\t\t0\nMakrele:\t\t0\nLachs:\t\t0\nForelle:\t\t0\nRotbarsch:\t\t0\nKarpfen:\t\t0\nSeeteufel:\t\t0","Hochseefisher","Schlißen","");



    Er kann auch nachsehn was er gefischt hat 0 Bedeutet halt das er noch keine gefischt hat.
    sollte er z,b 177 Heringe gefischt haben soll Hering: 177
    genauso gibt es auch ein limit für das Boot was er aufnehmen kann z.b 0/2500
    Die Fische die er gefangen hat soll immer dazugezählt werden an.


    Angenommen er fängt


    Hering: 5
    Makrele: 5
    Lachs: 5


    so ergibt das 15/2500

    Ich komme nicht weiter wie ich es beschreibe..


    ich weiß nicht wie ich es auslesen soll die Chance Hering usw zu fangen es automatisch zu verkaufen 400m distanc das er wider eine Reuse auslegen kann wen er auf Reuse 1 geht ihm dialog das er ein Checkpoint bekommt wen er über 5min soll wird die Reuse automatisch aus dem wasser geholt wen er nicht die 5min gewartet hat soll wv min er noch warten muss als nachricht kommen