Site Nav
css drop down menu by Css3Menu.com
|
Update Information
Update Information
Version WFS40p5 (affects only the Professional
version) --12/12/03
- 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.
- 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
- Added the very useful wfsAttachBehavior
handler. Thanks to Robert Tweed and Brennan Young for this.
- 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.
- 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
- 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.
- 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.
- 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.
- 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:
- 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
Dynamism
Script Writer
6: Handle
Drag Element
- 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:
- wfsCreateSprite, in the 'Dynamism'
script, now uses makeScriptedSprite if the Director version you're
using is DMX 2004 or greater.
- wfsCreateMenuItemHighlight in the 'Dynamism'
script, now uses makeScriptedSprite if the Director version you're
using is DMX 2004 or greater.
- 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.
- 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.
- 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).
- 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.
- 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.
- 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.
- 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
- Added some public handlers to the Close
A Window behavior.
- To upgrade existing projects,
- copy the new .cst file to the Libs folder
of your Director installation.
- Open Director and your project .DIR file
- Create a temporary
new cast.
- Put the above scripts in the temporary cast from the
Library Palette.
- Click on a WFS script in the temporary cast.
- Edit>Copy
Cast Member to copy the member.
- Click on the corresponding script
in your cast.
- Edit>Paste to paste the member over the old version.
- Do that for each of the WFS scripts.
- Delete the temporary cast.
- 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.
- 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.
- Fixed a bug in the Script Writer script. The bug causes a script
error when running the Script Writer handlers, in some cases.
- Various documentation corrections.
|