Foros del Web » Creando para Internet » Flash y Actionscript »

definir variables globales

Estas en el tema de definir variables globales en el foro de Flash y Actionscript en Foros del Web. Estoy utilizando el "adobe flash CS3 professional" y estoy intentando definir 2 variables globales, pero no se como. de momento lo hago de la siguiente ...
  #1 (permalink)  
Antiguo 03/10/2008, 07:01
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 4 meses
Puntos: 4
definir variables globales

Estoy utilizando el "adobe flash CS3 professional"
y estoy intentando definir 2 variables globales, pero no se como.

de momento lo hago de la siguiente manera:
Código:
_global.off = new int(2);
_global.ini = new int(1);
stop();
en el primer fotograma,
el problema es que al ejecutar me sale el siguiente error:

Cita:
Escena 1, Capa "actionscript", Fotograma 1, Linea 1
1120: Acceso a una propiedad _global no definida.
_global.off = new int(2);
el problema supongo que esta en que no inicializo bien la variable, como puedo hacerlo?

lo unico k me interesa hacer escrear 2 variables numericas que sena visibles para toda la pelicula


Gracias por adelantado
  #2 (permalink)  
Antiguo 05/10/2008, 04:26
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 4 meses
Puntos: 4
Respuesta: definir variables globales

up, me urge mucho
  #3 (permalink)  
Antiguo 05/10/2008, 05:49
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 16 años, 4 meses
Puntos: 51
Respuesta: definir variables globales

Código PHP:
_global.off Math.floor(2);
_global.iniMath.floor(1);
stop(); 
aver si esto t sirve
__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft
  #4 (permalink)  
Antiguo 05/10/2008, 13:42
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 4 meses
Puntos: 4
Respuesta: definir variables globales

me sigue dando el mismo error :$ alguna otra forma de definir una variable que pueda ser vista por todos los clips de la pelicula?
  #5 (permalink)  
Antiguo 05/10/2008, 16:47
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 4 meses
Puntos: 43
Respuesta: definir variables globales

Hola TCL_ZIP !

Tu proyecto lo estas compilando en As3.0 y la palabra reservada global fue eliminada, ahora en As3.0 puedes enfrentar este problema con una clase que implemente el patrón de diseño llamado 'Singleton', con esta solución puedes tener una instancia global en tu proyecto.

No sé si lo que te mencionó te suene a chino pero no te quiero confundir más, te propongo que compiles tu proyecto en As2.0 para que puedas volver a utilizar la palabra reservada _global, y si no quieres compilarlo en as2.0 pues con gusto te explico como sería la solución en as3.0.

Un saludote !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
  #6 (permalink)  
Antiguo 05/10/2008, 17:18
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 20 años, 4 meses
Puntos: 4
Respuesta: definir variables globales

pues la verdad me interesa tambien la solucion en AS3.0 para poder seguir aprendiendo ^^

gracias por tu interes
  #7 (permalink)  
Antiguo 05/10/2008, 18:59
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 4 meses
Puntos: 43
Respuesta: definir variables globales

Cita:
Iniciado por TCL_ZIP Ver Mensaje
pues la verdad me interesa tambien la solucion en AS3.0 para poder seguir aprendiendo ^^

gracias por tu interes
Hola TCL_ZIP ! !

Para solucionar esto en as3.0 tienes que crear un archivo aparte con extensión .as, este se debe encontrar en donde tienes el .fla de tu proyecto, lo llamaremos en este caso Global (Global.as), ahora el código que va dentro de este archivo es el siguiente:

Código:
package {

    public class Global {
    
            private var _data:Object;
            private static var _self:Global;

            public function Global() {
                _data = new Object();
            }

            public static function getInstance():Global {
                if(_self == null) {
                    _self = new Global();
                }
                return _self;
            }

            public function setValue(key:String, value:*):void {
                _data[key] = value;
            }

            public function getValue(key:String):* {
                return _data[key];
            }
    }
}
Esta clase tiene como finalidad guardar valores globales en un objeto, así en toda tu aplicación podrás consultarlo sin problemas, el modo de usarlo sería de la siguiente forma en tu .fla:

Código:
//En esta parte obtenemos nuestra instancia global
var global:Global = Global.getInstance();

//Para declararlas desde cualquier punto.
global.setValue("off", 2);
global.setValue("ini", 1);

//Para recuperarlas desde cualquier punto
trace(global.getValue("off"));
trace(global.getValue("ini"));
Sale, cualquier duda no dudes en preguntar.

Un saludote !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:19.