XFIRr39VMpami,:pamm unFXFIRrpami PO pamm ,3*YEK( tSACKtSACEtSACU1tSACHtSACDtSACuLeerf Weerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf eerf !eerf "eerf #eerf $eerf %eerf &eerf 'eerf (eerf )tSACPKtSACJeerf *eerf -eerf .eerf /eerf 0eerf 1eerf 2eerf 3eerf 4eerf 5eerf 6eerf 7tSACt,Oeerf 8eerf :eerf ;eerf <eerf =eerf >eerf ?eerf @eerf Aeerf Beerf Ceerf Deerf EtSACH3tSACQ*SAC,1XtcLbRpamFJt[knujl[fniC<r1manLYrcsL SrcsLTrcsLUrcsLVrcsL(rXeerf Xeerf beerf Zeerf Teerf VTXTS"keerf UmuhTqmuhThiDEMXyVbmuhTfDEMXVkmuhToTXTSE>keerf mFCRDT pmXF- LsCM:-droS@d IFWV[CSWV\knujNbLBLWV.beerf lRTX*eerf kknuj&biSREV -LOCF8-LBUP..DIRG1FRCS21FRCSR1*YEK( -\muhT^ muhT] DEMX[+muhTY,TXTS`9muhT_9DEMXaHTXTScFCRDpLOCFdpmXFrDIRGeLsCMqLBUPsFRCSfdroSoSREVgIFWVjBLWVhCSWVllRTXtFRCSI*SACMfniCKpamFJXtcLJXtcLJXtcLJXtcLJXtcLJXtcLJXtcLJXtcLJXtcLJXtcLJXtcLJXtcLL lccFCRDTT:2Y"  : P <<droS@    pmXF-; Copyright 1994-2000, Macromedia, Inc. All Rights Reserved. ; ;================================================================= ; ; Default Font Mapping Table for Director 8.5 Macintosh and Windows. ; ; This file provides a font mapping table for Director 8.5 for Windows ; and Macintosh. ; ; If a copy of this file is in the same folder or directory as the ; Director application, Director will automatically include this font ; mapping table in every new movie you create. ; ; To add this font mapping table to an existing movie, choose ; Movie:Properties... from the Modify menu. Then click Load from File. ; Use the dialog box that appears to locate this file. ; ; Note: In this file, a semicolon at the beginning of a line indicates ; a comment. ; ;================================================================= ; ; FONT MAPPINGS ; ; Font mappings specify which font and size substitutions to make when ; moving a movie from one platform to another. ; ; The format for font mapping definitions is: ; ; Platform:FontName => Platform:FontName [MAP NONE] [oldSize => newSize] ; ; Specifying MAP NONE turns off character mapping for this font. ; If you specify size mappings, they apply for THAT FONT ONLY. ; ; Here are some typical mappings for the standard Macintosh fonts: ; Mac:Chicago => Win:System Mac:Courier => Win:"Courier New" Mac:Geneva => Win:"MS Sans Serif" Mac:Helvetica => Win:Arial Mac:Monaco => Win:Terminal Mac:"New York" => Win:"MS Serif" Mac:Symbol => Win:Symbol Map None Mac:Times => Win:"Times New Roman" 14=>12 18=>14 24=>18 30=>24 Mac:Palatino => Win:"Times New Roman" ; ; Here are some typical mappings for the standard Windows fonts: ; Win:Arial => Mac:Helvetica Win:"Courier" => Mac:Courier Win:"Courier New" => Mac:Courier Win:"MS Serif" => Mac:"New York" Win:"MS Sans Serif" => Mac:Geneva Win:Symbol => Mac:Symbol Map None Win:System => Mac:Chicago Win:Terminal => Mac:Monaco Win:"Times New Roman" => Mac:"Times" 12=>14 14=>18 18=>24 24=>30 ; Note: When mapping from Windows to Macintosh, Courier and Courier New ; map onto Courier. When coming back to Windows only Courier New ; will be used. ; Japanese Font Mappings ; ; The Macintosh Japanese Osaka font is mapped to a Windows font, and ; all Windows fonts are mapped to Macintosh's Osaka. Map None is used ; because only Roman fonts need upper-ASCII characters mapped. To prevent ; mapping of any additional Japanese fonts, add them to this list. ; ; Note: If you do not have a Japanese system, the font names below ; will appear to be unreadable. Mac:Osaka => Win:"lr SVbN" Map None Win:"lr SVbN" => Mac:Osaka Map None Win:"lr " => Mac:Osaka Map None Win:"WSVbN" => Mac:Osaka Map None Win:"W" => Mac:Osaka Map None Win:"" => Mac:Osaka Map None ; Korean Font Mappings Mac:AppleGothic => Win:"" Map None Mac:Seoul => Win:"ü" Map None Mac:AppleMyungio => Win:"" Map None Mac:"Ѱü" => Win:"" Map None Win:"" => Mac:AppleGothic Map None Win:"ü" => Mac:AppleGothic Map None Win:"ü" => Mac:Seoul Map None Win:"üü" => Mac:Seoul Map None Win:"" => Mac:AppleMyungio Map None Win:"ü" => Mac:AppleMyungio Map None Win:"" => Mac:"Ѱü" Map None Win:"ü" => Mac:"Ѱü" Map None ;================================================================= ; ; CHARACTER MAPPINGS ; ; Character mapping ensures that characters such as bullets, ; quote marks, and accented characters always appear correctly ; when text is moved from one platform to another. When a ; character is mapped, a different ASCII value is substituted ; in order to preserve the appearance of the character. ; ; Character mappings are used for all fonts EXCEPT those declared ; above as Map None. ; ; The format for character mappings is: ; ; Platform: => Platform: oldChar => oldChar ... ; ; The following table provides a full set of bi-directional ; mappings for all ASCII values between 128 and 255. ; ; Note: Some characters are not available in both character sets. ; However, the bi-directional mapping table below preserves these ; characters even if they are mapped to a different platform and ; later re-mapped back to the original platform. Mac: => Win: 128=>196 129=>197 130=>199 131=>201 132=>209 133=>214 134=>220 Mac: => Win: 135=>225 136=>224 137=>226 138=>228 139=>227 140=>229 141=>231 Mac: => Win: 142=>233 143=>232 144=>234 145=>235 146=>237 147=>236 148=>238 Mac: => Win: 149=>239 150=>241 151=>243 152=>242 153=>244 154=>246 155=>245 Mac: => Win: 156=>250 157=>249 158=>251 159=>252 160=>134 161=>176 162=>162 Mac: => Win: 163=>163 164=>167 165=>149 166=>182 167=>223 168=>174 169=>169 Mac: => Win: 170=>153 171=>180 172=>168 173=>141 174=>198 175=>216 176=>144 Mac: => Win: 177=>177 178=>143 179=>142 180=>165 181=>181 182=>240 183=>221 Mac: => Win: 184=>222 185=>254 186=>138 187=>170 188=>186 189=>253 190=>230 Mac: => Win: 191=>248 192=>191 193=>161 194=>172 195=>175 196=>131 197=>188 Mac: => Win: 198=>208 199=>171 200=>187 201=>133 202=>160 203=>192 204=>195 Mac: => Win: 205=>213 206=>140 207=>156 208=>173 209=>151 210=>147 211=>148 Mac: => Win: 212=>145 213=>146 214=>247 215=>215 216=>255 217=>159 218=>158 Mac: => Win: 219=>164 220=>139 221=>155 222=>128 223=>129 224=>135 225=>183 Mac: => Win: 226=>130 227=>132 228=>137 229=>194 230=>202 231=>193 232=>203 Mac: => Win: 233=>200 234=>205 235=>206 236=>207 237=>204 238=>211 239=>212 Mac: => Win: 240=>157 241=>210 242=>218 243=>219 244=>217 245=>166 246=>136 Mac: => Win: 247=>152 248=>150 249=>154 250=>178 251=>190 252=>184 253=>189 Mac: => Win: 254=>179 255=>185 Win: => Mac: 128=>222 129=>223 130=>226 131=>196 132=>227 133=>201 134=>160 Win: => Mac: 135=>224 136=>246 137=>228 138=>186 139=>220 140=>206 141=>173 Win: => Mac: 142=>179 143=>178 144=>176 145=>212 146=>213 147=>210 148=>211 Win: => Mac: 149=>165 150=>248 151=>209 152=>247 153=>170 154=>249 155=>221 Win: => Mac: 156=>207 157=>240 158=>218 159=>217 160=>202 161=>193 162=>162 Win: => Mac: 163=>163 164=>219 165=>180 166=>245 167=>164 168=>172 169=>169 Win: => Mac: 170=>187 171=>199 172=>194 173=>208 174=>168 175=>195 176=>161 Win: => Mac: 177=>177 178=>250 179=>254 180=>171 181=>181 182=>166 183=>225 Win: => Mac: 184=>252 185=>255 186=>188 187=>200 188=>197 189=>253 190=>251 Win: => Mac: 191=>192 192=>203 193=>231 194=>229 195=>204 196=>128 197=>129 Win: => Mac: 198=>174 199=>130 200=>233 201=>131 202=>230 203=>232 204=>237 Win: => Mac: 205=>234 206=>235 207=>236 208=>198 209=>132 210=>241 211=>238 Win: => Mac: 212=>239 213=>205 214=>133 215=>215 216=>175 217=>244 218=>242 Win: => Mac: 219=>243 220=>134 221=>183 222=>184 223=>167 224=>136 225=>135 Win: => Mac: 226=>137 227=>139 228=>138 229=>140 230=>190 231=>141 232=>143 Win: => Mac: 233=>142 234=>144 235=>145 236=>147 237=>146 238=>148 239=>149 Win: => Mac: 240=>182 241=>150 242=>152 243=>151 244=>153 245=>155 246=>154 Win: => Mac: 247=>214 248=>191 249=>157 250=>156 251=>158 252=>159 253=>189 Win: => Mac: 254=>185 255=>216 lRTX I# INETURL.X32INetUrl PPC XtraI# NETFILE.X32NetFile PPC XtraK% Netlingo.x32NetLingo PPC XtraT. swadcmpr.x32SWA Decompression PPC Xtra2 MacroMix.x325DirectSound.x32L&Sound Control.x32 Sound Control4>п mText Asset.x322CsK ѝ m TextXtra.x323= яh Font Xtra.x32LsCM:  Internal SREV ALOCF8"""333DDDUUUfffwwwLBUPr" Default.htmladdscript_test.htmaddscript_test.dcraddscript_test.jpgaddscript_test.classaddscript_testP swCategoryswTitle swSendUrlswPicon swPackage swPackageSize swContextMenuDIRG@@#FRCSFRCSfniC<>2*SAC,G,+ 9HtSACU G-- Initialise on prepareMovie member( "Output" ).text = "" end -- Echo: put to output member on echo txt put txt & RETURN after member( "Output" ) endMainf``,@[@kRobert TweedtSAC {-------------------------------------------------------------------- -- Add Script to Sprite (at runtime) -------------------------------------------------------------------- -- Script Type: Movie -------------------------------------------------------------------- -------------------------------------------------------------------- -- LICENSE: FREEWARE -- This source code is copyright Killing Moon Ltd. 2003 -- -- You may use this code freely, but if you redistribute the source -- code the you must abide by the following restrictions: -- -- 1 - If the code is unmodified, then all the comments must remain -- intact and in their original form. -- -- 2 - If the code is modified then either: -- 2(a) - All the original comments must be removed. You may -- credit the original author if you wish, but must make -- clear that your version is not identical to the -- original version. -- 2(b) - You must add clear documentation of ALL your alterations -- and additions to the code in the source comments. -- Additionall, you must place a clear notice at the top -- of the file that the source code has been modified. -- -- Code written by Robert Tweed. -- Email: robert@killingmoon.com -- Website: http://www.killingmoon.com/director/ -- -------------------------------------------------------------------- -- VERSION HISTORY: -- -- 2004.05.01: Version 1.1 by Robert Tweed -- addScriptToSprite now returns a value -- -- 2003.12.01: Version 1.0 by Robert Tweed -- --------------------------------------------------------------------------------- -- NAME: addScriptToSprite -- CLASS: Public Handler -- -- DESCRIPTION: -- Instantiates a script and attaches it to a sprite. -- -- PARAMETERS: -- -- aSprite - Sprite channel number or a sprite object. -- -- aScriptName - The name of a script to instantiate and attach to the sprite -- -- aOverridePDL [optional] - List of non-default properties to be set by -- getPropertyDescriptionList. -- -- RETURNS: -- (on succss) The script instance -- #error_not_a_sprite - The value of aSprite was not a sprite -- channel number or sprite instance -- -- USAGE: -- Different ways to add the script "My Behaviour" to sprite 10. -- -- (1) Simple -- -- result = addScriptToSprite( 10, "My Behaviour" ) -- -- (2) With non-default getPDL parameters. -- -- result = addScriptToSprite( sprite(10), "My Behaviour", [#myProp: 15] ) -- -- (3) Setting other parameters after instantiation, and error checking -- -- result = addScriptToSprite( 10, "My Behaviour" ) -- if( ilk( result, #symbol ) ) then -- -- The call failed for some reason -- else -- result.myProp = 15 -- end if -- on addScriptToSprite aSprite, aScriptName, aOverridePDL -- Make sure we are dealing with a sprite if( ilk( aSprite, #integer ) ) then aSprite = sprite( aSprite ) else if( not ilk( aSprite, #sprite ) ) then return #error_not_a_sprite end if -- Create the script instance vScript = script( aScriptName ).rawNew() -- Add spriteNum and call new() vScript.setaProp( #spriteNum, aSprite.spriteNum ) call( #new, [vScript] ) -- Get defaults from PDL, if applicable if( vScript.handler( #getPropertyDescriptionList ) ) then -- Check PDL override is a list, so we don't get errors if( not ilk( aOverridePDL, #propList ) )then aOverridePDL = [:] end if -- Get PDL vPDL = vScript.getPropertyDescriptionList() -- Get each default from PDL or override list repeat with i = count( vPDL ) down to 1 vProp = vPDL.getPropAt( i ) if( ilk( vProp, #symbol ) ) then vValue = aOverridePDL.getaProp( vProp ) if( voidP( vValue ) ) then vSet = vPDL.getAt( i ) if( ilk( vSet, #propList ) ) then vValue = vSet.getaProp( #default ) end if end if vScript.setaProp( vProp, vValue ) end if end repeat end if -- Add instance to scriptInstanceList aSprite.scriptInstanceList.add( vScript ) -- Call beginSprite, if applicable call( #beginSprite, [vScript] ) -- Return the newly created script instance return vScript endAdd Script To Spritef,@[@kRobert TweedtSAC ;FFFFZZZZZZnnnnnnrv-- Simple frame loop on exitFrame me go to the frame end Frame Loopf,@[@kRobert TweedtSAC 4JJJJ^^^^^^rrrrrrvz-- Create dynamic sprite, add behaviour and test everything is OK on mouseUp me -- Create a dynamic sprite in channel 100 echo "SPRITE ADDED" n = 100 sprite(n).puppet = true sprite(n).member = member( "FillRect" ) sprite(n).rect = rect(46, 175, 63, 193 ) sprite(n).color = rgb( 136,0,0 ) -- Add a script to new sprite and check it exists addScriptToSprite( n, "Test Script" ) echo( "New sprite scriptInstanceList = " & RETURN & sprite(n).scriptInstanceList ) echo( "New sprite scriptList = " & RETURN & sprite(n).scriptList ) echo() endCreate Dynamic Spritef//,@[@kRobert TweedtSAC       #'4-- Test behaviour to add at runtime -- Displays a message, then jump to end frame on exitFrame me if( the frameLabel <> "Done" ) then echo "TEST SCRIPT" echo "This script was added dynamically!" go to "Done" end if end Test Scriptf,@[@kRobert TweedtSAC Output@a@kRobert TweedtSAC FillRect@d@kRobert TweedtSAC  BorderRect@[@kRobert Tweed<tSACu .....26CtxtTitle>п mText'@^e@kRobert Tweedtext'3TEXd2??NoTexturetSACt-----15BtxtDone>п mText@^e@kRobert Tweedtext3TEXd2??NoTexturetSAC btnStart@h@kRobert Tweed'XtcL` N PO7TP5$Q P,R.SrcsL   \ \\\ gDCWDb KD DCW!Bg Output rcsL\\\\ R2KECWKCW QKE CW E BW KCW Cg RLEKaBgELCBWLECgKECWCQLCgRLCWRLA]LLCgRLECW?KLCgRLCW"LLCgRLECW LECgRLLLBgALRT`KpLBgELCBWLBW  !%$&#"'   rcsL\ X\\\( "Cf)BW*+rcsL\ Q\\\zF,zM DBWAdRLCW Ab-LCW DCWbLCW A.A?CW.b.LCW CW/b0LDBWDD LCW a BWDD LCW a1 BWBW+2  0V\ SPRITE ADDED FillRect Test Script!New sprite scriptInstanceList =  New sprite scriptList = rcsL(((\8l\\\B(__3DDBWDBWDBW*+ Done TEST SCRIPT#This script was added dynamically!manL4 prepareMovieechomembertextsetContentsAftertxtaddScriptToSpriteilkintegerspritereturnerror_not_a_spritescriptrawNew spriteNumsetaPropcallnewgetPropertyDescriptionListhandlerpropListcount getPropAtsymbolgetaPropvoidpgetAtdefaultscriptInstanceListadd beginSprite aOverridePDLaSprite aScriptNamevValuevPropvPDLvScriptivSet exitFrameframegomemouseUppuppetrectrgbcolor scriptListn frameLabel lccpamFJ$ArialIFWV "Duuuuwy Robert Tweed - Killing Moon Ltd. Robert Tweed - Killing Moon Ltd.0D:\Inetpub\wwwroot\killingmoon\director\puppets\CSWV $088888888888888888888888888888ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd$$$ 0 0  ' 'f`u1 <r1M00 +0V4 6Ɓ&FN0 F& 'ur   CTWVBLWV StartDoneLTWVDEMXyFFFF000000060004000177AA0000000000510000000040001101-7FFC6FE00480048-10130-10 13127FF000101F00001000000340000000101F840101013127048E000A131270000200000024000000001F,DYNAMIC SPRITE & BEHAVIOUR TEST00040000000A000000020121100050000000A0000000201210000600000069000000020C304000FFFF0C00000 10 F3104000FFFF01000000 10 000700000048000000020106A03E24F018020106A03E24F01800008000000B50000000140,Arial40,4060A24E440001A20400080101000090000001500000002013127013127000A0000001500000002013127013127000B00000005000000020000C00000018000000020D711F01000F0000002100000000400 10  00130000007E00000000DA91F8CE1C1D1E1F7F1B044,-..'"FFFF0FFFF001280000000B0000000121001290000000B00000001210muhT$$     muhTh$$TXTS"  TXTSE #CLICK HERE TO CREATE DYNAMIC SPRITE DEMXVFFFF000000060004000177AA00000000004B0000000040001101-7FFC6FE00480048-10F0-10 F113FF00010000100000031000000010E8401010F113038E00056FBD000020000001200000000E,TEST COMPLETED00040000000A000000020110100050000000A000000020110000060000006D0000000210C304000FFFF0C00000 10 C304000FFFF0C00000 1010000700000048000000020106A03E24F018010106A03E24F01800008000000B50000000140,Arial40,4060A24E440001A204000801010000900000013000000020F1130F113000A00000013000000020F1130F113000B00000005000000020000C0000001000000001EE20671000F0000002100000000400 10  00130000007E00000000DA91F8CE1C1D1E1F7F1B044,-..'"FFFF0FFFF001280000000B0000000110001290000000B00000001100muhT$$      muhT7)