Skip to content

Instantly share code, notes, and snippets.

@Nishisonic
Last active February 12, 2020 22:10
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Nishisonic/62cead1f57a323c737019d6b630fa4a5 to your computer and use it in GitHub Desktop.
Save Nishisonic/62cead1f57a323c737019d6b630fa4a5 to your computer and use it in GitHub Desktop.
対空CI 優先度 仮説
// 特殊命名
// 対空機銃(対空 < 9 かつ 対空 >= 3) = 標準機銃
// 対空機銃(対空 >= 9) = 特殊機銃
// 高角砲 (対空 < 8) = 標準高角砲
// 高角砲 (対空 >= 8) = 特殊高角砲
// 電探 (対空 >= 2) = 対空電探
const 対空CI発動率 = []
let 判定乱数 = Math.floor(Math.random() * 101) // 0~100の整数乱数
function 発動判定(種別){ // 種別は省略(returnを見て察して下さい)
return 判定乱数 < 対空CI発動率[種別]
}
function 対空カットイン判定(){
if(秋月型 かつ 高角砲を装備){
if(高角砲を2つ以上装備 かつ 電探を装備 かつ 発動判定){
return 第1種対空CI
} else if(電探を装備 かつ 発動判定){
return 第2種対空CI
} else if(高角砲を2つ以上装備 かつ 発動判定){
return 第3種対空CI
}
} else {
// 艦娘固有【A優先度】対空CIグループ
if (Fletcher級) {
if (5inch単装砲 Mk.30+GFCS Mk.37を2つ以上装備 かつ 発動判定) {
return 第34種対空CI
}
if (5inch単装砲 Mk.30+GFCS Mk.37を装備 かつ (5inch単装砲 Mk.30を装備 または 5inch単装砲 Mk.30改を装備) かつ 発動判定) {
return 第35種対空CI
}
if ((5inch単装砲 Mk.30 または 5inch単装砲 Mk.30)を2つ以上装備 かつ GFCS Mk.37を装備 かつ 発動判定) {
return 第36種対空CI
}
if ((5inch単装砲 Mk.30 または 5inch単装砲 Mk.30)を2つ以上装備 かつ 発動判定) {
return 第37種対空CI
}
判定乱数 = Math.floor(Math.random() * 101) // 0~100の整数乱数
}
if (Atlanta級) {
if (GFCS Mk.37+5inch連装両用砲(集中配備)を装備 かつ 5inch連装両用砲(集中配備)を装備 かつ 発動判定) {
return 第39種対空CI
}
判定乱数 = Math.floor(Math.random() * 101) // 0~100の整数乱数
if ((GFCS Mk.37+5inch連装両用砲(集中配備) または 5inch連装両用砲(集中配備))を2つ以上装備 かつ GFCS Mk.37を装備 かつ 発動判定) {
return 第40種対空CI
}
判定乱数 = Math.floor(Math.random() * 101) // 0~100の整数乱数
if ((GFCS Mk.37+5inch連装両用砲(集中配備) または 5inch連装両用砲(集中配備))を2つ以上装備 かつ 発動判定) {
return 第41種対空CI
}
判定乱数 = Math.floor(Math.random() * 101) // 0~100の整数乱数
}
if(摩耶改二 かつ 高角砲を装備 かつ 特殊機銃を装備){
if(対空電探を装備 かつ 発動判定){
return 第10種対空CI
}
if(発動判定){
return 第11種対空CI
}
}
if(五十鈴改二 かつ 高角砲を装備 かつ 対空機銃を装備){
if(対空電探を装備 かつ 発動判定){
return 第14種対空CI
}
if(発動判定){
return 第15種対空CI
}
}
if((霞改二乙 または 夕張改二) かつ 高角砲を装備 かつ 対空機銃を装備){
if(対空電探を装備 かつ 発動判定){
return 第16種対空CI
}
if(発動判定){
return 第17種対空CI
}
}
if(鬼怒改二 かつ 特殊機銃を装備 かつ 標準高角砲を装備 かつ 発動判定){
return 第19種対空CI
}
if(由良改二 かつ 高角砲を装備 かつ 対空電探 かつ 発動判定){
return 第21種対空CI
}
if(伊勢型改 かつ 12㎝30連装噴進砲改二を装備 かつ 対空強化弾(三式弾)を装備 かつ 対空電探を装備 かつ 発動判定){
return 第25種対空CI
}
// ここまで
if(高射装置を装備 かつ 大口径主砲を装備 かつ 対空強化弾(三式弾)を装備 かつ 対空電探を装備 かつ 発動判定){
return 第4種対空CI
}
if(特殊高角砲を2つ以上装備 かつ 対空電探を装備 かつ 発動判定){
return 第5種対空CI
}
if(高射装置を装備 かつ 大口径主砲を装備 かつ 対空強化弾(三式弾)を装備 かつ 発動判定){
return 第6種対空CI
}
if(特殊高角砲を装備 かつ 対空電探を装備 かつ 発動判定){
return 第8種対空CI
}
if(高射装置を装備かつ 高角砲を装備 かつ 対空電探を装備 かつ 発動判定){
return 第7種対空CI
}
// 艦娘固有【B優先度】対空CIグループ
if(武蔵改二 かつ 10cm連装高角砲改+増設機銃を装備 かつ 対空電探を装備 かつ 発動判定){
return 第26種対空CI
}
if((伊勢型改 または 武蔵改 または 武蔵改二) かつ 12㎝30連装噴進砲改二を装備 かつ 対空電探を装備 かつ 発動判定){
return 第28種対空CI
}
if((浜風乙改 または 磯風乙改) かつ 高角砲を装備 かつ 対空電探を装備 かつ 発動判定){
return 第29種対空CI
}
// ここまで
if(高射装置を装備 かつ 高角砲を装備 かつ 発動判定){
return 第9種対空CI
}
// 艦娘固有【C優先度】対空CIグループ
if(Gotland改 かつ 高角砲を装備 かつ 対空機銃を装備 かつ 発動判定){
return 第33種対空CI
}
// ここまで
if(特殊機銃を装備 かつ 標準機銃または特殊機銃を装備 かつ 対空電探を装備 かつ 発動判定){
return 第12種対空CI
}
if(特殊高角砲を装備 かつ 特殊機銃を装備 かつ 対空電探を装備 かつ 発動判定){
return 第13種対空CI
}
// 艦娘固有【D優先度】対空CIグループ
if(皐月改二 かつ 特殊機銃を装備 かつ 発動判定){
return 第18種対空CI
}
if(鬼怒改二 かつ 特殊機銃を装備 かつ 発動判定){
return 第20種対空CI
}
if(文月改二 かつ 特殊機銃を装備 かつ 発動判定){
return 第22種対空CI
}
if((UIT-25 または 伊504) かつ 標準機銃を装備 かつ 発動判定){
return 第23種対空CI // 優先度A ~ D
}
if(龍田改二 かつ 高角砲を装備 かつ 標準機銃を装備 かつ 発動判定){
return 第24種対空CI
}
if((天龍改二 または Gotland改) かつ 高角砲を3つ以上装備 かつ 発動判定){
return 第30種対空CI // 優先度C or D
}
if(天龍改二 かつ 高角砲を2つ以上装備 かつ 発動判定){
return 第31種対空CI // 優先度C or D
}
if((英国艦艇 または 金剛型改二) かつ (20連装7inch UP Rocket Launchersを2つ以上装備 または (16inch Mk.I三連装砲改+FCR type284を装備 かつ (20連装7inch UP Rocket Launchers または QF 2ポンド8連装ポンポン砲)を装備)) かつ 発動判定){
return 第32種対空CI
}
// ここまで
}
return null
}