Avatar billede Shasim Novice
18. august 2003 - 16:18 Der er 31 kommentarer og
2 løsninger

Problemer med levels

Jeg har en flok kopierede klip, hvor jeg gerne vil undgå, at de ubenyttede kopier kommer med på en udskriftsside.

Jeg har så prøvet at lægge en hvid kasse ind over klippene i den ramme hvor jeg udskriver, men mine kopier bliver ved med at ligge øverst, også selvom jeg lægger den hvide kasse i level 10000!

Jeg har forsøgt at trace' mine originale klip med:
trace(_root.sten009.getDepth());
og det gav resultatet -16065

Jeg har 3 "originaler" med hver 8 kopier.

Er der nogen som kan hjælpe mig med at gennemskue dette for mig store problem?
Avatar billede jakwag Nybegynder
18. august 2003 - 16:21 #1
Hvis de skal væk, hvorfor skriver du så ikke bare:

_root.sten009._alpha =0;
Avatar billede jakwag Nybegynder
18. august 2003 - 16:21 #2
eller:

_root.sten009._visible =0;
Avatar billede Shasim Novice
18. august 2003 - 16:25 #3
Det er fordi at det kun er de ubenyttede kopier som ikke skal med.
Avatar billede baitianlong Nybegynder
18. august 2003 - 19:42 #4
Hvis det er duplikerede movieClips, skal du da bare fjerne dem med this.removeMovieClip(); , når du ikke gider kigge på dem mere. Det virker lidt bagvendt at bruge processorkraft på at bevare dem, enten i usynlig tilstand, eller med _alpha nede !
Avatar billede Shasim Novice
18. august 2003 - 20:36 #5
Men hvis jeg bruger this.removeMovieClip(); sletter jeg så ikke også de kopier som er blevet trukket af brugeren, og skal med på udskriften?
Avatar billede pyroman Nybegynder
18. august 2003 - 20:49 #6
Nej kopierne bliver ikke slettet, de er jo bare kopier ligesom en fotokopi af et stykke papir....
Avatar billede Shasim Novice
18. august 2003 - 20:55 #7
Ok - jeg prøver med det, men kan det ikke lade sig gøre at dække dem med en hvid kasse?
Avatar billede Shasim Novice
18. august 2003 - 22:45 #8
Det virker ikke! Ingenting virker. Det er virkeligt underligt - jeg har kun 2 frames i min hovedtidslinje. I den første kopierer jeg de 3 klip 8 gange, og i den anden udskriver jeg. Jeg får klippene med selvom jeg i laget med klippene sætter en tom keyframe i den anden ramme. Jeg forstår ingenting ... Er der ikke nogen kloge ho'der tilbage?
Avatar billede Shasim Novice
19. august 2003 - 00:11 #9
Jeg prøver at sætte point'ene op ...

koden til kopiering af klipene ser sådan ud:

onClipEvent (load) {
    i3 = 300;
       
    while (i3<309){
    _root.sten003.duplicateMovieClip("sten003_" + i3 , i3);
    i3++;
    }
}

Ved ikke om det har relevans ...
Avatar billede jakwag Nybegynder
19. august 2003 - 10:31 #10
og hvordan gør du hvis du prøver at slette dem?

Du burde skrive noget i retning af

_root["sten003_"+i3].removeMovieClip();

Hvis der skal fjernes flere på en gang i et loop eller i din while sætning.

Hvis du bare skal slette dem enkeltvis skal du skrive:

_root.sten003_305.removeMovieClip();


Det kan også være at jeg ikke er helt med.
Avatar billede Shasim Novice
19. august 2003 - 10:58 #11
Jeg tror også, jeg skal prøve at forklare igen:

Jeg har et klip som kopieres 8 gange. Nu ligger kopierne i en stak. Brugeren kan trække dem til et område hvis han/hun har lyst eller lade dem ligge. Når brugeren er færdig kan resultatet udskrives. De klip, som er trukket skal med på udskriften, men dem der er tilbage i stakken skal ikke. Derfor vil jeg gerne dække dem med en hvid kasse.
Jeg har så prøvet at swap'e et klip ind i level 1 i rammen med #P, da jeg med trace har set at mine kopier ligger i level 0. Men det virker ikke. Selvom jeg sætter en blank keyframe i laget med kopierne i udskriftrammen, kan jeg stadig se dem!
Avatar billede jakwag Nybegynder
19. august 2003 - 11:46 #12
prøv med:

hvidkasse_mc.swapDepth(sten003_308);

Så tager du kassen og flytter den op på den plads som den øverste sten ligger på (308).

Kan du det?
Avatar billede Shasim Novice
19. august 2003 - 11:57 #13
Nej, det har jeg prøvet.
Avatar billede mat Nybegynder
19. august 2003 - 12:25 #14
Hej shanne


Hvad med at sætte en variabel på dine movieclips så de selv holder på en reference om hvorvidt de er blevet trukket. Alle clips der ikke er blevet trukket rundt af brugeren bliver så removed (eller _visibled ud)

Altså noget i stil med:

on (press) {
startDrag(this);
this.moved = true;
}


Print:

for (i = someVar; i <= numClips; i++) {
if (!_root["someClip" + i].moved) {
_root["someClip" + i].removeMovieClip();
}
// printAsBitmap(yadayada) - eller hvad det hedder?
}

Ydermere kunne du måske forklare hvordan du printer. Jeg ved ikke meget om at udskrive fra flash men jeg kan da se at man printer enten et target eller et level og ikke begge dele? Hence: din hvide kasse kommer ikke med i printet uanset.

-mat
Avatar billede Shasim Novice
19. august 2003 - 12:31 #15
Hej mat

Tak fordi du gider at deltage. Jeg håber jeg er kløgtig nok til at kunne bruge dit forslag.

Jeg skriver sådan for at printe, og det virker faktisk fint bortset fra mit problem med sten-klippene:

print(_parent, "bmax");

Jeg prøver nu at kigge på dit script.

:) Shanne
Avatar billede Shasim Novice
19. august 2003 - 12:44 #16
Nå, jeg kunne godt bruge hjælp til at forstå dit script ... Jeg har sat det sådan på min udskriftsknap:

for (i = someVar; i <= numClips; i++) { // hvad skal der stå her?
if (!_root["sten003" + i3].moved) {
_root["sten003" + i3].removeMovieClip();
}
print(_parent, "bmax");
}
Avatar billede mat Nybegynder
19. august 2003 - 12:55 #17
Det er en for-løkke der blot sørger for at navngive clips´ne rigtigt så vi slipper for at target´e dem individuelt.

someVar er det nummer som dine movieclips navnes talrækker begynder med (300) (de hedder sten003_300 til sten003_308 ikke?)

numClips er det nummer som dine movieclips talrækker slutter med (308)

Det er i princippet nøjagtigt det samme som en while løkke.

Rent gæt:

someVar = 300;
numClips = 308;
for (a = someVar; a <= numClips; a++) { // hvad skal der stå her?
if (!_root["sten003_" + a].moved) {
_root["sten003_" + a].removeMovieClip();
_root.sten003._visible = 0; // authortime clips kan ikke removes (direkte ihvertfald)
}
print(_parent, "bmax");
}


mvh mat
Avatar billede mat Nybegynder
19. august 2003 - 13:10 #18
arg ups, den der print skal ud af for-løkken! min fejl.
Avatar billede Shasim Novice
19. august 2003 - 13:22 #19
Nu ser jeg dem ganske rigtigt forsvinde på skærmen når jeg trykker Print, men de kommer stadig med på udskriften!
Hvorfor kan det ikke lade sig gøre at indlæse en hvid dækkasse printrammen i et højere level?
Avatar billede mat Nybegynder
19. august 2003 - 13:26 #20
fordi du loader den ind i et level og print() printer kun _parent (så vidt jeg har forstået) - så skal boxen ligges i dette dette movieclip (_parent) - du kan sikkert godt swappe det til 10000 og dække med det.

Var alle movieclips med i udskriften eller kun de duplikerede eller kun authortimeclips?

-mat
Avatar billede Shasim Novice
19. august 2003 - 13:31 #21
Jeg kan ikke dække ved at swappe det til 10000 eller 100000 for den sags skyld.
Hvordan lægger jeg en box i _parent?

Alle klip var med - der var i hvertfald mere end ét.
Avatar billede mat Nybegynder
19. august 2003 - 13:39 #22
Du tegner en hvid kasse der er stor nok til at dække det område du vil dække. Denne laver du til et movieclip og ligger den samme sted som dine flytbare clips.

Lig evt kassen i et layer under dine authortime clips som duplikeres.

På din printknap før print() tilføjer du kasse.swapDepths(10000); - nu ER den foran alle clips der ligger i dybder under 10000. Dine clips ligger henholdsvis i negative dybder (det gør alle authortimeclips indtil de er swapped) og i dybden 300-308 (eller sådan noget).

Igen: levels og movieclips printes ikke samtidig, efter eget udsagn loader du kassen ind i et level, derfor kommer den ikke med i printet - den skal altså ligge i samme movieclip og frame som dit target i print();

mvh mat
Avatar billede Shasim Novice
19. august 2003 - 13:39 #23
Undskyld det ufuldstændige svar. Jeg trak alle syv sten (både de duplikerede og authortimeclippet) - på udskiften sidder duplikaterne der hvor de er sluppet men originalen er hoppet tilbage i stakken.
Avatar billede Shasim Novice
19. august 2003 - 13:46 #24
SUCCES! Kassen virker! Hurra for det og tusind tak for hjælpen. Lægger du et svar så du kan få point?
Avatar billede mat Nybegynder
19. august 2003 - 13:48 #25
oki, men de andre skulle måske osse have del i det - faktisk jakwag skitseret løsningen meget længere oppe i tråden :)

mvh mat
Avatar billede mat Nybegynder
19. august 2003 - 13:49 #26
flot skrevet - men meningen kommer vel igennem? ;)
Avatar billede Shasim Novice
19. august 2003 - 13:52 #27
Ja, det er rigtigt, men det var dig der fik mig i mål, men jeg har ikke noget at indvende mod en fordelling af point'ene. Så skal jeg bare ha' et svar fra jakwag.
Avatar billede jakwag Nybegynder
19. august 2003 - 13:57 #28
Jamen så... : )
Avatar billede Shasim Novice
19. august 2003 - 13:58 #29
Håber I er tilfredse med fordelingen, og tak igen.
Avatar billede mat Nybegynder
19. august 2003 - 14:15 #30
hehe, Shanne du skal huske at acceptere ;)
Avatar billede mat Nybegynder
19. august 2003 - 14:40 #31
og der var jeg så lidt hurtigt ude, overså lige alle andre end jagwag - sorry :/
Avatar billede Shasim Novice
19. august 2003 - 14:56 #32
Sorry - sådan da
Avatar billede Shasim Novice
19. august 2003 - 14:58 #33
Jeg synes nu ikke det vil være fair at give alle over én kam - du var den eneste, der var vedholdende og uddybende nok.

:) Shanne
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester