Yoshiki,
Thanks for your suggestions and kind comments.
At the end of #19, I actually say something like, "I've run into a roadblock, something I don't know, which is very common in programming. The thing to do at this point is send an email asking for help on the squeakland mailing list."
Instead of doing this, though, I go on to show a short-term workaround .... the "right now" answer versus the "right" answer. Part of my point throughout is to show the real experience of programming, which definitely involves roadblocks and workarounds. I'm trying to convey a sense for what it's really like being a programmer using Etoys.
I might be missing what you're explaining around 7 minutes, but you *can* put the variable "tot11's turnHolder into the place of any player-type variable (such as the left hand side of "cursor increase by 1".
What I couldn't figure out in #19 was "tot11's totHolder's cursor increase by 1" I knew how, but "cursor" simply didn't appear on the list, I'm guessing because only Player stuff shows there.
Around 4:30 minutes into the movie, you say something like: "... unless there some good reasons..., you should always use the commands for the same object." Is that because you are using siblings and have been bitten by the issue? (I think so.)
Hmm... I think my point there was to train people to default to using the "self" receiver for each message .... if it's tot11's script, use tot11 as the receiver of everything unless you have a good reason not to, such as tot11 telling some other object what to do. There are several commands that really don't require the exact right receiver, such as sibling sends and "clear pen trails", etc. I'm just making the point that people should train themselves to stay consistent.
I have no idea what causes the magnification issue. So strange. You have siblings and copies, right? If so, yes, that could be hard. The last issue you have seems to be related to it.
Yes, the visual stuff in the holder were copies and the active players are siblings. If the magnification is a by-product of siblings/dupes co-existing, it's a good thing to know.
Perhaps, I'd add a variable to these guys that holds a number, and each of them compares the number with page5's timeTicks to figure out what to do. In this way, the script may be shorter.
Yeah, the stuff in the timeline script in the page could be farmed out to the objects on the page. I choose the massive if-statement approach to make the sequencing clearer to newcomers.
I might move to a scratch-like event sending approach in the future .... marmie sends "settleDownClass" message to the tots and the tots respond to the message, rather than have it all be time driven. Any hints on how I'd do asynchronous multi-recipient event passing like this? (on "settledDownClass" do ...)
One other request ... a "wait" tile ... with seconds. Could go in "basic".
On 15/11/2007, Timothy Falconer timothy@immuexa.com wrote:
One other request ... a "wait" tile ... with seconds. Could go in "basic".
The screenshot shows how I'm doing that. First drag out a script, then 'show code textually', then write Smalltalk and hit Cmd-s.
World doOneCycle forces Morphic to update and then it won't happen again during the delay period. I don't know how to do this differently - fortunately this is just what I've needed. :-)
The problem with this kind of "wait", and indeed the reason why such a "wait" tile is not offered in the Viewer already, is that it paralyzes the rest of Squeak, including the running of all other scripts, for the duration of the "wait". Thus, it's usually not acceptable within a multi-player simulation.
On Nov 15, 2007, at 8:17 AM, Luke Gorrie wrote:
On 15/11/2007, Timothy Falconer timothy@immuexa.com wrote:
One other request ... a "wait" tile ... with seconds. Could go in "basic".
The screenshot shows how I'm doing that. First drag out a script, then 'show code textually', then write Smalltalk and hit Cmd-s.
World doOneCycle forces Morphic to update and then it won't happen again during the delay period. I don't know how to do this differently
- fortunately this is just what I've needed. :-)
squeakland@lists.squeakfoundation.org