dop2000's Forum Posts

  • You can create a new instance, and then use "Object Load from JSON Object(0).AsJSON", where Object(0) is the first instance of this object.

    Note, that "Load from JSON" restores all properties, including X/Y coordinates, so you'll have to change position of the new object after that.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • First, don't use "Trigger once" like that. Try not to use it at all, until you have solid understanding of how events work in Construct. I've seen too many projects where "Trigger once" was used wrong and was causing some nasty bugs.

    If you want some actions to be executed once, use triggered events, like "On start of layout" for example.

    Drawing Canvas is an advanced feature and it's not required in most games. There are easier ways to draw a line, you can use a Sprite or Tiled Background object.

    If you are sure you want to draw on Drawing Canvas, you need to add it to your layout. Looks like you've added Drawing Canvas object to the project, but there are no instances of it on the layout.

  • Use "Is Between angles" condition.

    And don't use "Else", because it doesn't mean "all other instances". When the first event picks instances, "Else" event is not triggered.

    Sprite.Pathfinding.MovingAngle between 90 and 269.99
    	Sprite set mirrored
    
    Sprite.Pathfinding.MovingAngle between -90 and 89.99
    	Sprite set not mirrored
    
  • You need to organize the code correctly using sub-events:

    1 Circle is overlapping Enemy....Target set position to Player
    
    subevent:
    2	Enemy pick nearest to Player.x, Player.y
    	....Target move at angle(Player.x, Player.y, Enemy.x, Enemy.y), Distance: (Сircle.width/2)
    
    
    3 ELSE (it should be at the same level as event #1)
     Circle is overlapping Spawner...Target set position to Player
    
    subevent:
    4	Spawner pick nearest to Player.x, Player.y
    	.....Target move at angle(Player.x, Player.y, Spawner.x, Spawner.y), Distance: (Сircle.width/2)
    
    
    
    5 ELSE (again at the same level as #1 and #3)
    	....TARGET set position to (somewhere else)
    
    

    If this doesn't help, please post your project.

  • See this demo:

    dropbox.com/s/rrpxnmer3gwhl88/DoubleVirtualGamepad_v3.c3p

    It's for Construct 3, but you can open it in free version of C3 (in your browser), and then copy all events to your C2 project. There are only 4 events for both thumbsticks.

  • I don't want to install all those addons, sorry. Also, you need to post .capx file, not .caproj

    Try this demo I made:

    dropbox.com/s/s6yh2grtjh34sut/EnemiesInCover.capx

  • If you want to make a "fake" hole (only change the image), you can use blend modes. In Construct 2 select File-New and search for Blend Modes example.

    If you need to change collision mask of the wall, you will have to do this with tiled background, see this post:

    construct.net/en/forum/construct-2/how-do-i-18/simple-scorched-earth-worms-ga-129595

  • Mouse on Object clicked
    Mouse cursor is NOT over BlackBlock
    

    Same with Touch:

    Touch on Object touched
    Touch is NOT touching BlackBlock
    

    Or if the black area is always at the bottom of the screen, you can simply compare Mouse.Y or Touch.Y

  • Use Particles object.

    Set angle = 270

    X randomizer = screen width

    Y randomizer = screen height

    Set Gravity

    Change other parameters to your liking.

  • This may be caused by wrong collision polygons or misplaced origin image points. If this doesn't help, please post your project file.

  • You can create 3 instance variables: redHearts, maxRedHearts, soulHearts

    On red heart pick up, set redHearts to min(redHearts+1, maxRedHearts)

    On soul heart pick up, add 1 to soulHearts.

    .

    When character is hit:

    If soulHearts>0, subtract 1 from soulHearts.

    If soulHearts=0, check if redHearts>0, subtract 1 from redHearts.

    If both redHearts and soulHearts are zero, character dies.

  • If I understand your question correctly, you can try Browser.QueryParam expression. After the submission you generate and send the user a link like this:

    www.mywebsite.com/game.html?c2id=2382392
    

    Then in your first layout you check if Browser.QueryParam("c2id") contains any value. If it does, you request data with c2id=2382392 from Google Spreadsheets and open another layout with the form where user can review and re-submit it.

  • Save the score in a global variable. Switch to another layout, show the value of that variable.

    This is a super basic question. You should probably start with tutorials:

    construct.net/en/tutorials

  • Yes, Bullet is not a good choice here, either use Tile Movement or Pathfinding behaviours.