Beiträge von KleineHilfe

    Ganz klar falsche Definition der TextDraw's.


    1. Frage bevor du da jetzt wie wild rum bastelst :P . Was sind es für textdraw's sprich was sollen sie anzeigen - Server oder Spielerbezogene Anzeige.
    2. Frage aber eher unrellevanter. Kreuzen sich TextDrawID' definitionen?

    Variablen Abfrage ob er in einer Arena ist. Dafür ausschließlich mit einer Arbeiten, somit kannst du dem Spieler auch einfacher zuordnen. wenn du mehrere hast.
    Im CMD benutzt du dann SetPlayerPos, SetPlayerVirtualWorld, GivePlayerWeapon und setzt die Variable.
    Unter OnPlayerDeath kannst du dann abfragen in welcher Arena er ist wenn er ein kill macht oder stirbt falls du dort mit Arenabezogenen Anzeigen arbeitest.
    Evt noch einen Zähler hinzufügen der die Anzahl der Spieler in der aktuellen Arena auswertet.
    Das wärs.

    • new vari, str[128], str2[128],str4[128], str5[128],input[14];
      ocmd:test(playerid, params[])
      {
      if (sscanf(params, "s", input)) return SendClientMessage(playerid, 0xFF0000AA, "ERROR");
      if (vari == 0)
      {
      format(str4,sizeof(str4), "blabla %s", input);
      PlayerTextDrawShow(playerid, TextInformation[playerid]);
      PlayerTextDrawShow(playerid, TextInformation1[playerid]);
      PlayerTextDrawShow(playerid, TextInformation2[playerid]);
      PlayerTextDrawSetString(playerid, TextInformation[playerid], str4);
      vari++;
      return 1;
      }
      if (vari == 1)
      {
      format(str2,sizeof(str2), "blabla %s", input);
      PlayerTextDrawSetString(playerid, TextInformation[playerid], str2);
      PlayerTextDrawSetString(playerid, TextInformation1[playerid], str4);
      vari++;
      return 1;
      }
      if (vari == 2)
      {
      format(str5,sizeof(str5), "blabla %s", input);
      PlayerTextDrawSetString(playerid, TextInformation[playerid], str5);
      PlayerTextDrawSetString(playerid, TextInformation1[playerid], str2);
      PlayerTextDrawSetString(playerid, TextInformation2[playerid], str4);
      vari++;
      return 1;
      }
      if (vari == 3)
      {
      format(str,sizeof(str), "blabla %s", input);
      PlayerTextDrawSetString(playerid, TextInformation[playerid], str);
      PlayerTextDrawSetString(playerid, TextInformation1[playerid], str5);
      PlayerTextDrawSetString(playerid, TextInformation2[playerid], str2);
      str2 = str5;
      str5 = str;
      return 1;
      }
      return 1;
      }




    Siehe PM für unzensierte TextDraw's.


    //Edit
    Code angepasst,
    @ENEFs Problem ist gelöst.

    Das geht ja wenn ich dann bei jedem case einmal :
    for(new i=0; i < sizeof(FrakAutos); i++) { VehInfo[i][pSirene] = CreateObject(18646,0,0,-1000,0,0,0,100);//Infernus }
    hinzufüge oder?

    Nein, ohne Schleife. Du lässt einfach jeder Fahrzeug-ID wie gehabt eine Sirene zuordnen. Nur das du diese in der Funktion erstellst.
    Somit wird immer eine Sirene erstellt, welche du dann anschließend auch löschen kannst. Die Sirenen Variable machst du Global für für jedes Fahrzeug.
    Die Sirene ordnest du dann in deiner vorhandenen Funktion dem Fahrzeug zu.

    Warum sollte das überhaupt überlastet sein wenn der Großteil die PS4 schon letztes Jahr bekommen hat und der Tag ist ja nicht mal vorbei, bzw. Weihnachten. Viele bekommen ihre Geschenke ja auch noch morgen ;)

    Ich glaube du kannst dir die Summe um die es sich hier handelt wohlmöglich nicht erdenken, wie viele Spielerzu Weihnachten neue Spiele oder eine Konsole geschenkt bekommen.
    Und gerade weil Spieler ihre Geschenke durch Zeitsdifferenzen der Welt bekommen, läuft dieses Netzwerkproblem über Tage und nicht nur weil in Deutschland Heilig Abend ist !!
    Überlastung ist etwas, was natürlich ist da die Hersteller dies provozieren um letztendlich die Leistung und Kapazitäten anzupassen.
    Aber das Fragespiel gefällt mir, jetzt bin ich dran.


    Warum sollten Gruppen sich mit Sony und Microsoft anlegen, riesen Strafen zu kassieren nur um bei PSN wie heute mal die Freundesliste zu blockieren weil se das Netzwerk nur halb überlasten?
    Warum sollten sie das tun, ohne nachträglich irgendwas zu erreichen? Wie schafft eine recht "kleine" Gruppe es, ein riesen Unternehmen mit Marktanteilen an der ganzen Welt über Tage zu "schädigen", "schwächen" gar Server down zu halten und wieso nur an Weihnachten und nicht die Tage danach bzw. das ganze folgende Jahr?


    Es ist keine Vermutung von mir, sondern wissen das es sich jährlich um reine Überlastung handelt.
    Wird für kommendes Jahr vermutlich nicht anders sein.

    Ich lese überall dass es letztes Jahr Lizard Squad und dieses Jahr Phantom Squad sei?

    Letztes Jahr kann es wahr gewesen sein, da waren die Server aber komplett down und instabil über Tage.
    Mich würde es nicht wundern wenn es alles instruiert ist - um die Probleme jedes mal aufs neue zu rechtfertigen die MC & Sony haben.
    Allerdings habt Lizard Squad & Co. bei 99% der Dinge wo sie sich mit ins Spiel bringen keinen Finger dran gehabt.


    Im Endeffekt ist es auch verwunderlich das sie sich ankündigen an Tagen, wo es einfach klar ist das die Server überlastet sind und nicht wenn die Server im normalen Betrieb laufen.
    Klar kann man evt. dadurch die Lücken suchen um was anzustellen aber andersrum sind das auch die besten Momente um sich bekannt zu machen durch etwas, wofür sie nichts können nur
    damit die Leute was zum reden haben. Stichwort: Gehirnwäsche - Medien - Realitätsverlust

    Guten Abend,
    wie zu jedem Jahr gibt es auch dieses Weihnachten wieder Performance Probleme aufgetreten durch Netzwerküberlastung auf der Plattform Xbox sowie Playstation.
    Die Netzwerke sind einfach vom Ansturm der neuen Nutzer komplett überlastet.
    Da steckt keine Gruppe dahinter, es ist einfach der Zuwachs der Community zu Weihnachten.
    Dies bezieht sich auf Online-Spieleserver sowie Netzwerke der Plattformen.


    Gruß,
    KleineHilfe

    @lolbob


    Hier ein gut verständliches Tutorial von MrMonat.


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Guten Abend lolbob,
    ja, es ist möglich ein Filterscript anzulegen mit allen Maps.
    Diese werden dann unter OnFilterscriptInit() geladen.


    Es gibt Programme die es dir ermöglichen ingame zu mappen.
    Aber ich denke MTA ist nach wie vor die beste Möglichkeit, Ideen umzusetzen.


    Vielleicht ist aber auch schon eingeholt, ich weiß es nicht.


    Mit freundlichen Grüßen,
    KleineHilfe


    new regeln[900] = "\
    Allgemeines:\n Allgemeines:\n 1. Es gilt Rechtsfahrgebot!\n 2. An jeder Kreuzung ohne Beschilderung gilt die Grundregel Rechts vor Links!\n\
    3. Ampeln müssen nicht berücksichtigt werden!\n 4. Parken ist nur auf Seitenstreifen/Parkplätzen oder am Fahrbahnrand erlaubt!\nGeschwindigkeiten:\n";
    strcat(regeln, "\
    1. Innerorts: 80 km/h\n 2. Außerorts: 120 km/h\n 3. Autobahnen: Unbegrenzt\nSonderfälle:\n 1. Einsatzfahrzeuge der Polizei/des Rettungsdienstes mit aktiviertem Martinshorn/Blaulicht haben immer vorfahrt!\n\
    2. Rettungsgassen bei Einsätzen bilden!\nSonstiges:\n 1. Fahrzeuge dürfen nicht als Waffe benutzt werden (Totparken, ständiges Anfahren (allerhöchstens 3 mal in einem Kampf/Konflikt))");
    ShowPlayerDialog(playerid,DIALOG_UNUSED,DIALOG_STYLE_MSGBOX,"Stvo Regeln",regeln,"Ok","><");
    return 1;
    }


    //Edit Upps, da sitz ich hier im Editor weil ich kein PAWN habe und dann hastes schon. Alles klar :)

    Dialoge umfassen 4096 Zeichen.
    Pack den gesamten Text in den Dialog rein und lösche alle strings.


    Wenn du aus egal welchen Gründen hier ein String verwenden möchtest, reicht einer vollkommen aus.


    ShowPlayerDialog(playerid,DIALOG_UNUSED,DIALOG_STYLE_MSGBOX,"Stvo Regeln","TEXT","Ok","><");
    Neue Zeile beginnst du ebenfalls mit \n.

    Frohe Weihnachten.


    Allgemein sehen Strings mit der selben Größe schöner aus wenn man mit nem array arbeitet und Schreibarbeit zu sparen.


    Auf der anderen Seite, warum formatierst du jeden Satz zu einem String wenn du gar keinen einfügst?
    Wäre es nicht beachtlicher den Text direkt in den Dialog zu schreiben?
    Zur not kannst du immer noch den Text in einem string cutten wenn der Text zu groß sein sollte.


    Mit freundlichen Grüßen,
    KleineHilfe

    Ich besitze leider kein PAWNO da ich auch kein GTA SA habe.
    Allerdings sollte dieser Code an sich einwandfrei funktionieren und dir als Beispiel dienen.
    Konnte es mit dem Editor leider nicht gescheit einrücken, tut mir leid.
    Beispiel ist nun aus nem CMD & String zusammen gesetzt, denke mal der rest erklärt sich von selbst.


    Bei Fragen oder Problemen beim umschreiben auf TXD's einfach nochmal melden.




    • new vari, str[128], str2[128],str4[128], str5[128],input[10];
    • ocmd:test(playerid, params[])
    • {
    • if (sscanf(params, "s", input)) return SendClientMessage(playerid, -1, "XXX");
    • if (vari == 0)
    • {
    • format(str4,sizeof(str4), "blabla %s", input);
    • SendClientMessage(playerid,-1,str4); // Frist Text
    • vari++;
    • return 1;
    • }
    • if (vari == 1)
    • {
    • format(str2,sizeof(str2), "blabla %s", input);
    • SendClientMessage(playerid,-1,str2); //New sec text
    • SendClientMessage(playerid,-1,str4); // Old first text
    • vari++;
    • return 1;
    • }
    • if (vari == 2)
    • {
    • format(str5,sizeof(str5), "blabla %s", input);
    • SendClientMessage(playerid,-1,str5); //New third text
    • SendClientMessage(playerid,-1,str2); //Old sec text
    • SendClientMessage(playerid,-1,str4); //Old first text
    • vari++;
    • return 1;
    • }
    • if (vari == 3)
    • {
    • format(str,sizeof(str), "blabla %s", input);
    • SendClientMessage(playerid,-1,str); //new first text
    • SendClientMessage(playerid,-1,str5); // old first text
    • SendClientMessage(playerid,-1,str2); //old second text
    • format(str2,sizeof(str2), "%s", str5); //Set format old second = next third text
    • format(str5,sizeof(str5), "%s", str); //Set format old new input = next second text
    • }
    • return 1;
    • }


    Mit freundlichen Grüßen,
    Kleine Hilfe

    Mahlzeit ENEF,


    du brauchst lediglich 4 globale Strings & 1ne Zählervariable.
    Das macht zusammen 4 Zählerabfragen(0,1,2,3) & 3x Zähler+1
    Musst natürlich dann auch immer den alten TXD hiden & bei der Abfrage ob bereits 3 im Textdraw stehen die strings neu umformatieren.
    Das wars.


    "(Bloß halt mit Name Grund Anzahl versteht sich)"


    Was verstehst du daran genau nicht?
    - Den Namen kriegst du per GetPlayerName
    - Den Grund kannst du per inputtext entnehmen, dafür musst du den string in einer variable abspeichern und ausgeben - jenachdem wie du es gemacht hast.
    - Den Anzahl-INT entnimmst du genauso wie den String, nur das du ihn nicht formatieren musst sondern direkt speichern kannst.



    Mit freundlichen Grüßen,
    KleineHilfe