dop2000's Forum Posts

  • It's not possible to access variables by names like that in events. Consider using a dictionary instead. With dictionary you can do Dictionary.Get(fruit&"GenNo")

    .

    You can access variables by name using scripting:

    runtime.globalVars[localVars.fruit+"GenNo"]

  • You can try to slightly push the player back when it collides or overlaps with the enemy. Use "Set vector X" action and apply vector in the opposite direction from the enemy.

  • If the total number of instances on the layout is the same, there will likely be no noticeable difference in performance.

  • If your variable contains object name, you can use a single "Create by name" action.

    And you don't need to save UID of the created instance. Use "System Pick Last Created Family" condition.

  • You can also check how it's done in the Kiwi Story template. There are two sprites - an invisible Player_Base with simple collision mask and Platform behavior, and Player_Mask with all animations.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Are you using the Desktop App? Try updating everything from links in this post:

    construct.net/en/forum/construct-3/general-discussion-7/construct-nw-js-desktop-app-131317

  • dropbox.com/s/18be3s3vp9g8vc6/GMTK%20Game%20Jam%202021-fixed.capx

    C2 has so many quirks - with Pin, OR-blocks.. This would be much easier to make in C3 using hierarchy.

  • I use a simple trick - put some character where you want to insert a line break, then replace it with newline in runtime.

    For example: Hello there,^general Kenobi!

    Set text to replace(array.at(index), "^", newline)

  • You do not have permission to view this post

  • You can make the collision polygons 1px smaller. To pin a neighboring sprite you'll have to again check for "overlapping on offset" instead of using "on collision".

    So when the player arrived to a new position, check if it's overlapping at a small offset (say 2 pixels) any new pieces in four direction. If it does, pin these pieces to the player.

    Answering your second question - you can put small invisible sprites in the center of each cell in the target area. When all these sprites are overlapping the player will mean that the level is completed.

  • You do not have permission to view this post

  • I can think of two options -

    1. Use "Overlapping at offset" to check if it's safe to move in the selected direction on the grid. You have to repeat this check for the main Player sprite and for all connected parts.

    2. Completely different approach - use a tilemap object as a Player. So each time you need to add a new piece to the player, instead of pinning it, add it as tiles to the tilemap. Tilemap is the only object in Construct which allows to modify its collision mask.

  • Here is an example:

    .

  • You do not have permission to view this post

  • You do not have permission to view this post