Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash MX 2004

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-11-2005, 13:15   #1 (permalink)
knighToFdemonS
 
Benutzerbild von KampfRatte[LiX]
 
Registriert seit: May 2003
Beiträge: 67
Red face Spielumsetzung mit Errors

MoinMoin!
Also ich bin erst seit 1 woche bei flash dabei, also immer schöööön langsam =)
ähm wenn ich meine fla-datei testen will krieg ich diese messages:
Szene=Szene 1, Ebene=kollision2, Bild=1: Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
onClipEvent(load){

Szene=Szene 1, Ebene=Spielfigur2, Bild=1: Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
onClipEvent(enterFrame){

Szene=Szene 1, Ebene=kollision1, Bild=1: Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
onClipEvent(load){

Szene=Szene 1, Ebene=Spielfigur1, Bild=1: Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
onClipEvent(enterFrame){


eigentlich verhalten sich diese objekte (vektorgrafiken) als movieclips. also is zumindest so eingestellt (in symbol konvertiert) was hab ich falsch gemacht?

danke für eure hilfe
KampfRatte[LiX] ist offline   Mit Zitat antworten
Alt 10-11-2005, 13:23   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Tag!
Abgesehen davon, dass man eigentlich nicht mehr mit onClipEvents arbeiten sollte (kann man ab Flash 6 alles aus der Haupt-Zeitleiste machen), gehört dein Script AUF die MCs. Du hast das anscheinende direkt in die HZL geschrieben.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 10-11-2005, 13:28   #3 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
Is eine Frage wo du das Script "gelagert" hast.

ein onClipEvent(...) gehört zB. AUF einen MovieClip ... also den Movieclip anklicken und dann das Script im Aktionsfenster schreiben.

Generell würd ich dir aber raten es gleich vernünftig(er) zu machen und folgende Syntax zu benutzen:

Bsp: MovieClip auf der Bühne mit Instanzname meinMC

Neue Ebene erstellen, die script nennen und im ersten Schlüsselbild folgendes Schreiben:

_root.meinMC.onEnterFrame = function() {
trace(this._name+" | ("+this._x+"/"+this._y+")");
this._x += 1;
}

Die Schreibweise mag auf den ersten Blick komplizierter erscheinen aber sie hat den unersetzlichen Vorteile das du alle Scripte komplimiert in einem Schlüsselbild hast und nicht verteilt auf diverse MCs.

Wenn du später was im Film ändern musst hilft das immens weiter.

Edit: Wie so oft war der Frager schneller ^^
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 10-11-2005, 13:31   #4 (permalink)
knighToFdemonS
 
Benutzerbild von KampfRatte[LiX]
 
Registriert seit: May 2003
Beiträge: 67
hmm nein leider nich. wenn ichse in die movieclips kopier bekomm ich nur das der code wo anders is aber immer noch den selben fehler:

Code:
Symbol=kol+sf1, Ebene=Ebene 1, Bild=1: Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
     onClipEvent(enterFrame){

Symbol=kol+sf2, Ebene=Ebene 1, Bild=1: Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
     onClipEvent(enterFrame){

das hier ist mal der code den ich für den frame verwende:
Code:
onClipEvent(enterFrame){
if(Key.isDown(Key.getAscii(A)) && this._x >= 30){
   this._xscale = -100;
   this.Figur1.play();
   this._x = this._x-5;
}
else if(Key.isDown(Key.getAscii(D)) && this._x <= 470){
   this._xscale = 100;
   this.Figur1.play();
   this._x = this._x+5;
}
    if(this.hitTest(getBounds(_root).xMax, _y, true)){
      _x -= 1;
   }
   if(this.hitTest(getBounds(_root).xMin, _y, true)){
      _x += 1;
   }
   if(this.hitTest(_x, getBounds(_root).yMax, true)){
      _y -= 1;
   }
   if(this.hitTest(_x, getBounds(_root).yMin, true)){
      _y += 1;
   }
}
KampfRatte[LiX] ist offline   Mit Zitat antworten
Alt 10-11-2005, 13:37   #5 (permalink)
knighToFdemonS
 
Benutzerbild von KampfRatte[LiX]
 
Registriert seit: May 2003
Beiträge: 67
Zitat:
Zitat von readme.txt
also den Movieclip anklicken und dann das Script im Aktionsfenster schreiben.
hm? wie genau meinsu das? kannsu das etwas genauer beschreiben wo das hin muss? weil wenn ich ja n movieclip auswähl, bin ich ja wieder auf der HZL. und wenn ich den movieclip bearbeite (doppelklick) und da den code einfüg, bekomm ich den selben fehler.
Zitat:
Zitat von readme.txt
_root.meinMC.onEnterFrame = function() {
trace(this._name+" | ("+this._x+"/"+this._y+")");
this._x += 1;
}
und bissu so freundlich un erklärst das n bissl genauer für mich? *ganz lieb gugg*
dann versteh ich das auch un kanns verwenden ;-)
KampfRatte[LiX] ist offline   Mit Zitat antworten
Alt 10-11-2005, 13:48   #6 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
Zitat:
Zitat von KampfRatte[LiX]
hm? wie genau meinsu das? kannsu das etwas genauer beschreiben wo das hin muss? weil wenn ich ja n movieclip auswähl, bin ich ja wieder auf der HZL. und wenn ich den movieclip bearbeite (doppelklick) und da den code einfüg, bekomm ich den selben fehler.
Also ... was du da hast, also onClipEvent, ist ein (wie sinnig) ClipEvent. Nun machst du dein Aktionen-Fensterchen auf, und klickst irgendwo auf die Bühne, dasnn steht oben im Fenster: Aktionen-Bild

Nu klickst du einen MC an. Nu steht da oben: Aktionen-MovieClip. Und DA müssen ClipEvent-Aktionen drauf.

Zitat:
Zitat von KampfRatte[LiX]
und bissu so freundlich un erklärst das n bissl genauer für mich? *ganz lieb gugg*
dann versteh ich das auch un kanns verwenden ;-)
Das ist einfach nur ein einfaches Beispiel dafür das man jeden MovieClip von der Hauptzeitleise aus aufrufen kann und ihm alle möglichen Eventhandler mitgeben kann (onRelease, onPress, onRollOver usw.).

Wenn du einen MC auf der Bühne anklickst und das Eigenschaften-Fensterchen öffnest, kannst du ihm auf der linken Seite einen Instanznamen geben. Mit dem Namen kannst du den MovieClip von überall im Film ansprechen.

Also:

_root.deinMC bedeutet das du den MovieClip der "deinMC" heisst und auf der Hauptzeitleiste liegt (_root.) etwas sagen willst.

_root.deinMC.onEnterFrame = function() { bedeutet das du diesem MC einen onEnterFrame zuweisen willst. Es ginge auch _root.deinMC.onRelease = function() { z.B.

Der rest is nur damit du siehst das irgendwas passiert.
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 10-11-2005, 14:28   #7 (permalink)
knighToFdemonS
 
Benutzerbild von KampfRatte[LiX]
 
Registriert seit: May 2003
Beiträge: 67
boah wunderbar hat geklappt (zumindest teils ) also die errormessage kommt schunma nimma. danke!!!
aaaber, ich hab platzhalter für kollisions-check (is 2d-ansicht mit oben unten links rechts wänden un halt gegenstände). diese sollten laut des tuts mit diesem code
Code:
onClipEvent(load){
this._visible=false;
}
unsichtbar werden. leider bekomm ich dann wiederum diesen fehler:
Code:
Szene=Szene 1, Ebene=kollision1, Bild=1: Zeile 1: Movieclip-Ereignisse sind nur bei Movieclip-Instanzen zulässig
     onClipEvent(load){
ähm ich komm aber nichmehr an die platzhalter (sin 2 => 2 player-game) und ich musste jeweils den platzhalter und die spielfigur als movieclip zusammenschließen. so komm ich nur an beide auf einma ran. komm ich da auch irgendwie anders ran, über manuelle eingabe des aktionsziels oder so?

...und ich hab n komplett schwarzen screen wenn ich mein game starte (= wird nix angezeigt)

mega-danke für eure hilfe

Geändert von KampfRatte[LiX] (10-11-2005 um 14:29 Uhr)
KampfRatte[LiX] 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 01:29 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele