help with Sprite Instances/animation

For questions about using Classic.

Post » Mon Dec 08, 2008 11:56 am

I started to convert my project from MMF to Construct and right away i got stuck :D

I have a 5 instances of sprite (kind of counter) with 5 frame animation, and a private variable "anim_var".
What i want to do is to make a random number for the "anim_var" every time when Layout Starts

[code:25sjig2g]Always -> set "animation frame" to "anim_var.
Start of Layout -> set "anim_var" to "1+random(5)"[/code:25sjig2g]

Everything is fine, but it set's a random value for the random instance.
Every instance Instead of showing the same frame animation, shows random one.

In MMF it was fine, all were showing exactly the same - i just have problems to set them to show diffrent frames.
In Construct is completly opposite :D - i can make them show diffrent frames, but i can't set them to show the same.


and one more thing
Is "on animation finished" working?

MMF - works - something like thit: 2 sprites - "door" and "player":
[code:25sjig2g]+player colides with door, press Up Arrow -> door "open" animation plays
+"open" animation finished -> player "enter" animation plays
+"enter" animation finished -> door "close" animation plays
+"close" animation finished -> player set position (to something else)[/code:25sjig2g]
It's all very simplified but you shoud get what i mean.

In Constructor when i set "on animation finished" nothing happens.
I'v tried to play with animation properties, but it's like one big bug :?
I've also tried to set "on animation frame" like"
[code:25sjig2g]+animation frame equals 20 -> do something[/code:25sjig2g]
but it do nothing.
And the best thing is when i finally make it working I pressed the save button to save my project....and it stop working :shock:

I spend all weekend trying to solve that and nothing, and I have no idead what to do...
ImageImageImageImage
B
140
S
58
G
36
Posts: 2,547
Reputation: 31,170

Post » Mon Dec 08, 2008 2:17 pm

I haven't had any problems with On Animation Finished. I used it in my game, and there's been no new build since then. If you're experiencing what you think is a bug, post an example so someone can take a look.

When you set an animation to a specific frame, it stops the animation, so it will never finish. When you play the animation, it plays from frame 1. This is an issue I've meant to report (I really should get those bug reports in :P). (Edit: Oh wait, I did report it. Duh :P. I totally forgot.)

As for the rest, I really can't understand your pseudocode. You should make it more readable, I can't how you have your conditions and actions set up. Here's the standard method we use on the board:

For conditions we use a plus:

[code:3hnr4qrf]
+ Always
[/code:3hnr4qrf]

For actions, indent a couple of spaces and use either -, >, or -> to indicate it's an action and not a condition:

[code:3hnr4qrf]
+ Always
->Sprite: Set position to x,y
[/code:3hnr4qrf]

For multiple conditions in an event, it's usually done like so:

[code:3hnr4qrf]
+ On key "Z" pressed
+ Sprite.Value('myVar') Greater than 0
+ Sprite is visible
-> Add 1 to Sprite.Value('myVar')
[/code:3hnr4qrf]

For sub-events it would look like this:

[code:3hnr4qrf]
+ On key "Z" pressed
+ Sprite.Value('myVar') Greater than 0
+ Sprite is visible
-> Add 1 to Sprite.Value('myVar')
+ NOT Sprite is visible
-> Subtract 1 from Sprite.Value('myVar')
[/code:3hnr4qrf]

As for the sprites all setting to different frames, try generating the random number separately. Like so:

[code:3hnr4qrf]
+Start of Layout
->System: Set global variable 'randFrame' to (1+random(5))
->Sprite: Set animation frame to global('randFrame')
[/code:3hnr4qrf]

This works fine (I tested it). Construct is a little different than MMF when it comes to instances, so it thinks you want each sprite to set itself to it's own random frame. If you tell Sprite to set it's frame to a specific number though, it works okay. It's not a bug, just a different way to handle instances. You'll get used to it after a while.
Moderator
B
5
S
2
G
6
Posts: 4,348
Reputation: 10,971

Post » Mon Dec 08, 2008 2:31 pm

Yeah I know, my pseudocode is a mess...like my realcode to bo honest :D
I'll upload the *.cap file tommorow morning and some more readable code...

And agree. Construct is way diffrent from MMF that's why i have problem, trying do thing same as i would do in MMF - it's hard to change old habits :?
ImageImageImageImage
B
140
S
58
G
36
Posts: 2,547
Reputation: 31,170

Post » Tue Dec 09, 2008 10:30 am

I don't know what you did deadeye, but it all starts to work last night heh.

But for real, i noticed that sometimes when i'm using Construct it starts making weird things.
Like with this "on animation finished" thing. I spend all sunday trying to sort it out, and yesterday it work's fine, no problems!

Have someone had same problems? Or maybe it's just my computer have problems :?


anyway, last night results [u:26wzjy99]in this file[/u:26wzjy99]
elevators engine

I just can't set RTS movement to go where I want. When I set it to go to ie. Y=100 it stop somewhere around that number, but never exactly on it.
And I have to set Y position to Y floordetector position when RTS arrived on target, but it's problematic with screen scrolling.

btw the screen is set to 1024x768 for testing, and i just realized i forgot to change it.
ImageImageImageImage
B
140
S
58
G
36
Posts: 2,547
Reputation: 31,170

Post » Tue Dec 09, 2008 3:46 pm

On the movement not getting to exact coords, you might try setting the image point to the center of the object, or where ever you want it to be detected at.
Image Image
B
161
S
48
G
89
Posts: 7,347
Reputation: 66,249

Post » Thu Dec 11, 2008 9:21 am

I did that already but still the same. When the player is on level 1 floor_detector Y position = 748, the best i could do (after changing RTS deceleration to something big like 1000 or even 10.000) is to get the Winda_detector to 747.998 LOL but still missing that 0.002 :D.
For the first time i have created the custom movement instead of using RTS, but it was to many lines of code, so i tried to optimize it somehow with RTS.
ImageImageImageImage
B
140
S
58
G
36
Posts: 2,547
Reputation: 31,170


Return to Help & Support using Construct Classic

Who is online

Users browsing this forum: No registered users and 6 guests