//Ce script est inspiré du site http://www.dhteumeuleu.com/ //Une vraie mine d'or pour interagir avec l'arbre DOM... //je le remercie publiquement ici ! var texte_complet = ""; var SVGTexte = ""; var p = 0; //Compteur, augmente de un de facon à parcourir toute la chaine var c = ""; var i = 0; //Pour les boucles var Date_actuelle = new Date(); var Texte_Affiche = ""; var cl = 0; var temps_intervalle = 0; var Frappes_Av_Correction = 0; var Temporaire = ''; ////////////// var inkFreq = .2; var spdInk = 12; ////////////// function LancerAnimation() { if(Math.random()>0.99 && texte_complet.charAt(p)!='<' && texte_complet.charAt(p)!='&' && p>2 && texte_complet.charAt(p) != "`") { m = String.fromCharCode(Math.floor(33+89*Math.random())); //Génerer une faute de frappe de code ASCII compris entre 33 et 122 (les caractères standards) if(m=="`" || m=="&" || m=="<")//Si la faute de frappe est un caractère spécial, c'est la galère, alors on corrige. m="#"; texte_complet = texte_complet.substr(0,p-1) + m + "`" + texte_complet.substr(p,texte_complet.length-p+1); p--; } else m = texte_complet.charAt(p); //m contient le caractère à traiter temps_intervalle = 16;//la durée d'attente entre deux caractère normaux. if (m == "`") {//retour chariot (backspace) m = ""; Texte_Affiche = Texte_Affiche.substring(0, Texte_Affiche.length-1); temps_intervalle = 64; } else if (m == "<") {//Balise HTML quelconque debut_balise = texte_complet.indexOf(">", p); m = texte_complet.substring(p, debut_balise + 1); p = debut_balise; } else if (m == "&") {//Caractère HTML spécial debut_balise = texte_complet.indexOf(";", p); m = texte_complet.substring(p, debut_balise + 1); p = debut_balise; } else if (m == "." || m == "?" || m == "!") temps_intervalle = 500; /// ?!. font un arrêt assez long. Texte_Affiche += m; if(p % 4==0) Roulette = "\\"; if(p % 4==1) Roulette = "|"; if(p % 4==2) Roulette = "/"; if(p % 4==3) Roulette = "—"; //Afficher un petit texte document.getElementById("text").innerHTML = '

'+Roulette+' Transmission started on '+Date_actuelle+'
'+Roulette+' From : 212.227.31.161
'+Roulette+' To : 38.107.191.104
Passer le mode console

'+Texte_Affiche+'_'; document.getElementById("text").scrollTop = 100000; p++; if (p < texte_complet.length)//continuer l'animation setTimeout("LancerAnimation();", temps_intervalle); else {//C'est terminé Date_actuelle = new Date(); if(p==texte_complet.length) document.getElementById("text").innerHTML =Texte_Affiche + '


- End Of Transmission - '+Date_actuelle+' -

'; else document.getElementById("text").innerHTML =SVGTexte + '


End Of File Received but more chars were expected / There might be a problem with your text
- End Of Transmission - '+Date_actuelle+' -

'; document.getElementById("text").innerHTML += '


> @38.107.191.104 :

'; document.getElementById('Console').focus(); document.getElementById('Console').onkeyup=function(){ParseConsole(this);};//On rajoute l'évenement ici pour le masquer aux utilisateurs de Firebug ! } } window.onload = function() { texte_complet = document.getElementById("text").innerHTML; SVGTexte = texte_complet; //Utilisé si on saute le mode console document.getElementById("text").innerHTML=''; LancerAnimation(); } function ParseConsole(Objet) {//Et pourtant, il parle ! if(Reponses[Objet.value.toLowerCase()]!=undefined) { Objet.parentNode.getElementsByTagName("span")[0].innerHTML +=Objet.parentNode.getElementsByTagName("span")[1].innerHTML + '' + Objet.value + '
' + Reponses[Objet.value.toLowerCase()] + '
'; Objet.value=''; } } var Reponses=new Array(); Reponses["bonjour"]='Enchanté de te rencontrer :-)'; Reponses["comment vas-tu"]="J'allais bien...jusqu'à ce que tu commence à me faire ch** !"; Reponses["au revoir"]="C'est cela, bon vent...mais n'oublie pas de revenir un de ces jours !"; Reponses["donne moi la solution"]="42."; Reponses["solution"]="42."; Reponses["donne moi un indice"]="12+30 = ?"; Reponses["indice"]="12+30 = ?"; Reponses["deux indices"]="Et puis quoi encore ^^."; Reponses["beuarrrrrrrk"]="Superbe onomatopée, qui dénote un certain manque de gout quand même !"; Reponses["bouh"]="Oh ! Tu crois me faire peur...ces geeks alors, ils se croient tout permis !"; //Un peu de fun avec les commandes UNIX Reponses["cd"]='Dans quel répertoire souhaitez-vous allez ?'; Reponses["ls"]='Rien à lister :-)'; Reponses["nice man woman"]='There is not an entry for woman.'; Reponses["who is my match?"]='who: No match.'; Reponses["ar r god"]='ar: Warning: creating God'; Reponses["si j'avais une ( pour chaque minute perdue sur ce jeu stupide, qu'est ce que j'aurais ?"]="Too many ('s"; Reponses["make love"]="Make: Don't know how to make love. Stop."; Reponses["make mistake"]="Make: Don't know how to make mistake. Stop."; Reponses["make sense"]="Make: Don't know how to make sense. Stop."; Reponses["make friends with target"]="make: *** No rule to make target `friends'. Stop."; Reponses["got a light?"]='No match'; Reponses["man: why did you get a divorce?"]='man:: Too many arguments.'; Reponses["!:say, what is saccharine?"]="Bad substitute."; Reponses["blow"]="blow: No such job."; Reponses["test my argument"]="test: argument expected"; Reponses["lost"]="lost: not found"; Reponses["path=pretending!/usr/ucb/which sense"]="no sense in pretending!"; Reponses["drink bottle; opener"]="bottle: cannot open
opener: not found";