PDA

Volledige versie bekijken : _ymouse instellen, boven een waarde wel iets uitvoeren en daaronder niet..


magned
%Europe/Berlin %636 %2008, 16:17
Hallo,

ik heb een vraagje.

ik ben bezig met het maken van een level voor een spelletje. wat ik graag wil is dat de onPress alleen werkt tussen bepaalde y waarden. ( bijvoorbeeld tussen 150 en 400 wel en daarbuiten niet. )

nu ben ik daarmee begonnen. maar ik loop tegen een aantal probleempjes aan.
ik zal mijn code even invoegen. (zie onder)

wat ik hiermee wil is dat als ik boven 150 op de y as kom met mijn muis, het blokje naar links beweegt. en als ik onder de 150 kom op de y as, het blokje naar rechts beweegt. dit werkt ook.
maar nu mijn probleem: ik heb op 150 ( op de y as ) een lijn neergezet, zodat ik kan zien wat de grens is. maar als ik mijn muis ong 2cm onder deze lijn houd veranderd het blokje al van richting.

mijn vraag is, hoe kan het dat de y: 150 van de lijn, ( dus in mijn _parent) niet gelijk is aan de y:150 van mijn blokje? want coordinaten zijn toch altijd gelijk?

actionscript: ( blokje in dit geval MuurBoven.as)



class MuurBoven extends MovieClip
{
function MuurBoven()
{
this.onEnterFrame = Muis;
}

function Muis()
{
if(_ymouse >= 150)
{
this._x = this._x -5;
}
if(_ymouse < 150)
{
this._x = this._x +5;
}
}
}



alvast bedankt voor het lezen, en mocht er iets niet duidelijk zijn dan licht ik het graag nog even toe.

mvg Heleen

Dauntless
%Europe/Berlin %653 %2008, 16:40
Zoals je zelf zegt: De muis positie van je _parent is niet dezelfde als die van je blokje.

Bv:
- Lege stage
- Lege movieclip op positie 100, 100

Als je nu de movie test en je gaat met je muis op 500, 500 staan, dan is de _xmouse van je stage gelijk aan 500 en de _xmouse van je lege movieclip gelijk aan 400. De _xmouse en _ymouse worden altijd genomen vanaf de locatie van de movieclip waarop ze worden opgeroepen.

Wellicht wil je dus
if(_parent._ymouse >= 150)
{
this._x = this._x -5;
}
if(_parent._ymouse < 150)
{
this._x = this._x +5;
}

magned
%Europe/Berlin %701 %2008, 17:49
Ow echt helemaal geweldig! dat was idd mijn fout.
super bedankt!
nu je het zo zegt zie ik mijn fout ook gelijk. weer wat geleerd! :)