Ciao a tutti, ho un giochino in flash con i sorgenti. Alla fine di questo gioco vorrei inviare una variabile, la variabile del punteggio ovvero score.
codice:
Stage.align = "tl";//aligns flash top left
Stage.scaleMode = "Scale";//makes objects not stretch when page is resized

//define vars
var segmentNumber:Number = 0;
var segmentLength:Number = new Number;
var segmentDistance:Number = new Number;
var currentSegX:Number = new Number;
var currentSegY:Number = new Number;
var currentSegR:Number = new Number;
var turnIncriment:Number = new Number;
var speed:Number = new Number;
var addSegInc:Number = 7;
var yumNum:Number = 0;
var numberOfSegs:Number = new Number;
var score:Number = 0;
var scoreInc:Number = 10;

//get xml
var snakeGameXML:XML = new XML();
snakeGameXML.ignoreWhite = true;
snakeGameXML.onLoad = function(bSuccess:Boolean):Void  {
    if (bSuccess) {
        //get the variables from the xml
        segmentLength = Number(snakeGameXML.firstChild.attributes.segmentLength);
        segmentDistance = Number(snakeGameXML.firstChild.attributes.segmentDistance);
        startSegX = Number(snakeGameXML.firstChild.attributes.currentSegX);
        startSegY = Number(snakeGameXML.firstChild.attributes.currentSegY);
        startSegR = Number(snakeGameXML.firstChild.attributes.currentSegR);
        turnIncriment = Number(snakeGameXML.firstChild.attributes.turnIncriment);
        speed = Number(snakeGameXML.firstChild.attributes.speed);
        gameHeight = Number(snakeGameXML.firstChild.attributes.gameHeight);
        gameWidth = Number(snakeGameXML.firstChild.attributes.gameWidth);
        timeBetweenElongate = Number(snakeGameXML.firstChild.attributes.timeBetweenElongate)* 1000;
    }else{
        trace("xml did not load, use defaults");
        //these are the default vars for if you aren't using the xml.
        segmentLength = 500;
        segmentDistance = 7;
        startSegX = 100;
        startSegY = 30;
        startSegR = 90;
        turnIncriment = 5;
        speed =3;
        gameHeight = Stage.height;
        gameWidth = Stage.width;
        timeBetweenElongate = 1000;
    };
    createInterface();
    attachStartScreen();
};

function createInterface(){
    this.attachMovie("header", "header_mc", 43, {_x:gameWidth - 250, _y:5});//this is where the score is
    this.createEmptyMovieClip("pointsScoredGroup_mc", 44);//this is where the +10 goes when you hit an apple
    createRipple();
};

function createRipple(){
    this.createEmptyMovieClip("ripples_mc", 55);//create mc for ripples
    var rippleNum:Number = 0;
    ripple = new Object();
    ripple.interval = function() {
        rippleNum++;
        var randomX:Number = Math.round(Math.random()* (gameWidth - 40))+20;//random x and y for ripple
        var randomY:Number = Math.round(Math.random()* (gameHeight - 40))+20;
        var rippleScale:Number = Math.round(Math.random()* 80)+ 80;//random scale
        ripples_mc.attachMovie("ripple", "ripple_mc", rippleNum, {_x:randomX, _y:randomY, _xscale:rippleScale, _yscale:rippleScale});//attach ripple
    }
    setInterval(ripple, "interval", 500 );//attach a ripple every 1/2 second
}

function updateScore(){
    var scoreText:String = "SCORE: " + score;//score text
    header_mc.score_txt.text = scoreText;
    header_mc.scoreShadow_txt.text = scoreText;//write text in shadow
};

function updateScore_pette(){
    var punteggio:Number = score;//score text
    end_mc.punteggio.text = scoreText;
   
};



function attachStartScreen(){
    //this is the start screen
    this.createEmptyMovieClip("start_mc", 744);
    start_mc._alpha = 0;
    start_mc._x = (gameWidth - 350)/2;//define position
    start_mc._y = (gameHeight - 350)/2;
    start_mc.attachMovie("startScreen", "startScreen_mc", 2);
    tweenAlpha("start_mc", 100, false);//tween fade in
    start_mc.startScreen_mc.startButton_mc.onRelease = function(){//start button
        score = 0;
        updateScore();
        startSnake(segmentLength);
        attachYum();
        tweenAlpha("start_mc", 0, true);//fade start button out
        segmentInterval = setInterval(segments, "interval", timeBetweenElongate);//periodically make snake longer
    };
   
};

function attachEndScreen(){
    //this is the end screen
    this.createEmptyMovieClip("end_mc", 744);
    end_mc._x = (gameWidth - 350)/2;//define position
    end_mc._y = (gameHeight - 350)/2;
    end_mc.attachMovie("endScreen", "endScreen_mc", 2);
    tweenAlpha("end_mc", 100, false);//tween fade in
        updateScore_pette();


   



       
};

//start the snake
function startSnake(segToAdd:Number):Void{
    //starting point for the snake
    currentSegX = startSegX;
    currentSegY = startSegY;
    currentSegR = startSegR;
    snake_mc.removeMovieClip();//kill the old snake
    this.createEmptyMovieClip("snake_mc", 10);//make new snake
    snake_mc._alpha = 0;//start invisible
    tweenAlpha("snake_mc", 100, false);//fade snake in
    yums_mc.removeMovieClip();//get rid of apples
    this.createEmptyMovieClip("yums_mc", 409);//make new clip for apples
    for(var i:Number = 1;i<segToAdd;i++){
        segmentNumber++;
        currentSegX += segmentDistance;//add segments
        snake_mc.attachMovie("bodySeg", "seg"+segmentNumber+"_mc", segmentNumber, {_x:currentSegX, _y:currentSegY, _rotation:currentSegR});
    };
   
    snake_mc.attachMovie("head", "head_mc", 1, {_x:currentSegX, _y:currentSegY, _rotation:currentSegR});//attach snake head
    numberOfSegs = segToAdd;
    moveSnake();
};
//where to put the next segment
function segPosition():Array{
   
    if(Key.isDown(Key.RIGHT)) { //when you click the right button change angle
         currentSegR += turnIncriment;
     }else if (Key.isDown(Key.LEFT)) { //when you click the left button change angle
         currentSegR += -turnIncriment;
     }
    currentSegX += Math.sin( (Math.PI* currentSegR)/180 )* segmentDistance;//determine where next seg x and y go
    currentSegY += -(Math.cos( (Math.PI* currentSegR)/180 )* segmentDistance);
   
    segmentNumber++;
   
    var positionsArray:Array = new Array;//create array for positions
    //if the snake goes off the screen put the on the opposite side
    if(currentSegX > gameWidth + 16){
        currentSegX = -16;
    }else if(currentSegX < -16){
        currentSegX = gameWidth + 16;
    };
    if(currentSegY > gameHeight + 16){
        currentSegY = -16;
    }else if(currentSegY < -16){
        currentSegY = gameHeight + 16;
    };
   
    positionsArray.push(currentSegX, currentSegY, currentSegR);//push positions to array
    return positionsArray;
};
//check the hit areas
function checkHit(){
    //check to see if the head hits the snake
    for(var i:Number = segmentNumber - numberOfSegs;i<segmentNumber;i+=5){
        if(eval("snake_mc.seg"+i+"_mc").hitTest(snake_mc.head_mc.hitArea_mc)){
            delete snake_mc.onEnterFrame;//stop moving snake
            clearInterval(segmentInterval);//stop adding segments
            tweenAlpha("snake_mc", 0, true);//fade snake out
            //
            //mettere funzione per visualizzare lo score e la registrazione
            //
           
attachEndScreen();


            //
            //
            //
            //
            //
            //
           
        };
    };
};
function checkYumHit():Void{
    //see if the apples hit the snake head
    if (eval("yums_mc.yum"+yumNum+"_mc").hitTest(snake_mc.head_mc.hitArea_mc)){
       
        pointsScoredGroup_mc.attachMovie("pointsScored", "pointsScored"+yumNum+"_mc", yumNum, {_x:eval("yums_mc.yum"+yumNum+"_mc")._x, _y:eval("yums_mc.yum"+yumNum+"_mc")._y});
        eval("pointsScoredGroup_mc.pointsScored"+yumNum+"_mc").score_txt.text = "+" + scoreInc;//change score text
       
        tweenAlpha("pointsScoredGroup_mc.pointsScored"+yumNum+"_mc", 0, true);
       
        eval("yums_mc.yum"+yumNum+"_mc").removeMovieClip();//remove apple

        score += scoreInc;//add to score
        updateScore();//update score
        attachYum();
    };
};


function attachYum():Void{
    //attach an apple
    yumNum++;
    //random position of the apple
    var randomX:Number = Math.round(Math.random()* (gameWidth - 40))+20;
    var randomY:Number = Math.round(Math.random()* (gameHeight - 40))+20;
    var randomR:Number = Math.round(Math.random()* 360);
    //var randomY:Number =
    yums_mc.attachMovie("yumYum", "yum"+yumNum+"_mc", yumNum, {_x:randomX, _y:randomY, _rotation:randomR, _alpha:0});
    tweenAlpha("yums_mc.yum"+yumNum+"_mc", 100, false);//fade alpha in
   
};
//peridically make it longer
segments = new Object();
segments.interval = function() {
    numberOfSegs += addSegInc;//add segments
}


//move the snake
function moveSnake():Void{
   
    snake_mc.onEnterFrame = function(){
        checkYumHit();//see if you are eating an apple
       
        for(var i:Number = 0;i<speed;i++){
            var positionsArray:Array = segPosition();//get positions of next seg
           
            checkHit();//check to see if snake hits itself
           
            snake_mc.head_mc._x = positionsArray[0];//move head
            snake_mc.head_mc._y = positionsArray[1];//move head
            snake_mc.head_mc._rotation = positionsArray[2];//move head
            snake_mc.head_mc.swapDepths(segmentNumber + 100);//move head depth
           
            snake_mc.attachMovie("wake", "wake"+segmentNumber+"_mc", segmentNumber + 99, {_x:positionsArray[0], _y:positionsArray[1], _rotation:positionsArray[2]});//attach wake
       
            snake_mc.attachMovie("bodySeg", "seg"+segmentNumber+"_mc", segmentNumber, {_x:positionsArray[0], _y:positionsArray[1], _rotation:positionsArray[2]}); //attach body seg
       
            var lastSegNum:Number = segmentNumber-numberOfSegs;//number of last segment
            eval("snake_mc.seg"+lastSegNum+"_mc").removeMovieClip();//remove the last segment
            //make the tail taper off and get skinny at neck
            if(i == 1){
                //make the first part skinny
                var smallestWidth:Number = 30;//skinniest part of the neck
                var numberToGrow:Number = Math.round(numberOfSegs/3)//grows from the first 1/4
                if(numberToGrow > 30){
                    numberToGrow = 30;
                };
               
                for(var iii:Number = 0;iii<numberToGrow;iii++){
                    eval("snake_mc.seg"+(segmentNumber - iii)+"_mc")._xscale = iii* ((100-smallestWidth)/numberToGrow) + smallestWidth;
                };
                //how many taper off
                var numberToTaper:Number = Math.round(numberOfSegs/2);//tapers the last 1/2
                if(numberToTaper > 45){
                    numberToTaper = 45;
                };
                for(var ii:Number = 0;ii<numberToTaper;ii++){
                   
                    eval("snake_mc.seg"+(lastSegNum + ii)+"_mc")._xscale = ii* (100/numberToTaper);
                };
            };
        };
    };
};

//tween fade
easeType = mx.transitions.easing.Strong.easeOut;
var tweenTime = .5;
tweenAlpha = function(tweenClipAlpha:String, tweenEndAlpha:Number, thenRemove:Boolean){
    //fade in and out function
    tweenClipAlpha = eval(tweenClipAlpha);
    alphaTween = new mx.transitions.Tween(tweenClipAlpha, "_alpha", easeType, getProperty(tweenClipAlpha, _alpha), tweenEndAlpha, 1, true);
    if(thenRemove == true){//if true remove the clip when faded in or out
        alphaTween.onMotionFinished = function(){
            eval(tweenClipAlpha).removeMovieClip();
        };
    };
};

snakeGameXML.load("snakeGame.xml");//loads xml
Ho aggiunto un pulsante sul clip filmato caricato alla fine con il codice classico
codice:
on (release)
{
getURL("../registra.php", "_self", "POST");
}
Non riesco a prendere la variabile del punteggio. Le ho provate tutte ma la mia pagina non le riesce a prendere.

Sapete darmi una mano ?
Grazieeeeee