<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On 29.03.2011, at 12:49, Steve Thomas wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>For example, I want to some buttons to transform a costume or set an objects color &nbsp;and I want to click on the button and then be able to click on an object (or set of objects) and run a particular script on the objects I click on.</div>
<div><br></div><div>I could program each object to perform a particular action on Mouse Down, but I would rather write the script once and then have that script execute on the object I click. &nbsp;I was able to achieve this by using a Player variable watcher and then having a constantly running script that tests if the myPlayer != dot and if so, run the script on the Player variable value, then reset to dot. But besides looking ugly (the dot always shows) I can only run on one object at a time then have to click on the Player variable's watcher.</div>
<div><br></div><div>Thanks,</div><div>Stephen</div></blockquote><br></div><div>Well, Etoys is really object-centric. So adding the mouseDown script to each object is the Right Thing to do. But if you want to "centralize" what actually happens when clicked, you could call a "dispatching" script and pass the object itself as argument. Give that script a parameter of type "Player" so it can execute to the current command.</div><div><br></div><div>I'm attaching an example project. To make a new command, just duplicate an existing one and change its "actOn:" script.</div><br><div>
<span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Lucida Grande; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><div style="font-family: Helvetica; "><span class="Apple-style-span" style="font-family: Helvetica; ">- Bert -</span></div><br class="Apple-interchange-newline"></span>
</div>
</body></html>