Problem beim Handysystem

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Schönen guten Abend liebe Community,


    bei meinem Handysystem möchte ich das der Spieler der anruft einen Betrag zahlt der sich pro Minute hochaddiert..
    jedoch stehe ich auf dem schlauch wie ich das machen soll -.-



    Die variable wird jede Sekunde hochgezählt...



    Jetzt möchte ich gerne wissen wie ich das machen muss das er wenn der Anruf aufgelegt wurde angezeigt bekommt
    wieviel er zahlen muss... natürlich nur für den Anrufer :S


    //EDIT Ich muss irgendwie überprüfen wer der anrufer ist :S


    //EDIT Neuer Code vom Befehl auflegen.. da ich die Variable nurnoch hochzählen lasse...


    ocmd:auflegen(playerid,params[])
    {
    #pragma unused params
    new string[128];
    if(SpielerInfo[playerid][Eingeloggt] == 0)return SendClientMessage(playerid,Grau,"Du bist nicht eingeloggt!");
    if(SpielerInfo[playerid][Handy] == 0)return SendClientMessage(playerid,Rot,"Du besitzt kein Handy!");
    if(SpielerInfo[playerid][Handyaa] == 0)return SendClientMessage(playerid,Orange,"Dein Handy ist ausgeschaltet!");
    if(Spieler[playerid][Handypartner] == 0)return SendClientMessage(playerid,Orange,"Du bist in keinem Telefonat!");
    new pID = Spieler[playerid][Handypartner];
    format(string,sizeof(string),"Du hast das Gespräch mit %s(%i) beendet.",SpielerName(pID),pID);
    SendClientMessage(playerid,Weiss,string);
    format(string,sizeof(string),"Gesprächspartner %s(%i) hat das Gespräch mit dir beendet.",SpielerName(playerid),playerid);
    SendClientMessage(pID,Weiss,string);
    Spieler[pID][Handypartner] = 0;
    Spieler[playerid][Handypartner] = 0;
    Spieler[playerid][ImGespraech] = 0;
    if(Spieler[playerid][anrufer] == 1)
    {
    Hkosten = Spieler[playerid][Anrufszeit]/60*AnrufsKosten;
    format(string,sizeof(string),"Aktuelle Kosten: %i",Hkosten);
    SendClientMessage(playerid,Weiss,string);
    Spieler[playerid][Anrufszeit] = 1000000;
    Spieler[playerid][ImGespraech] = 0;
    Spieler[playerid][anrufer] = 0;
    }
    if(Spieler[pID][anrufer] == 1)
    {
    Hkosten = Spieler[pID][Anrufszeit]/60*AnrufsKosten;
    format(string,sizeof(string),"Aktuelle Kosten: %i",Hkosten);
    SendClientMessage(pID,Weiss,string);
    Spieler[pID][Anrufszeit] = 1000000;
    Spieler[pID][ImGespraech] = 0;
    Spieler[pID][anrufer] = 0;
    }
    return 1;
    }


    //EDIT Text verbessert

    2 Mal editiert, zuletzt von K3V1N ()

  • & wer bekommt das geld abgezocken??


    Garkeiner soweit ommt er nicht..



    #Handy


    //EDIT Also nochmal ich möchte das wenn der Anruf beendet wird, das dem Spieler
    der angerufen hat ein Betrag abgezogen wird..


    Edit;


    würde es so funktionieren wenn ich dem spieler der anruft einen Timer setzte ?


    SetTimerEx("Anrufszeit",1016,1,"d"pID);


    & dann das so mache:


    public Anrufszeit()
    [
    if(Spieler[playerid][ImGespraech] == 1)
    {
    if(Spieler[playerid][anrufer] == 1)
    {
    Spieler[playerid][Anrufszeit]++;
    }
    }
    else
    {
    Hkosten = Spieler[playerid][Anrufszeit]/60*AnrufsKosten;
    format(string,sizeof(string),"Aktuelle Kosten: %i",Hkosten);
    SendClientMessage(playerid,Weiss,string);
    Spieler[playerid][Anrufszeit] = 0;
    Spieler[playerid][ImGespraech] = 0;
    Spieler[playerid][anrufer] = 0;
    SetPMoney(playerid,GetPMoney(playerid) -Hkoste);
    break;
    }
    }

    2 Mal editiert, zuletzt von K3V1N ()