「防具性能計算フォーム」の編集履歴(バックアップ)一覧に戻る

防具性能計算フォーム - (2006/12/09 (土) 20:52:29) のソース

<h2><a id="id_4e772375" name=
"id_4e772375">防具性能計算フォーム</a></h2>
<div>
各防具の追加HPと追加CPを計算するためのフォームです。<br>

JavaScriptを用いて計算を行っています。<br>
<br>
<br>
最終更新:2006/10/31 20:40<br>
・Lv20属性「超重」「破魔」を追加しました。<br></div>
<br>
<div><script language="JavaScript" type="text/javascript">
<!--
var max_lv = 30;
var max_mt = 8;

var lst_vl = new Array(0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 0, 0, 9, 10, 11, 12, 13, 14, 15, 16, 17, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 0, 0, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 0, 0, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75);
var lst_tx = new Array("", "【初期装備】", "小学夏服", "小学冬服", "中学夏服", "中学冬服", "高校夏服", "高校冬服", "スクール水着", "体操服", "", "【制服】", "制服(1.70/7.30)", "制服(2.40/6.60)", "制服(3.10/5.90)", "制服(3.80/5.20)", "制服(4.50/4.50)", "制服(5.20/3.80)", "制服(5.90/3.10)", "制服(6.60/2.40)", "制服(7.30/1.70)", "", "【気魄系】", "毛皮", "民族衣装", "軽装", "水着(大胆)", "アルバイト制服(セクシー系)", "和服(ラフ)", "剣道着", "弓道着", "洋服(アグレッシブ)", "スポーツウェア", "ジャージ", "作業着", "柔術着", "ミリタリー服", "ハーフコート", "胸当て", "着ぐるみ", "ロングコート", "ライダースーツ", "プロテクター", "武装ジャケット", "武者鎧", "西洋甲冑", "", "【術式系】", "ローブ", "白衣", "レオタード", "礼服", "水着(競泳)", "和服(フォーマル)", "アルバイト制服(一般)", "ギャルソン服", "洋服(クール)", "スーツ", "拳法着", "チャイナ服", "忍装束", "ラバースーツ", "戦装束", "", "【神秘系】", "ドレス", "巫女服", "神主服", "ステージ衣装", "シスター服", "喪服", "着物", "水着(ファミリー)", "洋服(デコレーション)", "アルバイト制服(癒し系)", "メイド服", "洋服(ナチュラル)", "パジャマ", "パーカー", "セーター", "ナース服", "レインコート", "僧服", "拘束服", "聖職服");

// [0]分類, [1]HP, [2]CP, [3]ボーナス
var lst_gd = new Array(75);
lst_gd[0] = new Array("", 0, 0, 0);
lst_gd[1] = new Array("小学夏服", 3.8, 5.2, 3);
lst_gd[2] = new Array("小学冬服", 4.5, 4.5, 3);
lst_gd[3] = new Array("中学夏服", 4.5, 4.5, 2);
lst_gd[4] = new Array("中学冬服", 5.2, 3.8, 2);
lst_gd[5] = new Array("高校夏服", 5.2, 3.8, 1);
lst_gd[6] = new Array("高校冬服", 5.9, 3.1, 1);
lst_gd[7] = new Array("スクール水着", 3.1, 5.9, 2);
lst_gd[8] = new Array("体操服", 3.8, 5.2, 1);
lst_gd[9] = new Array("制服(1.70/7.30)", 1.7, 7.3, 4);
lst_gd[10] = new Array("制服(2.40/6.60)", 2.4, 6.6, 4);
lst_gd[11] = new Array("制服(3.10/5.90)", 3.1, 5.9, 4);
lst_gd[12] = new Array("制服(3.80/5.20)", 3.8, 5.2, 4);
lst_gd[13] = new Array("制服(4.50/4.50)", 4.5, 4.5, 4);
lst_gd[14] = new Array("制服(5.20/3.80)", 5.2, 3.8, 4);
lst_gd[15] = new Array("制服(5.90/3.10)", 5.9, 3.1, 4);
lst_gd[16] = new Array("制服(6.60/2.40)", 6.6, 2.4, 4);
lst_gd[17] = new Array("制服(7.30/1.70)", 7.3, 1.7, 4);
lst_gd[18] = new Array("毛皮", 1.7, 7.3, 1);
lst_gd[19] = new Array("民族衣装", 2.4, 6.6, 1);
lst_gd[20] = new Array("軽装", 3.1, 5.9, 1);
lst_gd[21] = new Array("水着(大胆)", 3.1, 5.9, 1);
lst_gd[22] = new Array("アルバイト制服(セクシー系)", 3.1, 5.9, 1);
lst_gd[23] = new Array("和服(ラフ)", 3.8, 5.2, 1);
lst_gd[24] = new Array("剣道着", 3.8, 5.2, 1);
lst_gd[25] = new Array("弓道着", 3.8, 5.2, 1);
lst_gd[26] = new Array("洋服(アグレッシブ)", 4.5, 4.5, 1);
lst_gd[27] = new Array("スポーツウェア", 4.5, 4.5, 1);
lst_gd[28] = new Array("ジャージ", 4.5, 4.5, 1);
lst_gd[29] = new Array("作業着", 5.2, 3.8, 1);
lst_gd[30] = new Array("柔術着", 5.2, 3.8, 1);
lst_gd[31] = new Array("ミリタリー服", 5.2, 3.8, 1);
lst_gd[32] = new Array("ハーフコート", 5.9, 3.1, 1);
lst_gd[33] = new Array("胸当て", 5.9, 3.1, 1);
lst_gd[34] = new Array("着ぐるみ", 5.9, 3.1, 1);
lst_gd[35] = new Array("ロングコート", 6.6, 2.4, 1);
lst_gd[36] = new Array("ライダースーツ", 6.6, 2.4, 1);
lst_gd[37] = new Array("プロテクター", 6.6, 2.4, 1);
lst_gd[38] = new Array("武装ジャケット", 7.3, 1.7, 1);
lst_gd[39] = new Array("武者鎧", 7.3, 1.7, 1);
lst_gd[40] = new Array("西洋甲冑", 7.3, 1.7, 1);
lst_gd[41] = new Array("ローブ", 1.7, 7.3, 2);
lst_gd[42] = new Array("白衣", 2.4, 6.6, 2);
lst_gd[43] = new Array("レオタード", 2.4, 6.6, 2);
lst_gd[44] = new Array("礼服", 3.1, 5.9, 2);
lst_gd[45] = new Array("水着(競泳)", 3.1, 5.9, 2);
lst_gd[46] = new Array("和服(フォーマル)", 3.8, 5.2, 2);
lst_gd[47] = new Array("アルバイト制服(一般)", 3.8, 5.2, 2);
lst_gd[48] = new Array("ギャルソン服", 3.8, 5.2, 2);
lst_gd[49] = new Array("洋服(クール)", 4.5, 4.5, 2);
lst_gd[50] = new Array("スーツ", 5.2, 3.8, 2);
lst_gd[51] = new Array("拳法着", 5.9, 3.1, 2);
lst_gd[52] = new Array("チャイナ服", 5.9, 3.1, 2);
lst_gd[53] = new Array("忍装束", 6.6, 2.4, 2);
lst_gd[54] = new Array("ラバースーツ", 6.6, 2.4, 2);
lst_gd[55] = new Array("戦装束", 7.3, 1.7, 2);
lst_gd[56] = new Array("ドレス", 1.7, 7.3, 3);
lst_gd[57] = new Array("巫女服", 1.7, 7.3, 3);
lst_gd[58] = new Array("神主服", 1.7, 7.3, 3);
lst_gd[59] = new Array("ステージ衣装", 2.4, 6.6, 3);
lst_gd[60] = new Array("シスター服", 2.4, 6.6, 3);
lst_gd[61] = new Array("喪服", 2.4, 6.6, 3);
lst_gd[62] = new Array("着物", 3.1, 5.9, 3);
lst_gd[63] = new Array("水着(ファミリー)", 3.1, 5.9, 3);
lst_gd[64] = new Array("洋服(デコレーション)", 3.8, 5.2, 3);
lst_gd[65] = new Array("アルバイト制服(癒し系)", 3.8, 5.2, 3);
lst_gd[66] = new Array("メイド服", 3.8, 5.2, 3);
lst_gd[67] = new Array("洋服(ナチュラル)", 4.5, 4.5, 3);
lst_gd[68] = new Array("パジャマ", 4.5, 4.5, 3);
lst_gd[69] = new Array("パーカー", 5.2, 3.8, 3);
lst_gd[70] = new Array("セーター", 5.2, 3.8, 3);
lst_gd[71] = new Array("ナース服", 5.2, 3.8, 3);
lst_gd[72] = new Array("レインコート", 5.9, 3.1, 3);
lst_gd[73] = new Array("僧服", 6.6, 2.4, 3);
lst_gd[74] = new Array("拘束服", 6.6, 2.4, 3);
lst_gd[75] = new Array("聖職服", 7.3, 1.7, 3);

var lst_vl2 = new Array(0, 0, 1, 2, 3, 4, 0, 5, 6, 7, 8, 0, 9, 10);
var lst_tx2 = new Array("", "【Lv10】", "頑丈", "硬質", "祝福", "上質", "【Lv15】", "番人", "不動", "陽炎", "彗星", "【Lv20】", "超重", "破魔");

// [0]属性, [1]Lv, [2]HP, [3]CP
lst_mt = new Array(max_mt);
lst_mt[0] = new Array("", 0, 0, 0);
lst_mt[1] = new Array("頑丈", 10, 9, 0);
lst_mt[2] = new Array("硬質", 10, 9, 0);
lst_mt[3] = new Array("祝福", 10, 0, 9);
lst_mt[4] = new Array("上質", 10, 0, 9);
lst_mt[5] = new Array("番人", 15, 13, 0);
lst_mt[6] = new Array("不動", 15, 13, 0);
lst_mt[7] = new Array("陽炎", 15, 0, 13);
lst_mt[8] = new Array("彗星", 15, 0, 13);
lst_mt[9] = new Array("超重", 20, 18, 0);
lst_mt[10] = new Array("破魔", 20, 0, 18);

function lo_set(){
  document.write("防具:<select name=gd>");
  for(i = 0; i < lst_vl.length; i++){
    document.write("<option value=" + lst_vl[i] + ">" + lst_tx[i]);
  }
  document.write("<\/select>");

  tmp_tx = "";
  document.write(" Lv:<select name=lv>");
  for(i = 0; i <= max_lv; i++){
    if(i > 0) tmp_tx = i;
    document.write("<option value=" + i + ">" + tmp_tx);
  }
  document.write("<\/select>");

  document.write(" 属性");
  for(i = 1; i <= 3; i++){
    document.write("<select name=mt" + i + ">");
    for(j = 0; j < lst_vl2.length; j++){
      document.write("<option value=" + lst_vl2[j] + ">" + lst_tx2[j]);
    }
    document.write("<\/select>");
  }
  document.write("<br>");

  document.write("追加HP:<input type=text name=hp size=4>");
  document.write(" 追加CP:<input type=text name=cp size=4>");
  document.write(" ボーナス:<input type=text name=sp size=24>");
}

function set_sp(sp_id){
  var tmp_tx = "";

  if(sp_id == 1) tmp_tx = "気魄";
  if(sp_id == 2) tmp_tx = "術式";
  if(sp_id == 3) tmp_tx = "神秘";
  if(sp_id == 4) tmp_tx = "気魄 or 術式 or 神秘";

  return tmp_tx;
}

function calc_gd(){
  tmp_gd = document.gd_form.gd.value;
  tmp_lv = document.gd_form.lv.value;

// 防具選択チェック
  if(tmp_gd == 0){
    alert("防具を選択してください。");
    return;
  }
// Lvチェック
  if(tmp_lv == 0){
    alert("Lvを選択してください。");
    return;
  }
// 属性チェック
  if(document.gd_form.mt1.value > 0){
    if(document.gd_form.mt1.value == document.gd_form.mt2.value) document.gd_form.mt2.selectedIndex = 0;
    if(document.gd_form.mt1.value == document.gd_form.mt3.value) document.gd_form.mt3.selectedIndex = 0;
    if(tmp_lv < lst_mt[document.gd_form.mt1.value][1]) document.gd_form.mt1.selectedIndex = 0;
  }
  if(document.gd_form.mt2.value > 0){
    if(document.gd_form.mt2.value == document.gd_form.mt3.value) document.gd_form.mt3.selectedIndex = 0;
    if(tmp_lv < lst_mt[document.gd_form.mt2.value][1]) document.gd_form.mt2.selectedIndex = 0;
  }
  if(document.gd_form.mt3.value > 0){
    if(tmp_lv < lst_mt[document.gd_form.mt3.value][1]) document.gd_form.mt3.selectedIndex = 0;
  }
  if(document.gd_form.mt1.value == 0) document.gd_form.mt1.selectedIndex = 0;
  if(document.gd_form.mt2.value == 0) document.gd_form.mt2.selectedIndex = 0;
  if(document.gd_form.mt3.value == 0) document.gd_form.mt3.selectedIndex = 0;

// HP
  tmp_num = Math.floor(lst_gd[tmp_gd][1] * tmp_lv);
  tmp_num += lst_mt[document.gd_form.mt1.value][2];
  tmp_num += lst_mt[document.gd_form.mt2.value][2];
  tmp_num += lst_mt[document.gd_form.mt3.value][2];
  document.gd_form.hp.value = tmp_num;

// CP
  tmp_num = Math.floor(lst_gd[tmp_gd][2] * tmp_lv);
  tmp_num += lst_mt[document.gd_form.mt1.value][3];
  tmp_num += lst_mt[document.gd_form.mt2.value][3];
  tmp_num += lst_mt[document.gd_form.mt3.value][3];
  document.gd_form.cp.value = tmp_num;

// 回避ボーナス
  document.gd_form.sp.value = set_sp(lst_gd[tmp_gd][3]);
}

// レイアウト
document.write("<form name=gd_form>");
lo_set();
document.write("<br>");
document.write('<input type=button value=結果を表示 onClick="calc_gd()">');
document.write("<\/form>");
//-->
</script><br></div>
<br>
<h2><a id="id_821bb338" name="id_821bb338">使い方</a></h2>
<div>防具の種類とLv、強化属性を選択して下さい。<br>
名前の前に「×」が付いている防具はデータが無い為、性能が計算できません。<br>

重複したり、必要Lvを満たしていない強化属性は計算時に消去されます。<br>
</div>
<br>
<div>
防具の種類とLvの選択が終わったら「結果を表示」ボタンを押して下さい。<br>

追加HPと追加CP、回避ボーナスが表示されます。<br></div>
<br>
<div>
簡易的な検証は行ってありますが、実際の数値と計算値が異なる場合は、報告して頂けると助かります。<br>
</div>
記事メニュー
目安箱バナー