brushfe's Forum Posts

  • That's the kind of thing you can get from Google faster than a forum. Just search for your question and you'll get the answer!

  • I'm not sure how you're using LOS, or how it affects your enemy movement. I would just keep experimenting until it's behaving the way you'd like it to!

  • Try something like this, just to see what BBox is like. It uses char.BBoxLeft and char.BBoxRight, rather than char.X, as the point of comparison. There's also a Margin number if you want to customize the distance even more. And it separates the mirror from the follow movement.

  • It's a built-in property of the Sprite object.

    Sprite.BBoxLeft, for example, returns the X value of the left edge of your sprite.

    Definitely look up the Sprite object in the Construct manual, it'll give you more info (I highly recommend reading the manual whenever you can, it's really great)

  • As lionz said, you're checking whether your enemy is either left or right of a very specific coordinate (the player's X). Your enemy will still move even when they're overlapping, because you've told them to keep moving at all times, either left or right

    If you want enemies to do nothing when they're overlapping, you have to change when you tell them to stop moving.

    Try using the edges of the player's sprite instead of X. You can use the BBox property (bounding box) instead. And add an else statement to make it a little neater.

    If Enemy.X is greater than Char.BBoxRight

    ...Enemy simulate moving left

    Else

    If Enemy.X is less than Char.BBoxLeft

    ...Enemy simulate moving right

  • You can also combine these into one condition:

    • For each Sprite

    • Sprite -> On Frame Changed

    • Sprite -> Frame = 2

    • Sprite -> Is "Shooting" playing

    This will create one bullet whenever any Sprite object playing "Shoot" animation changes to frame 2.

  • Personally I think the indicator of whether a layer is global or not should just always be a little globe icon in the editor. In that way nobody gets confused between global/overridden and it doesn't affect the naming in anyway.

    Or even simpler, just change the text colour of global layers in the layers window. Globals=green, Normal Layers=grey

    I really like the little icon idea! It would leave a lot more room for layer names in the menu, and is very a clear answer to the debate above. Colours can get tricky with visual impairment, so I'd certainly vote for that!

  • A "Has Animation" condition for Sprites would be so useful!

  • I wasn't sure if this was intended, unintended but still cool, or a bug — but you can save while editing a parameter. In other words, after double-clicking on any action with a parameter (system -> compare two values), you can press cmd/ctrl-S to save the project.

    Just in case that could cause any trouble. Or if it's not a useful report, delete this!

    I'll add my +1 for an improved simulate jump action, for all the reasons above and one other - Construct's biggest advantage is making games without coding.

    Getting into vectors is when Construct moves into code, and for something as fundamental as jumping, in a behaviour as fundamental as platform, this all feels like a no-brainer. It's clearer for beginners, cleaner for advanced users, and right for Construct's approach to game design.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Right, I see that; it can go either way - and probably cause confusion no matter which way you go (as the OP pointed out). Global does seem to fit because its the setting the user engages with in the UI (Global -> Yes), but as fedca pointed out, if you don't equate "global" with "overridden", it's nice to see that.

    I do agree with your point about the internal distinction; that seems ideal. But hey, the best time to plant a tree was 20 years ago, and the second best time is right now! :)

  • It's technically true, but wouldn't it be clearer/more practical to tell users that it's a global layer being shown?

    I get that Overridden is more precise, but then the question is overridden how/by what? (the global layer). And I think it'd be easier for new users to think of layers as either global or local.

  • It's a great feature! I know i've been a stickler for words lately, but I think the word "Global" next to the layer name instead of "Overridden" would be more helpful and more clear (and shorter).

  • I'd like to reuse the same Probability Table for AI decision making.

    For example, the table "DiscardDecision" would be empty, then each card in the player's hand added and weighted according to its importance.

    I can use the AsJSON to see that there are entries in the table, but I can't figure out how to clear those entries from it.

    Does anyone know if this is possible?

    Thanks!

    EDIT: It looks like recreating the table with the same name resets the content. Problem solved!

  • There's tons of examples to follow in the Examples on the Start Page, including one about Speech Synthesis. They work as great practical companions to the manual. Have you tried those?