Gang Fight System

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 Breadfish,


    ich weiß nicht ob das der Richtige Theard ist aber hätte mal eine sehr Dringende Frage.
    Ich hab auf meinem Server alles gescriptet, alles geht alles Gangs haben ne Base haben Gangcars und so weiter.
    Nur das Gangfightsystem Fehlt ich hab versuch das irgetwie hinzubekommen und aber ich weiß wirklich nicht wie man das Scriptet.


    Kann mir jmd irgetwie helfen ?



    Mfg
    Warrioking

  • 1. Du erstellst mit GangZoneCreate ein paar Zonen, die einnehmbar sind.
    2. Wenn jemand in der Zone steht, und die Zone mit einem Befehl einnehmen will, färbt sie sich in die Farbe der Fraktionsfarbe des Spielers.
    3. Wenn jemand diese Zone nun angreift, lässt du ein Timer starten und die Zone blinken: GangZoneFlashForPlayer(playerid, zoneid, color)
    4. Wenn jemand aus einer Fraktion den anderen aus einer anderen tötet, werden punkte gezählt: Passiert alles unter OnPlayerDeath
    5. Wenn der Timer zuende ist, vergleichst du die Punkte. Wer mehr hat, hat gewonnen und die Zone färbt sich in die Fraktionsfarbe: GangZoneShowForPlayer(playerid, zoneid, color)


    Wo kommst du genau nicht weiter ?

  • Kannst du mir sagen, wie ich
    das bei OnPlayerDeath hinkriege?


    Habe es noch nicht probiert,
    habe auch keine Vorstellung, wie ich es probieren soll.

    So nach dem Prinzip:
    new WarPointFraktionX; //oben im script


    Dann, wenn jemand eine Zone angreift und alles beginnt, setzt du eine Variable auf 1 oder so, das dann zeigt, dass ein Kampf gerade läuft.


    Diese Variable fragst du bei OnPlayerDeath ab und du fragst ab, ob einer in der Zone getötet wurde:
    //onplayerdeath
    if(WarStarted == 1) // also wenn der Kampf läuft
    {
    if( HIER FRAGEN OB 'Killerid' IN DER FRAKTION X IST)
    {
    if( HIER FRAGEN OB 'Playerid' IN DER FRAKTION Y IST)
    {
    if(IsPlayerInZone(playerid, minX, minY, maxX, maxY) && IsPlayerInZone(killerid, minX, minY, maxX, maxY)) // Koordinaten der Gangzone
    WarPointFraktionX ++;
    }
    }
    }


    So fragst du ab, ob killerid playerid in der bestimmten Zone getötet hat. Wenn ja, kriegt killerid ein Punkt.


    Falls der Server ausgeht oder du ihn zwischendurch restarten möchtest, kannst du diese Variablen auch direkt in eine Datei speichern und beim Serveranmachen sofort auslesen und den Timer weiter laufen lassen.


    Probiers, Übung macht den Meister ;)