<script language=javascript> <!-- // "SAKURA" version 1.01 (+1.08b) Stand alone version // Internet Explorer 4.0 or later / Netscape Navigator(or Communicator) 4.0 or later // Copyright (C) 1997-98 Project Team Gakuinsei [Dee <d@v.to> ] All rights reserved. // [CommandLine] iexplorer.exe <<< [S] default.htm >>> [/] // for cc.exe var mark="IKS/1.01(+1.08b stand alone)"; var viewImegeURL=""; var viewImageTitle=""; var viewImageReturnTo=""; var viewImageReturnToURL=""; var loadPhase=0; // phase of loading kernel var maxPhase=11; // loadPhase takes 0 through maxPhase var allLoaded=false; // whether all libraries are loaded var intervalTime=50; // interval time of calling routine, in ms var timerID="none"; // timer ID var masterTime=0; // current master time started with default.htm, in ms function timerHandler() { masterTime+=intervalTime; timerID=setTimeout("timerHandler()",intervalTime); // diverge if(allLoaded) { moveGlyphs(); } else { } } timerHandler(); // once cut scripting ... //--> </script> <script language=javascript> <!-- // settings var canAnimation=false; // whether allow animations var firstInit=true; // whether this is a first call var _ie=false,_nn=false,ie=false,nn=false,ot=false; // browser type var win,doc; var i; var docBase=""; // library's document base var xsize=0; // document client area's dimention var ysize=0; var titleFontSize=0; // title character's font size (in pixels) var titleHeight=0; // title character's height (in pixels) var numGlyphs=9; // numbers of glyphs var swayLevel=3; // sway level of glyph var windLevel=8; // level of wind var glyphShowProb=0.005; // probability of appering new glyph var glyphImage="Sakura"; var glyphXSize=16; var glyphYSize=16; // for other settings, see at createDecorations. function makeArray(n) {this.length=n;} var accelGlyph=new makeArray(numGlyphs); // acceleration of glyph (x) var veloGlyph=new makeArray(numGlyphs); // velosity of glyph (x) var posGlyph=new makeArray(numGlyphs); // position of glyph (x) var yGlyph=new makeArray(numGlyphs); // position of glyph (y) var aliveGlyph=new makeArray(numGlyphs); // whether this glyph appers on screen var yVeloGlyph=new makeArray(numGlyphs); // velosity of glyph (y) var titleMovingState=0; var titlePos; var titleMoveFact=0.6; var hereIndex=-1; // where is here? var hereSname=""; var scrollText=""; // text var canScrollText=true; // whether scroll text can update var scrollPhase=false; // for neglecting var isPopuped=false; var hintText=""; //--> </script> <script language=javascript> <!-- loadPhase++; var loadStatusFlag=0; var inLibrary=false; // whether any process uses this library. // check version if(navigator.appVersion.indexOf("MSIE")!=-1) { _ie=true; // Internet Explorer } else { _nn=true; // Netscape Navigator( or Communicator) } if((- - navigator.appVersion.substring(0,1))>=4) { if(navigator.appVersion.indexOf("MSIE")!=-1) { ie=true; // Internet Explorer with DHTML } else { nn=true; // Netscape Navigator( or Communicator) with DHTML } } else { ot=true; // other (maybe this cannot use DHTML. however this can use JavaScript.) } /* ie=false; nn=false; ot=true; */ if(nn) document.onError=null; // for error function waitOtherProcesses() { /* // wait other script processes var limitTime=masterTime+5000; // wait for 5 minutes. var c=10000; while(masterTime<limitTime && inLibrary && c--); */ } function reload() { if(allLoaded==false) return; if(nn || ie) { window.upper.location=window.upper.location; window.under.location=window.under.location; } } function setCookie() { var date=new Date(); var time=date.getTime(); time+=30*24*60*60*100*10; var ndate=new Date(); ndate.setTime(time); document.cookie="value="+(ot?"noDHTML":"useDHTML")+"; expires="+ndate.toGMTString()+";"; } if(document.cookie.indexOf("noDHTML")!=-1 && !ot) // read cookie; { ot=true; } function reloadUpper() { if(allLoaded==false) return; if(nn || ie) { window.upper.location=window.upper.location; } } function docInit(winobj,docobj) // init document { win=winobj; doc=docobj; } function setDocBase(base) { docBase=base; } function determineSize() // determine document's rulers { if(nn && !ot) { xsize=win.innerWidth; ysize=win.innerHeight; } if(ie && !ot) { xsize=doc.body.clientWidth; ysize=doc.body.clientHeight; } if(!ot) { titleFontSize=Math.floor(xsize/15); titleHeight=win.docTitleLength*titleFontSize+50; } if(nn && !ot) { doc.write( "<STYLE TYPE=\"text/css\"><!--\n"+ ".sttitleline0 {font-family:sans-serif, serif; font-weight:bold; font-size:"+titleFontSize+"px; "+ "letter-spacing: -4px; line-height:",titleFontSize,"px; color: #f3d2f4; }\n"+ ".sttitleline1 {font-family:sans-serif, serif; font-weight:bold; font-size:"+titleFontSize+"px; "+ "letter-spacing: -4px; line-height:",titleFontSize,"px; color: #e0d0e0; }\n"+ ".sttitleline2 {font-family:sans-serif, serif; font-weight:bold; font-size:"+titleFontSize+"px; "+ "letter-spacing: -4px; line-height:",titleFontSize,"px; color: #b0a0b0; }\n"+ "-\-></STYLE>" ); } // initialize values of arrays if(firstInit) { for(i=1;i<=numGlyphs;i++) { accelGlyph[i]=veloGlyph[i]=0.0; yGlyph[i]=Math.random()*ysize; accelGlyph[i]=Math.random()*2-1; posGlyph[i]=Math.random()*xsize; aliveGlyph[i]=false; } } else { for(i=1;i<=numGlyphs;i++) { if(yGlyph[i]>ysize) aliveGlyph[i]=false; } } firstInit=false; } //--> </script> <script language=javascript> <!-- loadPhase++; //--> </script> <script language=javascript> <!-- loadPhase++; //--> </script> <script language=javascript> <!-- loadPhase++; loadPhase++; function createDecorations() // create decoreations { waitOtherProcesses(); inLibrary=true; if(!ot) { titlePos=-titleHeight; // create grains of glyph for(i=1;i<=numGlyphs;i++) { var p=Math.floor(Math.random()*6)+2; var n=Math.floor(Math.random()*8); yVeloGlyph[i]=((p-2.0)/3.0+0.8)*2; var xs=(p<5)?glyphXSize/2:glyphXSize; var ys=(p<5)?glyphYSize/2:glyphYSize; glyph="<IMG SRC=\""+docBase+glyphImage+n+".gif\" WIDTH="+xs+" HEIGHT="+ys+">"; if(nn) { var t="<layer left=0 top=0 width=12 height=12 name=\"glyph"+i+"\" visibility=hide>"+ glyph+ "</layer>"; doc.write(t); } if(ie) { doc.write("<span style=\"position:absolute; top: -40px; left: -40px; height:12px; width:12px; z-index: ",p-5,";\" ID=\"glyph"+i+"\">"); doc.write(glyph); doc.write("</span>"); } if(nn && p<5) doc.layers["glyph"+i].moveBelow(doc.main); } } inLibrary=false; } //--> </script> <script language=javascript> <!-- loadPhase++; function moveGlyph(obj,n) { if(yGlyph[n]>=ysize) yGlyph[n]=0; if(Math.random()<.1) accelGlyph[n]=Math.random()*2-1; if(veloGlyph[n]>=swayLevel) { veloGlyph[n]=swayLevel; accelGlyph[n]=-accelGlyph[n]; } if(veloGlyph[n]<=-swayLevel) { veloGlyph[n]=-swayLevel; accelGlyph[n]=-accelGlyph[n]; } veloGlyph[n]+=accelGlyph[n]; posGlyph[n]+=veloGlyph[n]+windLevel; if(posGlyph[n]<0) posGlyph[n]=xsize; if(posGlyph[n]>xsize) { posGlyph[n]=0; yGlyph[n]=Math.random()*ysize; } yGlyph[n]+=yVeloGlyph[n]; if(nn && !ot) { obj.moveTo(Math.floor(posGlyph[n]),Math.floor(yGlyph[n])); } if(ie && !ot) { obj.style.left=Math.floor(posGlyph[n])+"px"; obj.style.top=Math.floor(yGlyph[n])+"px"; } } function moveGlyphs() { if(canAnimation && !ot) { var c; for(c=1;c<=numGlyphs;c++) { var name="glyph"+c; var obj; if(nn) obj=doc.layers[name]; if(ie) obj=win[name]; if(typeof(obj)=="undefined") continue; if(!aliveGlyph[c]) { if(Math.random()<glyphShowProb) { aliveGlyph[c]=true; if(nn) { obj.visibility="show"; } } } else { if(nn) obj.visibility="show"; if(ie) obj.style.visibility="visible"; moveGlyph(obj,c); } } } } //--> </script> <script language=javascript> <!-- loadPhase++; function startAnimation() { canAnimation=true; } //--> </script> <script language=javascript> <!-- loadPhase++; //--> </script> <script language=javascript> <!-- loadPhase++; //--> </script> <script language=javascript> <!-- loadPhase++; //--> </script> <script language=javascript> <!-- loadPhase++; //--> </script> <script language=javascript> <!-- allLoaded=true; // all contents are loaded docInit(window,document); determineSize(); createDecorations(); //--></script>