Hi Steve,

I don't think this is a bug. If I understood correctly, the name used to reference an object in a script is not supposed to be the same as the one displayed on the screen but a unique name that identifies only this object in the World. An object's external name can change at any time but the references to this object must remain consistent in all scripts.

I'm not sure what you're trying to do, but you can get an object's displayed name by sending #externalName to the object. See the attached project for an example.

Cheers,
Richo


On Tue, Mar 1, 2011 at 2:51 AM, Steve Thomas <sthomas1@gosargon.com> wrote:
See: http://tracker.squeakland.org/browse/SQ-903

If you change the name of an object, the name used to reference it in a script (via show code textually) does not change.
So how do I reference the name of the player (as displayed on the screen) in a script?

script4
| t1 t2 p1 selector |
p1 := Text3.
t1 := Command1 getCharacters.
t2 := 5.
selector := (t1 , ':') asSymbol.
p1 perform: selector with: t2

In this above example I had a Text object where the screen showed its name (on page 2) as Text3, but when I used its characters tile in another Text object's script, it used the name Text4 in the text version of that script?

Stephen

_______________________________________________
etoys-dev mailing list
etoys-dev@squeakland.org
http://lists.squeakland.org/mailman/listinfo/etoys-dev