keepee's Forum Posts

  • Not sure why this thread hasn't been replied to

    it seems pretty simple..

    "TotalHealth" sounds like it should be a Global Variable, as it won't actually differ between any of the instances...

    +every tick

         ->set TotalHealth to 0

    +For each Family1

         ->Add Family1.Health to TotalHealth

    This should work.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I don't think it's possible..

    But if all of your character animations were contained within one object, it would be.

    A little awkward though... but once you've set it up, and if you name your animations correctly, you can set them like this:

    +If character is moving right

    ->set animation to Character.Name&"Right"

  • Yes, it is..

    I can't really tell you any performance tips that won't be in the manual.. It'd be nice to know exactly how the collision checks actually work.

    If you happen to be checking between 2 circular objects, you can simply compare distances instead though.

  • What Whiteclaws said, but also it's only going in small increments because the event is only running for a single tick .. the tick of which you click the mouse button.

    What you'll need is another variable, call it "TargetAngle" or something

    +On click

         -> set TargetAngle to -30

    +Compare two values: LayerAngle(0) is not equal to TargetAngle

         +Compare two values: is anglediff(LayerAngle(0),TargetAngle) Greater than 1

                  ?->set LayerAngle(0) to Anglelerp(LayerAngle(0) , TargetAngle , dt*0.5)

         +Compare two values: is anglediff(LayerAngle(0) , TargetAngle) Less or equal to 1

                  ?->set LayerAngle(0) to TargetAngle

    The reason for the last event is so it stops the lerping once it's too close to really recognise the change.

  • Okay I started something from scratch,

    It's kind of a mess, but it's only 5 events, and meets your criteria.

    The correct answer always shows up at a random position

    Other answers are random from a list, and none are repeated

    Plus you can optionally set up to 10 different choices instead of just 4, and label them however (A,B,C,D,E,F,G.. or 1,2,3.. etc)

    Obviously you'll want this for multiple questions, in which case you need to replace the "answers" string with an Array, with each row being another question...

    I'm pretty tired and there's probably a way to simplify this a lot more, but I thought I'd give you what I have so far with annotations in case it helps.

    Link!

    Edit: updated version in the post below

  • Could use a bit more context to help you better..

    Is there a text object created for each orangeshape?

    If so, are they referring to the correct instance? You can make sure by adding another line such as Set text to orangeshape.X and see if it corresponds

    Or try flipping the order of the "Is shape1"/"Is shape2" events to see if the last event is merely overwriting the previous event. That's what it looks like.

    But what are you needing this for? It's likely there is probably an easier way to achieve it.

  • I had the same thought when someone else posted it.

  • use "for each (ordered)"

    For each sprite order by sprite.x ascending

    and then just put "stop loop" somewhere amongst the resulting actions.

  • try inverting 'is overlapping' instead

  • .capx link

    Edit: just lower the multiplier for slower movement

  • You could do it with one variable, but I think you'd end up with very long and awkward expressions to cater for stuff like the varying amount of days in each month, and the way we write months and dates starting with 1st instead of 0th..

    It'll be much less of a headache if you use seperate vars for Date/Month/Year.

    Plus, you can create the Date string where it's needed afterwards just by using set text to Date&"/"&Month&"/"&Year

    expressions you'll need are:

    tokenat() I think this is what you were referring to with parsing..

    int() converts a string into an integer

    % Operator

    you'll find good explanations of each in the manual

    *edit: I made a cap anyway

    It's a little confusing at the bottom so if you have any questions..

  • just break it down into smaller rectangular blocks.

    If you set the sampling mode to 'point', you can resize a 2x2 black sprite to any shape and it'll stay sharp.

  • You make your export able to support multiple sizes:

    tutorial link

  • It could be useful, yeah.. after all, it does let you set the start number which saves you from doing number+loopindex.. so why not more options?

    Have you worked out what you needed, or still getting an error?

  • Couldn't you just alter the loopindex where it's needed?

    loopindex*3 to change step to 3

    and 10-loopindex to go from 10 to 1?