dop2000's Forum Posts

  • It depends. Will something like this be possible? Can a card overlap more than 2 cards above it?

    You'll probably need to introduce levels or layers, instead of relying on z-index.

    Say, the king here is on level 0, ten is on level 1, and seven of spades is on level 3:

    Then you could process cards in a For Each ordered loop, from the bottom level, picking up cards that overlap it and are on (Self.level+1), and add them to the CoveredBy list.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Check out this Ashley's comment:

    construct.net/en/forum/construct-3/general-discussion-7/games-nwjs-183964

    He's talking about Local Storage, but I imagine system saves work the same way.

    You can save the full state of the game to a file.

  • If you are using Download action, I don't think there's any way to prevent this.

    In a desktop app you can save/overwrite the existing file using NWjs or FileSystem plugin.

  • Try removing "Is overlapping Deck" condition in the function. If it fixes the issue, then investigate why some cards may not be overlapping the deck. Or move this condition in front of the For Each loop.

  • Are you sure that the origin point and collision polygon are the same in all animations and frames? When you have so many animations, it's better to use a separate invisible sprite for the character - with pathfinding behavior. And attach the animated sprite to it.

    Do you know why the character gets stuck? Does "On failed to find path" get triggered? Pathfinding only works within the layout bounds, so make sure the layout size is correct.

    Anyway, it's a guessing game without the project file.

  • igortyhon The function won't have access to the newly created instance of Cards. You need to add "Wait 0"

  • Border 50 seems too much for cell size 16. Read about cell and border size:

    construct.net/en/make-games/manuals/construct-3/behavior-reference/pathfinding

  • Most likely the event where you play the audio file is repeated on every tick. So the audio is repeated as well.

    Give this audio a tag and add a condition checking that the tag is NOT playing.

    Audio tag "tagname" is NOT playing : Audio play Sound with "tagname"
    
  • if, for example, "simulate right" and "simulate down" at happening at the same time then the character should move down-right at a 45 deg angle. Not sure why your solution doesn't do that.

    What do you mean? It works like that in my example.

  • This happens to me too sometimes.

  • Also, if I copy the enemy function control group directly into the level 2 event sheet, the enemy works fine.

    You mentioned that the all levels share the same event sheet?

    If the enemy code is on a different event sheet, you need to include it into other sheets. Right-click on an empty space and choose "Include event sheet".

  • I don't understand your question, but you need to swap the conditions in the sub-event.

  • Try enabling "Unbounded scrolling" in layout properties.

    Make sure that there is only one object with ScrollTo behavior.

  • This will pick cards which name starts with the typed text:

    System Pick By Evaluate Cards: find(lowercase(Cards.Name), lowercase(Search.text))=0

    If you want to compare any part of the name:

    System Pick By Evaluate Cards: find(lowercase(Cards.Name), lowercase(Search.text))>=0

  • "Text is Cards.Name" condition doesn't pick cards. It only checks the name of the first card.

    In order to pick cards, you need to swap it:

    Cards compare variable Name=lowercase(Search.text) : Cards set visible
    Cards compare variable Name≠lowercase(Search.text) : Cards set invisible
    

    But if the name can contain uppercase and lowercase characters and you want to ignore the case, you'll have to use System Pick condition.

    System Pick By Evaluate Cards, lowercase(Cards.Name)=lowercase(Search.text) : Cards set visible
    System Pick By Evaluate Cards, lowercase(Cards.Name)<>lowercase(Search.text) : Cards set invisible