Is there a tile to create a sibling of an obj? Given that a search on 'sibling' only turned up 1 tile, I'm guessing not. But it'd sure be nice! :)
--Randy
Hi, Randy,
Yes, it's called "copy", and it can be found in the "miscellaneous" category.
When you execute "Car's copy", you'll end up with a sibling of Car.
However, if you don't *place* it somewhere, you won't see it. The standard idiom for placing an object somewhere via script is to tell the *container* in which you place it to "include" it.
Look in the "collections" category of the container's viewer for various ways to "include" an object
Here's a typical usage pattern:
Cheers,
-- Scott
At 10:18 AM -0500 8/5/05, Randy Heiland wrote:
Is there a tile to create a sibling of an obj? Given that a search on 'sibling' only turned up 1 tile, I'm guessing not. But it'd sure be nice! :)
--Randy
Scott,
Extending this further, I'd then like to be able to place the newly created sibling at a specified location in the container/playfield. Since it's so close to Squeakfest, you can wait and educate me in person if you want. I did see there was also an "include at cursor" tile on the Playfield which I'm assuming would be used to do this placement, but not sure how I might use it successfully.
--Randy
_____
From: Scott Wallace [mailto:scott.wallace@squeakland.org] Sent: Friday, August 05, 2005 4:05 PM To: Randy Heiland Cc: 'squeakland.org mailing list' Subject: Re: [Squeakland] make sibling from script
Hi, Randy,
Yes, it's called "copy", and it can be found in the "miscellaneous" category.
When you execute "Car's copy", you'll end up with a sibling of Car.
However, if you don't *place* it somewhere, you won't see it. The standard idiom for placing an object somewhere via script is to tell the *container* in which you place it to "include" it.
Look in the "collections" category of the container's viewer for various ways to "include" an object
Here's a typical usage pattern:
Cheers,
-- Scott
At 10:18 AM -0500 8/5/05, Randy Heiland wrote:
Is there a tile to create a sibling of an obj? Given that a search on 'sibling' only turned up 1 tile, I'm guessing not. But it'd sure be nice! :)
--Randy
Hi, Randy,
If you are placing your new object in a "Holder-like" container, then whatever x and y coordinates you give the object are irrelevant, because Holders lay out their contents left-to right and top-to-bottom, sort of like words get laid out in lines on a page in typesetting.
If, on the other hand, you are placing your new object in a container that is behaving more "Playfield-like," then objects will stay exactly where you place them, and in such cases, you can simply directly set the desired x and y coordinates in the script that creates the new object you are adding.
A common usage pattern is to place the newborn in a player-valued variable so that you can then talk to it in your script. In the following example, a new sibling of amoeba is created and added to the world at an offset of (50, 100) from the original amoeba:
amoeba's betterHalf <- amoeba's copy. amoeba's betterHalf's x increase by 50. amoeba's betterHalf's y increase by 100. world include-at-end amoeba's betterHalf
At the Wednesday "intermediate etoys" session at Squeakfest this week, let's plan on working through a complete example of this sort -- that will be very instructive!
Cheers,
-- Scott
At 2:20 PM -0500 8/8/05, Randy Heiland wrote:
Scott, Extending this further, I'd then like to be able to place the newly created sibling at a specified location in the container/playfield. Since it's so close to Squeakfest, you can wait and educate me in person if you want. I did see there was also an "include at cursor" tile on the Playfield which I'm assuming would be used to do this placement, but not sure how I might use it successfully.
--Randy
From: Scott Wallace [mailto:scott.wallace@squeakland.org] Sent: Friday, August 05, 2005 4:05 PM To: Randy Heiland Cc: 'squeakland.org mailing list' Subject: Re: [Squeakland] make sibling from script
Hi, Randy,
Yes, it's called "copy", and it can be found in the "miscellaneous" category.
When you execute "Car's copy", you'll end up with a sibling of Car.
However, if you don't *place* it somewhere, you won't see it. The standard idiom for placing an object somewhere via script is to tell the *container* in which you place it to "include" it.
Look in the "collections" category of the container's viewer for various ways to "include" an object
Here's a typical usage pattern:
Cheers,
-- Scott
At 10:18 AM -0500 8/5/05, Randy Heiland wrote:
Is there a tile to create a sibling of an obj? Given that a search on 'sibling' only turned up 1 tile, I'm guessing not. But it'd sure be nice! :)
--Randy
Hi Randy --
Just put the copy in a variable, and then you can tell it what location to have ....
Cheers,
Alan
At 12:20 PM 8/8/2005, Randy Heiland wrote:
Scott,
Extending this further, I'd then like to be able to place the newly created sibling at a specified location in the container/playfield. Since it's so close to Squeakfest, you can wait and educate me in person if you want. I did see there was also an "include at cursor" tile on the Playfield which I'm assuming would be used to do this placement, but not sure how I might use it successfully.
--Randy
From: Scott Wallace [mailto:scott.wallace@squeakland.org] Sent: Friday, August 05, 2005 4:05 PM To: Randy Heiland Cc: 'squeakland.org mailing list' Subject: Re: [Squeakland] make sibling from script
Hi, Randy,
Yes, it's called "copy", and it can be found in the "miscellaneous" category.
When you execute "Car's copy", you'll end up with a sibling of Car.
However, if you don't *place* it somewhere, you won't see it. The standard idiom for placing an object somewhere via script is to tell the *container* in which you place it to "include" it.
Look in the "collections" category of the container's viewer for various ways to "include" an object
Here's a typical usage pattern:
2365be5.jpg
Cheers,
-- Scott
At 10:18 AM -0500 8/5/05, Randy Heiland wrote:
Is there a tile to create a sibling of an obj? Given that a search on 'sibling' only turned up 1 tile, I'm guessing not. But it'd sure be nice! :) --Randy
Squeakland mailing list Squeakland@squeakland.org http://squeakland.org/mailman/listinfo/squeakland
squeakland@lists.squeakfoundation.org