Colludium's Forum Posts

  • NB that there are 2 versions of the scml plugin. If you're using the latest version of the plugin then you're using the new 'Performance' version of the Spriter implementation. Which means you need to follow the instructions here under the heading "Performance Mode" in the first post. One of the main differences is it no longer uses a drag/drop import into c2.

  • Try this:

    var tempUID = sprite.UID

    var tempX = sprite.X

    var tempY = sprite.Y

    C:Pick by comparison: Object: sprite, Expression: sprite.UID, Comparison: ≠, value: tempUID

    C: Pick nearest sprite to tempX, tempY

    It creates a SOL of all sprite objects that do not share the UID you wish to avoid picking, then it picks the closest one of those to the player sprite's position.

  • I wanted a simple tween behavior to return a tween value for easy use in events. I also wanted bezier curve easing for full control of the a tween curve. I also enjoy the challenge of learning javascript, so I combined Easing.js and this Bezier-Easing javascript library.

    Feel free to use this in your projects: Tween on GitHub.

    If you find any bugs etc then let me know here or on github. I hope you find this useful .

    Actions:

    One-stop set up easing tween

    One-stop set up bezier tween

    Set up bezier tween light (values 0 to 1 returned)

    Pause / resume tween

    Reset and restart tween

    Reverse tween

    Dynamically alter bezier control point values

    Conditions:

    On end trigger

    Is tweening

    Expressions:

    Progress (0 to 1)

    Current tween value

    Get value at a specified time (time 0 to 1). Use this to loop through 0 to 1 and derive the tween values, to draw curves or predict movement etc.

    NB the control point values are entered as decimal fractions (not real world coords), as shown here and detailed here.

  • blackhornet - I like it + very elegant!

  • How I would tackle this depends a bit on how you want to implement this condition in your game. I would do the following to loop through the instances of object Object, comparing the distance to each with a max search distance:

    var MyUID = Player.uid [the uid of the object you wish to ignore from this search]

    var OtherUID = -1

    var ObjectiveX, var ObjectiveY [set these to the x and y coordinates of the center of your search]

    var LocalDistance = 10000 [where this value is the max range of your search]

    C: For Each Object

    C: Object.uid != MyUID

    var tempDistance = distance(Object.x, Object.y, ObjectiveX, ObjectiveY)

    C: If tempDistance < LocalDistance

    -- A OtherUID = Object.uid

    -- A LocalDistance = tempDistance

    If OtherUID > -1 then that is the UID of the closest Object within the search range you specified (-1 = none found). You could also filter the objects for Is On Screen, or you could use a large invisible collision object to reduce the number of Object instances you loop through by first testing for Is Overlapping (only if your layout is huge with many Object instances, otherwise I wouldn't bother).

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Anonnymitet - awesome, and just about my level of pixel manipulation - thank you!

  • lucid I doubled the sizes of my sprites that spriter loads for my character inside the spriter editor. Is there a way to scale the project and bones so it fits the new sizes of the sprites? Or do I have to scale every bone and place the sprites correctly for each animation manually?

    Timely question! I have the opposite challenge - to reduce the size of the sprites and bones... fingers crossed for a simple solution!!

  • Bug-fix update.

  • Problem Description

    If you resize a sprite in the image editor, the values you can set the collision polygon points to is restricted by the old sprite image dimensions.

    Attach a Capx

    capx

    Description of Capx

    One sprite with a collision polygon.

    Steps to Reproduce Bug

    • Open sprite in image editor. Resize it to 40w x 50h
    • Edit the y value of one of the bottom collision polygon points. Increase y value using the buttons and attempt to set it to 49.
    • Observe the y value is restricted to 44 (the old sprite height).

    Observed Result

    As above.

    Expected Result

    I would like collision polygon points to be controllable within bounds of sprite image.

    Affected Browsers

      N/A

    Operating System and Service Pack

    W10 x64

    Construct 2 Version ID

    r242 64 bit

  • Thanks, Tom - fingers crossed for the future of the arcade

  • Given that there's a huge amount of traffic (300 Gb per day) and there will be a subscription model for c3, I thought a financial return might be appropriate for uploads to the arcade.

  • Amazing work, rexrainbow!

  • MPPlantOfficial, I have a layout set aside for global layers so they are easy to find - change one layer name to something unique and check the global layer tick box in the layer properties. Whenever you change the name of another layer to that of your global layer template you'll see the properties are overridden and you can't add objects to it. When you run the layout, the layer will be reproduced as it was in the template you set up (it's not visible in the editor).

  • Try using Global Layers.

  • See para Check how much memory you should use from developer.android.com.