Връща AS3.0 Int стойност

Опитвам се да върна int стойност от actionscript вътре в символ.

Това е кодът вътре в символа/movieclip.

function flytt():void{
   var flyttInMb:int=Math.random() * 8;
   if(flyttInMb==0){
      x=243,30;
      y=171,65;
   }
}

Това е кодът, който опитах да върна flyttInMb към actionscript, който е играта, вместо в един от символите, и това, което получавам, е следното: Върнатата стойност трябва да е недефинирана. Някакъв начин мога да върна flyttInMb извън символа в моя actionscript?

Ето как се опитвам да извикам flyttInK и flyttInMb:

if(flyttInK==flyttInMb){
   Kone.flytt();
   Baby.flytt();
}

Работата е там.. Искам да запазя стойността на flyttInMb, за да мога да преместя Kone и бебето, ако броят им е еднакъв, така че нито една бенка да не се появява на едно и също място.


person Kasper    schedule 05.02.2011    source източник
comment
Здравейте, бихте ли форматирали кода си, моля? Използвайте бутоните {}, за да направите това. Благодаря.   -  person robertp    schedule 05.02.2011


Отговори (2)


опитайте това, за да получите върната стойност от метод:

function returnValue():uint
{
  return Math.round(Math.random()*8);
};

грабя

person robertp    schedule 05.02.2011

Съжалявам, че добавям нов отговор, но смятам, че така е по-добре.

За да можете да върнете нещо от метод, трябва действително да го зададете в декларацията на метода и трябва да върнете стойност в метода. Виж отдолу:

В символите на филмовия клип

function flytt():uint
{
   var flyttInMb:uint = Math.round(Math.random() * 8);

   if(flyttInMb == 0)
   {
      x=243.30; //Use full stop instead if comma!
      y=171.65; //Use full stop instead if comma!
   }

   return flyttInMb;
};

В декларацията на метода казвам, че ще върна стойност uint и последният ред на метода връща генерираното произволно число.

В основния ви скрипт

Честно казано, не разбирам какво се опитвате да направите с това:

if(flyttInK==flyttInMb){
   Kone.flytt();
   Baby.flytt();
}
  • какво е flyttInk?
  • какво е flyttInMb - има същото име като генерираната стойност в символния скрипт.
  • Kone.flytt(); и Baby.flytt(); извикванията изглеждат извиквания на метод на статичен клас, които няма да върнат нищо в този контекст. Опитайте се да извикате методите на действителните инстанцирани елементи, които биха били нещо подобно:

var kone:Kone = нов Kone(); ... var returnValueOfKoneInstance:uint = kone.flytt();

Надявам се да се сближиш с това,

грабя

person robertp    schedule 05.02.2011