Click to go to the home page.

Site Nav

css drop down menu by

Update Information

Update Information

Version WFS40p5 (affects only the Professional version) --12/12/03

  1. Got rid of the need to insert an 'on new' handler in every dynamic behavior. Thank goodness. Now you never have to insert anything special in your behaviors to make them dynamic.
  2. Added code to the wfsDestroyDynamicSprite handler which zeros many properties. A discussion on DirGames about dynamic sprite creation was very useful. Now the wfsDestroyDynamicSprite handler sets the following properties:
    sprite(elementSpriteNum).member = 0
    sprite(elementSpriteNum).rect = void
    sprite(elementSpriteNum).scriptInstanceList = []
    sprite(elementSpriteNum).stretch = FALSE
    sprite(elementSpriteNum).rotation = 0
    sprite(elementSpriteNum).color = paletteIndex( 255 )
    sprite(elementSpriteNum).forecolor = 255
    sprite(elementSpriteNum).backcolor = 0
    sprite(elementSpriteNum).visible = 1
  3. Added the very useful wfsAttachBehavior handler. Thanks to Robert Tweed and Brennan Young for this.
  4. The wfsCreateBehavior handler is now wfsCreateBehaviorPrivate. If you want to attach your own behaviors to sprites, use wfsAttachBehavior. It is deluxe. The wfsCreateBehaviorPrivate handler is used privately by the "Script Writer" handlers. Don't use it.
  5. The discussion on DirgGames about dynamic sprite creation was useful in learning about known bugs and issues concerning dynamic sprite creation. I have added a section to the "Dynamism" document that lists them.

Version WFS40p6 (affects only the Professional version) --22/12/03

  1. Bug fix: The "Script Writer" handler wfsWriteMultiSpriteFamily is supposed to be capable of letting you point it at a multi-sprite x that has ancestors and descendants. It should then write code to make a dynamic copy of x and its descendants. This was not functioning properly if x had ancestors. It was functioning OK if x was a root, but not if x has ancestors. It now works fine. The problem was with the private wfsWriteWindowManagerProperties and wfsWriteMenuManagerProperties handlers in the "Script Writer" script.
  2. Bug fix: wfsAttachBehaviorPrivate, which is private to the "Script Writer" handlers was not working right if the attached behavior contained an 'on new' handler. This handler also now calls any 'on new' handler that the behavior may have.
  3. Doc fix: It is now documented, concerning wfsCreateElement in the "Dynamism" script, that you can specify, or not, the doNotCreateNewMember parameter as part of the memberParams parameter.
  4. New feature: wfsCreateWindowManager and wfsCreateMenuManager in the "Dynamism" script now allow you to specify (or not) the doNotCreateNewMember parameter. So that wfsCreateWindowManager and wfsCreateMenuManager do not, now, perforce, create a copy of the manager bitmap.

Version WFS45p1 and s1 (affects WFS 4.0 Standard and Pro) --14/4/04

If you are using MX 2004 or later, you need this upgrade. If you are using Director 8.5 or MX, you may use WFS40p6 or this upgrade. This upgrade does not work with Director 8 (use WFS 4.0 or earlier in Director 8).

If you are already using WFS 4.0 in a project and want to upgrade the project, see Notes to Users of Previous Versions for instructions.

WFS 4.5 is just to make WFS compatible with DMX 2004. It addresses the below issues:

  1. Bug fix: Director MX 2004 introduced a bug in the WFS code. WFS occassionally checks to see whether a particular member is present in a cast. What I had been doing to check this was 'if member("whatever").memberNum > 0'. This evaluated to true if the member was present and -1 if the member was not present. However, in DMX 2004, the above code results in a script error if the member is not present. See Thomas Higgins's remarks on this. WFS now uses the private new wfsMemberExists handler in the "1: PrepareMovie" movie script to check for the existence of members. This handler works in 8.5, MX, and DMX 2004.

    The above script error in 4.0 only arises if you are authoring with DMX 2004 or later. It doesn't arise in 8.5 or MX, and the DCR or projector only has problems if, again, you authored in MX 2004 using WFS 4.0.

    The new WFS wfsMemberExists handler is used in the following WFS scripts:
    1: PrepareMovie
    Script Writer
    6: Handle
    Drag Element

  2. Code Migration: Director MX 2004 introduces the makeScriptedSprite and removeScriptedSprite commands. These replace the old method of dynamic sprite creation (puppetSprite). I had a talk with Thomas Higgins of Macromedia about these commands because there was some question whether the introduction of these commands makes dynamic sprite creation/destruction officially supported by Macromedia. I I refer you to my posts on the WFS list on this matter. The subject is "new makeScriptedSprite command in Director MX 2004".

    The upshot is that the makeScriptedSprite and removeScriptedSprite commands are, under the hood, using the old puppetSprite implementation, ie, dynamic sprite creation is no more supported than it was before. However, talking with folks at Macromedia about this, it seems like the introduction of the makeScriptedSprite/removeScriptedSprite commands is the beginning of a process that may culminate in true dynamic sprite creation support in Director sometime down the road, and there are already subtle differences. In any case, I have created WFS 4.5 which uses the makeScriptedSprite/removeScriptedSprite commands rather than puppetSprite in the interests of keeping WFS current. Actually, the WFS 4.5 code checks which version of Director you're using and uses makeScriptedSprite/removeScriptedSprite if you're using DMX 2004 or greater, and uses puppetSprite if you're using a version of Director earlier than DMX 2004.

    The changes I've made:
    1. wfsCreateSprite, in the 'Dynamism' script, now uses makeScriptedSprite if the Director version you're using is DMX 2004 or greater.
    2. wfsCreateMenuItemHighlight in the 'Dynamism' script, now uses makeScriptedSprite if the Director version you're using is DMX 2004 or greater.
    3. wfsDestroyDynamicSprite in the 'Dynamism' script, now uses removeScriptedSprite if the Director version you're using is DMX 2004 or greater.

Version WFS48p1

This version affects only the Pro version, ie, the "Dynamism" and "Script Writer" scripts.

  1. The wfsCreateWindowManager handler in the "Dynamism" script now includes the boolean CenterWindow parameter (third parameter). If you have called wfsCreateWindowManager, you will need to update your parameters because wfsCreateWindowManager is the third parameter now. Insert a boolean as the third parameter which says whether the window is to be initialiy centered or not.
  2. 4.8 fixes a bug in the way that behaviors are attached dynamically. Previously, in 4.0 and 4.5, when a behavior was attached dynamically, in some cases, the beginSprite handler of not only that behavior but other behaviors attached to the sprite was run. The Attacher behaviors such as wfsAttachCloseMyWindow have been upgraded so that they use only wfsAttachBehavior, not wfsAttachBehaviorPrivate. In fact 4.8 makes wfsAttachBehaviorPrivate obsolete (but is still in the "Dynamism" script).
  3. I have done a lot of work on the Script Writer routines so that the code they generate is a lot more compact and easy to understand.
  4. I have also added some Script Writer routines that generate code for various purposes, ie, the Script Writer handlers make using the "Dynamism" API much much easier.
  5. 4.8 has also revamped dynamic creation so that you can create dynamic copies of dynamic sprites, whereas 4.0 and 4.5 only let you make dynamic copies of static sprites.

Version WFS48p3 and WFS48s3 (20/05/04)

This version affects both the Pro and Standard versions.

  1. Introduced a new feature. You can now name elements via the "4: Window/Menu Element" behavior. Wrote several handlers to support operations involving element names, as documented in the the "4: Window/Menu Element" doc. This feature makes refering to dynamic sprites much easier. This feature involves code changes in various scripts:
    • 1: prepareMovie
    • Dynamism (Pro version only)
    • Script Writer (Pro version only)
    • 3: Window Manager
    • Menu Manager
    • 4: Window/Menu Element
    • Menu Item Highlight
  2. Added some public handlers to the Close A Window behavior.
  3. To upgrade existing projects,
    1. copy the new .cst file to the Libs folder of your Director installation.
    2. Open Director and your project .DIR file
    3. Create a temporary new cast.
    4. Put the above scripts in the temporary cast from the Library Palette.
    5. Click on a WFS script in the temporary cast.
    6. Edit>Copy Cast Member to copy the member.
    7. Click on the corresponding script in your cast.
    8. Edit>Paste to paste the member over the old version.
    9. Do that for each of the WFS scripts.
    10. Delete the temporary cast.
    11. To initialize all the "4: Window/Menu Element" behaviors properly, select all sprites that have the "4: Window/Menu Element" behavior attached to them. Go to the Behavior tab of the Property Inspector and open the Parameter Dialog box. Click OK.
  4. Fixed a bug in the wfsGenerateManagerName handler in the "Dynamism" script. The bug caused the handler to generate a name the same as an already instantiated manager, in some cases.
  5. Fixed a bug in the Script Writer script. The bug causes a script error when running the Script Writer handlers, in some cases.
  6. Various documentation corrections.


Click to go to the home pageUpdate Information