dop2000's Forum Posts

  • Nice example!

    I didn't know you can change position/size of a sprite and then immediately test if it's overlapping another object in the same event. I thought you need to wait for the next tick.

    So using this technique I think you can find the point of collision with fairly complex shapes.

    Will need to define a few image points - one on each node of the collision polygon, where the red dots are.

    ("polygon" made with image points should be slightly larger/ slightly outside of the collision polygon)

    When collision with an asteroid is detected, take a small sprite, say 4x4 pixels, and move it from one image point to another (along the blue lines), constantly checking if it's overlapping the asteroid. Once it's overlapping, that would be your collision point!

  • Trying a different solution right now. I'd love to see your solution in a capx though <img src="{SMILIES_PATH}/icon_e_wink.gif" alt=";)" title="Wink">

    Here you go:

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

    I think it works pretty well.

    EDIT:

    Except for this situation:

    It's impossible to select the two blocks in the middle.

    I think you should have the same problem if you are doing it the way you described in the first comment.

    You need to add diagonal movement - check if DOWN+RIGHT pressed simultaneously, as this would be the first thing players will try to do to reach those blocks in the middle.

  • The easiest method is to create a global variable vScore and a Sprite Font object, say ScoreText.

    After you change vScore, use this action to update your sprite font text:

    ScoreText -> Set Text to vScore

    or

    ScoreText -> Set Text to "Your score: " & vScore

    With Sprite Font you can make your text as big as you want. And if it's not enough, you can further increase it with Scale

  • Sure, use Sprite Font. I recommend this tool for creating your sprite font:

  • You do not have permission to view this post

  • You mean something like this?

    Create a sprite with the lightning ray (static or animated).

    When you fire your weapon, spawn this sprite, adjust its angle and width so it connects your weapon with the target.

    You might want to add several variations of the ray image/animation and select one of them at random.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Say, when a spaceship hits an asteroid and you want to draw sparks in the spot of the collision

  • That's because you are comparing number with string!

    Int() is number and "" is string.

    You should compare either TextBox.Text="" or Int(TextBox.Text)=0

  • In C2 select File-> New-> Example: Move to mouse

  • To add to the previous comment.

    If numbers are sequential as in your example, you can use "System -> Is between values -> floor(random(100)) between 1 and 5"

    There are also a few workarounds to optimize it. For example, you can do this:

    Compare two values-> find ("#1#2#3#9#15#" , "#" & floor(random(100)) & "#") >= 0

    Or install the SwitchCase plugin:

    It's a really useful plugin and I'm using it a lot in my game.

  • No, there is no Null in C2. Empty string is always "" (quotes without space in between).

  • Just a though - maybe you could do this without the array, using Pick Nearest event.

    If Right key pressed:

    First try to Pick Nearest green sprite, which is on the same row (sprite.y=current.y), and which is to the right from the current (sprite.x>current.x)

    Else (If none picked):

    Pick Nearest green sprite, which is to the right from the current (sprite.x>current.x). Nearest from any other row will be picked.

    EDIT: When using "Pick nearest" with other conditions, "Pick nearest" needs to be the last in the list:

  • If your collision polygons are rectangular or close to circle shape, you can calculate the collision point. Otherwise, not sure if this can be done..

  • As I said in my previous comment, you don't need to destroy text2 and you don't need to create text2!

    Remove entire event 16, and remove "create Text2" from event 18.

    When you create Text2, another pair of Bad+Text2 is created (as they are in the same container). That's why you have some sprites scrolling to the right.

    Also, why are you destroying and then immediately creating the spCannon? What's the point?

  • You need to understand the difference.

    Initial Frame setting is not for defining starting frame of an animation.

    It's used to select which frame will sprite be displaying after it's created.

    Starting frame of any animation is frame #0. If you need to start animation from another frame, you can do it with events.