animation

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

 

looky

Betreff: animation

BeitragSa, Jul 02, 2005 19:27
Antworten mit Zitat
Benutzer-Profile anzeigen
halloo,
könt ihr mir ein programm schreiben mit dem mein männchen wenn ich
nach rechts drück das er sich nach rechts dreht und einpaar scritte macht
und dass selbe mit oben,
danke für die mühe
 

FBI-blitz

BeitragSa, Jul 02, 2005 20:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja können wir.
machen wir aber nicht, da du doch programmieren lernen willst!?

Also versuch es doch mal selbst. So schwer ist das nicht.
Es gibt dazu etliche tutorials. Zum Beispiel könntest du dir mal die von http://www.robsite.de anschauen.

PS: Fragen wie "Könnt ihr mir mal n Programm schreiben" werden hier nicht gerne gehört. Rolling Eyes Das Forum ist dazu da, dass wir die bei einuzelnen Fragen helfen, aber nicht gleich ein Programmstückchen für dich schreiben. Immerhin willst DU ja der Programmierer sein Wink
Computer 1: AMD Athlon64 3500+ | nVidia GF 7900GT | 1024 MB DDR-RAM | ASUS A8N-SLI Preimium | 250 GB SATA 2 || WindowsXP | Blitz3D | Blitz+
Computer 2: AMD AthlonXP 2400+ | ATI Radeon 9500 | 512 MB DDR-RAM | MSI K7N2 | 80 GB IDE | 160 GB IDE || WindowsXP | Blitz3D | Blitz+
Computer 3: Intel Pentium MMX | onBoard-Grafik | 32 MB RAM | 1 GB IDE || Windows 98 SE | Blitz+

Jack

BeitragSa, Jul 02, 2005 20:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
Code: [AUSKLAPPEN]
Global frame
Global laufen = False
Global sframe = False
Global FigurX = 100
Global FigurY = 200

Function drawspieler()
 If KeyDown(203) Then
  laufen = True
  sframe = 5
  FigurX = FigurX - 20

 ElseIf KeyDown(205) Then
  laufen = True
  sframe = 1
  FigurX = FigurX + 20
 Else
  laufen = False 
 EndIf 
 
 If laufen = True Then frame = (frame + 1) Mod 2
 
 DrawImage Figur, FigurX,FigurY, sframe + frame
End Function
Graphics 640,480,16,2
SetBuffer BackBuffer()

Global Figur = LoadAnimImage("C:\Bilder\Dino.bmp",35,50,0,8)

MaskImage Figur, 255,255,255

Repeat
 Cls
 drawspieler
 If KeyDown(1) Then Exit
 Delay 150
 Flip
Forever

Ich hoffe, dass kan dir weiterhelfen. Aber denk auch daran, was FBI-Blitz gepostet hat. Du willst doch programmieren lernen, und nicht wir, oder Question Wenn der Code nicht funzt, poste nochmal hier. Laughing
Wer kein HTML kann und lernen will, der ist wirklich dumm... MFG Dennerlein

skey-z

BeitragSa, Jul 02, 2005 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
1. der code kann nicht funktionieren:
Code: [AUSKLAPPEN]

Function drawspieler()
.
.
.
"Hauptschleife"
.
drawspieler ; wo sind die klammern



2. wenn du schon jemandem durch code was weitergeben willst, mach es anständig:
Code: [AUSKLAPPEN]

Delay 150

Für diesen Zweck halt ausreichend, aber wenn er was lernen soll, benutze millisecs()
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Jack

BeitragSa, Jul 02, 2005 21:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja, bei mir gehts. Laughing Alle sagen das mit Millisecs(), aber ich mach das nie so. Was ist eigentlich an meinem...
BlitzBasic: [AUSKLAPPEN]
Delay 150

...auszusetzen Question
Wer kein HTML kann und lernen will, der ist wirklich dumm... MFG Dennerlein

Hip Teen

BeitragSa, Jul 02, 2005 21:56
Antworten mit Zitat
Benutzer-Profile anzeigen
die () kann afaik man weglassen, solange man keinen Returnwert haben will.

Am Delay ist auszusetzen, dass es das ganze Programm anhält. In dem Beispiel vielleicht noch praktikabel, aber wenn man größere Sachen schreibt ist es unbrauchbar
Spruch der Woche: "Ahh, ein neues Gesicht?!" - "Nein, das hab ich schon länger"

skey-z

BeitragSa, Jul 02, 2005 22:07
Antworten mit Zitat
Benutzer-Profile anzeigen
oh, ok, dann ziehe ich punkt 1 zurück, das wusste ich selber noch nicht, habe gedacht, man müsste es immer so schreiben, ok, wieder was dazu gelernt^^
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Jack

BeitragSo, Jul 03, 2005 12:20
Antworten mit Zitat
Benutzer-Profile anzeigen
BlitzBasic: [AUSKLAPPEN]
Function burnme(txt$)
Print txt$ + \".burnme\"
End Function

Das ist eine Prozedur.
BlitzBasic: [AUSKLAPPEN]
Function burnme(txt$)
Return txt$
End Function

Das ist eine Funktion.
Wer kein HTML kann und lernen will, der ist wirklich dumm... MFG Dennerlein
 

looky

BeitragSo, Jul 03, 2005 13:03
Antworten mit Zitat
Benutzer-Profile anzeigen
also das mit den programierer selbst denken und so:
ich hab mir schon ein tutorial reingezogen und auch selber was geschrieben und das ist daraus geworden.
BlitzBasic: [AUSKLAPPEN]

name=LoadAnimImage(\"graphics\name.bmp\",17,26,0,11)

rechts()
links()
oben()
unten()
pause()

DrawImage name,nx-scrollx,ny-scrolly,i

Function rechts()
If KeyDown(205) Then
ix=ix-2
mx=mx-2
scrollx=scrollx-2
nx=nx-2
i=0.0
i=i+0.1
If i=2.0 Then i=0.0
End If
End Function

Function links()
If KeyDown(203) Then
ix=ix+2
mx=mx+2
scrollx=scrollx+2
nx=nx+2
i=3.0
i=i+0.1
If i=5.0 Then i=3.0
End If
End Function



rechts klappt aber links nicht und was habt ihr mit diesen delay
mit floatzahlen geht das besser oder?

BladeRunner

Moderator

BeitragSo, Jul 03, 2005 13:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Delay bremst das Programm total aus. Wenn du nun mehrere Figuren animieren wolltest müsstest Du alle Animationen in dieser einen Schleife darstellen (und verschieden schnelle Abläufe wären nur sehr schwer zu realisieren.Zudem geht Dir wichtige Rechenzeit verloren.
Der Code von Jack ist also nicht zu empfehlen. Timer mit Millisecs() sind schnell realisiert und universell einsetzbar.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Lunatix

BeitragSo, Jul 03, 2005 13:31
Antworten mit Zitat
Benutzer-Profile anzeigen
@ Jack :

An deinem Delay haben wir ganz viel was auszusetzen, weil er nämlich das programm komplett stoppt, für leute mit weniger schnellen rechnern fürt das schnell zu geschwindigkeitsproblemen, auuserdem, soweit ich das weis, läuft der rechner dann auf voller leistung, obwohl er gar nix machen muss.

machts so :
BlitzBasic: [AUSKLAPPEN]

							
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen...

Jack

BeitragSo, Jul 03, 2005 13:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
BlitzBasic: [AUSKLAPPEN]
FR=FR+1 
If FR>20
Fraem=Frame+1
FR=0
EndIf

If Fame> MaxFrame
Frame=0
EndIf

DrawImage Player,x,y,Frame

Gut, aber was soll das Question :
BlitzBasic: [AUSKLAPPEN]
Fraem=Frame+1

Ich mein, OK, kleiner Tippfehler, aber wenn er das jetzt geschrieben hätte, wäre gleich ein neuer Post von ihm erschienen, wenn er es nicht bemerkt hätte.
Wer kein HTML kann und lernen will, der ist wirklich dumm... MFG Dennerlein

Lunatix

BeitragSo, Jul 03, 2005 13:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Jaaaa... man kann doch mal Tipp-Fehler machen oder?
Und wenn er gepostet hätte, dann hätte ich geantwortet er soll mal selber suchen, das hiesse nämlich er hätte den code eingebaut ohne ihn verstanden zu haben, und wer so dumm/faul ist, dem kann man net helfen und der sollte auch net proggen!
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen...

Jack

BeitragSo, Jul 03, 2005 13:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Junkprogger hat Folgendes geschrieben:
...der sollte auch net proggen!

Naja, als Hobby darf man das doch machen, oder Question
Wer kein HTML kann und lernen will, der ist wirklich dumm... MFG Dennerlein

Lunatix

BeitragSo, Jul 03, 2005 13:57
Antworten mit Zitat
Benutzer-Profile anzeigen
wer zu faul und oder zu dumm ist code selbst zu machen, sondern es sich von den anderen in den ar*** schieben lässt? aslo jetz nix gegen dich Looky, wir reden von allgemein Idea
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen...

BladeRunner

Moderator

BeitragSo, Jul 03, 2005 14:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist gut nun, behaltet die Contenance.
Ach ja: Dein Beispiel funktioniert nicht, JP, da es nicht Rechnerunabhängig ist. Was Bei Dir vernünftig läuft wird bei jemand mit nem Schnelleren Rechner unspielbar schnell durchrattern.

Zu den Millisecs: Bitteschön
Klicken, lesen, glücklich sein.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Lunatix

BeitragSo, Jul 03, 2005 14:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Oh. F*** dann muss ich mein Proggie nochmal umbauen.
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen...
 

looky

BeitragSo, Jul 03, 2005 18:23
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habs geschaft und fast ohne eure hilfe was so alles durch nachdenken
geht. Leider bin ich zudumm dafür: mein männchen soll vor einem haus
stehen bleiben und nicht hindurch gehen.

Klip

BeitragMo, Jul 04, 2005 13:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Schau dir auf blitzbase.de die Befehle ImagesCollide und If an, mit diesen beiden kannst du das Problem mit dem Haus lösen.

Jack

BeitragMo, Jul 04, 2005 14:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Genau des würde ich nicht machen:

Warum Question Weil das Haus wahrscheinlich Teil des Hintergrundes ist und nicht ein eigenes Bild Exclamation
Wer kein HTML kann und lernen will, der ist wirklich dumm... MFG Dennerlein

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group