Flashhilfe.de - Flash Community

Übersetzung AS2 in AS3 (Scrolling Thumbnails) [Flash 10]

 


AntwortenRegistrieren Seite1  

CaptainFarrell#1
Benutzerbild von CaptainFarrell
Beiträge: 4
Registriert: Aug 2011

21.08.2011, 23:38

Hallo,

als ich noch Flash 8 hatte, habe ich mit AS 2 eine Thumbnail-Bar erstellt, die sich je nach Mausposition nach links oder nach rechts bewegt... Ausgesehen hat das so:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
_root.onEnterFrame = function(){
    if((_root._ymouse>511) or ((_root._ymouse<420) and (_root._ymouse>305))){
        myVar=true;
    }
    if((_root._ymouse<304) or ((_root._ymouse<510) and (_root._ymouse>421))){
        myVar=false;
    }
    if(_root._xmouse<100 and _root._ymouse>305 and _root._ymouse<420){
        myVar1=true;
    }
    else{
        myVar1=false;
    }
    if(_root._xmouse>700 and _root._ymouse>305 and _root._ymouse<420){
        myVar2=true;
    }
    else{
        myVar2=false;
    }
    if(_root._xmouse<100 and _root._ymouse>500 and _root._ymouse<540){
        myVar3=true;
    }
    else{
        myVar3=false;
    }
    if(_root._xmouse>700 and _root._ymouse>500 and _root._ymouse<540){
        myVar4=true;
    }
    else{
        myVar4=false;
    }
    if(_root._xmouse<350 and myVar == true){
        barbaras.prevFrame();
    }
    if(((myVar1 == true) or (myVar3 == true)) and myVar == true){
        barbaras.prevFrame();
        barbaras.prevFrame();
    }
    if(_root._xmouse>450 and myVar == true){
        barbaras.nextFrame();
    }
    if(((myVar2 == true) or (myVar4 == true)) and myVar == true){
        barbaras.nextFrame();
        barbaras.nextFrame();
    }
    else{
        barbaras.stop();
    }
}


und hat auch super funktioniert...
nun möchte bzw. muss ich das ganze in as 3 umschreiben, da ich davon jedoch noch weniger ahnung als vom zweier hab, funktioniert das nicht ganz so, wie ich möchte (besser gesagt - es funktioniert gar nicht). bis jetzt habe ich es in etwa so versucht:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
var myVar:Boolean = false

barbaras.addEventListener(Event.ENTER_FRAME, scrolling); 

function scrolling(event:Event):void 
{
    if((mouseY>511) or ((mouseY<420) and (mouseY>305))){
        myVar=true;
    }
    if((mouseY<304) or ((mouseY<510) and (mouseY>421))){
        myVar=false;
    }
    if(mouseX<100 and mouseY>305 and mouseY<420){
        myVar1=true;
    }
    else{
        myVar1=false;
    }
    if(mouseX>700 and mouseY>305 and mouseY<420){
        myVar2=true;
    }
    else{
        myVar2=false;
    }
    if(mouseX<100 and mouseY>500 and mouseY<540){
        myVar3=true;
    }
    else{
        myVar3=false;
    }
    if(mouseX>700 and mouseY>500 and mouseY<540){
        myVar4=true; }
    }
    else{
        myVar4=false; }
    }
    if(mouseX<350 and myVar == true){
        barbaras.prevFrame(); }
    }
    if(((myVar1 == true) or (myVar3 == true)) and myVar == true){
        barbaras.prevFrame();
        barbaras.prevFrame();
    }
    if(_root._xmouse>450 and myVar == true){
        barbaras.nextFrame();
    }
    if(((myVar2 == true) or (myVar4 == true)) and myVar == true){
        barbaras.nextFrame();
        barbaras.nextFrame();
    }
    else{
        barbaras.stop();
    }
}


es kommen gleich mal lauter fehlermeldungen, da ich jedoch wie gesagt ein kompletter newbie bin was flash und as angeht, kann ich mit denen nicht viel anfangen...

deswegen wollt ich mal fragen, obs vl hier jemanden gibt, der mir helfen kann?
danke schon mal,

lg
Werbung
Beiträge: 0
Registriert: Feb 2016


vindel#2
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

22.08.2011, 10:54

Du hast doch schon gut angefangen.
Generell: in AS3 müssen alle Variablen deklariert werden. Also deine myVar1-myVar4 müssen wie die Variable myVar ganz oben erstellt werden.
Dann hast du in Zeile 32 & 35 eine gescheifte Klammer zu viel..
Und wenn du jetzt noch in Zeile 44 wie auch in den Oberen "_root._xmouse" durch "mouseX" ersetzt, sollte es funktionieren!
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
Geändert von vindel am 22.08.11 um 10:55 Uhr
CaptainFarrell#3
Benutzerbild von CaptainFarrell
Beiträge: 4
Registriert: Aug 2011

Themenautor/in

22.08.2011, 13:49

oh aja danke, meine Unachtsamkeit! Hm aber leider funktionierts nachdem ich das korrigiert hab noch immer nicht...

unter "compiler errors" werden mal diese aufgelistet:

Scene 1, Layer 'Actions', Frame 53, Line 18   1084: Syntax error: expecting rightparen before or.
Scene 1, Layer 'Actions', Frame 53, Line 18   1084: Syntax error: expecting semicolon before rightparen.
Scene 1, Layer 'Actions', Frame 53, Line 21   1084: Syntax error: expecting rightparen before or.
Scene 1, Layer 'Actions', Frame 53, Line 21   1084: Syntax error: expecting semicolon before rightparen.
Scene 1, Layer 'Actions', Frame 53, Line 24   1084: Syntax error: expecting rightparen before and.
Scene 1, Layer 'Actions', Frame 53, Line 30   1084: Syntax error: expecting rightparen before and.
Scene 1, Layer 'Actions', Frame 53, Line 36   1084: Syntax error: expecting rightparen before and.
Scene 1, Layer 'Actions', Frame 53, Line 42   1084: Syntax error: expecting rightparen before and.
Scene 1, Layer 'Actions', Frame 53, Line 48   1084: Syntax error: expecting rightparen before and.
Scene 1, Layer 'Actions', Frame 53, Line 51   1084: Syntax error: expecting rightparen before or.
Scene 1, Layer 'Actions', Frame 53, Line 51   1008: Attribute is invalid.

kann aber wie gesagt nichts damit anfangen :/
vindel#4
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

22.08.2011, 17:32

erstzt mal alle Operatoren mit den Zeichen aus aus or => || und and => &&
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
Werbung
Beiträge: 0
Registriert: Feb 2016


CaptainFarrell#5
Benutzerbild von CaptainFarrell
Beiträge: 4
Registriert: Aug 2011

Themenautor/in

22.08.2011, 18:54

juhu das wars, danke danke danke :D

ich habs jetzt so geschrieben

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
stop();

var myVar1:Boolean = false
var myVar2:Boolean = false

barbaras.addEventListener(Event.ENTER_FRAME, scrolling);

function scrolling(event:Event):void
{
    if(mouseY>511)
    {
        myVar1=true;
    }
    if((mouseY>305) && (mouseY<420))
    {
        myVar2=true;
    }
    if((mouseX>500) && ((myVar1 == true) || (myVar2 == true)))
    {
        barbaras.nextFrame();
    }
    if((mouseX<300) && ((myVar1 == true) || (myVar2 == true)))
    {
        barbaras.prevFrame();
    }
    if((mouseX>700) && (myVar2 == true))
    {
        barbaras.nextFrame();
        barbaras.nextFrame();
    }
    if((mouseX<100) && (myVar2 == true))
    {
        barbaras.prevFrame();
        barbaras.prevFrame();
    }
    else
    {
        barbaras.stop();
    }
}


und nun funktioniert es beinahe so wie ich will. was noch nicht geht ist, dass sich die leiste nur dann bewegt, wenn man mit der maus zwischen Y305-420 / >511 (mouseY) ist...bzw. dass sie sich nicht bewegt, wenn man zwischen 421-510 oder <305 ist. wie macht man das?
vindel#6
Benutzerbild von vindelFlashhilfe.de Moderator
Beiträge: 3000
Wohnort: Köln
Registriert: Oct 2007

22.08.2011, 21:28

ActionScript:
1
2
3
if((mouseY >=305 && mouseY <= 420) ||mouseY >=511) {
 
}

und am besten dann darin deine x-Abfrage mit schreiben, da diese ja für die Richtung zuständig ist.
public Weltformel(Problem){
      if (Problem gelöst) return Lösung;
      else Weltformel(kleiners Problem);
}
CaptainFarrell#7
Benutzerbild von CaptainFarrell
Beiträge: 4
Registriert: Aug 2011

Themenautor/in

25.08.2011, 11:37

super vielen vielen dank nochmal!

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Hier Werben   Impressum
© 1999-2019 Sebastian Wichmann - Flashhilfe.de