/tv Befehl für News Reporter!

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
  • Hallo Community!


    Ich möchte gerne etwas ausgefalles auf meinem Server haben!


    Weiß jemand (Wenn es überhaupt möglich ist) ob man einen /tv für User machen kann!


    So soll es funktionieren!


    Ein News Reporter möchte gerne Zeigen was er gerade sieht! So zieht er seine Kamera und tippt "/livetv" an ein! Nun kommt bei jedem User eine Nachricht: "Live TV ist nun verfügbar! Du kannst nun /tv eingeben" (oder so ähnlich!)
    Nun kann er sehen, was der News Reporer gerade mit seiner Kamera sieht! Denn Live Modus kann er wieder beenden indem er /livetv aus" eingibt!


    MFG,


    Razor1225!

  • Dieser Code funktioniert nur wenn du DCMD & sscanf im Script eingebunden hast & du musst die If-Abfragen ändern.


    Über den Befehlen /live & /tv:
    new bool:LiveModus[MAX_PLAYERS]=false,
    ImLiveModus[MAX_PLAYERS]=-1;


    Im Public OnPlayerCommandText:
    dcmd(live,4,cmdtext);
    dcmd(tv,2,cmdtext);


    Außerhalb andere Public's/Funktionen im Script:
    dcmd_live(playerid, params[])
    {
    #pragma unused params
    // if(playerid!=NACHRICHTENREPORTER)return SendClientMessage(playerid,0xAFAFAFFF," ** Du bist kein Nachrichtenreporter!");
    new Text[80],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Name,sizeof Name);
    if(LiveModus[playerid]==false)
    {
    format(Text,sizeof Text," ** %s hat die Live Ansicht gestartet! (Tippe /tv)",Name);
    SendClientMessageToAll(0xAFAFAFFF,Text);
    LiveModus[playerid]=true;
    return SendClientMessage(playerid,0xAFAFAFFF," ** Du hast den Live Modus gestartet!");
    }
    else if(LiveModus[playerid]==true)
    {
    LiveModus[playerid]=false;
    for(new Zuschauer=0;Zuschauer<MAX_PLAYERS;Zuschauer++)
    {
    if(ImLiveModus[Zuschauer]==playerid)
    {
    ImLiveModus[Zuschauer]=-1;
    format(Text,sizeof Text," ** %s hat die Live Ansicht beendet!",Name);
    SendClientMessage(Zuschauer,0xAFAFAFFF,Text);
    }
    }
    return SendClientMessage(playerid,0xAFAFAFFF," ** Du hast den Live Modus beendet!");
    }
    return true;
    }


    dcmd_tv(playerid, params[])
    {
    if(ImLiveModus[playerid]>=0)
    {
    TogglePlayerSpectating(playerid,0);
    SetCameraBehindPlayer(playerid);
    ImLiveModus[playerid]=-1;
    return SendClientMessage(playerid,0xAFAFAFFF," ** Du hast den Zuschauer Modus beendet!");
    }
    new Spieler;
    if(sscanf(params,"u",Spieler))return SendClientMessage(playerid,0xAFAFAFFF," ** Benutze: /tv [Name/ID]");
    if(!IsPlayerConnected(Spieler))return SendClientMessage(playerid,0xAFAFAFFF," ** Dieser Spieler ist nicht Online!");
    // if(SPIELER!=NACHRICHTENREPORTER)return SendClientMessage(playerid,0xAFAFAFFF," ** Dieser Spieler ist kein Nachrichtenreporter!");
    if(LiveModus[Spieler]==false)return SendClientMessage(playerid,0xAFAFAFFF," ** Dieser Spieler hat den Live Modus nicht gestartet!");
    TogglePlayerSpectating(playerid,1);
    PlayerSpectatePlayer(playerid,Spieler,SPECTATE_MODE_FIXED);
    return SendClientMessage(playerid,0xAFAFAFFF," ** Du hast den TV Modus gestartet! (Beenden per /tv)");
    }


    Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need.
    – Tyler Durden


    Sobald Werbung im Spiel ist, bist du, die Nutzerin, der Nutzer, das Produkt.


  • Bei mir kommt da nur ein leerer Bildschirm und man kann mit /tv es nicht mehr dann ausmachen ^^