truyet / hotween

Automatically exported from code.google.com/p/hotween
0 stars 1 forks source link

Change delayed tweens overwrite behaviour #32

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

1. Init and activate OverwriteManager.
2. Start a tween with a delay of 1 second.
3. Before 1 second, start another tween on same property with no delay.

What is the expected output? What do you see instead?

- The second tween should execute, but not the first.
- Instead, what we get is that the first tween executes after 1 second, which 
makes it very difficult to rely on tween execution order when delays are used.
- Delayed tweens should be tracked as much as running tweens, so that both 
types can be cancelled/overwritten.

What version of the product are you using? On what operating system?

- Version 1.1.006, on Windows.

Please provide any additional information below.

- A thousand "Thanks" for this great tool!  I will definitely donate once my 
game is out.  And, if you don't have time to address that issue, let me know 
and I will try to contribute.

Kind regards,
Mathieu

Original issue reported on code.google.com by mat.fren...@gmail.com on 13 Jul 2012 at 9:05

GoogleCodeExporter commented 9 years ago
Hello Mathieu :)

Sorry for the bug. Will check it tomorrow: should be a quick fix.

Original comment by daniele....@gmail.com on 13 Jul 2012 at 9:15

GoogleCodeExporter commented 9 years ago
Hello again.

I just built a test project, and saw that the second non-delayed tween is 
actually overwritten when the first delayed tween starts (since it starts after 
the second tween), and this is the intended behaviour.

Logically speaking, while a tween is being delayed, it's not considered a 
tween. It's like saying "I want this to exist, but only after a given time". As 
such, the tween "exists" only when it starts, and it's correct that at that 
moment it should overwrite any similar running tween. With this I mean that 
delays are not really tweens.

So, in short words, I do believe that this is how they should behave. This way, 
you can create a series of tweens for the same property in the same method 
call, delay each of them so they won't overwrite, and play them.

Let me know more about why you think this behaviour is wrong, and I'll 
eventually think about adding a way to choose an alternate behaviour for the 
OverwriteManager (while still keeping the current one as default) :)

Original comment by daniele....@gmail.com on 14 Jul 2012 at 12:10

GoogleCodeExporter commented 9 years ago

Original comment by daniele....@gmail.com on 24 Jul 2012 at 9:33

GoogleCodeExporter commented 9 years ago
Since I got no more information on this, I'm closing the issue

Original comment by daniele....@gmail.com on 23 Feb 2013 at 12:21