Zurück   Flashforum > Flash > ActionScript > Spielkonzepte und Spieleprogrammierung

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-04-2007, 17:32   #1 (permalink)
Neuer User
 
Benutzerbild von payne
 
Registriert seit: Jun 2005
Beiträge: 13
Fallender Ball -> Kollision

Hallo

Wir müssen für die Schule ein kleines Spielchen Programmieren.

Dabei haben wir uns folgendes Ausgedacht:

Man hat 5 Sekunden (oder mehr) Balken zu justieren, sodass ein Ball, der nach diesen 5Sekunden fällt in ein Korb fällt, dessen Position bei jedem Spielstart anders ist. Die Balken sollen nach den 5 Sekunden gesperrt werden.

Bereits erfüllt ist folgendes:

Der Countdown, der fallende Ball (nur Senkrecht nach dem Countdown, die Kollision mit dem Korb)

Was uns jetzt noch fehlt, ist die Kollision mit den Balken (mehrer mind. 5 wahrscheinlich aber noch mehr)

Es ist ja so, je "senkrechter" der Balken ist, sag ich jetzt mal, desto weniger verschiebt sich der Ball ja auf der X- Achse und je "waagerechter" er ist, desto mehr verschiebt er sich, bzw. bleibt sogar ganz stehen.

Wie stellen wir dies an? Unser Lehrer meinte irgendwas von Anzahl der X Schritte x= 1/tan(alpha)

kk Die Theorie verstanden.. Nur wie setzen wir das in der Tat um?
Ich hab die Flash Hilfe schonmal benutzt und dort gibt es ja die Funktion für tan, sin, cos etc.


Mal unserer bisheriger Code, auf dem sich alles abspielt:
ActionScript:
  1. var countdown_num:Number = 5;
  2. var id_countdown:Number;
  3. var id_ball_num:Number;
  4.  
  5. function countdown() {
  6.     countdown_num -= 1;
  7.     countdown_txt.text = countdown_num.toString();
  8. if (countdown_num == 0) {
  9.     clearInterval(id_countdown);
  10.     id_ball_num = setInterval (ball, 1)
  11.     }
  12. }
  13. countdown_txt.text = countdown_num.toString();
  14. id_countdown = setInterval (countdown,1000);
  15.  
  16.  
  17. function ball() {
  18.    
  19.     if (ball_mc.hitTest(korb_mc)) {gotoAndPlay(3);clearInterval(id_ball_num)}
  20.     else {
  21.         if (ball_mc._y >= 390) {gotoAndPlay(4);clearInterval(id_ball_num)}
  22.        
  23.     else {ball_mc._y += 1}
  24.     }
  25.  
  26. }

So das andere ist das mit den Balken, dass diese nach den 5 Sekunden gesperrt werden. Im prinzip haben wir das MC wo der Balken ist. dadrüber haben wir einen unsichtbaren Button gelegt.
Also der Code lautet ja balken1_mc.enabled = true/false

Nur ist es ja so, dass wir 10Stk haben... können wir das net alles in ein Befehl schreiben, oder müssen wir für jeden Button dies schreiben?

Ich hoffe ihr könnt uns etwas dabei helfen.

Geändert von payne (19-04-2007 um 20:14 Uhr)
payne ist offline   Mit Zitat antworten
Alt 19-04-2007, 23:12   #2 (permalink)
Flashbitch
 
Benutzerbild von X-Tender
 
Registriert seit: Oct 2003
Ort: Hannover
Beiträge: 279
DAs sollte dir weiterhelfen können.

http://www.tonypa.pri.ee/vectors/tut09.html
__________________
Fuchtelworld
X-Tender ist offline   Mit Zitat antworten
Alt 20-04-2007, 13:26   #3 (permalink)
Neuer User
 
Benutzerbild von payne
 
Registriert seit: Jun 2005
Beiträge: 13
Also ich hab mir jetzt mal nur die Beispiele angeschaut...noch nicht den Code.

Also zum Teil ist es doch hilfreich von den Beispielen her...

Dabei hab ich mir dann auch mal angeschaut: Ball vs. Line. Und ich denke, dass ist es, wass wir suchen, denn Bei dem was du mir gegeben hast, titscht der Ball ja nur im Winkel ab, er fällt nicht weiter runter, sobald das "Hinderniss" vorbei ist. Ich werde das mal ausprobieren. Danke schonmal
payne ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 18:15 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele