Ergebnis 1 bis 12 von 12

Thema: Position auf der Minimap

  1. #1

    Position auf der Minimap

    Ich mal wieder, hi,

    ich hab ein kleines Problem mit der Position auf der Minimap meiner Weltkarte.
    Entweder sie bleibt in der Mitte stecken oder sie schiesst über die Karte hinaus und im Moment bewegt sich da gar nix.
    Hilfe *g*
    Was muß ich denn wo hin tun und schalten und walten, damit es sich dort auf der Minimap bewegt, wo mein Fahrzeug ist?

    [edit: Wenn das wichtig ist... (lt. anderen, für mich unverständlichen Threads nach der Forumsuche, ist es das wohl *g*).... die Originalmap ist 250x250 Felder groß, das Bild von der Minimap 150x150 Pixel]

    Geändert von Dakira (03.12.2005 um 20:15 Uhr)

  2. #2
    Zitat Zitat
    Entweder sie bleibt in der Mitte stecken oder sie schiesst über die Karte hinaus und im Moment bewegt sich da gar nix.
    Da kann ich dir wenig helfen, du müsstest schon den Code kopieren.

    Zitat Zitat
    Was muß ich denn wo hin tun und schalten und walten, damit es sich dort auf der Minimap bewegt, wo mein Fahrzeug ist?
    Du setzt ja irgendwo zwei Variabelen,jeweils auf die X bzw. Y Pos. ders Helden.
    Statt nun die Helden Position abzufragen, lässt du die Fahrzeug Position abfragen.

  3. #3
    Oh, ähm... ich würd ihn kopieren, hab ihn jetzt aber gefrustet wieder ganz rausgelöscht. Ich hab mich da eh nur am Sample-Game von diesem Don Amigo oder wie er hiess orientiert, um mit Selbermachen ein bisschen Erfahrung zu sammeln, aber das war scheisse.
    Mit den Variablen ging es irgendwie auch nicht.
    Und in vergangenen Threads waren nur Tutorials, wo die Minimap im Verhältnis Felder/Pixel 1:1 verkleinert war.
    Gibt es da nicht was fertiggeschriebenes oder so?

  4. #4

    Blackadder Gast
    zuerst will ich darauf hinweisen, dass eine minimap mit 150pix nicht gut für eine 250 map geeinget ist, da man die koordinaten mit 1.666666~ teilen müsste. da der maker nur mit ganzen zahlen rechnet, geht das also nicht.
    ich würde zu 125 raten, da es leicht zu teilen ist (die hälfte, also /2).

    gut, dann haben wir also die 125*125 minimap, nehmen wir mal an, wir stellen sie in die linke, untere ecke.

    wir zeigen sie mit einem show picture an, aber mit welchen koordinaten?
    nun muss man errechnen, welches die koordinaten der minimap an sich sind.
    die map ist 125*125 gross, mit den koordinaten X 62 & Y 177 (ich gehe davon aus, du weisst wie man das "errechnet") zeigen wir sie korrekt an.

    jetzt müssen wir einen parallel process erstellen, welcher den punkt -also den standort des helden- darstellen und korrekt platzieren soll.
    wir nehmen uns zwei variablen, eine füttern wir mit der X koordinate und die andere mit der Y koordinate des helden.

    ([Change Variable] >> [Event: Hero] >> [X Coordinate])

    nun teilen wir beide variablen durch zwei, damit kommen wir von 250 auf 125.

    ([Change Variable] >> [/ 2])

    wenn der held nun in der oberen, linken ecke der map steht, ist auch der punkt in der oberen, linke ecke zu sehen. um auf die map zu gelangen, muss eine korrektur vorgenommen werden!
    da die map am linken bildschirmrand anfängt, bleibt die X koordinate gleich, aber der Y koordinate müssen wir den wert 155 addieren (da die map nicht am oberen bildschirmrand anfängt).

    so siehts dann im maker aus:

    Code:
    Variable Ch:[xxx1] Set, Hero  X pos
    Variable Ch:[xxx2] Set, Hero  Y pos
    Variable Ch:[xxx1] /, 2
    Variable Ch:[xxx2] /, 2
    Variable Ch:[xxx2] +, 115
    Show Picture: 2, (V[xxx1],V[xxx2])
    Wait: 0.0s.
    wenn du nun auch einen punkt für ein luftschift etc haben willst, musst du nur die koordinaten des "Airship" nehmen ([Change Variable] >> [Event: Airship]) und eine andere picture position verwenden.

    Geändert von Blackadder (03.12.2005 um 23:27 Uhr)

  5. #5
    Ein Minimapscript müsste hier sein.

  6. #6
    Danke euch, das war doll hilfreich und es hat geklappt
    Aber allgemein soll es jetzt auch noch so sein, daß man die Map anzeigen kann, wenn man sie in den Items aufruft und daß das nur funktioniert, wenn das Luftschiff fliegt.
    ~grins~
    Ich hab da mit Forks gewurschtelt und so, aber ich hab die Logik von diesen Dingen noch nicht raus.

  7. #7

    Blackadder Gast
    ich gehe davon aus, dass du das standard menü verwendest.

    zuerst erstellst du ein item, wie auf dem folgenden screenshot:

    beachte dabei, dass du bei "Use number of times" Limitless wählst, sonst verschwindet die karte nach dem aufrufen aus dem menü.

    bei "On Switch" wählst du einen freien Switch aus, nenn ihn z.b. ZeigeKarte.

    nun gehst du in die database, register Common Events und nimmst dir gleich einen leeren.

    bei der fork kommt unter "ON" der oben beschriebene code rein (mit dem "show picture", um die minimap anzuzeigen!), unter "ELSE" kommen die erase pictures, damit die minimap auch wieder verschwindet (wenn der spieler erneut die karte aus dem menü aufruft oder du den Switch auf "OFF" stellst).


    nun zum luftschiff (standard, nehm ich an): dazu kannst du folgende fork condition im selben common event einfügen

    in die fork kommt dann ein Change Switch, der den Switch "ZeigeKarte" auf [ON] stellt und bei ELSE einer, denn den switch auf [OFF] stellt.


    kleine erklärung:
    ein common event kann jederzeit aus dem spiel gerufen werden (mit dem befehl "call event") oder; er läuft während des ganzen spieles, wenn man ihn auf parallel process stellt.

    hoffe das hilft dir einw enig weiter.

    Geändert von Blackadder (04.12.2005 um 00:13 Uhr)

  8. #8
    Die Karte hatte ich schon in den Items, irgendwo muß sie ja sein, wenn sie benutzt werden soll.
    Also die Bedingung ist, daß das Luftschiff in Benutzung ist?
    Anderweitig nix Karte, das versteh ich soweit, ok.

    Ich probiers mal.
    Dankeschön, auch für die Mühe mit der "mit Bild"-Erklärung

  9. #9

    Blackadder Gast
    Zitat Zitat von Dakira
    Also die Bedingung ist, daß das Luftschiff in Benutzung ist?
    Anderweitig nix Karte, das versteh ich soweit, ok.
    nicht ganz... es ist mehr ein "oder".

    solange du nicht im flugschiff bist gilt, dass du jederzeit die karte ein- und ausblenden kannst (indem du die karte aus dem menü wählst).

    wenn du jedoch im luftschiff bist, bleibt die karte, auch wenn du sie im menü nochmals auswählst, da die flugschiff-"fork condition" während des fliegens immer den switch auf [On] stellen wird!

  10. #10
    Ich habs schon ausprobiert und es ist so, daß sie automatisch angeht, wenn man im Luftschiff ist und wieder ausgeht, wenn man nicht drin ist.
    Und ansonsten kann man nix mit machen.
    So ist es aber ok.
    Dankeschön

  11. #11
    Also so viel ich weiß gibt es ein Skript dazu!
    Keine Ahnung welle Seite!
    Glaub Rpg.Atelier.net

  12. #12
    Ich weiß, der Link steht in den vorigen Antworten schon drin.
    Aber durch Reinkopieren lernt man ja nicht, wie es funktioniert.

Berechtigungen

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