Autor | Zpráva | ||
---|---|---|---|
Fusion Profil * |
#1 · Zasláno: 16. 1. 2012, 00:40:26
Dobrý den,
rád bych se zeptal, jak se v scriptováni ve flashi dá pracovat z mnoha instancemi které ste si vytvořili pomocí duplicateMovieClip(); Múj případ je nasledovní: Mám movieClip s názvem jablko. Pak v kódu mám obměny příkazu duplicateMovieClip() přičemž duplikuju právě movieClip jablko. Celkem mám teda v pracovní ploše umístněny 3 movie clipy - jablko(prototyp), jablko1(instance) a jablko2(instance). Dále v pracovní ploše se nachází movieClip s názvem housenka, který je prilepen ke kurzoru pomocí funkce startDrag. Kromě jiného má přiřazen nasledovní kód: onClipEvent (enterFrame) { if(this.hitTest(_root.jablko) == true) { this.tvar.gotoAndPlay("ham"); } } Problém je, že akce se spustí jenom když MovieClip housenka má kolizi s MovieClipem jablko, nikoli jeho instancemi.. existuje ňákej elegantní zpúsob jak bych mohl přimět reagovat MovieClip housenka nejenom na samotný objekt housenka, ale i na všechny jeho instance? Používam ješte AS2 |
||
weroro Profil |
#2 · Zasláno: 16. 1. 2012, 12:47:30
var jablka:Number = 3; var pozicia_X:Array = [110, 200, 465]; var pozicia_Y:Array = [65, 218, 86]; for (var i:Number = 0; i < _root.jablka; i++) { var a:MovieClip = attachMovie ("jablko", "jablko" + i, this.getNextHighestDepth ()); a._x = _root.pozicia_X[i]; a._y = _root.pozicia_Y[i]; } attachMovie ("husenica", "husenica", this.getNextHighestDepth ()); var pohyb:Object = new Object (); pohyb.onMouseMove = function ():Void { _root.husenica._x = _root._xmouse; _root.husenica._y = _root._ymouse; for (var i:Number = 0; i < _root.jablka; i++) { if (_root.husenica.hitTest (_root["jablko" + i])) { _root["jablko" + i]._visible = false; } } }; Mouse.addListener (pohyb); Mouse.hide (); |
||
Fusion Profil * |
#3 · Zasláno: 16. 1. 2012, 20:18:08
děkuju:)
|
||
Časová prodleva: 14 let
|
0