Course price £900 + VAT

Please ask for pricing for one-to-one tuition.

Refreshments and sandwiches or Bistro lunch are provided on all courses. Please advise in advance of special dietary requirements.

Director MX Advanced with Lingo & Shockwave


Duration 3 days

Objectives
Lingo, Director's built-in programming language is extremely powerful, and allows the development of advanced applications delivered on CDROM and the Web. Macromedia Shockwave is the web plug-in format for director, and is widely used to develop online games including 3D for the internet. On this course you will learn how to write Lingo scripts and integrate them within the Director environment. Through a series of worked examples, you will develop increasingly powerful scripts and even build your own behaviours for easy script re-use. This course also includes an introduction to Object Orientated Programming, to enable you to fully harness the power of Lingo. Finally, you will consolidate the learning by building your own shockwave web game from the ground up, or a project of your own choice and design.

Requirements
Delegates will ideally have completed introductory training in Director MX, or have equivalent commercial experience using the software before undertaking this course.


Course Outline

Introduction to Lingo
• What is Lingo?
• About Lingo Elements
• About Javascript syntax and Lingo syntax
• What are behaviours?
• Using the Message Window
• Creating and testing a simple Lingo script

Handlers in Director
• What are handlers?
• Differences between Handlers and Functions
• Why do we need handlers?
• Creating a simple handler
• Passing parameters to a handler
• Returning values from a handler

Lingo Code Structure
• If, Then and Else
• The Case Statement
• Creating loops with the Repeat with... End Repeat
• Creating loops with enterFrame handlers

Using Events in Director
• What are events?
• Trapping and passing events in Lingo
• The Message hierarchy in Director
• Example: Pausing the frame in the score using Lingo

Variables and Data Types in Lingo
• What are variables?
• Creating variables
• Scoping: Global vs Local variables
• Variables vs Properties
• Overview of Data Types
• Boolean, String
• Integer, Float
• Object, Symbol
• Void
• Lists
• Using data types
• Determining data types

Operators in Lingo
• What are Operators?
• Math Operators
• Comparison Operators

Using lists in Lingo
• Why lists are important
• What you can do with lists
• Using lists to store data
• Linear Lists
• Property Lists
• Example: Using lists to navigate
• Example: Using lists to animate
• Managing Lists in Director

Behaviours in Director
• About Behaviours
• How behaviours work as objects
• The concept of re-usability with behaviours
• Adapting existing built-in behaviours

Creating a Simple Behaviour in Lingo
• The anatomy of a behaviour
• The getPropertyDescriptionList event
• The getBehaviorDescription event
• The enterFrame event
• The begin and end sprite events

Simple Navigation using Lingo
• Navigation and the Score
• Using Markers in Lingo
• Using Buttons in Lingo
• Dynamic navigation in Lingo

Conditional Navigation in Lingo
• Navigation based on non-mouse events
• Using variables

Synchronisation and Media in Director
• Types of Digital Media supported in Director
• Controlling the speed of playback of a media element
• Controlling the direction of playback in Lingo
• Non-linear playback with Lingo
• Establishing the duration of media element
• Creating navigation sliders and buttons in Lingo
• Setting up cue points in imported media
• Using the onCuePassed event to synchronise

Object-Orientated Programming and Lingo
• What is OOPs?
• How is OOPs implemented in Director
• The Object Model in Director
• The Event Model in Director
• About Encapsulation and Inheritance
• What exactly do we mean by an Object?
• What is a class
• What is instantiation?
• Behaviours and OOPs
• Benefits of OOPs

Parent Scripts and Child Objects
• What are Parent Scripts?
• About the actorList and the stepframe event
• ancestors
• the new() Lingo function

Controlling Sprites in Lingo
• Score-based animation
• Lingo-based animation
• Basic sprite animation
• Setting speed with Lingo
• Looping cast members
• Reacting to boundaries
• Reacting to user events
• Collision Detection

Xtras and Lingo
• What are Xtras?
• How can the be used via Lingo
• Installing and using an example Xtra

Shockwave
• Overview of Shockwave
• Getting the latest version
• Shockwave and Xtras
• Limitations of Shockwave
• Shockwave Streaming Media
• Shockwave and Lingo

Using NetLingo
• What is NetLingo and what can you do with it?
• Key netLingo Elements
• downLoadNetThing()
• getNetText()
• gotoNetMovie()
• gotoNetPage()
• postNetText()
• preLoadNetThing()

Project: Bringing it all Together
• A CD-ROM Project
• A Shockwave Game Project
• Wrap-up with QandA

© Acunity Ltd 2010. Please do not reproduce or distribute without permission.