Entwickler-Ecke

Multimedia / Grafik - Spielprojekt im Unterricht: wir brauchen dringend hilfe!!


MisterAb - Sa 24.01.04 14:51
Titel: Spielprojekt im Unterricht: wir brauchen dringend hilfe!!
Hallo!

Wir (4 verzweifelte mädchen) müssen in der schule das "spiel des wissens" programmieren.
Jedoch haben wir keine ahnung wie wir das realisieren können, besonders was die spielfiguren un deren bewegungen angeht.
Unsere spielfelder sind vom typ shape. welche möglichkeiten gibt es da?

Ich hoffe ihr könnt uns helfen. Danke im voraus.


Raphael O. - Sa 24.01.04 20:32

was ist das spiel des Wissens? :roll:


Johwood - So 25.01.04 19:03

*DÄNG*


MisterAb - Mo 26.01.04 02:59

vielen dank für deine hilfe! aber ich glaube du redest vom Spiel des lebens *g*
wir müssen das Spiel des Wissens programmieren. das is das mit dem Fragen beantworten auf den Planeten.
wie geht dass das man Spielfiguren bewegen kann? wir sind eben keine Delphi-Freaks nur verzweifelte Mädelz im Informatik Unterricht und haben dementsprechend null ahnung.


Sebo - Mo 26.01.04 11:27

shape.top := shape.top + c;//Entfernung vom oberen bildrand
shape.left := shape.left + d;//entfernung vom linken bildrand

z.b.
c := 1;
d := 2;
müsst ihr mal schaun wie das im genauen aussieht


Johwood - Mo 26.01.04 18:13

Aua... voll der Brainbug... okay, sorry, ich hab vom falschen Spiel geredet... verdammt nochmal...


DiggiDi - Mo 26.01.04 19:35

müssen die figuren richtig animiert werden? oder reicht auch wenn sich einfach ne image bewegt?
also animation könnt ihr schon mal vergessen so leid es mir auch tut :) aber das lernt man nicht von heute auf morgen.
und für das andere schaut euch die DirectX tutorials auf delphi-treff.de

ps ( ich kenn das spiel nicht :oops: kannst du mal genauer erklären was das für ein spiel ist?)


mimi - Mo 26.01.04 19:48

kannst du mal ein bild geben wie das game aussehen soll ?
dann kann dir evtl, besser jemmand helfen *G*


waldmeister - Di 27.01.04 03:13

is doch recht simple!

@DiggiDi:
Zitat:
und für das andere schaut euch die DirectX tutorials auf delphi-treff.de


in der schule lernt man kein directX, also zumindest wir nicht bis jetzt zur 13!!

@MisterAb: machts einfach mit nem timer un shapes die ihr bewegt!
also ein shape bewegen geht z.b. so:
ihr braucht nen timer (timer1) und ein shape(shape1) un dann ins ontimer ereignis :

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
var
a: integer;
begin
a:=1{ wenn a positiv, dann bewegt sich das shape nach unten un wenn a negativ ist, dann geht das shape nach oben! weil top gibt den abstand zwischen shape und oberem form rand an! }
shape1.top:=shape1.top+a;
end;

oder halt das hier für eine links/rechts bewegung:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
var
a: integer;
begin
a:=1;  {wenn a positiv, dann bewegt sich das shape nach rechts un wenn a negativ ist, dann geht das shape nach links! weil left gibt den abstand zwischen shape und linkenform rand an! }
shape1.left:=shape1.left+a;
end;


wenn man das timer intervall klein genug wählt kann man eine recht flüssige bewegung zeigen! natürlich is das abhängig von a, da a die größe der sprünge angibt!
wenn man das ganze jetzt noch mit einer abfrage für die position des shapes (also top und left) koppelt, dann kann man damit das shape immer von einer zur nächsten position wandern lassen un wenn man am ziel ist einfach den timer1.enabled:=false; setzen!
ich hab den code nicht getestet, aber sollte klappen ;)
hoffe ich konnte helfen!!!


MisterAb - Di 27.01.04 12:01

danke wir probieren das später mal aus. ich hoffe es klappt.

@DiggiDi und alle anderen Unwissenden:
Beim Spiel des Wissens bewegt man sich auf so Feldern, durchWürfeln kommt man weiter un muss Fragen beanworten aus verschieden Gebieten, je nach dem bei was für einem Planeten man grade ist.


Chatfix - Di 27.01.04 12:21

Das Würfeln könnt ihr ja mittels Random und Randomize realisieren.
Aber dazu steht auch einiges hier im Forum bzw in der Delphi-Hilfe


MisterAb - Di 27.01.04 23:31

würfeln is kein problem.

es geht um die figuren. wir haben es ausprobiert mit dem timer aber was wir wollen is ja dass die figur immer je nach gewürfelter augenzahl diese felder rückt. net bloß dass sie sich nach oben bewegt *g*


waldmeister - Mi 28.01.04 00:49

hab doch dabei geschriebn, dass die variable a angibt wie groß die schritte sind un in welche richtung sie gehen!!

wenn man a jetzt recht groß wählt, z.b. 50, dann macht das shape schon en großen satz!
un jetzt muss man halt nur gucken wie weit das nächste feld weg is un voila das shape springt von feld zu feld!!

man muss das ganze aber net in nem timer machen...kann das auch in ne for-schleife machen!
z.b.
erst erwürfelt man die zahl die man vorrücken soll un dann speichert man die, in ne variable! z.b. variable b
un dann kann mans so machen


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure waagerechtbewegen;
var
a,b: integer;
begin
a:=50// a is halt die entfernung zum nächsten feld
b:=Random(6)+1// ermittelt ne zahl zwischen 1 und 6
for i:=1 to b do 
shape1.left:=shape1.left+a; //jetzt springt das shape von feld zu feld, vorrausgesetzt der abstand der felder is 50 ;)
end;

procedure senkrechtbewegen;
var
a,b: integer;
begin
a:=50// a is halt die entfernung zum nächsten feld
b:=Random(6)+1// ermittelt ne zahl zwischen 1 und 6
for i:=1 to b do 
shape1.top:=shape1.top+a; //jetzt springt das shape von feld zu feld, vorrausgesetzt der abstand der felder is 50 ;)
end;


hoffe das hilft euch!!
weiß net ob die idee dahinter so verständlich is, aber ich wills ma hoffen ;)


Doctor X - Mi 10.03.04 16:49
Titel: Moin
Hi,
da die Bewegung des Shapes schnell gehen soll, versucht mal Asm!
Oder erstellt eine bmp-Datei als Hintergrund und zeichnet den auf ein TImage!
Dann mit image1.canvas.draw(0, 0, image2.Picture.Graphic) ein neues Bild draufzeichnen! Das image2 sollte unssichtbar sein und natürlich immer mit der aktuellen spielfigur geladen!!

Doctor X

Have fun (with me) 8)