Para que algo "rote" debe ser de la Clase DisplayObject (o de cualquier clase que extienda de ella, BitMap, Shape, MovieClip....) pero no puede ser un simple Objeto
Además, "this" se refiere a la propia película, cuando tú lo que quieres mover es "cuca1"
Con todos esos cambios, debemos escribir
Código ActionScript :
function cuca1move(e:Event):void{
var cuca1:MovieClip= e.target as MovieClip; //(*)
cuca1.cuca1move = Math.random() * 10 - 5;
cuca1.rotation += cuca1.cuca1move;
}
Por cierto, "cuca1" supongo que es el nombre de instancia de un MC. En general NO es bueno tener un nombre de variable igual que un nombre de instancia así pues yo le cabiaría el nombre de la variable
Código ActionScript :
function cuca1move(e:Event):void{
var cuca:MovieClip= e.target as MovieClip; //(*)
cuca.cucamove = Math.random() * 10 - 5;
cuca.rotation += cuca.cucamove;
}
(*)Cuando añadimos un Listener con addEventListener le indicamos una función que es lo que se realiza. Esta función siempre tiene como argumento una variable de tipo Event (o de MouseEvent). Así que la función DESCONOCE en absoluto nada. Sólo podemos usar dentro de la función, o propiedades de la vriable tipo Event, o variables que hallamos definido a nivel de Clase (vamos, fuera de cualquier función)
Las variables del tipo Event tienen una importante propiedad "target" (también tienen "currentTarget", dejo la explicación para otro post), que se refiere al MC, Botón, Shape, etc al que se ha añadido el evento. Lamentablemente, Flash desconoce de qué tipo es "e.target". Por defecto el supone que, simplemente es un Objeto, así que si es "algo más", se lo tenemos que indicar nosotros. Generalmente eso se hace mediante una variable usando "as" o una conversión de cast.
Código ActionScript :
function onEvento(e:Event){
//definimos una variable que va a recoger el Target y le decimos que es de tipo MovieClip
var mc:MovieClip=e.target as MovieClip
//También se podría haber escrito
var mc:MovieClip=MovieClip(e.target)
//Ya, en lugar de "e.target", podemos usar "mc"
}
Vale, he puesto que es un MovieClip, igual podríamos haber puesto que es un DisplayObject, todo depende de lo que realmente sea y de qué propiedades o métodos necesitemos.