Volledige versie bekijken : actionscript probleempje
tombotxp
%Europe/Berlin %868 %2005, 21:50
DuplicateMC(a1);
DuplicateMC(b1);
DuplicateMC(c1);
function DuplicateMC(mc) {
index = mc._name.substr(0,1);
trace(index);
for ( i=2; i<6; i++ ) {
mc.duplicateMovieClip(String(index)+String(i),i);
}
}
waarom wordt enkel de movieclip c1 geduplicated? a1 en b1 willen het niet doen :(
als ik die DuplicateMC(c1); weglaat dan wordt enkel b1 geduplicated.
theFlashWizard
%Europe/Berlin %872 %2005, 21:55
mshn door de i=2 ? begin is bij 1:
i=1
dus:
for ( i=1; i<6; i++ ) {
tombotxp
%Europe/Berlin %873 %2005, 21:58
mshn door de i=2 ? begin is bij 1:
i=1
dus:
for ( i=1; i<6; i++ ) {
nee, dat is het niet
theFlashWizard
%Europe/Berlin %901 %2005, 22:38
vorm de naam eerst is in een var , trace die dan, en gebruik die.. dan kun je precies kijke wat hij maakt.. :)
Dauntless
%Europe/Berlin %905 %2005, 22:44
Dit komt omdat je telkens je vorige MovieClips overschrijft. Je geeft ze immers altijd de dieptes 2-3-4-5-6 . Vervang je script naar dit:
var depth:Number = 0;
DuplicateMC(a1);
DuplicateMC(b1);
DuplicateMC(c1);
function DuplicateMC(mc) {
index = mc._name.substr(0,1);
trace(index);
for ( i=2; i<6; i++ ) {
mc.duplicateMovieClip(String(index)+String(i),dept h++);
}
}
Ps: het is een goede gewoonte om functienamen met een kleine letter te laten beginnen :).
Pimm
%Europe/Berlin %914 %2005, 22:56
Ps: het is een goede gewoonte om functienamen met een kleine letter te laten beginnen :).Verklaart uwe nader.
Dauntless
%Europe/Berlin %921 %2005, 23:06
's gewoon een best practice.
Als je je aan die kleine ongeschreven regeltjes houd weet je bv direct dat DoStuff een class is en movePlayer een functie/method. Omdat classes dus met een hoofdletter beginnen en functies en var's met een kleine letter.
Ga maar na:
var myLoadVars = new LoadVars(); //een classe
myLoadVars.load() ; //een functie (eigenlijk een method aangezien het een functie op een classe is)
var myString:String = new String(); // een classe
myString.splice(..); //ook hier een method
Roenes
%Europe/Berlin %463 %2005, 12:06
myLoadVars.load() ; //een functie (eigenlijk een method aangezien het een functie op een classe is)Even mieren****en (vind je vast niet erg :)), jij maakt onderscheid tussen functie en method. Maar dit is toch precies hetzelfde alleen een andere taal? functie == nl, method == eng. functie in engels is function. I know, maar function == method toch?
Of heeft method en function toch een andere betekenis in programmeerwereld? (ik dacht dus dat ze altijd op hetzelfde sloegen :))
WernerL
%Europe/Berlin %494 %2005, 12:51
Method is in het Nederlands methode. :)
En ik denk niet dat dit alle 2 hetzelfde is nee, maar even googlen en je weet het. :D
Flashingback
%Europe/Berlin %496 %2005, 12:55
mjah volgens mij is dat hetzelfde voor zover ik iets van al die benamingen weet in as.
Maar volgens mij heb ik ergens gelzen op het forum dat als je set of get gebruikt bij je functie dat het geen method meer is maar waarschijnlijk zit ik er sterk naast. Sorry als ik hier verwaring heb gezaaid... Ik ga maar weer is men as2.0 skills gaan bijschaven :D
tombotxp
%Europe/Berlin %504 %2005, 13:06
Waarom gaat het object altijd onder het andere staan in plaats van erboven als ik dit doe?
on (press) {
this.startDrag();
this.swapDepths(this.getNextHighestDepth());
drag = true;
clearInterval(_root.intervalid);
}
Flashingback
%Europe/Berlin %508 %2005, 13:12
hoe dat het hier staat ziet je code er wel goed uit maar wat is de rest van je code nu kan je er niet echt iets fouts uithalen.
tombotxp
%Europe/Berlin %509 %2005, 13:14
Ik wil dus dat het object die je verplaatst vanboven komt maar hij gaat momenteel altijd naar de onderste positie :s
edit: als ik trace(this.getNextHighestDepth()); doe dan krijg ik steeds "0" als uitvoer!
Flashingback
%Europe/Berlin %517 %2005, 13:24
ow ehm probeer is of _root.getNextHighestDetph() werkt
tombotxp
%Europe/Berlin %519 %2005, 13:28
toont undefinded
Flashingback
%Europe/Berlin %528 %2005, 13:40
oops was een dislectish foutje Depth was nie juist geschreven probeer het met dit is
_root.getNextHighestDepth()
Voetsjoeba
%Europe/Berlin %576 %2005, 14:50
Even mieren****en (vind je vast niet erg :)), jij maakt onderscheid tussen functie en method. Maar dit is toch precies hetzelfde alleen een andere taal? functie == nl, method == eng. functie in engels is function. I know, maar function == method toch?
Of heeft method en function toch een andere betekenis in programmeerwereld? (ik dacht dus dat ze altijd op hetzelfde sloegen :))
Een method is een functie die toegepast is op een object. Bijvoorbeeld onRelease is een functie, maar altijd een method omdat het een functie van een object is. Enkel in methods kun je dus ook de 'this' reference gebruiken, omdat methods toegepast worden op een object en gewone functies niet.
Dit is een functie:
eenFunctie = function(){
trace("dit is een functie");
}
Dit is een method.
obj = new Object();
obj.foo = "bar";
obj.eenMethod = function(){
trace(this.foo); //bar
}
Dauntless
%Europe/Berlin %577 %2005, 14:52
Wat hij zei...
Is dat niet hetzelfde als wat ik zei? :I (//een functie (eigenlijk een method aangezien het een functie op een classe is). Buiten dan dat ik class gebruik ipv Object, maar bij dit gebruik komt dat toch op hetzelfde neer?
Voetsjoeba
%Europe/Berlin %590 %2005, 15:10
'k Heb toch niets gezegd over wat jij zei ? :P
tombotxp
%Europe/Berlin %669 %2005, 17:04
Oké bedankt!!! Alles werkt!
Roenes
%Europe/Berlin %674 %2005, 17:11
Voetsjoeba dank je voor de uitleg. Miniem verschilletje toch tussen de 2 termen. :)
Dit soort verschillen zijn leuke overhoringsvragen op school ;)
Dauntless
%Europe/Berlin %677 %2005, 17:15
Ziet er nice uit! Ondanks dat je PHP gebruikt loopt het echt wel vlot :)
tombotxp
%Europe/Berlin %679 %2005, 17:18
dankjewel. Ik heb geen flash server dus ik moest het wel oplossen met php :d
Dauntless
%Europe/Berlin %679 %2005, 17:19
dankjewel. Ik heb geen flash server dus ik moest het wel oplossen met php :d
Je kan het ook doen met een zelf geschreven perl/java/python socket server ...Maar dan moet je dus idd wel een speciale host vinden.
tombotxp
%Europe/Berlin %681 %2005, 17:21
In de nieuwste php versies kan je ook sockets aanmaken. Heb je ergens een site met meer info?
trouwens als je nog ideetjes hebt mag je die altijd melden!
Dauntless
%Europe/Berlin %682 %2005, 17:23
Voor php? Nope, sorry :).
tombotxp
%Europe/Berlin %683 %2005, 17:24
nee hoe je sockets gebruikt in flash lol :d
ideetjes mag je trouwens altijd melden!
Dauntless
%Europe/Berlin %684 %2005, 17:25
Niet echt... Zoek gewoon algemene tutorials op ivm xml gebruiken in flash.
tombotxp
%Europe/Berlin %685 %2005, 17:26
Oké maar ik gebruik al xml dusja en het werkt perfect zoals het nu is.
Dauntless
%Europe/Berlin %686 %2005, 17:29
Ahzo :)
Met een socket server zou je dus gewoon doorsturen als een letter versleept wordt, en je zou dus alleen de posities versutren van mc's die versleept werden. Je kan ook eens in F1 kijken....
tombotxp
%Europe/Berlin %814 %2005, 20:33
Ik heb nog een heel klein vraagje maar ik ga daarvoor geen nieuw topic openen.
Hoe controlleer je ofdat een variabele al bestaat?
Dauntless
%Europe/Berlin %014 %2005, 01:20
Ik ben juist nog iets in F1 tegen gekomen:
Methods are functions associated with a class. For example, sortOn() is a built-in method associated with the Array class. You can also create functions that act as methods, either for objects based on built-in classes or for objects based on classes that you create. For example, in the following code, clear() becomes a method of a controller object that you have previously defined:
function reset(){
this.x_pos = 0;
this.y_pos = 0;
}
controller.clear = reset;
controller.clear();
The following examples show how you create methods of a class:
//ActionScript 1 example
A = new Object();
A.prototype.myMethod = function() {
trace("myMethod");
}
//ActionScript 2 example
class B {
function myMethod() {
trace("myMethod");
}
}
En om jouw vraag te beantwoorden:
Je kan eventueel kijken met:
if(myvar) maar dat hangt dan ook af van wat voor soort var je wilt bekijken...
(Er was denk ik een veel betere manier maar daar kan ik nu niet echt opkomen). Als je nu bv een boolean hebt met de waarde false zal hij zeggen dat hij niet bestaat. Als je een var met waarde 0 geeft zal hij ook zeggen dat hij niet bestaat...
Voor strings en zo is deze methode wel geschikt.
Flasher
%Europe/Berlin %765 %2005, 19:21
met
if(typeof(varnaam)!=undefined)
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.