| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Jun 2002 Ort: P´dorf
Beiträge: 12
| Hittest funkt nur auf level0 bei 100%
Hallo Hab ein kleines Heli-Game gebastelt. Eine Landschaft, Blick von oben, über if-abfragen (Cursertasten) läst sich der der Heli-Mc über die Landschaft steuern und über zwei Tasten kann man mit den Heli aufsteigen bzw landen. Durch das Aufsteigen in verschiedene Höhen kann man über 5 verschiedene Hindernissearten „fliegen“ sprich (höhe =1) hittest (boden) true (höhe =2) hittest (Runway) true (höhe =3) hittest (Häuser) true (höhe =4) hittest (Stromleitungen ect.) true (höhe =5) hittest (Wolken) true ActionScript:
bei normaler Größe - 900 x 700pix auf level0 funktioniert auch alles bestens nur ist die Spielfläche zu klein und wenn ich den ganzen Film z.b. 4x so groß mach 1800 x 1400 und in level1 lade bei einer Bühnengröße 900 x700 und den ganzen level1 per AS verschiebe (nicht Stufenlos, sondern „ruckartig“ also wenn der Heli rechts aus dem Bild fliegt versetzt sich der ganze level1 und eine Breite nach links und der heli fliegt von links wieder über die Bühne) funktionieren fast – nur die hittests nicht. Der gleich Film 1800x1400 pix auf level0 funktioniert einwandfrei, is nur zu groß für die meisten Monitore. Das Spiel auf level0 900x700 http://www.heli-ski.at/ Das Spiel mit den gleichen "hittests" auf level0, (level0 = 900x700, level1 2500 x 2100 pix) http://www.heli-ski.at/test Komm einfach nicht drauf, hab schon das Forum durchsucht aber nichts gefunden. |
| | |
| | #2 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
ich sehe ja nur diesen teil deines scriptes. schon mal drann gedacht, das du nur einen teil verschiebst und deshalb der nullpunkt eines mc's nicht mehr auf dem nullpunkt der anderen mc's übereinstimmen kann? umwandlung mit "localToGlobal"
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Jun 2002 Ort: P´dorf
Beiträge: 12
| also hier alles
erster Frame Zeitleiste ActionScript:
AS am Heli MC: ActionScript:
MC für aufsteigen und landen Höhen abfragen ActionScript:
und noch die filme für die hittests. das is eigentlich alles. wenn man den film in level1 läd verschiebt sich der hittest mit der günen fläche von links unten (optisch bleibt die fläche auch dort) nach links mitte ( unsicht bar )??? und das is eigentlich das problem hier mal die ganze fläche zur ansicht http://www.heli-ski.at/test2/ die fläche auf level1 http://www.heli-ski.at/test/ |
| | |
| | #4 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
Also so ganz kapiere ich dein problem nicht!!!! deshalb ist diese antwort auch eventuell falsch. ---------- "..ich sehe ja nur diesen teil deines scriptes.." da hatte ich mehr an den hierarchischen aufbau gedacht. hatte jetzt nicht vor, deinen spagetti-code zu frühstücken ;-) "..wenn man den film in level1 läd verschiebt sich der hittest mit der günen fläche von links unten (optisch bleibt die fläche auch dort) nach links mitte (unsicht bar)???.." A) also hittest ist eine funktion, die kann man nicht verschieben?! B) wenn du ein mc in ein anderes läds und beide sind gleich gross. dann passen die zueinander. ist irgendwie klar, oder? mach dein in _level1 geladenes mc so gross wie den hauptfilm. andernfalls klebt das 900x700 grosse rechteck links oben im 2500x2100 grossen rechteck. weil rechts oben der nullpunkt ist: x=0 und y=0 (links oben!!! nicht links mitte?). ist auch irgendwie klar, oder? in diesem fall musst du _x und _y positionieren. hat überhaupt nichts mit hittest zu tun. z.b.: 1.frame loadMovieNum ("xxx.swf", 1); 3.frame if (_level1._framesloaded>=_level1._totalframes) { _level1._y = 2100-700; stop (); } else { prevFrame(); play(); } C) unsichtbar??? der geladene mc ist transparent, meinst du das? D) falls du nach dem verschieben von _level1 die funktion hittest auf objekte in _level0 ausführen willst, dann denk an die verschiebung und benütze z.b. die funktion LocalToGlobal.
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (19-02-2004 um 00:34 Uhr) |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Jun 2002 Ort: P´dorf
Beiträge: 12
| Stimmt, hab das nicht deutlich genug erklärt.
alsden... @A – weis ich, nur ein Hittest muss zwischen zwei filmen passieren, am besten man sieht (geht aber auch mit _alpha = 0) beide. Nur hier http://www.heli-ski.at/test/ Passiert folgendes: der hittest sollte zwischen Heli und der grünen Fläche sein, Nur wenn man am Anfang die grüne Fläche sieht tut sich NIX und wenn man mit dem Heli aber einfach nach oben fliegt( aus dem bild raus) und sich der der level1 verschiebt bleibt der heli stehn – weil ein hittest (da is aber im film NIX) mit geduld und zeit kann man aber die „kannte“ abfliegen, und es is die gleiche Form wie die grüne Flache ( die jetzt aber schon nach unten verschoben wurde? @B Ich lade einen großen Film (B2500xH200 level1) in einen kleinen (B900xH700 level0) @C erklärt sich in A das ein film der in ein höheren level geladen wird durchsicht bar wird is auch bekannt, das unsichtbar bezieht sich auf das Feld „mitte links“ wo der Heli stehen bleibt obwohl da nix is @D alle hittest werden im selben level ausgeführt, wird der spiel-swf (2500x2100) auf level0 geladen funktionieren alle hitests, ladet man den selben swf auf level1 in einem kleinerem swf funktionieren die hitests nicht mehr?? |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Jun 2002 Ort: P´dorf
Beiträge: 12
| Hat wirklich keine eine Ahnung????
oder ab ich's zu schlecht beschrieben??? stell mal ein screenshot rein vielleicht hat dann wer den durchblick http://www.heli-ski.at/sp.jpg buh (bitte um hilfe) m. |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |