>>119
if ('防.' + name == key.split('.')[0] + '.' + key.split('.')[1]) {
a = o[key];
break;
}

if ('攻.' + name == key.split('.')[0] + '.' + key.split('.')[1]) {
a = o[key];
break;
}

if (name == key.split('.')[1]) {
a = o[key];
break;
}
だけで簡潔にしろということかな。
順序依存だけど結果は同じだな^ ^

getBasic()第3引数は実はいらない。
ただしカードナンバーなしで回避できない例外が将来あるかもしれないので引数は残しておく方が良いか。
ちゃんとコメ残してくれたら問題ないね。