Brauche ganz ganz dringend Hilfe

Tnaoui

Grünschnabel
Hi also ich bin gerade dabei mir selbst Flash bei zubringen

ich bin dabei ein spiel zu Programmieren bei dem es darum geht ein Gegenstand richtig zu platzieren

kurze Erklärung

es liegt eine Pizza auf dem Tisch, die belegt werden muss
Zutaten:
2x Salami
2x champingon
1x käse

auf der Pizza sind die zutaten die zu platzieren sind ganz schwach zu sehen
angenommen oben rechts auf der Pizza 1xSalami oben links auf der Pizza 1xChampignon in der Mitte 1xKäse, unten rechts auf der Pizza 1xSalami und unten links auf der Pizza 1xChampignon

so ich bin folgender maßen vorgegangen

ich habe eine folgende ebene in folgender Reihen folge
Aktionen
Belag: ist der Belag der auf die Pizza muss 2x Salami 2x champignon 1x käse der Belag selbst ist ein Movieclip in dem Movieclip gibt es eine weiter eben dragger
Pizza Belag: ist die Schablone für den spielenden damit er weiß wo er den Belag hin ziehen muss
Hit: sind Vierecke die auf alphaton 0 sind die zur Orientierung des draggers dienen

hier mein quell text
1 Frame Aktionen
PHP:
fscommand ("allowscale", "0");
puzzlex=118;
puzzley=184;
if ( _root.pic_1.hitTest(_root.hit_1)==true)
     {if ( _root.pic_4.hitTest(_root.hit_4)==true)
         {if ( _root.pic_6.hitTest(_root.hit_6)==true)
             {if ( _root.pic_8.hitTest(_root.hit_8)==true)
{gotoAndStop(3);}}}}

2 Frame Aktionen
gotoAndPlay(1);
3 Frame Aktionen im 3 frame ist mein Button der zu anderer Szene bzw. nächstem Level wechseln soll
PHP:
on (release) {
	gotoAndPlay("Scene 2", 1);
}
dragger
PHP:
on (press) {
    startDrag (this, true);}

on (release) {
	stopDrag ();

if ( this.hitTest(_root.hit_1)==true)
 {this._x=_root.puzzlex; this._y=_root.puzzley;}

if ( this.hitTest(_root.hit_2)==true)
{this._x=_root.puzzlex+40; this._y=_root.puzzley;}

if ( this.hitTest(_root.hit_3)==true)
{this._x=_root.puzzlex+80; this._y=_root.puzzley;}

if ( this.hitTest(_root.hit_4)==true)
 {this._x=_root.puzzlex; this._y=_root.puzzley+40;}

if ( this.hitTest(_root.hit_5)==true)
 {this._x=_root.puzzlex+40; this._y=_root.puzzley+40;}

if ( this.hitTest(_root.hit_6)==true)
{this._x=_root.puzzlex+80; this._y=_root.puzzley+40;}

if ( this.hitTest(_root.hit_7)==true)
{this._x=_root.puzzlex; this._y=_root.puzzley+80;}

if ( this.hitTest(_root.hit_8)==true)
{this._x=_root.puzzlex+40; this._y=_root.puzzley+80;}

if ( this.hitTest(_root.hit_9)==true)
{this._x=_root.puzzlex+80; this._y=_root.puzzley+80;}

}

der link aus dem ich den tutorial habe

http://www.flashworker.de/tutorial/78/001.html

So und nun zu meinem Problem zu einem reagiert diese Funktion nur wenn Salami eins auf Hit 1 liegt oder Salami 2 auf Hit 2 liegt und nicht wenn salami1 auf Hit 2 liegt ich möchte das die Salami auf Hit 1 und Hit 2 reagiert wie bekomme ich das hin hab schon an eine verschachtelte if Bedingung nachgedacht scheint aber nicht wirklich zu klappen

und
frage 2 mein Szenen Wechsel funktioniert auch nicht wieso

ich hoffe mal ihr könnt mir helfen
 
Hallo,
dein Post ist abschreckend lang und trotzdem nicht wirklich aufschlussreich - kannst du deine fla einmal posten, am Besten für Flash 8 oder älter, damit ich das auch öffnen kann?

Kann den Sinn von "dragger" immernoch nicht ganz nachvollziehen.
Gruß
jens

(vorbildlich, wie du aus einem Tutorial eine eigene Aufgabe schneiderst um Flash zu lernen).
 
Hallo hab mir gedacht ich häng die fla an damit ihr euch das mal ansehenkönnt da meine erklärung wie oben gemeint net so super war lol
 

Anhänge

  • beispiel_fuer_forum.fla
    48 KB · Aufrufe: 62
Hey,
für jemanden, der ganz ganz dringend Hilfe brauchst, lässt du dir aber ziemlich Zeit mit dem Antworten. :)

Zunächst einmal: Die Formatierung des Codes ist grausig. Bei solchen Codes kann man als Außenstehender kaum durchblicken. Dein Glück dass Flash den Auto-Formatieren-Button hat.
Code:
if ( _root.pic_1.hitTest(_root.hit_1)==true)
     {if ( _root.pic_4.hitTest(_root.hit_4)==true)
         {if ( _root.pic_6.hitTest(_root.hit_6)==true)
             {if ( _root.pic_8.hitTest(_root.hit_8)==true)
{gotoAndStop(3);}}}}

Deine Konstruktion mit den 2 Schlüsselbildern, bei welcher der Code des Ersten immer wieder durch ein gotoAndPlay(1) im 2. Schlüsselbild ausgelöst wird, ist nicht nötig: dafür gibt es den onEnterFrame. Guck am Besten dazu mal in der Hilfe. So wendet man ihn an:

Code:
_root.onEnterFrame = function() {
 trace("ich werde oft ausgelöst");
}
(Dieser Code steht in einem Schlüsselbild)

Für dein Problem (wenn ich es recht verstanden habe) mit den Salamis, die man nicht untereinander austauschen kann: man kann if-Sachen so verknüfen, dass zwei Bedingungen mit "ODER" verbunden sind. Das macht man mit ||

Code:
if (_root.pic_1.hitTest(_root.hit_1)  || _root.pic8.hitTest(_root.hit_1)) {

Diese if-Abfrage wird dann positiv, wenn entweder die rote '8'-Salami auf dem Feld hit_1 liegt, oder die rote '1'-Salami.

Reicht dir das als Hilfe?
 
hey danke für dien hilfe und deine super schnellen antworten


hab jetzt diese schleife drinn der springt aber net wie er soll zu frame 3
PHP:
fscommand ("allowscale", "0");
puzzlex=118;
puzzley=184;
if ( _root.pic_1.hitTest(_root.hit_1)|| _root.pic8.hitTest(_root.hit_1)==true)
     {if ( _root.pic_4.hitTest(_root.hit_4)|| _root.pic6.hitTest(_root.hit_4)==true)
         {if ( _root.pic_6.hitTest(_root.hit_6)|| _root.pic4.hitTest(_root.hit_6)==true)
             {if ( _root.pic_1.hitTest(_root.hit_8)|| _root.pic8.hitTest(_root.hit_8)==true)
{gotoAndStop(3);}}}}
 
Zurück