Cookieに保存する(GV装備チェックシートの場合)


//複数存在するCookieを判別するため、ユニークになる名前を付けます
var strSaveE = "Set1" + document.frmsave.charaname.value;

//各値を配列に格納します
ckary[0] = checkVL(document.Skil.Level.value);
ckary[1] = checkVL(document.Skil.Kenko.value);
ckary[2] = checkVL(document.Skil.Chie.value);
ckary[3] = checkVL(document.Skil.Charisma.value);
ckary[4] = checkVL(document.Skil.Sisyu.value);
:
:
//変数にCookieの有効期限を設定します
//setTimeはミリ秒で設定する必要があります

exp = new Date();< BR >
//この場合、1000ミリ秒×s(秒)×m(分)×h(時間)×d(日数)を設定しています
//当プログラムでは約2年に設定してあります

exp.setTime(exp.getTime()+1000*60*60*24*730);

//全角文字などCookie保存時に問題を引き起こす可能性がありますのでescapeでユニコードにエンコードする必要があります
ckstr = escape(ckary[0]);

//ここでは各値を繋げて、1つの文字列にしています
//繋げる際、値と値の間に "XX" を区切り記号として付加します

i = 1;
while (ckary[i]){
    ckstr += "XX" + escape(ckary[i]);
    i++;
}

//Cookieに保存します
//有効期限は、toGMTString()でグリニッジ標準時間に変換する必要があります

document.cookie = strSaveE + "=" + ckstr + "; expires=" + exp.toGMTString();



Cookieを読み込む(GV装備チェックシートの場合)


//保存時に設定した、ユニークになる名前を指定します
var strSaveE = "Set1" + document.frmsave.charaname.value;

//Cookieに保存されている文字列の長さを取得します

cklng = document.cookie.length;

//1ファイル内に複数のCookieが保存されている場合、セミコロン(;)で区切られます
//下記の場合、AAAA;BBBB;CCCC のようなCookieが存在すれば、chary[0]にAAAA、chary[1]にBBBB、chary[2]にCCCCが代入されます

ckary = document.cookie.split("; ");
ckstr = "";
i = 0;

//登録した文字列(キャラ名)が存在するかチェックします
while (ckary[i]){
    if (ckary[i].substr(0,strSaveE.length+1) == strSaveE + "="){
        ckstr = ckary[i].substr(strSaveE.length+1,ckary[i].length);
        break;
    } 
    i++;
}

//読み込んだCookieを項目ごとに区切ります
//登録時に指定した区切り記号は'XX'です

ckary = ckstr.split("XX");

//区切り記号でバラした値を各項目に代入します
if (ckary[0]) document.Skil.Level.value = unescape(ckary[0]); //レベル
if (ckary[1]) document.Skil.Kenko.value = unescape(ckary[1]); //健康
if (ckary[2]) document.Skil.Chie.value = unescape(ckary[2]); //知恵
if (ckary[3]) document.Skil.Charisma.value = unescape(ckary[3]); //カリスマ
if (ckary[4]) document.Skil.Sisyu.value = unescape(ckary[4]); //死臭



//計算して得られる結果(異常抵抗合計、呪い抵抗合計など)は保存せず、全項目を読み込んだ後、再計算させています
calc1();
inserted by FC2 system