Move to Point??

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Gameprogman

Betreff: Move to Point??

BeitragDi, Sep 07, 2004 22:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Very Happy

Ich wollte ein Spiel proggen und 5 Sekunden später fiel mir auf das ich das gar nicht Kapier.

Also Problem ist Folgendes: Ich möchte das sich Ein Objekt (Bild,Punkt,...) zu einer Stele bewegt indem Man erst auf das Bild drückt (Moushit(1))
und dann an die Stelle an die sie sich Bewegen soll.

Ich freu mich auf eure Antworten Wink Wink
 

Skullspliter

BeitragDi, Sep 07, 2004 23:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich bin zwar selbst nochn newbie, aber ich versuch es mal Wink .
Wenn ich dich jetzt richtig verstanden habe, dann willst du, dass das Bild, etc. nicht nur zur Maus teleportiert wird sondern "wandert", stimmts?

Du musst dann natürlich wissen wo dein Bild grade is.

Ausserdem musst du wissen, wo die Maus grade ist. (mit MouseX() und MouseY().

Dann kennst du somit schonmal den Abstand zwischen den Punkten und kannst deren Entfernung berechnen.

Soweit Beispiel:

Entfernungx=MouseX() - bildkoordinateX
entfernungy= Mousey() - bildkoordinateY

Damit hast du also die Entfernung sowohl im X- als auch im Y-Wert, soweit klar? Sehr gut.


Anschliessend bewegst du das Bild immer stückweise voran (am besten, du nimmst Millisecs() und den Kram und machst dann, pro Bewegung, wenn du z.B. in 10 Schritten wandern willst, die Enfernung durch 10 und lässt das Bild pro Schritt in diese Richtung wandern.
Wenn du nicht weisst, wie das mit den Millisecs geht lies dir am besten meinen thread "ich bin zu doof für jedes tutorial" direkt hierdrunter/drüber durch Laughing Wink Laughing Wink

so ich hoffe ich habe es so gut erklärt, dass du das Prinzip verstanden hast.
Allerdings habe ich, da ich ja auch noch relativ neu bin, sowas nochnie probiert und es mir grade eben in 2 min überlegt.
Ich hoffe, es is kein Denkfehler drin.

Man sieht sich(mehr oder weniger)

Skullspliter

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragMi, Sep 08, 2004 0:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, hab da mal ebend kleines Beispiel für die Richtung gemacht,
wenn du jetzt noch ein paar if ... then einbaust haste das was du haben wolltest!Code: [AUSKLAPPEN]
Graphics 800,600,16,2
   Bild = CreateImage (100,100)
   MidHandle bild
   ClsColor 255,0,0
SetBuffer BackBuffer()
Speed = 1
While Not KeyDown(1)

   If MouseHit (1)
      ZielX = MouseX()
      ZielY = MouseY()
   End If
   
   If (Int(X#) <> ZielX) Or (Int(Y#) <> ZielY)
      grad =Richtung(ZielX,ZielY,X#,Y#)
      X# = X# + Cos(Grad) *Speed
      y# = y# + Sin(Grad) *Speed
   End If
   
   DrawBlock Bild ,Int(x#),Int(y#)

Flip:Cls:Wend:End

Function Richtung(Ziel_X,Ziel_Y,Von_x,Von_y )
   Return (ATan2(Ziel_Y -Int(Von_y), Ziel_X -Int(Von_x))+360) Mod 360
End Function

Das sollte reichen, den Rest solltest du schon selber schaffen!
[BB2D | BB3D | BB+]
 

getlose

BeitragMi, Sep 08, 2004 11:56
Antworten mit Zitat
Benutzer-Profile anzeigen
soll das ganze auf ner Tilemap funktionieren ?

Gameprogman

BeitragMi, Sep 08, 2004 12:18
Antworten mit Zitat
Benutzer-Profile anzeigen
@getlose_back
Nee

Dark Mania

BeitragDo, Sep 09, 2004 10:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn ObjektX kleiner is als GeheZuPunktX, dann ObjektX +1 machen.
Wenn du den Rest nicht selber rausfindest ist dein Hirn wohl ned auf dem neuesstem Stand, da ich mit 12 das sogar rausfinden kann =)

Dark Mania
 

Skullspliter

BeitragDo, Sep 09, 2004 12:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich dachte eigentlich, er hätte es schon längst geschnallt.
Also so schlecht können das, Rallimen und ich doch auch wieder nich erklärt haben. Very HappyVery Happy

Gameprogman

BeitragDo, Sep 09, 2004 16:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich Habs ja auch geschnallt Wink

Is des Bei euch Pflicht dann ne Antwort zu Bringen?? Laughing

Hubsi

BeitragDo, Sep 09, 2004 16:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Es zeigt dem Antwortenden das die Lösung verstanden wurde und ein kleines Dankeschön tut auch keinem weh Wink
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

Gameprogman

BeitragDo, Sep 09, 2004 17:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke Für die Antworten Wink
Morgen Schenk ich euch nen PC
war nur ein Blöder Witz Laughing

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group