Click inside the flash to play. Refresh the page for a new game. ---
INSTRUCTIONS:
Help pop star Robbie Berry keep his crazy fangirls happy by giving them a signed copy of his album before they reach the table!
Move Robbie left and right using the LEFT and RIGHT arrow keys.
There are stacks of albums to your left and right. While next to a stack of CDs, press the SPACE key to pick up some albums.
You can pick up 5 albums at a time and carry a maximum of 10 albums.
Then, move back behind the table and start putting those albums down before those fangirls get there! Use the SPACE key to put an album on the table.
If the security guard icon appears at the left or the right next to the stack of CDs, tap SHIFT to call your trusty security guards to help! All current fangirls on screen will be ushered away!
Make sure not to run out of albums, because when a fangirl reaches the table and there is no signed album there for her, she will jump over the table and hug and kiss you to death! Three misses and the game is over.
There are two game modes, Game A and Game B. Click on either button to play, and refresh the page for a new game. Game A is normal difficulty, while in Game B the fangirls are a little more crazy!
---
Fangirl Frenzy // Actionscript 3 "Game and Watch" 1980s-style game, which was a coding/game programming assignment for uni.
Story/game content sadly inspired by the fact that One Direction was in Australia at the time this assignment started. Note: I do not like One Direction's music. Kept seeing all these news reports about crazy One Direction fangirls, and it somehow managed to leech into my uni work...
6 weeks of work from start to finish.
Created using Adobe Photoshop CS4, Adobe Illustrator CS4, Adobe Flash CS4 (and later finished in CS6 when I got it).
I really need to work on my Photoshop skills. I'm much stronger in Adobe Illustrator and Flash.
8-bit sounds created with Super Flash Bros (Tom Vian, 2010) [link]
---
HTML version with Flash embedded, view here: [link]
Ahhhhh this is awesome!! It works really smoothly, and the way the fangirls light up each spot as they move toward the table is really, really cool ^_^
And now I have coding questions, because this is something I've never worked out: how do you generate an infinite number of fangirls? Is each one a new movieclip? (Or is it the same fangirl cycling through?)
The fangirls' crazy smiles are spot on XD Amazing work!
Thanks! I had fun making it. Don't know if you've ever seen/played a 1980s Game and Watch game? They used LED screens. None of the graphics could overlap as the LED displays can't display overlapping graphics, and only displayed black. All the coloured elements were static on separate layers.
The fangirls are nested in an Array, which has to be declared using:
var fanGirl1: Array;
and created in the game startup function "init"
fanGirl1: new Array();
With Arrays you have to use push to start the movieclip. I think our lecturer told us to cycle through the array backwards. There are 5 movieclips (Fangirl #1-#5), each one had its own array. Generating the fangirls looked something like this:
function generateFangirls():void { var chance:int=Math.ceil(Math.random()*3); if (chance==1) { var whichFangirl:int=Math.ceil(Math.random()*5); var newfanGirl:MovieClip; if (whichFangirl==1) { newfanGirl=new FanGirl1(); fanGirl1clips.push(newfanGirl); newfanGirl.x=512; newfanGirl.y=384;
[More curly braces there]
I could send you the code if you like.
I think the concept of arrays is covered in the 3-hour tute from uni we had to watch in order to build a lot of our game [link]
I always suspected it had something to do with push! Ah, I always wondered how you would name the new movieclip generated, but of course, you don't have to, since it's referenced by the variable. (Er, I think? ) What do the fanGirl1 and fanGirl1clips arrays actually hold?
Thanks heaps for that explanation, I think I sort of (almost) get it now I will definitely check out that tutorial!!!
In your library you have to define the AS Linkage for each of the symbols/MCs under Properties in order for it to work with Actionscript.
I can't really remember too well, but I believe "fanGirl1" was just a MC which held the fangirl symbol in the first position (obviously in all the different positions, there are 5 frames in that MC), and "fanGirl1clips" was the AS Linkage for that MC which enabled it to be pushed via the array.
I have no clue what I did, but the first time I played normal difficulty didn't get noticeably tougher as I went along. Maybe I'm too used to intuitive games like Tetris that murder you after a set number of levels, but then the other level (maybe you should have just labelled them Normal and Difficult instead of Game A and B because I actually thought there were different goals in the two games ) lived up to expectations. Is it more of a reflex game, this one? I still think it's hard to work out whether the fangirl standing there already has an album or is waiting for one, but meh, i'm pretty sure retro games were like that anyway. Oh well, I had fun!
Lol cute game, but the icons are occasionally a bit confusing. I had no clue what was happening when the guy started flashing while he was being mobbed at the same time and I thought instructions were in the game oh well, it looks nice, great work!
And now I have coding questions, because this is something I've never worked out: how do you generate an infinite number of fangirls? Is each one a new movieclip? (Or is it the same fangirl cycling through?)
The fangirls' crazy smiles are spot on XD Amazing work!
Don't know if you've ever seen/played a 1980s Game and Watch game? They used LED screens. None of the graphics could overlap as the LED displays can't display overlapping graphics, and only displayed black. All the coloured elements were static on separate layers.
The fangirls are nested in an Array, which has to be declared using:
var fanGirl1: Array;
and created in the game startup function "init"
fanGirl1: new Array();
With Arrays you have to use push to start the movieclip. I think our lecturer told us to cycle through the array backwards.
There are 5 movieclips (Fangirl #1-#5), each one had its own array. Generating the fangirls looked something like this:
function generateFangirls():void {
var chance:int=Math.ceil(Math.random()*3);
if (chance==1) {
var whichFangirl:int=Math.ceil(Math.random()*5);
var newfanGirl:MovieClip;
if (whichFangirl==1) {
newfanGirl=new FanGirl1();
fanGirl1clips.push(newfanGirl);
newfanGirl.x=512;
newfanGirl.y=384;
[More curly braces there]
I could send you the code if you like.
I think the concept of arrays is covered in the 3-hour tute from uni we had to watch in order to build a lot of our game [link]
I always suspected it had something to do with push! Ah, I always wondered how you would name the new movieclip generated, but of course, you don't have to, since it's referenced by the variable. (Er, I think?
Thanks heaps for that explanation, I think I sort of (almost) get it now
I can't really remember too well, but I believe "fanGirl1" was just a MC which held the fangirl symbol in the first position (obviously in all the different positions, there are 5 frames in that MC), and "fanGirl1clips" was the AS Linkage for that MC which enabled it to be pushed via the array.