winstreak's Forum Posts

  • Did you Preload your sounds?

    Start of layout : Audio Preload "Sound name"

  • angle(x1, y1, x2, y2) Calculate angle between two points

    Every x time (or tick) set the angle of your arrow to angle(arrow.x,arrow.y,destination.x,destination.y)

  • Anytime you try to affect something that has multiple instances (More than one of the same object) you need to specifically call the one you want in the condition. Sometimes this can be done automatically with built in features such as on collision automatically talks about the 2 (or more) objects that touched each other, or on created which specifically changes the instance that was created last.

    When changing your health bars you will need to call them - I suggest setting a variable to hold the UID of the monster they belong to. Then you can call the health bar with the variable = to Monster.UID.

    This video will help you out if you need more explanation:

    youtu.be/wbWGEanTg7I

  • Your bullet doesn't always make contact with the walls if they are moving that fast.

    Your computer only gets to process so many ticks per second, the faster you move the more pixels you skip over to get there. If you skip over a solid then it won't be able to stop you.

    You can try working with the behavior property 'step' to see if that helps, this site will explain it a bit more.

    construct.net/en/make-games/manuals/construct-3/behavior-reference/bullet

  • Always happy to help :)

  • Here is a basic but working model

    There are also lots of other factors that could be overwriting your buff that we won't be able to help you with because we don't see your code.

  • I create a boolean variable for my buffs (And a number variable if it's a buff that will change - for now let's say it doesnt).

    Hero Object (Named Hero) Instance variable (boolean) SpdBuff = False

    (For simplicity we will use every tick)

    Every tick set Hero|Platformer|MaxSpeed = 250 + (25*Hero.SpdBuff)

    The boolean goes between 0 and 1 - so the value will go between 250 and 275 in this case.

    ---------------------

    Then I would set a timer that if Hero Boolean SpdBuff = true it reduces, if 0 (or less) set SpdBuff to False.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I imagine you have 3 of the same Object as enemies. You will have to go through each one, create the weapon sprite, pin the sprite.

  • I gave you a video link on your Reddit post that goes into more detail if you need it.

    Let's assume your green island is a Sprite with the origin at its center with the name Island.

    It's a square so you can grab the area with a formula

    Create Object at:

    X position: Island.X-(Island.width/2)+random(Island.width)

    Y position: Island.Y-(Island.Height/2)+random(Island.Height)

    I suggest putting that in a function - then whenever you destroy an object you call an object.

    I made a quick example program of it - Sprite = island and sprite2 = object you create.

    The algorithm does not take into account your objects width and height, so they will hang off the ledge if you end up randomly hitting very near the edges.

  • You will always grab the highest Tracker ID. So as long as you are correctly setting that ID variable you will always grab the newest item.

  • If you want extra information on overlapping multiple objects and picking one you can check out this video:

    youtube.com/watch

    At the end, instead of doing the random check you would do your pick highest tracker.

    Best of luck :)

  • Each time you create that object or object family set a variable (We will Call it Tracker)

    Set tracker = object.UID

    This will make tracker be a higher number for the newest object.

    When you go to pick up the object

    Sort by: Pick highest/lowest

    and pick highest tracker.

  • Using Rotate Towards angle will make it turn towards that angle instead of instantly jump to it.

    Every tick (or every .017 seconds) Player and Nearest platform dont have the same angle, move it a few pixels at a time. I would guess about 3 pixels.

  • Never tried this before but you should be able to pick nearest platform of your Player location. Set Player angle = platform angle

  • Put a variable on the button (Boolean 'Active' = True)

    For your click event

    On buttonSprite Clicked & buttonSprite Boolean 'Active' = True

    Perform button event

    On buttonSprite Clicked & (INVERT) buttonSprite Boolean 'Active' = True

    DONT Perform button event