re: peti
tedd fel valahova az fla-t...
re: peti
tedd fel valahova az fla-t...
re: Genin
Köszönöm szépen a segítséget!
Sajna még mindig nem akar összejönni a dolog! Nem tudom mit rontok el :S
Nagyon belegabalyodtam! Az a lényeg hogy ezzel a kóddal tökéletesen működik a scrollozás:
mozi = "scrolledMC"; alapy = _parent[mozi]._y; sca = _parent[mozi]._height-_parent.mask._height; scv = sca/0.5; scav = cssc_btn._height; felt = scav-scv; if (felt>20) { cssc_btn._height = felt; } else { cssc_btn._height = 20; } newh = cssc_btn._height; xpos = cssc_btn._x; ypos = cssc_btn._y; ctav = scav-newh; sctavs = sca/100; function ccscr() { _parent[mozi].onEnterFrame = function() { scs = Math.abs(Math.round((ypos-cssc_btn._y)/ctav*100)); this._y = alapy-(sctavs*scs); }; } function ccsdel() { delete _parent[mozi].onEnterFrame; }
plussz a gombon:
on (press) { del(); x = this.xpos; y = this.ypos; c = this.ctav; startDrag("cssc_btn", false, x, y, x, y+c); ccscr(); } on (release, releaseOutside) { stopDrag(); }
Na most nekem ehhez már csak annyi plussz kellene hogy lassulva álljon meg a szöveg mikor görgetem, szóval mikor abbahagyom az egér mozgatását vagy felengedem a gombot akkor szépen lassulva álljon le a görgetés.
re: peti
először is, a ccscr fv-ben létrehozott enterframe-et a mehet fv-ben azonnal felülírod (tehát annak a hatása nem nagyon érződik, és éppen ezért lényegében felesleges...)
a mehet fv-ben van a csillapítás számítása. azt nem tudom, hogy jól számol-e, mert nem tudom az értékeket, de ezt trace()-el le tudod ellenőrizni (irasd ki a célt, az aktuális pozíciót, a távolságot, és a mozgás mértékét, és látod, hogy jól mozog-e az mc-d). valószínűleg nem jó, mert a ha jó lenne, akkor a célpont körül rezegne, mint ha egy rugón lenne. először ezt javítsd ki, hogy jó legyen, aztán illik belerakni egy vizsgálatot, hogyha a cél egy bizonyos távolságon belül esik, vagy a lépés mértéke pl 1 alá esik, akkor ki tudd lőni az enterframe-et...
itt egy régi kódom, viszonyításnak jó lesz. a sebesség, és dinamika módosításához írd át a mozgatás számítását :)
lepes = 2; // csúszka méretének a beállítása csf-> csúszka felső része, csb-> középső része, csa->alsó része this.csuszka.csb._height = (((lepes*this.ut._height)-(this.tf._height-this.tmask._height))/lepes)-(this.csuszka._height); this.csuszka.csb._y = this.csuszka.csf._y + this.csuszka.csf._height/2 + this.csuszka.csb._height/2 - 0.3; this.csuszka.csa._y = this.csuszka.csb._y + this.csuszka.csb._height/2 + this.csuszka.csa._height/2 - 0.3; csX = this.csuszka._x; // csúszka kezdtei x pozíciója csY = this.csuszka._y; // csúszka kezdeti y pozíciója csYv = this.csuszka._y + this.ut._height - this.csuszka._height; // csúszka végső pozíciója talap = this.tf._y; // mc kezdeti y pozíciója th = this.tf._height; // mc magassága mh = this.tmask._height; // mask mc magassága // alsó, felső határ beállítása. látszik, hogy itt a csúszkát a közepére igazítottam :P fhat = this.ut._y - this.ut._height/2; ahat = this.ut._y + this.ut._height/2; csuszka.onPress = function(){ startDrag(this,false,csX,csY,csX,csYv); csuszka.onMouseMove = function(){ csuszka.onEnterFrame = function(){ arany = int (100 * (csuszka._y - csY) / (csYv - csY)); tav = ((talap - (arany * (th - mh) /100)) - tf._y)/2; if (Math.abs(tav) > ((th - mh) /100)){ tf._y += tav; }else{ tf._y = talap - (arany * (th - mh) /100); delete csuszka.onEnterFrame; } } } } csuszka.onRelease = function(){ stopDrag(); delete csuszka.onMouseMove; } csuszka.onReleaseOutside = function(){ stopDrag(); delete csuszka.onMouseMove; }
Üdv megintcsak!
Még egy másik eget rengető problémám is lenne ami lehet nagyon láma kérdés lesz előre bocsi de én nem értem hogy mi van.
Szóval az a gond hogy van egy kész flash-ben írt oldal amit szerkesztgetnem kell és úgy áll össze a dolog hogy van egy .fla forrásfájl mellette egy .swf ugye és van két könyvtár egy mx meg egy tm amibe különféle .as fájlok vannak. Na most ezekre sehol sem történik hivatkozás vagy ilyesmi legalábbis én nem találom az fla-ban, viszont nem működik a dolog úgy ahogyan kellene neki szóval biztosan itt van a gond hogy azokat nem használom de hogy lehet erre rábírni vagy mit csinálok rosszul?
re: Genin
A kódom ugyanúgy néz ki mint az első segédletben: van egy scroll_mc-m amin van 3 layer az egyiken van ez a kód:
mozi = "scrolledMC"; alapy = _parent[mozi]._y; sca = _parent[mozi]._height-_parent.mask._height; scv = sca/0.5; scav = cssc_btn._height; felt = scav-scv; if (felt>20) { cssc_btn._height = felt; } else { cssc_btn._height = 20; } newh = cssc_btn._height; xpos = cssc_btn._x; ypos = cssc_btn._y; ctav = scav-newh; sctavs = sca/100; function ccscr() { _parent[mozi].onEnterFrame = function() { scs = Math.abs(Math.round((ypos-cssc_btn._y)/ctav*100)); this._y = alapy-(sctavs*scs); }; } csillapitas = 14; pos = 1; function mehet() { _parent[mozi].onEnterFrame = function() { tavolsag = (this._height-(_parent.mask._height/1.3))/(_parent.mask._height-newh); pos = -cssc_btn._y*tavolsag; this._y -= (alapy-pos)/csillapitas; }; }
A másik layeren pedig van maga a gomb és azon pedig ez a kód van:
on (press) { del(); x = this.xpos; y = this.ypos; c = this.ctav; startDrag("cssc_btn", false, x, y, x, y+c); ccscr(); mehet(); } on (release, releaseOutside) { stopDrag(); }
Nagyjából ennyi.
Köszi mégegyszer a segítséget!
Sziasztok!
Egy oldalt csinálok amire egy balról beúszó menüt szántam, aminek belóg a füle és egér ráhúzásra be kéne jönnie, ha lehúzom róla, akkor meg ki. A menü egy movie clipben van, 1-29-ig bejön, 30-60-ig kimegy. A mc-ben minden kulcsképkockán van stop.
Ezt a kódot használom:
menu.onEnterFrame = function () { if (_xmouse < 22 & _xmouse > 0 & _ymouse > 50 & _ymouse < 575) { menu.play(1) } if (_xmouse < 0 & _xmouse > 182 & _ymouse > 50 & _ymouse < 575) { menu.play(30) } }
Ha ráviszem az egeret, szépen be is jön, csak a MC nem áll meg, hanem megy körbe. Csak akkor áll meg, ha az első feltételben szereplő területről elhozom az egeret. Hogy lehetne ezt normális működésre bírni? Ha gotoAndPlayt használok, akkor nem látszik a menü füle.
re: peti
kód, vagy valami? anélkül nehéz megmondani mi a baj... :)
re: RoadkilleR78
akkor így:
var type:String = "task" var new_task:int = 0; var new_ticket:int = 0; var new_calc:int = 0; var new_test:int = 0; var new_meeting:int = 0; this["new_" + type] ++; trace(new_task);
bár lehet hogy szebb lenne, ha dictionary-t használnál... ;)
Üdv mindenkinek!
Nekem egy olyan kérdésem lenne hogy: csináltam én egy egyszerű kis scrollozást ez alapján a segédlet alapján: http://www.devnet.hu/flash/tutorials/nav/scroll-mc/scroll-mc-2.php?frm_id=41
Na most ez müködik is klasszul meg minden csak éppen nekem az kellene hogy miután görgettem lassuló mozgással álljon meg a scrollozott szövegem képem stb. Ehhez is találtam segítséget itt: http://www.devnet.hu/flash/tutorials/nav/scroll-txt3/scroll-txt3-1.php?frm_id=117
Csak annyi vele a gond hogy én egy movieclipet akarok scrollozni itt pedig ugye egy külső fáljt használunk.
Meg is próbáltam összehozni a kettőt de valahogy nem jön össze. Ebben kérném a segítségeteket!
(Nekem most úgy áll a helyzet hogy ami van movieclip-em abban vannak képek elhelyezve ez most lényegtelen is hanem hogy működik a görgetés a lassulás is csak éppen nem áll meg és szépen ki"görgetődik" az oldalról.)
Az a lényeg hogy olyat szeretnék mint a második segédletbe is van csak éppen egy movieclippel megoldva.
Bocsi a kisregényért, remélem érthető voltam.
Előre is kösz a segítséget!
re: Genin
Nem egészen erre lenne szükségem.
Vannak ezek a változóim.
public var new_task:int = 0; public var new_ticket:int = 0; public var new_calc:int = 0; public var new_test:int = 0; public var new_meeting:int = 0;
És ezekekhez szeretnék értéket rendelni attól függőnen, hogy milyen típusú. Típus a task, a ticktet, stb...
Jelenleg így néz ki. Ez bent van egy függvényben aminet átadok type értéket, és azt a változót szeretném növelni 1-el amelyik a type értéknek megfelel. Na ezt szeretném valahogy szebben megoldani, nem pedig switchel.
switch (type) { case "task": new_task ++; break; case "ticket": new_ticket ++; break; case "calc": new_calc ++; break; case "test": new_test ++; break; case "meeting": new_meeting ++; break; }
re: RoadkilleR78
erre van a name, és a getChildByName().
pl:
var valami:uint = 10; var mySprite:Sprite = new Sprite(); mySprite.name = "valami" + valami; mySprite.x = 200; addChild(mySprite); var alias:Sprite = this.getChildByName("valami" + valami) as Sprite; trace(alias.x)
Hi all,
AS3-ban szeretnék változókat dinamikusan elérni.
AS2-ben úgy írtam volna, hogy:
_root["valami"+valami]
Na ezt szeretném valahogy as3-ban is megoldani, mert most switch-case-el vállogatom ki a változókat, de az nem túl szép megoldás.
Helló
CS4 3d-vel kapcsolatos kérdésem lenne. Csinálok egy flash oldalt, aminek bizonyos elemeire (thumb-ekre) 3d effektet építek, de csak lokálisan szeretném, az oldal maga nem 3d-s. A problémám az, hogy a 3d effektek a mindenkori flash felület középpontjának perspektívájában történik meg, és nekem ez így nem lesz jó. Szóval lehet-e valahogy ezen a középperspektíván állítani, eltolni x és y szerint?
Kösz.
Sziasztok!
Szükségem lett volna gyorsan, és egyszerűen egy flash oldalra, ezért beszereztem a flashden.net-ről egy kész oldalt.Az egész dinamikus(xml-ben a tartalom). Viszont mivel ez egy angol nyelvű template, ékezeteket nem tudok írni. Régen volt ilyen jellegű gondom, ezért megcsináltam amit annó; xml-> UTF8, a flashben pedig a dynamic text-nél az embednél beraktam az ékezeteket. Ezután elmentettem az eredeti verzóba(flash 8) és ahogy azt a leírásában olvastam shift+f12, publicáltam. Így bár ékezeteket tudok már írni, az eredeti 100kb-os swf-ből 17mb-os lett. A Publish settings-hez nem nyúltam. Esetleg valami ötlet? Előre is nagyon köszönöm megtisztelő válaszotokat!
Sziasztok!
Azt szeretném kérdezni, hogy ha van egy ilyen xml objektumumnk hogy:
<description>
<font color="#00FF00" size="34">Teszt Elek</font>
</description>
...És ezt akarom kiírni egy szövegmezőbe, hogy "<font color="#00FF00" size="34">Teszt Elek</font>"
és nem a formázottat, hanem, hogy szépen benne legyen a <font> tag is, akkor azt hogyan csináljam?
mert így nem megy:
descr.text = xmlList[i].description
re: Sasos
Üdv ismét!
Rájöttem, hogy mi miatt nem működött a dolog. Az SWF mérete viszonylag nagy lett, így a kód lefutott teljes betöltődés előtt. Ebből adódóan a még be nem töltött scene-re irányította a movie-t. Csak gondoltam leírom, hátha más kezdő, de lelkes flash-el küzdő is belefut. Egy preloader megoldotta a problémát.
Sziasztok!
Egy kis segítséget szeretnék kérni. Az alábbi kóddal próbáltam megoldani, egy automatikus navigálást (Swish Max2-t használok). Azonban betöltés után a 2. scene indul el a frame 1től kezdve. Ezután minden működik szépen, egészen addig, amíg a böngészőt be nem zárom. Újranyitáskor megint a 2. scene indul az 1. frame-től. Már több tutorialt végignéztem a témában, és több verziót is csináltam, de tökéletes sose lett. Merre induljak tovább?
navigálást végző kód:
onFrame (1) { var local_data : SharedObject = SharedObject.getLocal("akarmi"); if (local_data.data.honap == "1") { gotoSceneAndPlay("scene_1", 40); } else if (local_data.data.honap == "2") { gotoSceneAndPlay("scene_2", 40); } else if (local_data.data.honapp == "3") { gotoSceneAndPlay("scene_3", 40); } else if (local_data.data.honap == "4") { gotoSceneAndPlay("scene_4", 40); } else if (local_data.data.honap == "5") { gotoSceneAndPlay("scene_5", 40); } else if (local_data.data.honap == "6") { gotoSceneAndPlay("scene_6", 40); } else if (local_data.data.honap == "7") { gotoSceneAndPlay("scene_7", 40); } else { local_data.data.honap = "6"; local_data.flush(); gotoSceneAndPlay("scene_6", 1); } }
A scene-k özötti váltásnál, a gombokhoz adtam hozzá, az érték módosítását végző kódot.
re: yazoo69
Szívesen ;)
re: Ping-WIn
Photoshopban butítottam a képet és így jó lett. Ez nem hinném, hogy megfordúlt volna a fejemben, hogy a nagy felbontás miatt lenne az egész. Nem gondoltam volna, hogy a jó minőségű kép ront a végeredményen. Köszönöm szépen a segítséged.
A publish settings-ben már állítottam a JPEG settings-en. Ott maxin van minden és ugyanez marad a helyzet, de a képet tényleg nagy felbontásban tettem fel. Most PS-ben "összenyomom" a képet. Meglátjuk mi lesz belőle.
Nekemre: yazoo69
Nekem úgy tűnik mintha nagyobb képeket raknál be és flashben összenyomnád! Ha így van akkor próbáld meg előbb PS-el kicsinyíteni az Image Size-t abba a méretbe, és úgy rakd flash-be, ha nem akkor meg próbáld meg azt hogy a file menüben a Publish Settings-ben a flash fülnél felhúzod a Jpeg quality-t!
Remélem tudtam segíteni!
és a link: http://www.alfaparf.ro/test
Hali mindenkinek. Lenne nekem is egy kérdésem.
JPG képeket használok fel egy flash veboldalhoz és a képek jó felbontásúak, de mikor az swf mozit nézem neten, vagy fejlesztés közben, a képek nagyon gyenge minőségűek, olyan, mintha pixelesek lennének. Miért van ez? A quality a moziban best-en van. Nem értem mi lehet a gond. CS3-at használok. Esetleg van valami trükk benne,aktiválni kell valamit, vagy csak valami egyszerű beállítás? Már annyi mindent átnéztem és semmivel sem javúlt a helyzet. küldök egy linket, itt vannak a "Produse" menüben a termékcsaládok.
Pls segitsen aki tud.
Köszönöm szépen.
re: vizoli
Na megoldódott a probléma. :)
Megjelent a böngészőben a kép ha beírtam a http://valami.hu/kep.jpg-t, csak magában a flash megjelenésben nem amit ugye a látogató használna. A probléma a xml fájl kódolásában volt, valmiért a notepad++ automatikusan visszavált egy alapbeállításra, ami nem volt jó nekem.
Most ott tartok hogy a képekhez tartozó leírásban a számok nem jelennek meg. (az ékezetek sem, de az mindegy) UTF-8 without BOM-ban írom őket. Szerintetek??
Zárolt topik, további üzenetek írása nem lehetséges.