Ciao,
il file SQL è il seguente:
PHP Code:
DROP TABLE IF EXISTS `memory_game`;# MySQL returned an empty result set (i.e. zero rows).
CREATE TABLE `memory_game` (
`ID` int(11) NOT NULL auto_increment,
`name` text NOT NULL,
`surname` text NOT NULL,
`score` int(11) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM AUTO_INCREMENT=1068 DEFAULT CHARSET=utf8 AUTO_INCREMENT=1068 ;# MySQL returned an empty result set (i.e. zero rows).
TopTen.as:
Code:
/*
*************************************
* Memory Game
* http://www.FlepStudio.org
* © Author: Filippo Lughi
* version 1.0
*************************************
*/
package org.FlepStudio
{
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.xml.*;
import caurina.transitions.Tweener;
public class TopTen
{
private var request:URLRequest=new URLRequest('http://www.flepstudio.org/utilita/MemoryGame/topTen.php');
private var _fla:MovieClip;
private var players_fields_array:Array;
private var scores_fields_array:Array;
private var players_array:Array=new Array();
private var names_array:Array=new Array();
private var surnames_array:Array=new Array();
public function TopTen(fla:MovieClip)
{
_fla=fla;
players_fields_array=new Array(_fla.top_mc.player_0_txt,_fla.top_mc.player_1_txt,_fla.top_mc.player_2_txt,_fla.top_mc.player_3_txt,_fla.top_mc.player_4_txt,
_fla.top_mc.player_5_txt,_fla.top_mc.player_6_txt,_fla.top_mc.player_7_txt,_fla.top_mc.player_8_txt,_fla.top_mc.player_9_txt);
scores_fields_array=new Array(_fla.top_mc.score_0_txt,_fla.top_mc.score_1_txt,_fla.top_mc.score_2_txt,_fla.top_mc.score_3_txt,_fla.top_mc.score_4_txt,
_fla.top_mc.score_5_txt,_fla.top_mc.score_6_txt,_fla.top_mc.score_7_txt,_fla.top_mc.score_8_txt,_fla.top_mc.score_9_txt);
for(var i:int=0;i < players_fields_array.length;i++)
{
players_fields_array[i].alpha=0;
scores_fields_array[i].alpha=0;
}
this.loadXML();
}
private function loadXML():void
{
var loader:URLLoader=new URLLoader();
loader.addEventListener(Event.COMPLETE,completeHandler);
try
{
loader.load(request);
}
catch(error:Error)
{
trace('Impossibile caricare il documento.');
}
}
private function completeHandler(event:Event):void
{
var result:XML=new XML(event.target.data);
var myXML:XMLDocument=new XMLDocument();
myXML.ignoreWhite=true;
myXML.parseXML(result.toXMLString());
var node:XMLNode=myXML.firstChild;
var n:int=int(node.childNodes.length);
for(var i:int=0;i10)
break;
}
displayNames();
fadeInScores();
}
private function getRightName(n:int):void
{
for(var i:int=0;i < players_array.length;i++)
{
if(players_array[i].score==n)
{
if(names_array.length<10)
{
names_array.push(players_array[i].name);
surnames_array.push(players_array[i].surname);
players_array.splice(i,1);
}
else
break;
}
}
//trace(names_array);
}
private function displayNames():void
{
for(var j:int=0;j < names_array.length;j++)
{
players_fields_array[j].text=names_array[j]+" "+surnames_array[j];
}
}
private function fadeInScores():void
{
for(var i:int=0;i < players_fields_array.length;i++)
{
Tweener.addTween(players_fields_array[i],{alpha:1,time:0.2,delay:i*0.1,transition:"easeOutQuad"});
Tweener.addTween(scores_fields_array[i],{alpha:1,time:0.2,delay:i*0.1,transition:"easeOutQuad"});
}
}
}
}
Main.as:
Code:
/*
*************************************
* Memory Game
* http://www.FlepStudio.org
* © Author: Filippo Lughi
* version 1.0
*************************************
*/
package org.FlepStudio
{
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.utils.*;
import caurina.transitions.Tweener;
public class Main extends MovieClip
{
private var _so:SharedObject;
private var timer:Timer;
public var top_ten:TopTen;
public var memory:Memory;
public static var _Name:String;
public static var _Surname:String;
public static var _Score:int;
public static var _Level:int=1;
public static var last_score:int;
public function Main()
{
addEventListener(Event.ADDED_TO_STAGE,init);
}
private function init(evt:Event):void
{
addEventListener(Event.ADDED_TO_STAGE,init);
stage.frameRate=31;
displayRanking();
checkSharedObject();
}
private function checkSharedObject():void
{
_so=SharedObject.getLocal('MemoryGame');
if(_so.data.name==undefined||_so.data.surname==undefined)
needToSave();
else
displayInfo();
}
private function needToSave():void
{
trace('no info');
ins_mc.start_btn.addEventListener(MouseEvent.MOUSE_DOWN,saveCookie);
}
private function displayInfo():void
{
ins_mc.name_txt.text=_so.data.name;
ins_mc.surname_txt.text=_so.data.surname;
ins_mc.start_btn.addEventListener(MouseEvent.MOUSE_DOWN,startGame);
}
private function saveCookie(evt:MouseEvent):void
{
if(evt.currentTarget.parent.name_txt.text!=''&&evt.currentTarget.parent.surname_txt.text!=''&&evt.currentTarget.parent.name_txt.text!=undefined&&evt.currentTarget.parent.surname_txt.text!=undefined)
{
var flushStatus:String=null;
_so.data.name=evt.currentTarget.parent.name_txt.text;
_so.data.surname=evt.currentTarget.parent.surname_txt.text;
try
{
flushStatus=_so.flush(10000);
}
catch (error:Error)
{
trace('Error...cannot write on disk');
}
if(flushStatus != null)
{
switch(flushStatus)
{
case SharedObjectFlushStatus.PENDING:
trace('Permissions request...\n');
_so.addEventListener(NetStatusEvent.NET_STATUS, onFlushStatus);
break;
case SharedObjectFlushStatus.FLUSHED:
var m:MouseEvent;
startGame(m);
break;
}
}
}
else
{
displayError('Insert name and surname, please');
}
}
private function onFlushStatus(event:NetStatusEvent):void
{
trace("User closed diaolog window.\n");
switch (event.info.code)
{
case "SharedObject.Flush.Success":
trace("Usere confirmed permission.\n");
break;
case "SharedObject.Flush.Failed":
trace("User denied permission.\n");
break;
}
_so.removeEventListener(NetStatusEvent.NET_STATUS,onFlushStatus);
}
private function displayError(s:String):void
{
ins_mc.error_txt.text=s;
timer=new Timer(2500,1);
timer.addEventListener(TimerEvent.TIMER,hideError);
timer.start();
}
private function hideError(evt:TimerEvent):void
{
ins_mc.error_txt.text='';
}
private function displayRanking():void
{
top_ten=new TopTen(this);
}
private function startGame(evt:MouseEvent):void
{
_Name=ins_mc.name_txt.text;
_Surname=ins_mc.surname_txt.text;
Tweener.addTween(ins_mc,{y:stage.stageHeight+100,time:0.5,transition:"easeOutQuad"});
memory=new Memory(this);
}
}
}
Memory.as:
Code:
/*
*************************************
* Memory Game
* http://www.FlepStudio.org
* © Author: Filippo Lughi
* version 1.0
*************************************
*/
package org.FlepStudio
{
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
import flash.media.*;
import flash.net.*;
import caurina.transitions.Tweener;
public class Memory
{
private var colors_array:Array;
private var sounds_array:Array;
private var global_sequence_array:Array=new Array();
private var pieces_array:Array;
private var _fla:MovieClip;
private var correct:Correct;
private var game_over:GameOver;
private var updating_mc:mc_updating;
private var store_score:StoreScore;
private var timer_1:Timer;
private var timer_2:Timer;
private var timer_3:Timer;
private var counter:int=0;
private var counter_check:int=0;
private var row_count:int=10;
public function Memory(fla:MovieClip)
{
_fla=fla;
colors_array=new Array(_fla.holder_mc.red_mc,_fla.holder_mc.green_mc,_fla.holder_mc.yellow_mc,_fla.holder_mc.blue_mc);
for(var i:int=0;iMain.last_score)
store_score=new StoreScore(_fla);
else
hideUpdating();
}
public function hideUpdating():void
{
_fla.removeChild(updating_mc);
updating_mc=null;
game_over.play_btn.visible=true;
game_over.play_btn.addEventListener(MouseEvent.MOUSE_DOWN,playAgain);
}
private function playAgain(evt:MouseEvent):void
{
var request:URLRequest=new URLRequest("javascript:location.reload()");
navigateToURL(request,'_parent');
}
}
}
StoreScore.as:
Code:
/*
*************************************
* Memory Game
* http://www.FlepStudio.org
* © Author: Filippo Lughi
* version 1.0
*************************************
*/
package org.FlepStudio
{
import flash.display.*;
import flash.events.*;
import flash.net.*;
public class StoreScore
{
private var request:URLRequest=new URLRequest('http://www.flepstudio.org/utilita/MemoryGame/storeData.php');
private var _fla:MovieClip;
public function StoreScore(fla:MovieClip)
{
_fla=fla;
sendToPHP();
}
private function sendToPHP():void
{
var variables:URLVariables=new URLVariables();
variables.name=Main._Name;
variables.surname=Main._Surname;
variables.score=Main._Score;
request.method=URLRequestMethod.POST;
request.data=variables;
var loader:URLLoader=new URLLoader();
loader.dataFormat=URLLoaderDataFormat.VARIABLES;
addListeners(loader);
try
{
loader.load(request);
}
catch (error:Error)
{
trace('Unable to load requested document.');
}
}
private function addListeners(d:IEventDispatcher):void
{
d.addEventListener(Event.COMPLETE,onComplete);
}
private function onComplete(e:Event):void
{
var loader:URLLoader=URLLoader(e.target);
var vars:URLVariables=new URLVariables(loader.data);
if(vars.answer=="ok")
{
_fla.memory.hideUpdating();
}
}
}
}
storeData.php:
PHP Code:
<?php
/*
*************************************
Memory Game
http://www.flepstudio.org
Author: Filippo Lughi
version 1.0
*************************************
*/
/******** CHANGE YOUR DATABASE SETTING *******/
$dbhost = 'localhost'; // database host ( usually localhost )
$dbuser = 'root'; // database username
$dbpass = 'root'; // database password
$dbname = 'db_name'; // database name
$mysql = mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);
/* VARIABLES FROM FLASH */
$name=$_REQUEST["name"];
$surname=$_REQUEST["surname"];
$score=$_REQUEST["score"];
/*INSERT INTO DB*/
$Query = "INSERT INTO `".$dbname."`.`memory_game` (`ID`, `name`, `surname`, `score`) VALUES (NULL, \"".$name."\", \"".$surname."\",\"".$score."\");";
/* ECHO TO FLASH */
if(mysql_query($Query))
{
$answer='ok';
echo "answer=".$answer;
}
else
{
$answer='nope';
echo "answer=".$answer;
}
?>
topTen.php:
PHP Code:
<?php
/*
*************************************
Memory Game
http://www.flepstudio.org
Author: Filippo Lughi
version 1.0
*************************************
*/
/******** CHANGE YOUR DATABASE SETTING *******/
$dbhost = 'localhost'; // database host ( usually localhost )
$dbuser = 'root'; // database username
$dbpass = 'root'; // database password
$dbname = 'db_name'; // database name
$mysql = mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);
$Query="SELECT * from memory_game";
$Result=mysql_query( $Query );
$Return="<?xml version=".'"1.0"'." encoding=".'"UTF-8"?>'."\n"."<players>";
while($player=mysql_fetch_object($Result))
{
$Return.="<player><id>".$player->ID."</id><name>".$player->name."</name><surname>".$player->surname."</surname><score>".$player->score."</score></player>";
}
$Return.="</players>";
mysql_free_result($Result);
echo ($Return);
?>
Bookmarks