problem mit fahrzeugsteuerung
Übersicht

Master King ofBetreff: problem mit fahrzeugsteuerung |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] Graphics 1280,768,16,1 SetBuffer BackBuffer() Global Boden = LoadImage("C:\BodenTextur.bmp");Bodentextur Global Pointer = LoadImage("C:\Pointer.bmp");Mauszeiger Global Punkt = LoadImage("C:\Punkt.bmp");einheit MaskImage Punkt,255,255,255 MaskImage Pointer,255,255,255 Global X = 0;X für landschaft Global Y = 0;Y für landschaft Global ZielX = 0;Ziel einer einheit Global ZielY = 0;Ziel einer einheit MoveMouse 640,384;Maus zur Mitte ;########################################################### Type Einheit Field Speed# Field XKoordinate% Field YKoordinate% ;Typefeld für einheiten Field Ausgewaehlt% = 0 Field Zielerreicht% = 1 Field ZielX% Field ZielY% End Type ;########################################################### ;################################################################################ Einheit1.Einheit = New Einheit Einheit1\Speed = 2 Einheit1\XKoordinate = 50 ;einstellung der ersten einheit Einheit1\YKoordinate = 50 Einheit1\Ausgewaehlt = 0 ;################################################################################ Repeat;########################## hauptschleife Cls;löschen MausX = MouseX() ;Mauskoordinaten überprüfen MausY = MouseY() ;Mauskoordinaten überprüfen If MausY <= 0 Then Y = Y + 7;scrollen If MausY >= 767 Then Y = Y - 7;scrollen If MausX <= 0 Then X = X + 7;scrollen If MausX >= 1279 Then X = X - 7;scrollen For Einheit1.Einheit = Each Einheit;########################################einheit mitscrollen############ If MausY <= 0 Then Einheit1\YKoordinate = Einheit1\YKoordinate + 7 If MausY >= 767 Then Einheit1\YKoordinate = Einheit1\YKoordinate - 7 If MausX <= 0 Then Einheit1\XKoordinate = Einheit1\XKoordinate + 7 If MausX >= 1279 Then Einheit1\XKoordinate = Einheit1\XKoordinate - 7 Next ;########################################################################################################## If MouseHit(1) Then;###############################überprüfen ob einheit ausgewählt wurde und ziel setzen################### For Einheit1.Einheit = Each Einheit If ImagesOverlap(Pointer,MausX,MausY,Punkt,Einheit1\XKoordinate,Einheit1\YKoordinate) Then Einheit1\Ausgewaehlt = 1 End If If Einheit1\Ausgewaehlt = 1 Then Einheit1\Zielerreicht = 0 Next For Einheit1.Einheit = Each Einheit If Einheit1\Ausgewaehlt = 1 Then Einheit1\ZielX = MausX Einheit1\ZielY = MausY End If Next End If ;#################################################einheit bewegen################################################## For Einheit1.Einheit = Each Einheit If Einheit1\Zielerreicht = 0 Then If Einheit1\XKoordinate < Einheit1\ZielX Then Einheit1\XKoordinate = Einheit1\XKoordinate + Einheit1\Speed End If If Einheit1\XKoordinate > Einheit1\ZielX Then Einheit1\XKoordinate = Einheit1\XKoordinate - Einheit1\Speed End If If Einheit1\YKoordinate < Einheit1\ZielY Then Einheit1\YKoordinate = Einheit1\YKoordinate + Einheit1\Speed End If If Einheit1\YKoordinate > Einheit1\ZielY Then Einheit1\YKoordinate = Einheit1\YKoordinate - Einheit1\Speed End If End If If Einheit1\XKoordinate = Einheit1\ZielX And Einheit1\YKoordinate = Einheit1\ZielY Then Einheit1\Zielerreicht = 1 Next ;################################################################################################################## ;#######################################################Boden zeichnen########################### DrawBlock Boden,X,Y DrawBlock Boden,X+476,Y DrawBlock Boden,X+476+476,Y DrawBlock Boden,X+476+476+476,Y DrawBlock Boden,X,Y+409 DrawBlock Boden,X+476,Y+409 DrawBlock Boden,X+476+476,Y+409 DrawBlock Boden,X+476+476+476,Y+409 DrawBlock Boden,X,Y+409+409 DrawBlock Boden,X+476,Y+409+409 DrawBlock Boden,X+476+476,Y+409+409 DrawBlock Boden,X+476+476+476,Y+409+409 ;################################################################################################ ;###################################################Einheit zeichnen################## For Einheit1.Einheit = Each Einheit DrawImage Punkt,Einheit1\XKoordinate,Einheit1\YKoordinate Next ;##################################################################################### DrawImage Pointer,MausX,MausY;mauszeiger zeichnen Flip;flip halt Until KeyHit(1) ;hauptschleife beenden ich habe euch den code einfach mal ganz gegeben, damit ihr das einfach mal ausprobieren könnt es fehlen aber noch 3 bilder: bodentextur,punkt,mauszeiger der punkt muss nicht grösser sein als 39*32 und die textur muss 476*409 gross sein zeiger ist ja eure sache vielen dank schonmal im voraus für eure mühen also das problem wie ihr dann vielleicht bemerken werdet ist, dass wenn man den punkt zu einem bestimmten punkt hinschickt und dann dabei scrollt der punkt nicht aufhört zu fahren. |
||
getlose |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
dir wird niemand helfen, weil :
1. code, aber ohne media (grafiken) 2. aus deinem "geschriebenen" kann man nicht wirklich schließen, welches Problem du überhaupt hast. |
||
Gerhard |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Vermutung:
Wenn du deine Einheiten um einen (nicht ein Pixel großen) Wert bewegst, wirst du deine Zielkoordinaten einfach nicht genau treffen. Um zu erkennen, ob du am Ziel bist, müsstest du aber ganz genau die Zielkoordinaten treffen, sonst kommst du nie an. |
||
Master King of |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
scrollt man nicht wenn der punkt fährt kommt er ans ziel
scrollt man aber wenn er fährt kommt er nie ans ziel obwohl die zielkoordinaten nicht verändert wurden |
||
Master King of |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
jo leude problem jez schon geköst kann ich diesen dingens hier dat theam selber wieder löschen? | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group