Beiträge von Teldabis

    Wir haben bei uns zwei Tanken.
    Früher war ich immer der näher war nur dort meinten sie dass es ab 18 sei.
    Dann habe ich es an der anderen Tankstelle versucht und gefragt ob es ab 18 sei worauf Sie antworteten
    "Das ist Quatsch, Paysafecard ab 18?". Kurz und knapp "Es ist in jeder Tankstelle anders".


    Manche Mitarbeiter haben keine Ahnung :)


    Mfg, Syko.

    Versuchs mal so
    if(strcmp(cmdtext, "/tanken", true) == 0)
    {
    if (GetPlayerVehicleSeat(playerid) != 0) return SendClientMessage(playerid,ROT,"Du bist in keinem Fahrzeug (oder kein Fahrer)."); new car = GetPlayerVehicleID(playerid);
    else if (TanktGerade[car]) return SendClientMessage(playerid,ROT,"Du tankst schon!");
    else if (Motor[car] == true) return SendClientMessage(playerid,ROT,"Du musst vor dem Tanken den Motor ausschalten.");
    new ZuTanken = 100-Tank[car];
    new preis = ZuTanken * BENZINPREIS;
    if (GetPlayerMoney(playerid)-preis < 0) return SendClientMessage(playerid,ORANGE,"Du hast nicht genug Geld!");
    GivePlayerMoney(playerid, -preis);
    SendClientMessage(playerid, GRÜN, "Tanken wird gestartet.");
    SetCameraBehindPlayer(playerid);
    TogglePlayerControllable(playerid,0);
    TanktGerade[car] = true;
    tanktimer[playerid] = SetTimerEx("Auftanken",500,true,"i",playerid);
    return 1;
    }

    Ist vielleicht eine blöde Frage doch ich scheiter bei jedem Versuch.


    Ich will die Namen von den Jobs definieren so dass ich nicht jedesmal nach der ID des Jobs abfragen muss usw.


    Zurzeit sieht mein Code wie folgt aus:
    stock JobName(playerid)
    {
    new JobStr[32];
    switch(PlayerInfo[playerid][SJob])
    {
    case 0: { JobStr = "-"; }
    case 1: { JobStr = "Taxifahrer"; }
    }
    return 1;
    }


    Und ich rufe den Namen mit
    JobName(playerid)


    Doch im Spiel gibt es dann so kleine Verwirrungen.


    Ich bedanke mich im vorraus für die Hilfe.


    Mfg, Syko.

    Wie..
    Die Leute, von Hells Angels schlagen einen zusammen, weil man den Namen InGame verwendet?
    Oder verstehe ich das jetzt falsch.. Ist doch nur ein Spiel. Und wieso Todesstrafe ..


    Die übertreiben doch ein wenig


    Tya kann man wenig dagegen tuen..
    Ich wurde auch mal von denen bedroht wegen etwas aber mir wurde nix gemacht wegen meinen Couseng 8o
    Mfg, Syko.

    Versteh ich nicht so ganz ?(


    Ja, was kann denn passieren? :D


    Es ist verbote, aber keine Geldstrafe, aber was anderes? Was ist denn das andere? ^^


    Da ich einen Couseng habe der bei Hells Angels ist kann ich es dir verraten ;)
    Sowas ähnliches wie "Todesstrafe" bzw. Todschlag.


    Mfg, Syko.


    Das stimmt da ich selber PHP codiere und dort ist es egal weil die Datenbank ja nix mit der Verbindung zutuen hat.
    Du müsstest dann eine Abfrage erstellen ob die Datenbank existiert..


    Mfg, Syko.

    Hast du denn unter OnPlayerCommandText sowas drinnen?
    dcmd(werbung, 7, cmdtext);
    und ganz oben:
    #define dcmd(%1,%2,%3) if(!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1


    Ja habe Ich. Ich habe auch Admin Befehle usw. und sie funktionieren alle bis auf /Werbung.
    Mfg, Syko.

    Ich habe zurzeit echt keine Ahnung warum die Bugs immer mich finden müssen aber naya.


    Problem:
    Ich habe einen /Werbung Befehl per Dcmd erstellt und sobald ich im Server bin funktioniert zwar der Befehl.
    Nur das Problem ist, dass es "Unkown Command" anzeigt.


    Befehl:
    dcmd_werbung(playerid, params[])
    {
    new WerbeText;
    if(sscanf(params, "s", WerbeText))
    {
    return SendClientMessage(playerid, GRAU, "Verwendung: /Werbung [Text]");
    }
    if(IsPlayerInRangeOfPoint(playerid, 7.0, 1510.8368, -1666.4698, 14.0469))
    {
    if(PlayerInfo[playerid][SWerbung] == 0)
    {
    new String[256], String2[64], WerberName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, WerberName, sizeof(WerberName));
    PlayerInfo[playerid][SWerbung] = 1;
    format(String, sizeof(String), "[Werbung]%s: %s [HandyNr: %d]", WerberName, WerbeText, PlayerInfo[playerid][SHandyNr]);
    SendClientMessageToAll(GRUEN, String);
    GivePlayerMoney(playerid, -WERBUNGSKOSTEN);
    format(String2, sizeof(String2), "Die Werbung hat dir %d$ gekostet!", WERBUNGSKOSTEN);
    SendClientMessage(playerid, WEISS, String2);
    SetTimer("WerbungTimer", 1000*60*WERBEZEIT, 0);
    } else {
    new String3[256];
    new WERBEZEITSTR = 1000*60*WERBEZEIT;
    format(String3, sizeof(String3), "Nach jeder Werbung musst du %d Minuten warten, um nocheinmal zu werben!", WERBEZEITSTR);
    }
    } else {
    SendClientMessage(playerid, ROT, "Hier kannst du nicht werben! Bitte begebe dich zur Werbungsstelle!");
    }
    return 1;
    }


    Ich weiß zwar, dass es was mit "Return" zu tuen hat aber keine Ahnung wo da ich mehrmals verschieden versucht habe.
    Danke im vorraus.
    Mfg, Syko.

    Was hast du an der Schleife verändert? Weil ich habe das selbe Problem -.-

    Entferne den Forward und den Public.


    Und füge den Code (Musst du bei dir selber anpassen):
    if(newstate == PLAYER_STATE_DRIVER)
    {
    for(new i = 0; i < sizeof(Taxifahrzeuge); i++)
    {
    if(GetPlayerVehicleID(playerid) == Taxifahrzeuge[i])
    {
    if(PlayerInfo[playerid][SJob] == 1) {} else
    {
    SendClientMessage(playerid, GRAU, "Du bist kein Taxifahrer!");
    RemovePlayerFromVehicle(playerid);
    }
    return 1;
    }
    }
    }


    Unter:
    public OnPlayerStateChange(playerid, newstate, oldstate)


    Mfg, Syko.