Flash News Reader

Lettore in flash (CS4 AS3) di file xml, può essere facilmente modificato per leggere rss, molto semplice da configurare: numero delle news, foglio di stile (css), colore di sfondo e grafica in genere, per facilitare il compito è tutto scritto sulla timeline con relativi commenti, niente classi esterne. Pieno supporto tecnico.

Il file vi verrà inviato a conferma del pagamento all’indirizzo email segnalato da Paypal. (Fla e file di esempio)

XML Flash News Reader (CS4 AS3)

Features: – Fully customizable from the timeline, max number of news, scroll speed, css support, easy to use and or modify. Full support, please feel free to mail me if you need help or more info.

You will receice your chosen file after payment confirmation at your email address i.e. the email you’ll use with Paypal. (Fla and sample files)

demo

News Reader: € 2.00

Regular expression

lo so, lo so, basta fare una ricerca su google et walla! un miliardo di pagine, ma oggi ho poco da fare e così…

codice per validare un indirizzo email in as3, ma il concetto è lo stesso anche in javascript,

function validateEmail(str) {
	var pattern:RegExp = /^(\w+[\-\.])*\w+@(\w+\.)+\w{2,4}+$/;
	var res:Object = pattern.exec(str);
		if (res == null) {
			return false;
	}
	return true;
}

di pattern ce ne sono tantissimi da applicare, questo credo sia uno dei più corti, mhhh, forse no, boh.

cmq vediamo nello specifico come funziona

il segno caret all’inizio ^ e il $ alla fine indicano che non devono esserci caratteri speciali all’inizio e alla fine della stringa,

in seguito verifichiamo che la stringa successiva sia composta da caratteri seguiti da un punto o un trattino (\w+[\-\.])* e che la stessa può essere ripetuta (asterisco), \w controlla / permette che vi siano altri caratteri,

poi abbiamo la… chiocciolina, altri caratteri seguiti da un punto @(\w+\.)

e infine limitiamo la parte finale a un minimo di 2 e un massimo di 4 caratteri w{2,4} che attualmente è il massimo, anche se in teoria non vi sono limiti, anzi fino a qualche tempo fa si usavano gli indirizzi IP

la function exec() corrisponde a test() in javascript e controlla se una stringa corrisponde al pattern specificato, naturalmente un pattern può essere utilizzato per controllare numeri, ad esempio un numero di telefono, un minimo / massimo di caratteri in una stringa etc etc

tutto qui, torno a non fare niente

:)

Asfunction in AS3

Avevo necessità di passare più variabili da un link in un campo di testo creato dinamicamente. In as2 e con asfunction sarebbe stato facile, in as3, usando TextEvent.LINK si può passare solo una parametro… che palle… :)
Il trucco che mi sono inventato, e tramite google non ho trovato nulla, è molto semplice e in questo modo è possibile passare più variabili.
In pratica delimito la stringa con la virgola, la trasformo in array e la… splitto, semplice!

tf.htmlText = "<a href='event:Valore da passare,50'>Click here</a>";

tf.addEventListener(TextEvent.LINK, linkHandler);

function linkHandler(linkEvent:TextEvent):void {
	var s:String = linkEvent.text
	var a:Array = s.split(',');
	var first_var = a[0];
	var second_var = a[1];
	// call a function
	trace_me(first_var,second_var)
}

function trace_me(a,b) {
	trace (a + " - " + b)

}

non è detto che esista un metodo migliore ma sinceramente non ho trovato nulla, e funziona!

:)

Tutti in riga!

Semplice function (AS3) per incolonnare degli oggetti.

var cols:Number = 5; // numero di oggetti in colonna
var numObj:Number = 20; // totale oggetti
var i:Number = 0;
var distance:Number = 5;
var newX:int = 0;
var newY:int = 0;
function createGrid():void {
	var shape:obj = new obj(); // oggetto in libreria o class
	if (!(i%cols) && i != 0) {
		newY = 0;
		newX += shape.width + distance;
	}
	shape.y = (distance+shape.height)*newY;
	shape.x = distance+newX ;
	addChild(shape);
	newY++;
	if (++i<numObj) {
		setTimeout(createGrid, 100);
	}
}

createGrid();

gradientFill in verticale AS3

ultimamente ho realizzato un player mp3 per il sito di un cliente, per lo spectrum ho usato un gradient in verticale che non avevo mai utilizzato, è tutto nella guida… :)
questo lo script

var matrix:Matrix = new Matrix();
matrix.createGradientBox(200, 200, (Math.PI/180)*90, 0, 0);
var colors:Array = [0xFD3B3B,0xEF7814,0xDBCF04,0x96D404,0x33B008];
var alphas:Array = [1,1,1,1,1];
var ratios:Array = [0,32,128,190,255];
var shape:Shape = new Shape();
shape.graphics.beginGradientFill(GradientType.LINEAR,colors, alphas, ratios, matrix);
shape.graphics.drawRect( 0, 0, 200, 200);
shape.graphics.endFill();
addChild(shape);


e il risultato

This movie requires Flash Player 9

a giorni pubblicherò anche il player

Blob

ok, non ho nulla da fare… :)

This movie requires Flash Player 9


var w:Number = 400;
var rect:Rectangle = new Rectangle(0, 0, w, w);

var btm:BitmapData= new BitmapData(w, w);
var btm2:BitmapData = new BitmapData(w, w);
var bmp:Bitmap = new Bitmap(btm2);

var point:Point= new Point(0, 0);
var a:Array;
a = [new Point(1, 1), new Point(1, 1)];

function onenterframe(e:Event) {
a[0].x += .5;
a[0].y += .5;
btm.perlinNoise(100, 100, 2, 0, false, true, 7, true, a);
btm2.threshold(btm, rect, point, "!=", 0xFF900000, 0xFF000000, 0xFFF0000, true);
}

addChild(bmp);
addEventListener(Event.ENTER_FRAME, onenterframe);

occhio alla cpu…

Next Page »