Understanding AS3 shared objects
This is the AS3 version of Managing savegames with Flash shared objects.
In this post I’ll explain the basic of shared objects, then later I’ll add the feature to Designing the structure of a Flash game – AS3 version in order to have a game template more complete.
Let’s start with the result: that’s what we are going to create:
As you will see, the counter increases when you reload the page.
Let’s take a look at the script:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | package { import flash.display.Sprite; import flash.net.SharedObject; import flash.text.*; public class as3_shared_objects extends Sprite { var shared:SharedObject; public function as3_shared_objects() { shared = SharedObject.getLocal("reloaded"); if (shared.data.visits==undefined) { shared.data.visits = 1; } else { shared.data.visits ++; } show_text(shared.data.visits); shared.close(); } public function show_text(str) { var shared_text:TextField = new TextField(); var format:TextFormat = new TextFormat(); format.font = "Lucida Console"; format.color = 0xffff00; shared_text.width = 300; shared_text.defaultTextFormat = format; shared_text.x = 25; shared_text.y = 15; addChild(shared_text); shared_text.appendText("You visited this page "+str+" times"); } } } |
Line 3: importing the class handling shared objects
Line 6: declaring a SharedObject variable called shared
Line 8: getLocal() returns a reference to a locally persistent shared object (in this case reloaded) that is available only to the current client. If the shared object does not already exist, getLocal() creates one.
Lines 9-11: when looking at the visits value inside the shared ojbect, I set it to 1 if it’s undefined (it’s the first time I am executing the script)
Lines 12-14: if visits is not undefined, it’s not the first time I am executing the script, so I have to increment its value
Line 16: closing the shared object. Some docs say you may experience problems if you don’t close it… I tried and I haven’t any… but I am closing it anyway…
They can be easily customized to meet the unique requirements of your project.
7 Responses to “Understanding AS3 shared objects”
Leave a Reply
Trackbacks
-
Designing the structure of a Flash game - AS3 version - Part 3 : Emanuele Feronato on
January 16th, 2009 12:33 pm
[...] Moreover, I made some code optimization and now you can only play levels you already completed and the first uncompleted level, thanks to AS3 shared objects. [...]
-
Tutorial: Sharing shared objects between games/applications « the keg’o'grog blog on
June 6th, 2009 5:47 pm
[...] youself familiar with Saving and Loading in Flash by reading this tutorial or this tutorial. Thanks to Michael and Emanuele for this. You should also bookmark their blogs, these guys are [...]
Posts
- Rick Triqui: my first PlayCrafter game
- Prototype of a Flash game like Meeblings
- Games for the game developers!
- The art of debugging
- How to embed a text file in Flash
- Create a Flash game in minutes with PlayCrafter
- Upgrade your Flash CS4 to 10.0.2
- Play Mazeroll, my latest Box2D game
- Triqui MochiAds Arcade plugin for WordPress Released!!
- The MochiAds funnel
- Flash game creation tutorial - part 1
- Create a Lightbox effect only with CSS - no javascript needed
- Flash game creation tutorial - part 2
- Make a Flash game like Flash Element Tower Defense - Part 2
- Flash game creation tutorial - part 3
- Create a flash draw game like Line Rider or others - part 1
- Create a Flash Racing Game Tutorial
- Make a Flash game like Flash Element Tower Defense - Part 1
- Create a flash artillery game - step 1
- Create a flash draw game like Line Rider or others - part 5
- Flash game creation tutorial – part 5.2




(4.9 out of 5) - Flash game creation tutorial – part 3




(4.86 out of 5) - Creation of a platform game with Flash – step 2




(4.84 out of 5) - Create a survival horror game in Flash tutorial – part 1




(4.82 out of 5) - Create a flash artillery game – step 1




(4.82 out of 5) - Create a Flash Racing Game Tutorial




(4.8 out of 5) - Create a flash artillery game – step 2




(4.75 out of 5) - New tile based platform engine – part 6 – ladders




(4.74 out of 5) - Flash game creation tutorial – part 2




(4.73 out of 5) - The experiment – one year later




(4.7 out of 5)


So how to make something like ‘this site has been visited total of x times?
you could use javascript, there are many scripts on the ‘net
good tut!
Somehow if I update this by clicking on the headline ‘Understanding AS3 shared objects’ above, the counter increases by 2 ? – on a normal ‘F5′ browser update works correctly, and adds just 1.
To Orion: that isn’t the real reason he did this, it is there to show how u can have an update finished, for example: instead of updating each time u load it, it is updated each time that a level is finished, and it becomes the level number, not to show how many times u visit the page
Very good, but dude, please change your logo back to the old one.
I know that you paid money for this one, but you have to take the loss on the chin!
Great blog though :)