Ergebnis 1 bis 6 von 6

Thema: gegner koordinaten = reichweite = och menno XD

  1. #1

    gegner koordinaten = reichweite = och menno XD

    ich möchte mal ganz lieb und kurz fragen ob wer weiß, wie ich es erreichen kann, dass mein held den gegner angreifen kann ... damit meine ich, wie errechne ich, ob der gegner in reichweite des helden (schlagreichweite oder schussreichweite ist) ^^

    danke im voraus
    perticolum

  2. #2
    Gegner X-Held X

    Damit wär das doch erledigt oder?

  3. #3
    Wenn dir ein Rechteck um den Helden nicht ausreichst, wie du es bei

    | HeroXCoords - GegnerXCoords | < a
    | HeroYCoords - GegnerYCoords | < b

    erhälst, dann musst du mit dem Satz des Phytagoras arbeiten:
    Abstand² = XCoordAbstand² + YCoordAbstand²

    Da der Maker keine Wurzelrechnung kann, musst du dafür selbst was schreiben, ein kleines Common Event, das du an entsprechender Stelle callst mit einem Algorithmus a la

    (Eingabe ist Variable x, Ausgabe ist y)
    Variable a = 1
    Label #1
    Variable b = a
    Variable b *= a
    fork (b >= x) {y = a}
    else {a += 1, Go To Label #1}

  4. #4
    danke danke ^^

    habe eine lösung gefunden.
    einfache funktionen

    wenn der gegner nach unten sieht:

    set variable: [gegner y]+1

    bei oben dann -1 und links und rechts
    das gleiche mit x

    da hätte ich auch früher drauf kommen können ^^

    danke noch mal
    perticolum

  5. #5
    Auch wenn schon eine zufriedenstellende Lösung gefunden wurde,

    @Dhan/ Wurzelproblem:
    Man braucht keine Wurzel ziehen. Wenn man den Abstand quadriert lässt, ist das Kleiner-Zeichen, und damit die Funktion, weiterhin gültig (da die Funktion y=x² monoton ist).
    Code:
    X_Abstand² + Y_Abstand² < Gesamt_Abstand²
    Für Gesamt_Abstand² setzt man einfach irgendeinen Wert und ignoriert die Wurzel. Zum Beispiel wäre sechs eine Lösung. Die Wurzel aus sechs muss keiner ausrechnen, auch nicht der Maker. Es reicht, dass man es vorher im Kopf abschätzt (2,5).
    Ist jetzt beispielsweise der X-Abstand 1 und der Y-Abstand 2, lautet das Ergebnis 5. Das Ziel liegt innerhalb des Radius. Auch ohne Wurzelannäherung.


    CapSeb

  6. #6
    okay danke ich werde das mal probieren ^^

    lg
    perti

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •