タイプ一致計算追加
This commit is contained in:
@@ -16,8 +16,6 @@
|
||||
}
|
||||
}
|
||||
let attack_direction = "p1p2";
|
||||
let attack_type = "attack";
|
||||
let attack_power = 0;
|
||||
let total_max_damage = 0;
|
||||
let total_min_damage = 0;
|
||||
function calculate_damage() {
|
||||
@@ -52,12 +50,18 @@
|
||||
|
||||
// 最大ダメージと最小ダメージ
|
||||
maxDamage: 0,
|
||||
minDamage: 0
|
||||
// この辺はあとまわしで
|
||||
minDamage: 0,
|
||||
// 攻撃側タイプ
|
||||
// TODO: try catchでエラーハンドリング
|
||||
atk_type: JSON.parse(attacker.types),// 配列なのでjson parse
|
||||
// 防御側タイプ
|
||||
def_type: JSON.parse(defender.types),
|
||||
// 技タイプ
|
||||
move_type: JSON.parse(attackData.types),
|
||||
// 範囲の計算で使用する
|
||||
}
|
||||
|
||||
// 計算
|
||||
let d = damage(data);
|
||||
|
||||
total_max_damage = d.maxDamage;
|
||||
@@ -82,7 +86,22 @@
|
||||
// 乱数補正
|
||||
data.minDamage = getMinDamage(data)
|
||||
// タイプ一致補正
|
||||
let type_match = false
|
||||
for (let i = 0; i < data.atk_type.length && !type_match; i++){
|
||||
for (let j = 0; j < data.move_type.length && !type_match; j++){
|
||||
if (data.atk_type[i] === data.move_type[j]){
|
||||
// タイプ一致したら判定終了
|
||||
type_match = true;
|
||||
data.maxDamage = Math.trunc(data.maxDamage*1.5)
|
||||
data.minDamage = Math.trunc(data.minDamage*1.5)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 相性補正
|
||||
// 相性の計算の関数をとってくる
|
||||
|
||||
|
||||
// やけど補正
|
||||
// 壁補正
|
||||
// ブレインフォース補正
|
||||
|
||||
Reference in New Issue
Block a user