Re: Animation freeze
Recently, erik hansen wrote: When moving many individual objects, I've found it's effective to give the objects their own intelligence: give each object it's own script (based on a master script) that allows it to determine where it is at all times and how it should behave; don't try to control many objects from a central script. is there an example anywhere? sounds like neural networking. or artificial life. It can be. Here's a simple example that demonstrates the intelligence principle -- a stack that brings five graphic objects to life and kills them with the push of a button. 1) Create a new stack 2) Create two buttons: Master and Give Life; position these at the bottom of the card 3) Create 5 small oval draw graphics and position them at various locations on the card 4) Place this script in button Master: on mouseUp # THIS ALLOWS EASY EDITING OF THE MASTER SCRIPT FOR ALL SPRITE OBJECTS if short name of me is master then edit script of me end mouseUp on activateMe set the uAllowLife of me to true set the uRate of me to 3,3 set the uLimits of me to rect of this cd moveMe end activateMe on moveMe if not the uAllowLife of me then exit moveMe # MANAGE HORIZONTAL MOVEMENT if item 1 of the uRate of me 0 then if right of me item 3 of the uLimits of me then set the uRate of me to (-3, item 2 of the uRate of me) end if else if left of me item 1 of the uLimits of me then \ set the uRate of me to 3, item 2 of the uRate of me end if # MANAGE VERTICAL MOVEMENT if item 2 of the uRate of me 0 then if bottom of me item 4 of the uLimits of me then set the uRate of me to (item 1 of the uRate of me ,-3) end if else if top of me item 2 of the uLimits of me then \ set the uRate of me to (item 1 of the uRate of me ,3) end if put the loc of me into tLoc add item 1 of the uRate of me to item 1 of tLoc add item 2 of the uRate of me to item 2 of tLoc set loc of me to tLoc send moveMe to me in 10 milliseconds end moveMe on killMe set the uAllowLife of me to false end killMe 5) Place this script in button Give Life: on mouseUp set the uLife of me to not the uLife of me if the uLife of me then repeat with x = 1 to 5 set script of grc x to script of btn master send activateMe to grc x in (x*200) milliseconds end repeat else repeat with x = 1 to 5 send killMe to grc x end repeat end if end mouseUp - Click the Give Life button. You should see the ball sprites come to life one at a time and bounce. When each ball senses the edge of the screen it will change direction. Click the Give Life button again to kill all movement. By adding random/changing values to the move rates and timing, you can create some intricate/organic movement that is handled individually by each sprite being self aware. Regards, Scott Rossi Creative Director Tactile Media, Multimedia Design Email: [EMAIL PROTECTED] Web: www.tactilemedia.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Canceling a libURLftpUpload
After starting a file transfer with libURLftpUpload in rev 1.1.1, how do I abort the transfer? I tried using unload, as that's what the docs seemed to suggest to me, but watching my network traffic I could see that the transfer continued even after the Unload took place. In simpilest form, I started the transfer like this: libURLftpUpload FileData,gFtpUrl,Done in my cancel Button I used the form: unload url gFtpUrl gFtpUrl is a global, and i checked the value in the Unload handler to be certain that it was correct, so I'm guessing that Unload is not the proper command, or I need to do something else in addition to unload. TIA DB __ Do you Yahoo!? Yahoo! Web Hosting - establish your business online http://webhosting.yahoo.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: iTunes-type alternate colored lines in scrolling list field
Hi, thanks to Yves Coppe for the very interesting off list discussion on this subject. It helped me getting rid of the last cheesyness of my script. Now it works quite perfect for me on 1.1.1 Merci Yves!!! :-) I´ll update my report here. No changes in the card script: - global loop,correct,twoLines,skipline on opencard put 1 into loop put the effective textHeight of fld theField*10 into skipline put the effective textHeight of fld theField*2 into twoLines put skipline into correct set the vscroll of fld theField to 0 set the vscroll of grp theImage to twolines end opencard -- Change the script of the field to the following: -- global loop,correct,skipline,twolines global loop,correct,skipline,twolines on scrollbardrag if correct-the vscroll of me=0 then repeat until correct-the vscroll of me=0 put loop+1 into loop put loop*skipline into correct end repeat end if if the vscroll of me+skipline-correct0 then repeat until the vscroll of me+skipline-correct0 put loop-1 into loop put loop*skipline into correct end repeat end if put the vscroll of me+skipline-correct+twoLines into groupScroll set the vscroll of grp theImage to groupScroll end scrollbardrag --- Now it is possible to set the vscroll of the field via script and the scroll of the group is adapted automaticly. I would suggest changing the globals to custom properties, if you need more than one field with alternating lines. If you want to calculate how many bars your image must have to display correctly, you need at last as many bars that are needed to fill the height of your field+12 bars. I would add another 2 bars to the image, just to be sure. :-) Regards, Malte ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
TCP/IP number and Port Check
Has anyone already made a script which checks a field if a user has entered a correct TCP/IP address ? Also does anyone know from where to where portnumbers go ? Cheers Rolf ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Searching the archives with Google
In the header of every Digest: and search the archives for this list using this link: http://www.google.com/advanced_search?q=site:lists.runrev.com But Google only returns messages until an uncertain date. Most recent posting never appear. How can this be fixed? Thanks in advance. Alejandro = Useful sites: http://www.sonsothunder.com/devres/metacard/tips/ and /revolution/tips/ http://lists.runrev.com/pipermail/metacard/ and /use-revolution/ http://wiki.macitworks.com/revdocs http://www.google.com/advanced_search?q=site:lists.runrev.com __ Do you Yahoo!? Yahoo! Web Hosting - establish your business online http://webhosting.yahoo.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Can't add file extension in Windows
Howard Bornstein writes: [snip] Apparently, under XP, even if you explicitly add .jpg to the filename in the save dialog, it deletes it from the file. I'm a Mac guy so I'm not up on Windows extensions, but does XP remove (at least from the user's view) file extensions, even though it knows internally what the file type is? === Windoze management, in their infinite Wisdom regarding what users SHOULD see by default , decided that showing file extensions is a bad idea in general. Therefore, the default mode is for extensions (at least for known file types) to be turned off. The extensions are NOT DELETED; they are simply not displayed. Also, the default display setting for the file information for System and Hidden files is to not be displayed. So, be aware that if you think you are hiding a file by setting its attribute to hidden, you don't hide it from everyone. miscdas ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
AW: TCP/IP number and Port Check
--- Ursprüngliche Nachricht --- Datum: 17.03.2003 13:22 Von: [EMAIL PROTECTED] An: Use Revolution [EMAIL PROTECTED] Betreff: TCP/IP number and Port Check Hi Rolf, ... Also does anyone know from where to where portnumbers go ? Portnumber range is up to 65535. If you have a linux box, you can see the services behind these numbers in the /etc/services/ file, IIRC. Cheers Rolf Gruß, Claus. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Searching the archives with Google
But Google only returns messages until an uncertain date. Most recent posting never appear. How can this be fixed? Thanks in advance. Alejandro Hi Alejandro, I guess this is due to the googlebot spidering the archives not often enough. I guess a scripted search function would be nice. If I recall it right UDI had something like this. Regards, Malte ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
T-shirts url
Ahem. That should have been http://www.cafeshops.com/runrev Apologies, Heather -- Heather Williams [EMAIL PROTECTED] http://www.runrev.com/ Runtime Revolution Ltd. Tel: +44 (0) 131 7184333 Fax: +44 (0)1639 830707 Revolution: Software at the Speed of Thought ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Can't add file extension in Windows
Indeed, miscdas is right on. To enable the viewing of extensions on WinXP, go to any 'finder'type window, click the tools - folder options then under 'Files and Folders' - 'Hidden Files and Folders' check the 'Show hidden files and folders' radio button. -Chipp -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of [EMAIL PROTECTED] Sent: Monday, March 17, 2003 7:04 AM To: [EMAIL PROTECTED] Subject: Re: Can't add file extension in Windows Howard Bornstein writes: [snip] Apparently, under XP, even if you explicitly add .jpg to the filename in the save dialog, it deletes it from the file. I'm a Mac guy so I'm not up on Windows extensions, but does XP remove (at least from the user's view) file extensions, even though it knows internally what the file type is? === Windoze management, in their infinite Wisdom regarding what users SHOULD see by default , decided that showing file extensions is a bad idea in general. Therefore, the default mode is for extensions (at least for known file types) to be turned off. The extensions are NOT DELETED; they are simply not displayed. Also, the default display setting for the file information for System and Hidden files is to not be displayed. So, be aware that if you think you are hiding a file by setting its attribute to hidden, you don't hide it from everyone. miscdas ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Canceling a libURLftpUpload
At 11:15 am -0800 14/3/03, DropBox ForSpam wrote: After starting a file transfer with libURLftpUpload in rev 1.1.1, how do I abort the transfer? I tried using unload, as that's what the docs seemed to suggest to me, but watching my network traffic I could see that the transfer continued even after the Unload took place. In simpilest form, I started the transfer like this: libURLftpUpload FileData,gFtpUrl,Done in my cancel Button I used the form: unload url gFtpUrl gFtpUrl is a global, and i checked the value in the Unload handler to be certain that it was correct, so I'm guessing that Unload is not the proper command, or I need to do something else in addition to unload. TIA DB You're doing the right thing. However, you should probably try with the latest version of libUrl (1.0.9). There was a problem with the unload feature in an earlier version (can't remember which one offhand) which could prevent it working in certain circumstances. Let me know if you still have problems with the latest version. You can get the updater here: http://www.runrev.com/revolution/developers/interimreleases/liburl/releases.shtml BTW, this version of libUrl is included with the current pre-beta of Rev 2.0. Cheers Dave ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Replacing group images (was Standalone UI's, data stacks, imagefiles)
** Date: Mon, 17 Mar 2003 08:11:24 -0500 From: John J. Theobald [EMAIL PROTECTED] Subject: Re: Standalone UI's, data stacks, image files You can put an image into an image as long as they are the same geometry (their formatted width and height are the same). -- Yes, I finally got it to import an image as Iwanted (see script). -- As for the background group, that is a little beyond me, as I don't use them. I use groups, but not with background behavior. If I were doing this with an ordinary group, I would just replace the image object in my group as above. I don't see why this would not work with bg behavior turned on, but perhaps others have more insight. -- Me either, but even without bg bahavior on, I'm still unable to replace images under script control. Here's the script: on mouseUp set the defaultFolder to Doggies answer file empty with filter JPEGs,*.jpg lock screen import paint from file it set itemDel to / put image (last item of it) into image myImage delete image (last item of it) start editing group myImageGroup create image myImage in group myImageGroup stop editing group unlock screen send choose browse tool to me in 20 milliseconds end mouseUp when it executes, I end up with an empty background group window. When I select the stack window in the Window menu (which is already checked BTW), it goes away and I see the image in the stack, but it's not the group, its the image. The group (myImageGroup) is there, according to the Application Overview, but there's nothing in it. Why doesn't the [start editing] command place the image into the group? TIA, Ken N. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Replacing group images (was Standalone UI's, data stacks, image files)
Ken Norris wrote: ** Date: Mon, 17 Mar 2003 08:11:24 -0500 From: John J. Theobald [EMAIL PROTECTED] Subject: Re: Standalone UI's, data stacks, image files You can put an image into an image as long as they are the same geometry (their formatted width and height are the same). -- Yes, I finally got it to import an image as Iwanted (see script). -- As for the background group, that is a little beyond me, as I don't use them. I use groups, but not with background behavior. If I were doing this with an ordinary group, I would just replace the image object in my group as above. I don't see why this would not work with bg behavior turned on, but perhaps others have more insight. -- Me either, but even without bg bahavior on, I'm still unable to replace images under script control. Here's the script: on mouseUp set the defaultFolder to Doggies answer file empty with filter JPEGs,*.jpg lock screen import paint from file it set itemDel to / put image (last item of it) into image myImage delete image (last item of it) start editing group myImageGroup create image myImage in group myImageGroup stop editing group unlock screen send choose browse tool to me in 20 milliseconds end mouseUp when it executes, I end up with an empty background group window. When I select the stack window in the Window menu (which is already checked BTW), it goes away and I see the image in the stack, but it's not the group, its the image. The group (myImageGroup) is there, according to the Application Overview, but there's nothing in it. Why doesn't the [start editing] command place the image into the group? TIA, Ken N. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution Hmmm ... if I am following this correctly, you probably have 2 images named myimage, one from the put and one from the create, although the create one probably has no content. Try doing the put AFTER the create (actually after the stop editing group). This should put the it image into the newly created myImage in myImageGroup John J. Theobald ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Unwanted tool switch
** Date: Mon, 17 Mar 2003 07:37:24 -0800 From: Jim Hurley [EMAIL PROTECTED] Subject: Re: Unwanted tool switch Ken, If you remove the line import paint from file Brandy1.jpg, do you still wind up with the pointer tool? As I said, the only time this happens to me is when you create something, or *effectively* create something using import paint... -- OK, but of course there's no practical point in removing a necessary line of code. I suppose it's just a detail ('nuance' as Jeanne put it) to know. I guess the ticket is to know when Rev does something that it takes time to complete 'behind the scenes', probably only comes with experience, as I haven't run across anything that addresses this specific issue. -- Or did you mean that it hasn't been fixed in the 2.0 pre-beta? That would be surprising! -- No. I realized what it looked like when I read it back online. Too late by then, sorry. Thanks, Ken N. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Rev math
I wrote: My question is, can we trust about that number of digits for all types of calculations? Dar Scott wrote: Yes. Use 14. (49 bits floating point) Use less if you need exact equality. Thanks, Dar. So, does that mean we can take numbers of any length, go ahead and perform the operation, and then trust the result to 14 digits, or do we first have to first preprocess the operands to a certain number of digits according to the type of operation? Thanks, Curry ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: [SC] Re: Supercard vs. Rev
As for the SC mailing list, posts that mention competing products are specifically prohibited by the list owner (who has censored my posts to that list on more than one occasion) That's certainly not my idea of a public discussion group. Sounds more like a strictly moderated propaganda vehicle to me. And if that comment represents the first instance of SuperCard bashing on this list I want the credit. Cheers... Bill Lynn Simtech Publications www.hsj.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: ext_sayString - done handling
I'm sure this is an easy one for many, the problem being whether or not there is a with message or wait until the speaking is over technique for handling speaking one thing after another using the external. I have a repeat with the general design: repeat until stopRunning=true repeat for each line thisMsg in serverMessages send updateMessages to this stack ext_sayString thisMsg end repeat end repeat Which runs out of control. One possible problem is the repeat until stopRunning = true; I don't see where stopRunning is set at all, and even if it was, the second repeat line should do it (meaning you don't need the first repeat unless you're repeating all the phrases multiple times). The only thing I don't know is whether the external is blocking (that is, it doesn't go on to the next line of script until it has finished speaking); my guess is that it isn't which is probably the reason for it running out of control. It hits the ext_sayString command, executes it, and then as it is speaking it moves on to the next repeat. You should check to see if there is some return value from ext_saystring you can use to determine if you need to keep going or not. Ken Ray Sons of Thunder Software Email: [EMAIL PROTECTED] Web Site: http://www.sonsothunder.com/ ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Rev math
Yes. Use 14. (49 bits floating point) Use less if you need exact equality. Thanks, Dar. So, does that mean we can take numbers of any length, go ahead and perform the operation, and then trust the result to 14 digits, Well, the usual roundoff error analysis of floating point arithmetic still applies. You can always come up with computations that completely lose your accuracy. For instance, suppose that a=0.12345678901234 is the result of a computation and is accurate to these 14 digits, and b=0.12345678901233 is likewise accurate to 14 digits, then a-b is 0.10 times 10-to-the-minus-fourteen, but it's only accurate to one digit. or do we first have to first preprocess the operands to a certain number of digits according to the type of operation? No, you must avoid operations that are inherently inaccurate. For instance, in the formula for the solutions of a quadratic equation only one of the plus/minus possibilities is guaranteed to be accurate. For a stable computation of the second you need to use a different formula completely. Numerical accuracy is not trivial. Most people don't see it until they take a (graduate?) course in numerical mathematics or computational computer science. -- Victor Eijkhout [EMAIL PROTECTED] tel: 865 974 9308 (W), 865 673 6998 (H), 865 974 8296 (F) http://www.cs.utk.edu/~eijkhout/ ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: ext_sayString - done handling
you're repeating all the phrases multiple times). The only thing I don't know is whether the external is blocking (that is, it doesn't go on to the next line of script until it has finished speaking); my guess is that it isn't which is probably the reason for it running out of control. It hits the ext_sayString command, executes it, and then as Yes, it is not blocking. it is speaking it moves on to the next repeat. You should check to see if there is some return value from ext_saystring you can use to determine if you need to keep going or not. It only returns a false if there is a speech manager problem, nothing actually useful. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: ext_sayString - done handling
you're repeating all the phrases multiple times). The only thing I don't know is whether the external is blocking (that is, it doesn't go on to the next line of script until it has finished speaking); my guess is that it isn't which is probably the reason for it running out of control. It hits the ext_sayString command, executes it, and then as Yes, it is not blocking. That's the problem, then. Is there any possibility you can concatenate the speech strings and just execute ext_sayString once? Ken Ray Sons of Thunder Software Email: [EMAIL PROTECTED] Web Site: http://www.sonsothunder.com/ ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: If this is a feature, it's a nasty one.
Hi Victor In other words, I consider this a bug. I think you woud be the only one on mouseup send t 1 to me end mouseup on t a set the a of me to bar end t Just think if you couldn't do this then you wouldn't be able to do something like: repeat with X=1 to 4 put MyDataX into tGet put the tGet of me into tData -- manipulate tData set the tGet of me to tData end repeat Yes it's a feature and it's a very powerful one Guess what property gets set on mouseup? And what's worse, I don't see how I can hack my way around it, because set the a of me is illegal. Ok, take a different name for the parameter, but I want to use logical sounding names. There is a standard that many people on this list use where: - parameter names are prefixed with p - custom properties are prefixed with c or u - local variables in the script scope are prefixed with l - temporary variables (handler scope) are prefixed with t - global variables are prefixed with g - a new one that I don't use is arrays are prefixed with a Regards Monte ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
ext_sayString
You should check to see if there is some return value from ext_saystring you can use to determine if you need to keep going or not. check out the new revIsSpeaking function in 2.0 Tuviah Snyder [EMAIL PROTECTED] http://www.runrev.com/ Runtime Revolution Limited - The Solution for Software Development ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
trapping quit
I'm not getting something. I want to trap the quit message and do some stuff before my program quits. I finally settled on trying the shutdownRequest message. When I handle it and pass it in the development environment, it works as expected: it does the stuff I want it to do then quits Revolution. But when I compile the stack as a standalone, the shutdownRequest message gets executed, but the quit never happens. I even tried adding an explicit quit call to the shutdownRequest handler. The resultant standalone still will not quit. I read the dictionary entries for both shutdown and shutdownRequest. The latter seemed to be the one I wanted, but as I said, it's not working. The descriptions of both are a little sketchy, so maybe I'm not understanding something. Can someone shed some light on how these messages work and what is the best way to intercept then pass on a quit call. Jeanne? Devin Devin Asay Humanities Technology and Research Support Center Brigham Young University ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: use-revolution digest, Vol 1 #1205 - 6 msgs
In a message dated 3/17/03 12:40:35 PM, [EMAIL PROTECTED] writes: Good Question -Can sounds for hypercard be used in Rev.? Yes, but they'd need to be converted to WAV, au, or AIF format first. -- Jacqueline Landman Gay | [EMAIL PROTECTED] HyperActive Software | http://www.hyperactivesw.com How does one do the conversion? jack
Re: T-Shirts now available
i got this: Not Found The requested URL /runrev was not found on this server. Apache/1.3.9 Server at www.cafeshop.com Port 80 = [EMAIL PROTECTED]http://www.erikhansen.org __ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
OS X answer file
Hi All Has anyone else noticed that OS X.2 is associating files with apps correctly but not giving them the type codes when importing from PC That means that in the finder the file looks right but when you do answer file or ask file they are disabled. This is very frustrating for the user. Is this something that apple should be fixing or is it part of phasing out the resource fork so Rev needs to handle the situation? Regards Monte ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Animation freeze
--- Scott Rossi [EMAIL PROTECTED] wrote: is there an example anywhere? sounds like neural networking. or artificial life. It can be. Here's a simple example that demonstrates the intelligence principle -- a stack that brings five graphic objects to life and kills them with the push of a button. 1) Create a new stack 2) Create two buttons: Master and Give Life; position these at the bottom of the card 3) Create 5 small oval draw graphics and position them at various locations on the card 4) Place this script in button Master: on mouseUp # THIS ALLOWS EASY EDITING OF THE MASTER SCRIPT FOR ALL SPRITE OBJECTS if short name of me is master then edit script of me end mouseUp on activateMe set the uAllowLife of me to true set the uRate of me to 3,3 set the uLimits of me to rect of this cd moveMe end activateMe on moveMe if not the uAllowLife of me then exit moveMe # MANAGE HORIZONTAL MOVEMENT if item 1 of the uRate of me 0 then if right of me item 3 of the uLimits of me then set the uRate of me to (-3, item 2 of the uRate of me) end if else if left of me item 1 of the uLimits of me then \ set the uRate of me to 3, item 2 of the uRate of me end if # MANAGE VERTICAL MOVEMENT if item 2 of the uRate of me 0 then if bottom of me item 4 of the uLimits of me then set the uRate of me to (item 1 of the uRate of me ,-3) end if else if top of me item 2 of the uLimits of me then \ set the uRate of me to (item 1 of the uRate of me ,3) end if put the loc of me into tLoc add item 1 of the uRate of me to item 1 of tLoc add item 2 of the uRate of me to item 2 of tLoc set loc of me to tLoc send moveMe to me in 10 milliseconds end moveMe on killMe set the uAllowLife of me to false end killMe 5) Place this script in button Give Life: on mouseUp set the uLife of me to not the uLife of me if the uLife of me then repeat with x = 1 to 5 set script of grc x to script of btn master send activateMe to grc x in (x*200) milliseconds end repeat else repeat with x = 1 to 5 send killMe to grc x end repeat end if end mouseUp - Click the Give Life button. You should see the ball sprites come to life one at a time and bounce. When each ball senses the edge of the screen it will change direction. Click the Give Life button again to kill all movement. By adding random/changing values to the move rates and timing, you can create some intricate/organic movement that is handled individually by each sprite being self aware. thanks, this will take time to ponder. there must be a tie in with Turtle Graphics. = [EMAIL PROTECTED]http://www.erikhansen.org __ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Shakobox update
--- J. Landman Gay [EMAIL PROTECTED] wrote: A revised version of Shakobox, the HyperCard-style musical notation stack, has been uploaded to: http://www.hyperactivesw.com/shakobox.html This version works around a bug in the MetaCard engine that caused installation of the PlayCommand Agent application to fail on machines running Mac OS 9. If you plan to run Shakobox only on an OS X machine then you don't need this update. However, if you want to distribute the PlayCommand Agent app in your own stacks, the revised scripts should be used for your installations and you should download this update. There are no other changes to the stack, outside of working around the installation problem. nice job. = [EMAIL PROTECTED]http://www.erikhansen.org __ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: If this is a feature, it's a nasty one.
--- Monte Goulding [EMAIL PROTECTED] wrote: There is a standard that many people on this list use where: - parameter names are prefixed with p - custom properties are prefixed with c or u - local variables in the script scope are prefixed with l - temporary variables (handler scope) are prefixed with t - global variables are prefixed with g - a new one that I don't use is arrays are prefixed with a thanks for clarifying that. = [EMAIL PROTECTED]http://www.erikhansen.org __ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: If this is a feature, it's a nasty one.
Yes it's a feature and it's a very powerful one Ok, I'll accept that. But the man page is wrong: it says (and I still don't know how to cut/paste from the documentation; is that possible?) The iproperty/i is a built-in property name or a custom property name. That should be is a property name, or a variable or parameter having a property name as value. Agree? Or does this follow from some statement in the manual that I haven't found yet? -- Victor Eijkhout [EMAIL PROTECTED] tel: 865 974 9308 (W), 865 673 6998 (H), 865 974 8296 (F) http://www.cs.utk.edu/~eijkhout/ ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: If this is a feature, it's a nasty one.
But the man page is wrong: it says (and I still don't know how to cut/paste from the documentation; is that possible?) The iproperty/i is a built-in property name or a custom property name. That should be is a property name, or a variable or parameter having a property name as value. Agree? I agree that some parts of coding in Transcript take a little getting used to. I'm not sure it adds to the clarity of the user guide though. It seems more logical to always assume variables will be evaluated prior to script execution. Is there a situation when this doesn't happen? Monte ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Supercard vs. Rev
I think it's too bad there's so little love shown between different xCard environment developers, and to a lesser extent (more goodwill) their users. :-) I've heard about things like Linux desktop conferences where vendors of different products work together to inform the public about what's available now, to the common good and the advancement of their shared interests and market although they have competing products. Descendants of HyperCard are certainly receiving less attention than they deserve in the world based on their practical merits, so who knows, it might be productive sometime if users or even the companies which produce the xCard products would do something like this. Why not an xCard product and scripting conference for companies, developers, and the public? (Of course, the first thing is to find good words for calling it, if something is better than xCard which I don't think is great for consumers.) Also, from my perspective, I just invest time and money, not my ego or sense of self-esteem and security, into the product I use. In private conversation I've discussed with others about the need for people to convince themselves that they are using the right product and have made the right decision in the road they've taken with a product. I think this probably affects some people in all user communities and I've seen confirmation of this behavior in many places. I suppose it's a type of loyalty to others which relates back to yourself because of investment. That tendency obviously is there in the mind for a reason and has a valid place, as long as it doesn't get out of hand, but as a user that has chosen one path I don't mind hearing a bit about the other road and that could be a good thing if it is productive and not too negative, and some of that will depend on responses as well as what is being responded to. Just as some collaboration between competitors with xTalk products might help to advance xTalk itself and raise awareness for customers and developers, some communication between users (or even the companies, theoretically although they don't seem too friendly looking at their messages toward each other ;-) might help users and the products. SuperCard and Revolution both have strengths and weaknesses that we cannot deny, and there's really no reason to feel that one has to be vindicated in order to breath easy and continue to use it. Which one is better depends on which strengths and weaknesses you are enthusiastic about and willing to live with, and what are your needs and priorities in using the product. (If you have a lot of money and a wide variety of needs, you can have both!) I think everyone will benefit by both products improving. Some discussions maybe do not belong on the lists and should be elsewhere, and that's up the companies and list owners, but it seems some, such as what's the best way for a product to accomplish this task or should we have this feature, or something else, comparing to the feature of the other product would be very relevant. As far as RealBasic goes (since it was also mentioned) it has many neat and unique features, but if the choice is available, I like to work with something based on what I admire and believe is the preferable or superior way to do something (the paradigm coming from HyperCard) rather than what I see as the standardized but not necessarily more deserving way that people have been forced to accept (the method coming from Microsoft). You can see the pattern of what becomes standardized vs. what is best everywhere--JavaScript was mentioned on the Rev list, and in the past there were discussions about alternatives to the C language before everyone gave in and shut up about it. I see RB as a lot more than the standard because of its innovations and style, and think it's a good useful product, but I still have to very much prefer using xTalk products and getting the benefits of the xTalk advantages as long as they can deliver the features I need. Best wishes to all those using Revolution and SuperCard and I hope that xCard in general has increasing success that it deserves according to its features! Curry ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: TCP/IP number and Port Check
On Monday, March 17, 2003, at 10:32 pm, Rolf Kocherhans wrote: Has anyone already made a script which checks a field if a user has entered a correct TCP/IP address ? I haven't but 2 approaches spring to mind: 1. try using the hostnameToAddress function to see if the IP number translates to a valid server name. 2. as #1 won't give any answer with an invalid entry, blank entry or one that isn't registered e.g. a local network address, you could write a function that checked that there were 4 sections separated by periods and that each was a number between 0 and 255. Also does anyone know from where to where portnumbers go ? here is a link to a site that lists the currently assigned port numbers: http://www.iana.org/assignments/port-numbers Cheers, Sarah ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Bug or feature? or: Don't I love the mechanics of expansion
Exactly one step of evaluation is performed. So if you say send tt the aaa of me it will in fact work, and result in a being put. When you say send tt the aaa of me What happens is that tt the aaa of me is resolved (by the operator) into tt a which is then passed to the evaluator for that one step of evaluation, which results in a being interpreted as a variable, resulting in 1 in the message box. On Sunday, March 16, 2003, at 05:42 PM, Victor Eijkhout wrote: This bug took me an hour or two to find. I don't think I like it. on tt arg put arg end tt on t set the aaa of me to a put 1 into a send tt the aaa of me to me end t Guess what the outcome of `send t to field whatever is... Reading the man page for send. It says (I couldn't manage to cut/paste from the dictionary. is that possible?) If the message is more than one word, it must be enclosed in double quotes. That is clearly not true in the above case. It also says Any parameters are evaluted, giving send mouseup 1+1 as example. That is less than the whole truth: based on this I would write send tt the aaa of me which of course is completely incorrect. Anyway, solution: send tt quote the aaa of me quote I guess the correct statement would be send expr to whatever : the expr is an expression that yields a string of the form command arg1,arg2, The argn expressions are evaluated in the corrent context, and the resulting command is sent to the whatever handler. Ok, quiz time: what is the output of on t arg1,arg2 put arg1 end t on tt set the aa of me to 3,4 send t the aa of me to me end tt (I guess, for clarity, another clause is could be added in the above definition.) -- Victor Eijkhout [EMAIL PROTECTED] tel: 865 974 9308 (W), 865 673 6998 (H), 865 974 8296 (F) http://www.cs.utk.edu/~eijkhout/ ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution regards, Geoff Canyon [EMAIL PROTECTED] ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
ext_sayString (somewhat OT)
Tuviah Snyder wrote: check out the new revIsSpeaking function in 2.0 Does anyone know if the text-to-speech voices can be manipulated with in-line commands the way it was possible to do so under Mac OS 9 and 10.0.x? For instance, since OS 10.1, they no longer respond to pitch stipulations in such a way as to allow them to sing. An example: paste the following into SimpleText under Mac OS 9 and the voices sing a well-known song; do the same in TextEdit on OS 10.1 or newer and it doesn't work. [[cmnt For most satisfactory results, use one of the following voices: Princess; Kathy; Junior; Fred; Ralph; Trinoids; Zarvox ]] [[pmod 0]] [[pbas 59]][[rate 100]]i [[pbas 60]][[rate 300]]would [[pbas 62]][[rate 100]]while [[pbas 59]][[rate 200]]ah [[pbas 55]][[rate 100]]way [[pbas 57]][[rate 200]]the [[pbas 59]][[rate 200]]ow [[pbas 55]][[rate 50]]ers [[pbas 57]][[rate 200]]cuhn [[pbas 59]][[rate 100]]vir [[pbas 55]][[rate 200]]sing [[pbas 52]][[rate 100]]with [[pbas 54]][[rate 200]]the [[pbas 55]][[rate 200]]flauw [[pbas 52]][[rate 50]]ers [[pbas 50]][[rate 200]]cun [[pbas 50]][[rate 100]]sult [[pbas 50]][[rate 200]]ting [[pbas 50]][[rate 100]]with [[pbas 50]][[rate 200]]the [[pbas 50]][[rate 50]]rain [[cmnt]] [[slnc 500]] [[cmnt]] [[slnc 500]] [[cmnt]] [[slnc 500]] [[pbas 55]][[rate 100]]and [[pbas 54]][[rate 200]]my [[pbas 52]][[rate 50]]head [[pbas 64]][[rate 100]]ide [[pbas 62]][[rate 200]]be [[pbas 60]][[rate 100]]scrat [[pbas 59]][[rate 200]]chin [[pbas 57]][[rate 100]]while [[rate 1]]u, [[pbas 55]][[rate 200]]my [[pbas 54]][[rate 100]]thoughts [[pbas 54]][[rate 200]]were [[pbas 66]][[rate 100]]biz [[pbas 64]][[rate 200]]zee [[pbas 62]][[rate 100]]hatch [[pbas 60]][[rate 200]]chin [[pbas 59]][[rate 100]]if [[pbas 57]][[rate 200]]i [[pbas 55]][[rate 100]]own [[pbas 55]][[rate 200]]lee [[pbas 55]][[rate 200]]had [[pbas 55]][[rate 200]]ah [[pbas 55]][[rate 25]]brain ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Card size on the PC
Jim just a thought... check the windowboundingrect of the stack best, Chipp -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Jim Hurley Sent: Monday, March 17, 2003 5:42 PM To: [EMAIL PROTECTED] Subject: Card size on the PC I have discovered that the height of my cards on my PC are limited to 617. These are stacks created on my Mac where they were the card heights were 650 or larger. I'm afraid I am in alien territory here on the PC. Is there some constraint on card size on the PC? I see nothing in the preferences. Thanks, Jim ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: If this is a feature, it's a nasty one.
It seems more logical to always assume variables will be evaluated prior to script execution. Yes, but the man page doesn't say that it's a variable: it says that the iproperty/i thing in the set statement is the name of a property. The name. Not a variable evaluating to a name. And I think that needs to be pointed out explicitly, because the obvious possibilities are 1/ only the actual name is allowed 2/ any expression giving a name. I don't understand at all why here only a name or a variable is allowed. -- Victor Eijkhout [EMAIL PROTECTED] tel: 865 974 9308 (W), 865 673 6998 (H), 865 974 8296 (F) http://www.cs.utk.edu/~eijkhout/ ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Sound conversions [Was: Re: use-revolution digest, Vol 1 #1205]
On 3/17/03 6:14 PM, [EMAIL PROTECTED] wrote: In a message dated 3/17/03 12:40:35 PM, [EMAIL PROTECTED] writes: Good Question -Can sounds for hypercard be used in Rev.? Yes, but they'd need to be converted to WAV, au, or AIF format first. How does one do the conversion? With a third-party sound program. There are several commercial apps and there may be some shareware ones. QuickTime Pro will do it too. -- Jacqueline Landman Gay | [EMAIL PROTECTED] HyperActive Software | http://www.hyperactivesw.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: If this is a feature, it's a nasty one.
** Date: Mon, 17 Mar 2003 15:38:38 -0800 Subject: Re: If this is a feature, it's a nasty one. From: Richard Gaskin [EMAIL PROTECTED] Victor Eijkhout wrote: but I want to use logical sounding names. -- A function named t with a parameter named a makes their use self-evident? -- No kiddin'...what if there was a need to debug or update in 4 or 5 months after writing a few thousand lines of code elsewhere? How on earth could you tell what they represent? -snip You'll find your code working well -- and possibly easier to read and maintain -- using these popular naming conventions for variables and parameters: http://www.fourthworld.com/embassy/articles/scriptstyle.html -- Agreed. I probably do a few things differently (e.g., if counting through objects I use bNum for buttons, lNum for lines, etc.), but they still make sense (and would to most). Whenever someone asks me about scripting conventions I send them there. I'm personally grateful you have that site, Richard, and keep it updated. Best regards, Ken N. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: ext_sayString
* Date: Mon, 17 Mar 2003 18:59:09 -0500 Subject: ext_sayString From: Tuviah M Snyder [EMAIL PROTECTED] You should check to see if there is some return value from ext_saystring you can use to determine if you need to keep going or not. check out the new revIsSpeaking function in 2.0 -- Really? I haven't bothered to D/L it yet because I don't have time for bug-hunting. But sound feedback and TTS is critical to many of my apps. Thanks for the heads-up. Ken N. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: If this is a feature, it's a nasty one.
It seems more logical to always assume variables will be evaluated prior to script execution. Yes, but the man page doesn't say that it's a variable: it says that the iproperty/i thing in the set statement is the name of a property. The name. Not a variable evaluating to a name. And I think that needs to be pointed out explicitly, because the obvious possibilities are 1/ only the actual name is allowed 2/ any expression giving a name. I don't understand at all why here only a name or a variable is allowed. You are right. I don't see why if the engine can evaluate a variable it can't also evaluate an expression. All I know is that you get a compile time error if you put an expression there. Perhaps it should be feature requested??? Monte ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
RE: OS X answer file
Yes, I've noticed that periodically. It isn't consistent in my experience, but it's damn annoying. Ken Ray Sons of Thunder Software Email: [EMAIL PROTECTED] Web Site: http://www.sonsothunder.com/ -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Monte Goulding Sent: Monday, March 17, 2003 6:47 PM To: Rev List Subject: OS X answer file Hi All Has anyone else noticed that OS X.2 is associating files with apps correctly but not giving them the type codes when importing from PC That means that in the finder the file looks right but when you do answer file or ask file they are disabled. This is very frustrating for the user. Is this something that apple should be fixing or is it part of phasing out the resource fork so Rev needs to handle the situation? Regards Monte ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use- revolution ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Replacing group images
*** Date: Mon, 17 Mar 2003 16:13:10 -0500 From: John J. Theobald [EMAIL PROTECTED] Subject: Re: Replacing group images (was Standalone UI's, data stacks, image files) Hmmm ... if I am following this correctly, you probably have 2 images named myimage, one from the put and one from the create, although the create one probably has no content. -- That has merit. I'll check the images further to see if they are there. The import brings it in, and putting it into the previous image changes causes the previous image to be deleted (what I wanted); it starts up with a 'bluescreen' graphic-turned-image named myImage. I guess I should do it the way you did so I don't end up with 2 images and have to delete one. My code isn't elegant (I'm into elegant scripts, but not I'm not there in Rev yet), but it's simple and I can tell what happened in that part. -- Try doing the put AFTER the create (actually after the stop editing group). This should put the it image into the newly created myImage in myImageGroup -- I see where your going with this, but I think I already tried it. One of the earlier things I did was assign the bluescreen image under the name myImage to the background group myImageGroup, but it couldn't find myImage when I tried to write the new image into it. I guess I just have to keep playing with it until it works. Thanks, Ken N. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Replacing group images [OT]
--- Ken Norris [EMAIL PROTECTED] wrote: [snip] it starts up with a 'bluescreen' graphic-turned-image named myImage. [snip] Thanks, Ken N. Hi Ken, My my, a blue screen at startup... That will inspire confidence in your application. *grin* Are you sure you want people auto-moving towards the Ctrl-Alt-Del combination? Just teasing you, of course. However, just like one should avoid flashing red images (for the epileptic among computer users) programmers in general should avoid 'well-known signs of trouble'. Have a nice day, Jan Schenkel. = As we grow older, we grow both wiser and more foolish at the same time. (La Rochefoucauld) __ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: OS X answer file
On Monday, March 17, 2003, at 11:53 PM, Ken Ray wrote: Yes, I've noticed that periodically. It isn't consistent in my experience, but it's damn annoying. There were are a lot of debates about this on cocoa-dev and macosx-dev and such mailing lists. I think Apple's concept of how to deal with file-to-application bindings was evolving right up till the release of Jaguar, so now you have this kind of schizoid situation where some developers do extensions only, some do creator codes only, and some do both. If Rev were to try to accommodate, and I think it should, (every time I check out a .rev file out my version control system, it's creator code gets stripped, and it's not available in Rev's open dialog) Here is a good model to follow: Cocoa has macros for an open file dialog, with filters for file extensions AND creator codes. There is what seems like a combinatorial explosion of file types for the programmer :-) but it does the job. int result; NSArray *fileTypes = [NSArray arrayWithObjects: @png, @jpg, @jpeg, @tiff, @tif, @pdf, @eps, @gif, @pict, @bmp, NSFileTypeForHFSTypeCode( 'PNG' ), NSFileTypeForHFSTypeCode( 'PGNf' ), NSFileTypeForHFSTypeCode( 'JPEG' ), NSFileTypeForHFSTypeCode( 'TIFF' ), NSFileTypeForHFSTypeCode( 'PDF' ), NSFileTypeForHFSTypeCode( 'GIFf' ), NSFileTypeForHFSTypeCode( 'PICT' ), nil]; NSOpenPanel *oPanel = [NSOpenPanel openPanel]; result = [oPanel runModalForTypes: fileTypes]; Alex Rice, Software Developer Architectural Research Consultants, Inc. [EMAIL PROTECTED] [EMAIL PROTECTED] ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Shakobox update
A revised version of Shakobox, the HyperCard-style musical notation stack, has been uploaded to: http://www.hyperactivesw.com/shakobox.html This version works around a bug in the MetaCard engine that caused installation of the PlayCommand Agent application to fail on machines running Mac OS 9. If you plan to run Shakobox only on an OS X machine then you don't need this update. However, if you want to distribute the PlayCommand Agent app in your own stacks, the revised scripts should be used for your installations and you should download this update. There are no other changes to the stack, outside of working around the installation problem. -- Jacqueline Landman Gay | [EMAIL PROTECTED] HyperActive Software | http://www.hyperactivesw.com ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution