Am I Idiot or is HaxeFlixel limited as hell ?

  • Hello,

    Now that I got your attention, I'd like to ask some questions about how HaxeFlixel works. I'm trying to do some draggable GUI Windows here and everything works fine except FlxSpriteGroup. For example, I have a Item Class that extends FlxSpriteGroup and a ItemSlot Class that also extends FlxSpriteGroup.

    The problem is the following : I'm trying to create a system that swaps the two items in the slots that are being swapped. Before swapping, If I drag around the window in which the slots are (let's call it the inventory window), everything works fine. But once i swapped the items, it looks like there's some random position that's being added to the Item Instance and it starts moving away. Really annoying because it happens everytime I .remove(Item) from SLOT A and I .add(Item) to slot B. Is it a way to handle this properly ? I don't think code is needed here because I tried some workarounds and still the same thing happens.

    Here's some gif of what's happening, you'll see what happens once I swap the items.

    It's not the first time I have to deal with the way HaxeFlixel renders a Sprite that's already been created. I don't wanna Create a new Instance of the Item Class everytime I swap slots... So, am I Idiot or is there something I might be doing wrong ?

    This is some code that totally explains what I am doing :

    var a:FlxSpriteGroup = new FlxSpriteGroup();
    var b:FlxSprite = new FlxSprite();
    var c:FlxSpriteGroup = new FlxSpriteGroup();
    a.setPosition(0,0); // Setting a position to 0,0
    b.setPosition(10,10); // Setting relative position to 10,10
    trace(b.getPosition() == (10,10)) // True
    c.add(b) // Adding b to c with relative position
    trace(b.getPosition() == (20,20)); // False 

    Instead of handling relative positions correctly, it just doesn't.

  • @zekrose said in Am I Idiot or is HaxeFlixel limited as hell ?:


    checkout the FlxGroupSprite source in here

    When removed from a, b's x and y are transformed by the a's x and y...

    I hope you'll find some clues...

Log in to reply

Looks like your connection to HaxeFlixel was lost, please wait while we try to reconnect.