Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Making a function return a value

From: ActionScript 3.0 in Flash CS3 Professional Essential Training

Video: Making a function return a value

In this movie I'll explain how to make a function return a value. If you'd like to follow along, I'm in Returns.fla that can be found in the chapter 03 folder of the Exercise Files. Before I explain what it means to return a value, let's walk through this file and just check it out. I have some snow, one snowboarder in the foreground, and one in the background. I'm going to the Selection tool, or you can press V on you keyboard and let's just check their instance names: boarder1_mc. and then boarder2_mc.

Making a function return a value

In this movie I'll explain how to make a function return a value. If you'd like to follow along, I'm in Returns.fla that can be found in the chapter 03 folder of the Exercise Files. Before I explain what it means to return a value, let's walk through this file and just check it out. I have some snow, one snowboarder in the foreground, and one in the background. I'm going to the Selection tool, or you can press V on you keyboard and let's just check their instance names: boarder1_mc. and then boarder2_mc.

I'm going to click on the actions keyframe of the actions layer to open up the Actions panel. I have a really simple function called moveBoarder and it's going to make boarder1's y subtract by 150, so it'll make it go up 150 pixels and then the .scaleX property scales an object horizontally and the scaleY property scales an object vertically. And the value of 2 that I'm giving here and here will make it twice as wide and twice as high.

So if I close the Actions panel and I test the movie, we can see that the boarder is a lot bigger. But what if, after this function runs, I want to make the height of this boarder the same as the height of the first boarder? But I don't want to run the function on the first boarder, I just want to make his height the same. Let me show you how to do that by making the function return a value. Let's open up the Actions panel again. Now I'm going to talk about what this colon void means. So function moveBoarder:void.

The colon specifies the datatype that's going to be returned when the function runs. So basically a function can run and give me back nothing or it can give me back some type of data. Let me show you how that works, because it's a little bit easier to demonstrate than to explain. So let's replace the word void and then I'm going to type the datatype that I want to return. I'm going to type Number with a capital N. So when this function runs, it's going to give me back a number. After line 5, where we set the scale y of boarder1_mc, I'm going to press Enter or Return on my keyboard and then I'm going to type the word return.

Notice that it turns blue when you type it. Then type a space and then we're going to type the value that we want to return. And again we'll see this in action in about two seconds and you'll see what a return does. So let's return boarder1_mc.y; I'll test the movie again. So notice that nothing happens different. So our function returns a number but so far this does nothing.

Now what I'm going to do is click on line 9 right before the moveBoarder function and type trace. And let's wrap moveBoarder, open and close parentheses, inside of parentheses. Just make sure you have two close parentheses here. You need to have one to close out the moveBoarder function and one to close out the trace statement. Now test the movie, and we get the boarder's new y position, which is 160.05.

Now let's actually do something with this number. So I'm going to take this trace statement and remove it. So I'm going to take away that close parenthesis then the trace and the parentheses, so we just have moveBoarder. Now we can set the y positioning or I can do anything I want with this moveBoarder, cause when this runs it's going to be equal to a number. So moveBoarder here it's not only going to run this function, it's equal to whatever the new positioning of the y is of boarder1_mc. So if I'd like to set the y positioning the same for boarder2_mc, then right before moveBoarder, I'm going to type boarder2_mc.y = So boarder2_mc.y equals moveBoarder(); So that will run the moveBoarder function, that's this whole block.

At the bottom or the last line that block will return the y positioning of boarder1_mc. It will kick it back out as the datatype number, and that will replace this function right here. So a function can do something and give you something as well. So in this case, moveBoarder open and close parentheses is going to give us the y positioning of boarder1 and that'll make the boarder2 y positioning the same as the boarder1.

So I'm going to close the Actions panel. Let's take a look at it now. Press Cmd+Return or Ctrl+Enter to test the movie. And it looks like I spelled boarder wrong again. Good times. Okay. Let's test the movie. And there we go. The y positioning is in the center. And so we see that these objects are aligned in the center. So that is how to make a function return a value. And returning a value just means when I run the function it's going give me back some type of data. So in this case moveBoarder is equal to a number, and that's specified right here after the colon, and then you also need to specify the word return, and then you can have some sort of value. So instead of boarder1_mc.y I could type any number I want and it'll give me a similar result.

And that is how you make a function return a value.

Show transcript

This video is part of

Expand all | Collapse all
  1. 2m 3s
    1. Introduction
      39s
    2. How to use the exercise files
      1m 24s
  2. 3m 53s
    1. Why you should learn ActionScript 3.0
      52s
    2. Differences from ActionScript 2.0
      1m 56s
    3. Moving beyond Script Assist
      1m 5s
  3. 21m 57s
    1. Communicating to MovieClips
      4m 7s
    2. Modifying MovieClips properties
      7m 0s
    3. Understanding variables
      50s
    4. Setting variable data types
      3m 23s
    5. Using trace statements
      2m 39s
    6. Using comments
      3m 58s
  4. 26m 3s
    1. Understanding functions
      1m 23s
    2. Using functions
      2m 27s
    3. Writing custom functions
      4m 25s
    4. Making a function modular
      11m 50s
    5. Making a function return a value
      5m 58s
  5. 41m 45s
    1. Understanding event types
      1m 28s
    2. Using a listener to catch an event
      3m 14s
    3. Writing event handlers
      6m 56s
    4. Responding to mouse events
      4m 33s
    5. Responding to keyboard events
      5m 45s
    6. Creating a link to a website
      5m 26s
    7. Using the enterframe to create animation
      7m 34s
    8. Using the timer event to control animation
      6m 49s
  6. 44m 32s
    1. Understanding classes
      1m 48s
    2. Writing a custom class
      4m 21s
    3. Extending an existing class
      2m 16s
    4. Understanding methods
      2m 11s
    5. Public vs. private properties and methods
      2m 46s
    6. Bringing a class object to the timeline
      14m 16s
    7. Defining a document class
      8m 13s
    8. Setting up a classpath
      6m 20s
    9. Creating useful classes
      2m 21s
  7. 36m 4s
    1. Understanding conditional statements
      1m 36s
    2. Writing a conditional statement
      4m 40s
    3. Understanding conditional operators
      1m 37s
    4. Using conditional operators
      4m 49s
    5. Setting up alternate conditions
      4m 43s
    6. Writing compound conditions
      4m 22s
    7. Understanding loops
      1m 30s
    8. Creating a code loop
      2m 58s
    9. Using a loop to generate instances of a class
      3m 44s
    10. Placing loop-created instances
      6m 5s
  8. 12m 49s
    1. Understanding the math class
      1m 5s
    2. Using basic math operators
      1m 46s
    3. Generating random numbers
      2m 15s
    4. Using different techniques to round numbers
      7m 43s
  9. 56m 20s
    1. Creating a text field
      3m 27s
    2. Styling a text field
      6m 28s
    3. Capturing data from a text field
      7m 38s
    4. Loading external text
      8m 25s
    5. Scrolling a text field
      5m 14s
    6. Understanding arrays
      9m 48s
    7. Using text and arrays to create a game
      8m 24s
    8. Finishing the text game
      6m 56s
  10. 1h 9m
    1. Storyboarding your application effectively
      3m 13s
    2. Writing a memory card class
      5m 57s
    3. Writing a memory game class
      3m 51s
    4. Adding graphics to cards
      9m 20s
    5. Placing cards
      7m 33s
    6. Detecting matches
      8m 40s
    7. Resetting cards
      4m 53s
    8. Handling incorrect matches
      5m 14s
    9. Determining a win
      3m 51s
    10. Adding additional cards
      6m 47s
    11. Randomizing cards
      10m 17s
  11. 36m 30s
    1. Drawing with code
      8m 12s
    2. Creating a color change
      5m 20s
    3. Generating a random color change
      6m 58s
    4. Animating a color change
      4m 50s
    5. Using filters
      3m 30s
    6. Modifying filter properties
      4m 13s
    7. Animating filters
      3m 27s
  12. 51m 50s
    1. Loading external images and Flash movies
      4m 1s
    2. Communicating to loaded movies
      6m 31s
    3. Loading sound
      4m 6s
    4. Starting and stopping sound
      6m 18s
    5. Pausing and resuming sound
      9m 46s
    6. Managing the volume of sound
      5m 41s
    7. Understanding Flash video connections
      1m 0s
    8. Loading video
      5m 33s
    9. Controlling video playback
      8m 54s
  13. 45m 54s
    1. Overview of creating a drag-and-drop game
      57s
    2. Creating drag-and-drop class
      12m 7s
    3. Detecting collisions
      8m 44s
    4. Responding to collisions
      9m 1s
    5. Detecting a win
      4m 2s
    6. Adding drop shadows
      3m 43s
    7. Randomly placing objects
      7m 20s
  14. 23s
    1. Closing
      23s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now "Already a member? Log in

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed ActionScript 3.0 in Flash CS3 Professional Essential Training.

Return to your organization's learning portal to continue training, or close this page.


OK

Course retiring soon

ActionScript 3.0 in Flash CS3 Professional Essential Training will be retired from the lynda.com library on October 10, 2014. Training videos and exercise files will no longer be available, but the course will still appear in your course history and certificates of completion.


Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.