Page 1 of 2 12 Last
  1. #1

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0

    hitTestObject AS3 en Arrays

    Hallo, ik zit met een probleem waarbij ik een game moet maken voor een eindopdracht in Flash AS3 en mijn concept bestaat uit een mijner in een karretje dat pegels moet ontwijken en diamanten moet vangen.

    Het enige probleem is dus op deze moment dat ik een hitTestObject heb gebruikt maar dat ik enkel 1 item uit mijn array kan oproepen waarbij mijn hitTestObject van toepassing in omdat ik mijn pegels random laat aanmaken en dus niet weet hoeveel pegels or op elke moment op het scherm aanwezig zijn.

    Is er een mogelijkheid om mijn array te definiƫren zodat deze de items tussen laat ons zeggen 1 en 200 oproept en daar mijn hitTestObject aan koppelt ?

    mijn code ziet er zo uit:

    public function setNextStone()
    {
    nextStone= new Timer(200+Math.random()*1000,1);
    nextStone.addEventListener(TimerEvent.TIMER_COMPLE TE, newStone);
    nextStone.start();
    }

    Hierboven wordt mijn pegel random gegenereerd

    public function checkForHits(event:Event)
    {
    if(stones[0].hitTestObject(miner))
    {
    trace("test");
    }

    }

    En hier roep ik de hitTestObject op

    zoals je ziet staart er nu stones[0] en pakt hij dus enkel het eerste item in de array maar die moet alle items in de array worden.....


    Ik weet dat het een zeer lange post is maar ik zou het zeer op prijs stellen moest er iemand kunnen helpen, mijn punten van mijn eindwerk hangen er namelijk een beetje van af .
    no votes  

  2. #2
    Zero Grav's Avatar
    Registered
    06/06/04
    Location
    Bilzen
    Posts
    8,805
    iTrader
    18 (100%)
    Mentioned
    0 Post(s)
    Reputation
    42/128
    Adobe ActionScript 3.0 * Looping

    Loopen door een Array lijkt me iets dat ge wel moet kennen als ge aan uw eindopdracht bezig zijt.
    no votes  

  3. #3

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Njah eindopdracht voor richting Multimedia maar is wel eerste jaar dat we AS3.0 zien en zijn er nog maar ca 3-4 maand mee bezig zodus :P

    Ikzelf snap helemaal niets van AS3.0 alles is afgeleid van basic tutorial en hulp van mensen in mijn klas die er wel iets van snappen :P dus enige uitleg die gegeven wordt gelieve het uit te leggen aan iemand die dus geen enkel verstand heeft van AS 3.0 :P
    Last edited by UraMastah; 01-06-2012 at 20:44.
    no votes  

  4. #4
    YaMo's Avatar
    Registered
    19/02/06
    Location
    -
    Posts
    4,048
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    2/73
    Om te weten hoe je loopt door een array moet je nu niet bepaald een ActionScript expert zijn, denk ik...
    Moeten jullie daar ook geen websites maken enzo? Dan kan je toch ook al wat javascript?
    ActionScript is min of meer een mengeling van Java en Javascript.
    Leren ze jullie daar niet de basis van programmeren voor je Flash games moet gaan maken?

    Maar bon, om iets te testen voor elk item in een array moet je dus in een for lus elk item afgaan, wat toch redelijk duidelijk uitgelegd wordt in Zero Grav zijn link.
    En je zal het misschien niet geloven, maar er bestaat nog meer documentatie over AS3, die je zomaar kunt raadplegen, en daar kan je dan te weten komen dat arrays in AS3 ook speciale functies hebben om voor elk element een functie uit te voeren.
    no votes  

  5. #5

    Registered
    13/05/06
    Location
    Hoeselt
    Posts
    9,944
    iTrader
    48 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/72
    No offense, maar looping leer je toch net voor/na branching. Iets wat je dus zeker in de eerste 2 maanden leert.
    Met het stukje van Zero Grav kom je al een heel eind.
    no votes  

  6. #6

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Quote Originally Posted by Recipe4hate View Post
    This quote is hidden because you are ignoring this member. Show
    No offense, maar looping leer je toch net voor/na branching. Iets wat je dus zeker in de eerste 2 maanden leert.
    Met het stukje van Zero Grav kom je al een heel eind.
    Normaal wel jah maar bij ons gaat het er dus een heel pak anders aan toe m.a.w. ze geven ons een tutorial en zeggen ons gewoon maak een game a.d.h.v. deze tutorial zonder eige uitleg..... geweldig dus... zo hebben we als eerste game via tutorial Pong moete maken xD.
    no votes  

  7. #7

    Registered
    13/05/06
    Location
    Hoeselt
    Posts
    9,944
    iTrader
    48 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/72
    Waar volg jij dan les?
    no votes  

  8. #8

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Quote Originally Posted by Recipe4hate View Post
    This quote is hidden because you are ignoring this member. Show
    Waar volg jij dan les?
    TSM Mechelen :P njah is toch mijn laatste jaar nu in die richting en ga daarna waarschijnlijk een andere richting doen maar jah moet er dan wel door zijn dit jaar eerst :P
    no votes  

  9. #9

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0

    opgelost

    heb uiteindelijk dan toch een for lus kunnen gebruiken om mijn hitTestObject toe te passen op al mijn items in mijn Array maar van het ene probleem kwam het andere en nu heb ik mijn pegels die verdwijnen vanaf een bepaalde x-waarde maar de hitTestObject eigenschap blijft wel staan op de plaats waar ze verdwijnen xD

    voor degene die zich er in interesseren en hun tijd voor willen gebruiken heb ik alle bestanden van mijn spel online ter beschikking gesteld xD. het is een bestand van 0,9MB dus niet te groot :P

    Flash-game bestand <- download
    no votes  

  10. #10
    Zero Grav's Avatar
    Registered
    06/06/04
    Location
    Bilzen
    Posts
    8,805
    iTrader
    18 (100%)
    Mentioned
    0 Post(s)
    Reputation
    42/128
    Als de hitTest waar is en ge wist dat object, dan moet ge dat object ook wissen uit de array: AS3: Arrays
    no votes  

  11. #11

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Quote Originally Posted by Zero Grav View Post
    This quote is hidden because you are ignoring this member. Show
    Als de hitTest waar is en ge wist dat object, dan moet ge dat object ook wissen uit de array: AS3: Arrays
    jah nee da moet dus ni gebeuren het is zo dat als mijn pegels een bepaalde x-waarde bereiken dan verdwijnen ze,
    niet als de hitTestObject waar is .
    no votes  

  12. #12
    YaMo's Avatar
    Registered
    19/02/06
    Location
    -
    Posts
    4,048
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    2/73
    Quote Originally Posted by UraMastah View Post
    This quote is hidden because you are ignoring this member. Show
    jah nee da moet dus ni gebeuren het is zo dat als mijn pegels een bepaalde x-waarde bereiken dan verdwijnen ze,
    niet als de hitTestObject waar is .
    En als ze verdwijnen moet je ze dus ook uit de array verwijderen, bedoelt hij. Tenzij je ze later opnieuw wilt gebruiken ofzo...
    no votes  

  13. #13

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Man man man.... daarom werk ik dus nooit met AS 3.0 xD ik snap er niets van haha ik snap dat je de array moet splicen maar in mijn code heb ik dit:

    if (y > 425)
    {
    deleteStone();
    }

    Als dit gebeurt moet dus ook mijn Array gespliced worden maar zoals gezegd snap ik de ballen van AS3.0 en wil dit dus liefst zo snel mogelijk achter mij hebben. Ik stel alle hulp die ik hier al gekregen heb van iedereen zeer hard op prijs en sorry als ik jullie hiermee erger
    no votes  

  14. #14

    Registered
    13/05/06
    Location
    Hoeselt
    Posts
    9,944
    iTrader
    48 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/72
    Welke 'steen' doe je weg? Volgens mij weet je method deleteStone() niet welke steen nu zijn y-val heeft gehaald.
    no votes  

  15. #15

    Registered
    01/06/12
    Location
    Begijnendijk
    Posts
    9
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    public function moveStone(event:Event)
    {
    //get time passed
    var timePassed:int = getTimer()-lastTime;
    lastTime += timePassed;

    //move plane
    this.y += dx*timePassed/1000;

    //check to see if stone hits floor
    if (y > 425)
    {
    deleteStone();
    }
    }

    // delete stone from stage and stone list
    public function deleteStone()
    {
    removeEventListener(Event.ENTER_FRAME, moveStone);
    parent.removeChild(this);
    }

    Dit is de volledige code voor mijn move en delete functies en btw heb mijn bestand vanboven in een link gezet als je het wil downloaden daar staat dan weer alle code netjes :P en het is maar 0,9mb groot :P
    no votes  

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in