[etoys-dev] Future Release feature: A slide/glide tile

Bert Freudenberg bert at freudenbergs.de
Mon Feb 27 13:10:27 EST 2012

On 27.02.2012, at 05:58, Steve Thomas wrote:

> So I created SQ-1021 where I am looking for something similar to Scratch's <glide [n} secs to x:[ ] y: [ ]> tile, but more generic.
> A scripting tile that changed any numeric value incrementally over a period of time. Something like: <glide:  <numeric Attribute> to: [new value] in [] secs.
> Use Cases:
> Change the width/length of a playfield, to create a Mouse Over drop down type menu
> Glide to position X,Y in z seconds
> Changing alpha to create fade in/fade out effects
> Changing other color values (just for fun, and imagine if I could address each pixel in a graphic this way :D, okay Karl already imagined and implemented that the color reader/writer way, thanks Karl)
> I tried doing this in the existing Etoys and it is possible, the problems (at least for me) are:
> You have to re-create the same basic script each time for each attribute and player, first time cool, after that, boring and tedious (well that's another enhancement request)
> You can't pass an attribute in as a parameter to a script (this I think would solve the problem, and if I could pass more than one variable to a script, I could pass:
> player
> numeric attribute
> time
> new value.
> Cheers,
> Stephen

The execution models of Etoys and Scratch are fundamentally different. In Etoys, all tiles in a script are executed in the same time step. You cannot have an individual tile take time. That's why there is no "wait" tile. That's why you can't do animation with the "repeat" tile. Etc.

Unless/until someone adds that capability, you can't have a slide tile either. (The single-stepping mechanism might be a step (pun intended) in that direction)

There are some other improvement wishes in what you describe above though, and those might be easier, and possibly more powerful too. One is to have more than one argument to a user script. Another is to be able to easily copy behavior from one object to another. You might want to create separate tickets for these.

- Bert -

-------------- n?chster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://lists.squeakland.org/pipermail/etoys-dev/attachments/20120227/001e6ce3/attachment.html>

More information about the etoys-dev mailing list