読者です 読者をやめる 読者になる 読者になる

ごらくらいふ

プログラミングしたりゲームしたり

「リトル・レディ」かってに復活開発日誌 #3

f:id:yajamon:20150715095909p:plain

今日の課題

  • いったいどこにあるclick()を探しているのか調査する f:id:yajamon:20150718185514p:plain

目的

  • エラーがゲーム進行の妨げになっているため、これを取り除く*1

作業録

click()が未定義のため、どういう流れで定義を期待しているのか追う。 なお、event.htm内には存在しなかった。

コードリーディング

外部スクリプト
<script language="JavaScript" src="js/eventP.js"></script>

エフェクトやデータの保存など、共通の関数がまとめられている。 しかし、click()は存在しなかった。

初期化
//--NNバグ対策--ネットor多重フレームを使用するとき
//すぐに使うデータは外部ファイルではなく、
//直接ここに書き込む
//
//基本変数の初期化
var Fname =getC("Fname");
var Lname =getC("Lname");
if(getC("Fname")==""||getC("Lname")==""){
    Fname ="アン";
    Lname ="ジクトリア";
}
var soeji1=parseInt(getC("Snum"))
if(soeji1>=9000) var AlbumFlag=1;
var soeji0=Math.floor(soeji1/100)%10; //誰の話か?
soeji1%=100;    //第何話か?
var soeji2=0;    //今は何行か?
var Lt    = new Array();

//本文のファーストメッセージ
Lt[0]='';

getCが多数出現した。どうやらgetCookieらしい。

シナリオの読み込み
var typew='';
if(soeji0==1) typew+='<script language="JavaScript" src="js/an/Ean'+soeji1+'.js">';
if(soeji0==2) typew+='<script language="JavaScript" src="js/mai/Emai'+soeji1+'.js">';
if(soeji0==3) typew+='<script language="JavaScript" src="js/yumi/Eyumi'+soeji1+'.js">';
typew+='</script>';
document.write(typew);

ここで読み分けをしている模様

この時点でsoeji0soeji1はどうなっているべきか

// index.htm
function topS(){
    // 略
    }else{
        setC("Snum",180);
        Csound("sakura");
    }
    // 略
}
// event.htm
var soeji1=parseInt(getC("Snum"))
var soeji0=Math.floor(soeji1/100)%10; //誰の話か?
soeji1%=100;    //第何話か?

soeji0=1soeji1=80となるはず。

読み込まれるjs/an/Ean80.jsを確認すると

function click(){
    // 処理
}

あった。

yajamon.hatenablog.com

*1:前回の続き