Spielfigur Fließend bewegen lassen
Übersicht

![]() |
bruce185Betreff: Spielfigur Fließend bewegen lassen |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi,
also ich bin gerade dabei ein Pac Man Spiel zu proggen, und möchte daher mein Spielfigur Fließend bewegen lassen, aber es bewegt sich immer 32 Pixel also es zuck immer, hier mal den code: BlitzBasic: [AUSKLAPPEN]
für jede hilfe bin ich euch sehr dankbar ![]() Andreas |
||
Florian |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
https://www.blitzforum.de/view...r++tilemap | ||
![]() |
bruce185 |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich danke dir, habe es jetzt hinbekommen, noch eine frage hätte ich, und zwar wie kann ich einen Gegner in mein Spiel bewegen lassen automatisch? habe noch nie ein Gegner im Spiel reingemacht, deshalb bitte ich um eure hilfe, ich danke euch schonmal für die hilfe ![]() Andreas |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
zB: Fragst erst welche Entfernung größer ist X oder Y mit Hilfe von ABS(). Dann bewege den Gegner in Richtung des Spielers...
Oder wenn später Mauern vorkommen: Frage erst nach in welche Richtung überhaupt der Gegner gehen kann und stelle demnach Abfragbedingungen an. Oder wenn der Gegner sich nicht in einer 'Winkelgasse' verfangen soll: Erstelle eine Pathfindingroutine. Beispiele hier gibs zu genüge. |
||
![]() |
bruce185 |
![]() Antworten mit Zitat ![]() |
---|---|---|
danke, aber keine ahnung wie ich das machen soll, kannst du mir vieleicht ein beispiel posten?, ich wäre dir sehr dankbar, danke schonmal ![]() Andreas |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi Bruce, hier mal ein Beispiel. Sorry, mir ist vorhin noch eine Idee eingefallen, wie man es ganz ohne If-Abfragen machen kann. Wenn du die Kollisionsabfrage machst solltest du darauf achten, daß der Gegner an der Mauer entlangslidet und nicht fest kleben bleibt. Ansonsten müsste man erst abgragen wo freie Felder sind und demnach die Bewegungsabfragen machen.
Code: [AUSKLAPPEN] Graphics 400,400,0,2
SetBuffer BackBuffer() HidePointer While Not KeyHit(1) mx=MouseX() my=MouseY() xp=xp+Sgn(mx-xp) yp=yp+Sgn(my-yp) Rect mx-6,my-6,13,13,0 Oval xp-6,yp-6,13,13,0 Flip Cls Wend End |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Graphics 1024,768,16,1
SetBuffer BackBuffer() tileset = LoadAnimImage("tileset.bmp",32,32,0,4) spieler = LoadImage("spieler.bmp") MaskImage tileset,255,0,255 MaskImage spieler,255,0,255 Dim map(31,23) Data 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2 Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2 Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,2,2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2 Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2 Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2 Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2 Data 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 For y=0 To 23 For x=0 To 31 Read map(x,y) Next Next spielerx = 10 spielery = 6 gegnerx=24 gegnery=4 move=1 Repeat Cls For y=0 To 23 For x=0 To 31 DrawBlock tileset,x*32,y*32,map(x,y) Next Next If KeyDown(205) Then If map(spielerx+1,spielery)<2 Then spielerx = spielerx + 1 If KeyDown(203) Then If map(spielerx-1,spielery)<2 Then spielerx = spielerx - 1 If KeyDown(208) Then If map(spielerx,spielery+1)<2 Then spielery = spielery + 1 If KeyDown(200) Then If map(spielerx,spielery-1)<2 Then spielery = spielery - 1 v=1-v If v=1 Then If map(gegnerx+Sgn(spielerx-gegnerx),gegnery)<2 Then gegnerx=gegnerx+Sgn(spielerx-gegnerx) If map(gegnerx,gegnery+Sgn(spielery-gegnery))<2 Then gegnery=gegnery+Sgn(spielery-gegnery) End If DrawImage spieler,spielerx*32,spielery*32 Rect gegnerx*32,gegnery*32,32,32,1 Delay 80 ; Naja, daß würde ich hier anders machen! Flip Until KeyHit(1) End |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group