oosyrag's Forum Posts

  • I was going to say, just replace all DestText.Text with SpriteFont.Text (and DestText object's actions with SpriteFont object's actions) and it should work fine, but again, I'm not familiar with SF+, sorry.

    Can you describe exactly what part isn't working and maybe I can think of a workaround? Is the text not showing up at all? Do the inputs not work? Can you screenshot your events?

  • I'm assuming you are referring to the tilemap object and tile ID.

    Here is a quick hack -

    I don't think there is any way to get the tilemap width and height from expressions, so you'll have to set the number X and Y to loop through manually.

    Another way would be to have your tilemap mirror data in an array, and manipulate the array, as arrays seem to be much more flexible in terms of operations.

  • Is your URL in quotes?

    Try using the Button object's own "on clicked" condition instead of the Mouse object's "on clicked object" condition.

  • The second argument in the tokenat() expression specifies which line. In my example I used "CurrentText", which is a global variable (number) that increments by one every time a new line is set. You can change that to whatever number you want.

  • Only you know how you want your logic set up exactly, and I can't make your game for you (nor am I inclined to). Try to figure out as much of the logic as you can and if you have any specific questions about why something does or doesn't work the way you expect it to, I'd be happy to help.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Please check out the Vertical Space Shooter Template when you open a new project in Construct. The example specifies the X/Y coordinates the enemies/stars spawn.

    The other common way as LaDestitute mentioned is to use an invisible sprite object as a placeholder, and use that sprite object's "Spawn another object" action to create the sprite.

  • https://www.dropbox.com/s/6cliwidu8f51p ... .capx?dl=0

    Your ground should be set to solid.

    Edit: Saw your example video after. My bullets bounce, but you can turn bounce off and set their speed to 0 on collision instead, as taylor suggested. Or have them bounce only once by using a counter and using an action to turn off the bounce behavior.

  • https://www.dropbox.com/s/a9vurmgzjurgx ... e.PNG?dl=0

    There are several ways to handle the text - I've used a simple .txt file with line breaks, and the tokenat expression with newline to break them up. You can use XML as well, or even a spreadsheet .csv and import it into an array.

    Also this one instantly completes the current line when hitting space, but let me know if you have trouble modifying it to speed up the rate of display.

    EDIT: Here is the one for speeding up - https://www.dropbox.com/s/941g2c2dkjujc ... 2.PNG?dl=0

  • Draw it out with sprite animations.

    Or if you have to have sperate objects use bullet behavior with gravity and some random variations on initial speed and angle.

  • https://www.dropbox.com/s/av6kbtg32idgj ... .capx?dl=0

    While I don't know how spritefont+ works, this should give you an idea for how to continue.

    I highly recommend using a project file to handle your text like I have done - load it in with AJAX. Working with significant amounts of text within C2 is a pretty miserable experience.

  • Are you familiar with the window size? It determines how much of your layout you see at a time. The window can move around with the scrollto action. The viewport expressions gives you the positions of each side of your window within the layout.

    What you do with this position information is up to you.

  • Scale inner.

  • To be clear, your save game will still work if you update a sprite.

    Best practice: make a test and try it out. Most things will work, some will not.

    If you need more fine grained control, manually pick what and what not to save in localstorage keys.

  • As Lasmelan said:

    Best to not use a function.

    Otherwise, you need a condition to pick the specific missile you want destroyed. There are a few ways to do this, including with uid, but again it is best to not use a function here.

    To use UID - in the event where Missile on collision, you would add an action to set a variable to Missile.UID. Then in the function, you would add a condition to Pick by UID, and reference that variable.