Move to Point??
Übersicht

![]() |
GameprogmanBetreff: Move to Point?? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi ![]() 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 ![]() ![]() |
||
Skullspliter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also ich bin zwar selbst nochn newbie, aber ich versuch es mal ![]() 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 ![]() ![]() ![]() ![]() 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 |
||
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
soll das ganze auf ner Tilemap funktionieren ? | ||
![]() |
Gameprogman |
![]() Antworten mit Zitat ![]() |
---|---|---|
@getlose_back
Nee |
||
![]() |
Dark Mania |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
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. ![]() ![]() |
||
![]() |
Gameprogman |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich Habs ja auch geschnallt ![]() Is des Bei euch Pflicht dann ne Antwort zu Bringen?? ![]() |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Es zeigt dem Antwortenden das die Lösung verstanden wurde und ein kleines Dankeschön tut auch keinem weh ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
![]() |
Gameprogman |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke Für die Antworten ![]() Morgen Schenk ich euch nen PC war nur ein Blöder Witz ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group