as umstellen für player8

harrry

Erfahrenes Mitglied
Hallo Ihr Lieben,

folgendes Skript funkioniert nur, wenn ich für die Playerversion 6 veröffentliche, ich würde es aber gerne mit Player 8 verwenden, um diverse neue Funktionen zu nützen:
PHP:
vel = .10;
fri = .6;
wid0 = menu.mc1.mc._width;
hei0 = menu.mc1.mc._height;
function myCubes(mc, wid, hei) {
    velx = ((wid-menu[mc].mc._width)*vel)+(velx*fri);
    vely = ((hei-menu[mc].mc._height)*vel)+(vely*fri);
    menu[mc].mc._width += velx;
    menu[mc].mc._height += vely;
    menu[mc].sub._width += velx;
    for (i=1; i<=6; i++) {
        menu['mc'+i]._x = menu['mc'+(i-1)]._x+menu['mc'+(i-1)]._width/2+menu['mc'+i]._width/2+2;
    }
    menu[mc].bt.enabled = false;
}
_root.onEnterFrame = function() {
    myCubes(j, 200, 200);
    if (b != undefined) {
        back(b);
    }
    menu._x = (Stage.width/2-menu._width/2);
    menu._y = Stage.height/2;
};
function back(mc) {
    bvelx = ((wid0-menu[mc].mc._width)*vel)+(bvelx*fri);
    bvely = ((hei0-menu[mc].mc._height)*vel)+(bvely*fri);
    menu[mc].mc._width += bvelx;
    menu[mc].mc._height += bvely;
    menu[mc].sub._width += bvelx;
    if (Math.abs(wid0-menu[mc].mc._width)<1) {
        delete b;
    }
    menu[mc].bt.enabled = true;
}
Was muss man denn da umstellen - und woran erkennt man das, worauf wäre zu achten in ähnlich gelagerten Fällen? Danke vielmals!
 
Hallo,

um ehrlich zu sein: Ich glaube diesem Skript zwar anzusehen, dass es schon ein zwei Jahre auf dem Buckel hat, aber am Code an und für sich ist nichts in dem Grade veraltet, dass es nicht merh ausgeführt würde. Gibt es in deiner fla noch andere Code-Schnipsel, die veraltet sein könnten?
Achte immer darauf, dass Klassennamen gross bzw. syntaktisch korrekt geschrieben sind, also MovieClip und nicht etwa movieclip, TextField statt textfield etc. Verwende nie add im Zusammenhang mit String-Konstrukten (this["mc_" add i]) und dergleichen..gibt bestimmt noch mehr, aber das fuhr mir grade so durch den Kopf ;).

gruss
 
Ich kann auch keine erkennen - aber trotzdem, wenn man beim Veröffentlichen Player 8 wählt, rührt sich nichts mehr... die fla anbei, vielleicht möchte jemand eben reinschauen? Wäre sehr nett!
 

Anhänge

  • 26202attachment.zip
    6,7 KB · Aufrufe: 10
Hallo,

das Skript funktioniert ab v7 nicht mehr, weil die Initiierung von Variablen und deren Weiterverwendung anders behandelt wird. So genau kann ich dir das auch nicht erklären, weil es sich bei meinem Wissen um Empirisches und durch Erfahrung Gewonnenes handelt. Und weils schon spät ist und ich keine Nerven hatte, das Teil zu debuggen, hab ich es kurzerhand neu geschrieben ;). Hoffe, du hast noch immer Verwendung dafür.

gruss
 

Anhänge

  • 26205attachment.zip
    8,2 KB · Aufrufe: 9
Also, funktioniert ja wirklich in vs8 - habe bei Deinem Skript nur ein kleines Problem mit dem ersten mc ganz links (mc1):

Während die anderen Clips beim Anklicken einander wie vorgesehen "ausweichen" und die Reihe der Würfel sich um den jeweils geöffneten herum "mittig" anordnet, sieht das beim mc1 anders aus: dieser dreht sich links außen alleine, während mc2, 3, 4 und 5 unerschütterlich stehen bleiben.

Wie kann man es erreichen, dass mc1 genau so reagiert wie seine Brüder?
 
das passiert oder passiert nichtnur wenn der 1. als erstes angeklickt wird.
 
Zuletzt bearbeitet:
Seh ich anders - mc1 reagiert linkslastig, wann auch immer man ihn anklickt! Hab grad eine bescheidene Idee: könnte man nicht ganz links einen unsichtbaren "mc0" dazugeben? Würden sich dann die sichtbaren fünf alle gleich verhalten?
 
Kannste ja testen, aber vergesse nicht in der MovieClipAnordnen Funktion statt for (var i = 1 in var i = 0 zu ändern
 
Hallo,

klar weichen die aus, sonst würde das ganz anders aussehen ;). Aber die Zentrierung gleicht die Breitenerweiterung natürlich aus. Da man keine MovieClips durch Click deaktivieren kann, reichts fürs erste, wenn du bei der onEnterFrame-Funktion Zeile zwei und drei deaktivierst:

Code:
function init () {
	onEnterFrame = function() {
		MovieClipsAnordnen();
		//menu._x = (Stage.width/2-menu._width/2);
		//menu._y = Stage.height/2;
	};
}

gruss
 
Zurück