tarek2's Recent Forum Activity

  • If it resets picking for every condition, it becomes essentially just "Y < 500" by itself, which will look broken again.

    Yep, that would be my expected behaviour, that it just checks if (Y < 500) by checking all the instances again.

    I dont know if that logic is for programmers as I haven't used any programing language yet but as none programmer, I will use human logic so when I think of "Or" is one or the other independently.

    The way is working now is "Or" Filtering from top to bottom until one condition is true, that's why it causes much confusion some will expect (Not Picking filtering and some maybe yes). That logic will make more sense if the "Or" you could use it only with the same object type but because we can combine it with any object type it makes more sense to have no filtering in my opinion. Though is still a really useful feature for some cases to avoid picking again when you have many objects so is still very useful.

    Maybe you should have included both:

    "Or" Filtering Picking as it is now

    and

    "Or" Not filtering

    To cover both cases and let the users pick the one they like according to their circumstances. This will make everyone happy as they could enjoy using "Or" blocks in the way they most like.

  • You do not have permission to view this post

  • Not sure if I follow you, didn't he spawn the Dark Grey Tiles which have the solid behaviour? why not keep using the same logic and close the walls of the room for the edges?

    Even if you do a Tiled background the rooms on your picture still show that is open so it will be a bit confusing for the player if it shows that can pass but when you try is blocked like an invisible wall.

    You have multiple ways to do this but I still dont see where your issue is, if you have a Tiled BG solid the same size as one of those tiles and then you extend it either (Verticaly for left & right) or (Orizontal for Top & Bottom) then you check the last tile of each side then place you solid wall one tile after.

    For me, it sounds like the side walls have to be fully closed using the same dark great tiles that you spawn through the level.

    Unless Im missing something.

  • It is hard to follow your events as you have multiple "On Space Pressed".

    I would recommend you try to use just one trigger so you dont have to duplicate multiple times as this will make it so hard to follow what's going on and you could easily end up with bugs, also another benefit is that it will be more organised.

    Not sure if this is exactly what you wanted but at least it will help you as a starting base as it should be close to what you needed.

    Here is an example:

    https://www.dropbox.com/s/hjf2dqodlhqb8ul/Corridor.c3p?dl=0

    The enemy has the variables to adjust:

    -The starting Scale

    -Max moves can do before hitting the player

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Perhaps the naming is misleading and they should be called something else like "ANY" blocks, so people don't approach it with the mindset of a logical OR.

    Yep the name is misleading, as for me whenever I wanted to use the "Or" condition is for as simple as:

    +A overlaps b

    or

    +Spacebar is down

    These are two totally independent conditions therefore each condition check should reset from zero the Picking. The conditions above of the current condition being checked can never affect the ones below. Each runs 100% independently as if you had them in separate events instead of all in one "Or" Block.

    As a result, I never use "Or" blocks for 6+ years unless in very specific cases which are clear (black or white). I have now gotten used to not using "Or" I dont need them but sometimes I miss the simplicity to make an "Or" block to tidy up the code.

    In my first years, I studied how it works and I had my notes etc... But if you stop using it for some time you keep forgetting and always have to look at your notes and make a quick examples test etc... it was too much of a hassle trying to remember how it works each time you need to use an "Or" Block so I stop using them at all and I was very happy to be honest as now I dont even have to think to make the equivalent of an "Or" block as it comes naturally.

    Though Would be nice if you could add a true "Or" block.

    Maybe we should create a suggestion feature and see how many users want the change?

    That will give you the motivation to revisit this "Or" block condition hopefully.

  • So what happens is that Construct checks the events from top to bottom and because you are using none trigger condition like "Key is Down" they will be checked in order from the First "A" to your last "R", the "Triggers conditions" the one that has normally the Green arrow get called only when they get triggered and if I remember correctly if multiple Triggers are triggered on the same tick they will be run Top to Bottom swell.

    So to ensure that you have always randomness when multiple players press the button on the same tick then you gonna have to handle it differently, for example first check if more than one player is pressing the button and mark them, then just loop through those players randomly to assign a Rank to play.

    Here is an example:

    You can do it in multiple ways like pushing them into an Array and then picking them at random etc... I used here just a boolean to make it simpler just in case you haven't used Arrays yet.

    Also, I used a Family to simplify the code.

    https://www.dropbox.com/s/9cn7486s3nnqa9l/quizz2.c3p?dl=0

  • Global Variable = "Total_Gems"

    Character on Collision with Gem:

    -------------- Action: Add 1 to "Total_Gems"

    -------------- Action: Set Text to: "Gems " & Total_Gems & "/36"

  • On Key Pressed: is a trigger which runs only once.

    So your "Every X seconds" will not work as intended under a trigger.

    You need to use "Key Is Down" if you want to use the "Every X seconds" in a subEvent.

    I like to use Timers swell as GeoffB recommends.

    Also, (Repeat X Times & Every X seconds) doesn't make much sense, perhaps you should use:

    Key Is down:
    --Your Top Conditions
    ---------Every X seconds: Your Actions
    

    The "Every X seconds" will only run if the top conditions are met.

  • From your events, it looks like you dont pick objects before you pin them or set positions into the right platforms so all the masks will be referencing the first platform instance that you have in the layout.

    To link them together (Platform + Mask) you can use Hierarchy or containers.

    For example with Hierarchy:

    On start of Layout:
    
    ---------Destroy (Platform + Mask)
    
    
    ---------Action: create Plattform
    ---------Action: Create Mask at Platform XY
    ---------Action: Platform add Hiearachy Child = "Mask" (XY & Angle)
    
    

    So now they are linked and pinned together, you dont need to use the Pin behaviour.

    And if you ever need to pick (Parent or Child) you can use Hierarchy pick (Parent or Child).

  • Np Glad was helpful

    I'm fumbling on the text part though. I had to adjust the "create object" parameters of the the Table Grid to fit the viewport of the game. Perhaps I'm losing it, 'cause in your demo it works, but I don't see where/how the text is being binded to the table grid??

    I think the issue you have could be that you didn't create the container between the two objects (Text & Table_Grid).

    If you click on any of the two objects and look at the Left side editor panel, on the "Container" section you will see I link them together.

    This what it does is if you:

    -Create one object from the container the other objects inside the container creates automatically with it.

    -Destroy one object from the container the other objects inside the container get destroyed automatically with it.

    -Pick one object from the container the other objects inside the container get Picked automatically with it.

    You can read more about containers here:

    https://www.construct.net/en/make-games/manuals/construct-3/project-primitives/objects/containers

    The Grid was just for quick testing, didn't know you want to create the grid dynamically swell, here is how I will create the Grid dynamically.

    You can keep the old one though if you like it more, there is nothing wrong with it. Here I just added some extra Variables to adjust the grid easily and cut down the Actions.

    New Example:

    https://www.dropbox.com/s/cedpv6dl1wnz1pc/Array%20Sort%20Songs2.c3p?dl=0

  • I see,

    In that case, if you want to maintain the same structure without making any changes then you can use a second Array to do the sorting.

    On your Picture you store the first Artist on (Y = 1) instead of (Y =0) so according to that:

    Here is an example:

    https://www.dropbox.com/s/c6vmd3x43o0sq2p/Array%20Sort%20Songs.c3p?dl=0

  • I haven't seen anything that can exclude some layers from rotating with the Layout, but here is one idea.

    https://www.dropbox.com/s/hno6jalefgwcn29/Layer%20Lock%20Rotation.c3p?dl=0

tarek2's avatar

tarek2

Early Adopter

Member since 26 Jan, 2016

Twitter
tarek2 has 12 followers

Trophy Case

  • 8-Year Club
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Regular Visitor Visited Construct.net 7 days in a row
  • RTFM Read the fabulous manual
  • x5
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

15/44
How to earn trophies