forked from: forked from: Présentation Apparence Magie style machine écrire
forked from forked from: Présentation Apparence Magie style machine écrire (diff: 2)
ActionScript3 source code
/**
* Copyright Etienne.Verhote ( http://wonderfl.net/user/Etienne.Verhote )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/6KvD
*/
// forked from Etienne.Verhote's forked from: Présentation Apparence Magie style machine écrire
// forked from Etienne.Verhote's Présentation Apparence Magie style machine écrire
// forked from hacker_n96o8lrr's forked from: TextField_animation02
// forked from oshige's TextField_animation02
package {
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
import flash.utils.Timer;
import flash.events.TimerEvent;
public class MyTextField extends Sprite {
public var fld:TextField;
public var tf:TextFormat;
public var msg:String = "Afin de préserver la confidentialité de mes services et de\nvos prestations, cette partie du site entièrement sécurisée par mot de passe\nvous est spécialement réservée.\n\nUn identifiant et un mot de passe vous ont été envoyés par mail\npour y accéder. Si vous souhaitez modifier votre identifiant\net votre mot de passe, vous pouvez contacter le Créateur à cette adresse:\n membres.magie@gmail.com en précisant vos identifiants.\nIls seront modifiés dans les 24 heures.\n\nVotre identifiant et votre mot de passe vous seront demandés\nà chaque connexion pour l'accès à la partie 'Membres'.\n\nPour toute demande de création, un accord de confidentialité\nest établi entre le client et le Créateur afin de protéger l'exclusivité\net l'originalité des prestations de chaque client ainsi que des tenues\n spécialement conçues pour celui-ci.\n\nAucun vêtement n'est conçu en série afin de préserver l'exclusivité\ndes tenues propres au client et à sa prestation.\n\nPour préserver la confidentialité des tenues, vous ne trouverez\naucunes photos de vêtements techniques sur ce site.\n\nMagicalement vôtre...\nEtienne Verhote,\nCréateur d'apparences ";
public var charPos:uint;
public var counter:uint;
public var currentMsg:String;
public var timer:Timer;
public var offset:int = Math.floor(3 * Math.random()) + 3;
//コンストラクタ
public function MyTextField(){
tf = makeTextFormat("Georgia",12,0xFFFFFF);
//テキストフィールドの作成
fld = new TextField();
fld.x = 20;
fld.y = 10;
fld.autoSize = TextFieldAutoSize.LEFT;
//書式の初期値
fld.defaultTextFormat = tf;
addChild(fld);
//アニメーション用のループを行うタイマー
timer = new Timer(0);
timer.addEventListener(TimerEvent.TIMER,timerHandler);
timer.start();
}
//書式の作成
public function makeTextFormat(font:String,size:uint,color:uint):TextFormat {
var tf:TextFormat = new TextFormat();
tf.font = font;
tf.size = size;
tf.color = color;
return tf;
}
//文字コードを探りながら1文字ずつ追加
public function timerHandler(event:TimerEvent):void {
//表示したい文字コードよりoffsetだけ小さい文字コード
var startCharCode:uint = msg.charCodeAt(charPos) - offset;
//文字コードを文字に変換
var char:String = String.fromCharCode(startCharCode + counter);
//表示済みのテキストに新しい文字と"_"を連結して表示します。
fld.text = msg.substring(0,charPos) + char + "_";
//表示したい文字と比較
if (msg.charAt(charPos) == char) {
//すべてのメッセージを表示し終わったかどうか
if(charPos==msg.length-1){
//終了
timer.stop();
fld.text = msg;//文末の "_"を取り去るためにmsgを入れ直します。
} else {
//次に表示する文字に移ります。
offset = Math.floor(7 * Math.random()) + 3;
charPos++;
counter = 0;
}
} else {
//次の文字コードに進めます
counter++;
}
}
}
}