dop2000's Forum Posts

  • It's because the building sprite is still behind the black "light" layer.

    You need to make another layer between the "light" and "layer 0" and move the building to it.

  • I'm guessing your sprites (small boxes and walls) have origin image points not in their center.

    When you wrap them and flip, each sprite is rotated 180 degrees around its origin point and this mess happens.

  • Did you do this?

  • I checked your capx, it works fine. Health is subtracted correctly from either Player or Pursuit.

    You can preview in Debug Mode and check for yourself.

  • MMGames

    You decide:

    C3 editor has lots of new features and tools, but there is almost nothing new that you can add to the final game. So no, you can't make a better game in C3, comparing to C2.

    C3 can export for mobile, but as I understand, it only works for selected platforms.

    C3 is still a fairly young software and there are lots of bugs and problems with it.

    Many popular C2 plugins have not been ported to C3 yet.

    C2 will not be getting any new feature updates, only bug fixes.

  • Create a separate layer ("Layer 0" on my screenshot), set "Force own textures=Yes", "transparent=Yes"

    Place a black sprite on top of the building on this layer.

    Place a small Light sprite with "destination out" blend mode on this layer, above the black sprite.

    You can pin this Light sprite to player - it will look like the player is carrying a candle.

  • Keyboard On Space pressed -> Player start animation "Attack"
    
    Enemy On collision with Player
        Player animation "Attack" is playing  -> Enemy subtract 1 from Health
        Else                                  -> Player subtract 1 from Health
    [/code:2577gggo]
  • It would help if you could share your project file or a screenshot of your event sheet.

    If collision is not registered, objects must be moving very fast and be quite small.

    Say, if two sprites 100px wide are moving towards each other, their combined speed should be 3000-6000px/sec or more.

    You can make a simple event to check that the collision is indeed not registered:

    Sprite1 on collision with Sprite2 -> Browser log "collision"

    If this is really the case, try increasing their size by pinning a bigger collision box (invisible sprite) to them. You can only use it to detect collisions while objects are in the air and moving very fast.

  • The only way I know is to turn "Snap to grid" on, select all sprites, wrap selection. And then flip by resizing, making sure that the final width of the wrapped area is the same.

  • Change the order in the last condition:

    Sprite6 a=Sprite.a

  • You can post your questions here, or if it's a big one - open a new post.

    I would also suggest you study some tutorials <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

    https://www.scirra.com/tutorials/all

  • It's hard to tell without knowing more about your game, there are lots of possibilities.

    From what I've seen, Bullet is probably not the best choice here.

    If the game is grid based, maybe instead of collision detection you should scan the Tilemap, look for the tile with Red arrow in the direction of movement. And then use MoveTo behavior to move to that destination tile. Or something like that.

    Or if you want to use Bullet, you can try "System Pick by Overlapping point" event instead "On collision".

  • Just add it to the same layer with that black rectangle.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You can define an image point a few pixels lower of the bottom edge on the character sprite. And then use "System -> Pick overlapping point" to check if this point is overlapping the floor.

  • You can make very small collision polygons on both sprites (blue and red arrows).

    Then collision will happen much closer to their center.

    On collision set Blue arrow position to Red arrow position, and only then change the angle of motion.