dop2000's Forum Posts

  • You can adjust bullet speed, when bullet is spawned set bullet speed to (self.Bullet.Speed+Player.Platform.VectorX)

    You should probably do this on every tick, otherwise the bullet will continue to move too fast or too slow when the player stops:

    set bullet speed to (self.BaseSpeed+Player.Platform.VectorX)

    Also see this post for more examples:

    construct.net/en/forum/construct-2/how-do-i-18/constant-speed-129201

  • You are editing "On timer" event, parameter Tag should contain a string tag of the Timer. Duration expression returns a number, that's why you are getting this error. Why do you need it here anyway? If you want to compare timer duration, this should be in a separate condition, for example -

    System compare two values: Sprite.Timer.Duration("tag")>5

  • Great analysis, !

    Yeah, I miss the flexibility of the old functions, where you could pass any number of parameters and let the function to decide what to do with them..

    .

    I want to add one small UI issue - when you have lots of functions in the project, "Set return value" action becomes buried in them:

  • One other odd thing I noticed - you need to enter at least 100 characters into the short description field, and then when the game is published, it's not shown anywhere.

  • The game is now available on Scirra Arcade:

    construct.net/en/free-online-games/damaged-controls-4173/play

  • Move "Subtract 1 from ATES" before "Wait 2.5"

  • With my code this should not happen. Notice I used "System For Each Arrow", it's important here.

    If this doesn't help, you'll need to post a screenshot of your events or the project file.

  • Your explanation is a bit confusing. So you are not using Pin behavior?

    In this case:

    Arrow on collision with Enemy
    Arrow compare variable EnemyUID=0
    	-> Arrow set instance variable EnemyUID to Enemy.UID
    
    
    Every tick
     Arrow compare variable EnemyUID>0
     System For each Arrow
    	Enemy pick by unique ID Arrow.EnemyUID
    		-> Arrow Set position to Enemy.ImagePointX(1), Enemy.ImagePointY(1) 
    
  • No, you can't do it this way.

    You can change the color from white to green with "Set color" action, or by applying an effect (Tint, Set Color or Replace Color), or using BBcode. Not all of these methods will work with black outline, so you'll need to experiment.

  • Have you seen this template?

    https://editor.construct.net/#open=fireworks

  • No need to thank me, that's a built-in template in Construct.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Why do you need UIDs here? This should be enough:

    Arrow on collision with Enemy -> Arrow pin to Enemy

    .

    In case later you need to destroy the Enemy with all arrows in it, you can do this:

    Enemy on destroyed
    System pick Arrow by evaluating Arrow.Pin.PinnedUID=Enemy.UID 
    	-> Arrow destroy
    
  • https://editor.construct.net/#open=taking-screenshots

  • I had the same problem when I disabled a group with a function.

    Check if you have any calls to new Functions, which are either deleted, disabled, or are in disabled event groups.

    This will probably be fixed in the next stable release:

    github.com/Scirra/Construct-3-bugs/issues/3127

  • I'm not sure I fully understand your post, especially the edits. But here is how you can set sprite position between two points based on time passed and total time it takes to travel:

    progress = clamp(elapsedTime/totalTime, 0, 1)
    Sprite set position to 
     x: lerp(PointA.x, PointB.x, progress)
     y: lerp(PointA.y, PointB.y, progress)