On Fri, 3 Mar 2000, Leston Drake wrote:

> In response to the "bigger question"...
> 
> I am building an app that is a simulation for practicing Classroom Management skills 
>(for teachers, etc). The crux of it is that they choose intervention strategies to 
>help change kids' behaviors. Kids are represented on screen as animated GIFs, and 
>when their behavior changes the image is updated to reflect the new state. 
> 
> If the user doesn't select a strategy, but just does nothing, the kids behavior will 
>change, based on the rules for "ignoring" a student. I am using the "send" command to 
>trigger the ignore event, cancelling it if they select a strategy, and using "send" 
>again after every strategy they use, to reset the ignore event. 
> 
> So far so good...
> 
> If the user clicks on the Help icon to read various kinds of helps available, I need 
>to be able to "pause" the ignore event messages, and resume them after they close the 
>Help dialog. 
> 
> The message I'm sending is "ignore <kid name>"
> E.g., send "ignore Alice" to me in 90 seconds
> 
> If all else fails, I suppose that I could cancel all messages and start them over 
>from scratch after they close the Help dialog, but this is *not* preferrable, because 
>you may have been ignoring a student for so long, but with no consequence.
> 
> Does this spark any useful ideas?

If you're talking about sending message for each student, I'd say
there's probably a better way.  Debugging with such a large number of
messages flying around could get hairy.  Also, the absolute precision
you get with "send .. in" really isn't necessary in this case.
Instead I'd probably just use a single message sent at a regular
interval (around 250 ms should be sufficient) where you check the
status of each student.  The status (e.g., when each student should
next start acting up) could be recorded on each image (or button, if
you're using icons, which you probably should be), or for better
performance, in an associative array.  You'd keep track of time in
units of the sampling interval.  When you need to pause, you'd just
stop updating the current time counter that you're comparing with the
times recorded for each of the "kid" objects.
  Regards,
    Scott

> ------------------------------
> Leston Drake
> LetterPress Software, Inc.
> http://www.lpsoftware.com
> ------------------------------

********************************************************
Scott Raney  [EMAIL PROTECTED]  http://www.metacard.com
MetaCard: You know, there's an easier way to do that...


This is the MetaCard mailing list.
Archives: http://www.mail-archive.com/metacard%40lists.best.com/
Info: http://www.xworlds.com/metacard/mailinglist.htm

Reply via email to