bcdice/BCDice

View on GitHub
lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb

Summary

Maintainability
C
1 day
Test Coverage
A
100%

File item_table.rb has 349 lines of code (exceeds 250 allowed). Consider refactoring.
Open

module BCDice
  module GameSystem
    class MeikyuKingdomBasic
      WEAPON_ITEM_TABLE = DiceTable::D66Table.new(
        "武具アイテム表",
Severity: Minor
Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb - About 4 hrs to fix

    Similar blocks of code found in 11 locations. Consider refactoring.
    Open

          REST_ITEM_TABLE = DiceTable::D66Table.new(
            "回復アイテム表",
            D66SortType::ASC,
            {
              11 => "チョコレート(お弁当)",
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 10 other locations - About 1 hr to fix
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 33..57
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 61..85
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 89..113
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 66..90
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 94..118
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 122..146
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 150..174
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 6..30
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 34..58
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 90..114

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 50.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 11 locations. Consider refactoring.
    Open

          WEAPON_ITEM_TABLE = DiceTable::D66Table.new(
            "武具アイテム表",
            D66SortType::ASC,
            {
              11 => "だんびら",
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 10 other locations - About 1 hr to fix
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 33..57
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 61..85
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 89..113
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 66..90
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 94..118
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 122..146
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 150..174
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 34..58
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 62..86
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 90..114

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 50.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 11 locations. Consider refactoring.
    Open

          SEARCH_ITEM_TABLE = DiceTable::D66Table.new(
            "探索アイテム表",
            D66SortType::ASC,
            {
              11 => "拷問具(星の欠片)",
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 10 other locations - About 1 hr to fix
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 33..57
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 61..85
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 89..113
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 66..90
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 94..118
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 122..146
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 150..174
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 6..30
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 34..58
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 62..86

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 50.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 11 locations. Consider refactoring.
    Open

          LIFE_ITEM_TABLE = DiceTable::D66Table.new(
            "生活アイテム表",
            D66SortType::ASC,
            {
              11 => "鍋",
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 10 other locations - About 1 hr to fix
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 33..57
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 61..85
    lib/bcdice/game_system/ShuumatsuBargainWars.rb on lines 89..113
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 66..90
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 94..118
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 122..146
    lib/bcdice/game_system/YankeeYogSothoth.rb on lines 150..174
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 6..30
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 62..86
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 90..114

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 50.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

          NORMAL_RARE_ITEM_TABLE = DiceTable::D66GridTable.new(
            "基本レア一般アイテム表",
            [
              ["愚者の冠", "香水", "煙玉", "悪名", "藁人形", "王妃の鏡"],
              ["星籠", "転ばぬ先の杖", "悟りの書", "鉛の兵隊", "黄金の林檎", "百年茸"],
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 4 other locations - About 1 hr to fix
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 141..150
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 166..175
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 178..187
    lib/bcdice/game_system/satasupe/tables.rb on lines 6..15

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 48.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

          ADVANCED_RARE_WEAPON_ITEM_TABLE = DiceTable::D66GridTable.new(
            "上級レア武具アイテム表",
            [
              ["虚弾", "小鬼の襟巻", "眼弾", "釣竿", "虹柱", "服従の鞭"],
              ["虚弾", "小鬼の襟巻", "眼弾", "釣竿", "虹柱", "服従の鞭"],
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 4 other locations - About 1 hr to fix
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 129..138
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 141..150
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 166..175
    lib/bcdice/game_system/satasupe/tables.rb on lines 6..15

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 48.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

          ADVANCED_RARE_ITEM_TABLE = DiceTable::D66GridTable.new(
            "上級レア一般アイテム表",
            [
              ["砂時計週報", "兵糧丸", "遊星葉書", "百科辞典", "夢枕", "蓄音機"],
              ["砂時計週報", "兵糧丸", "遊星葉書", "百科辞典", "夢枕", "蓄音機"],
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 4 other locations - About 1 hr to fix
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 129..138
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 166..175
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 178..187
    lib/bcdice/game_system/satasupe/tables.rb on lines 6..15

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 48.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 5 locations. Consider refactoring.
    Open

          NORMAL_RARE_WEAPON_ITEM_TABLE = DiceTable::D66GridTable.new(
            "基本レア武具アイテム表",
            [
              ["蛍矢", "小麦粉", "喇叭銃", "まわし", "しゃべる剣", "大盾"],
              ["王笏", "ぬいぐるみ", "魔杖", "獣の毛皮", "バカには見えない鎧", "ビキニアーマー"],
    Severity: Major
    Found in lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb and 4 other locations - About 1 hr to fix
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 129..138
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 141..150
    lib/bcdice/game_system/meikyu_kingdom_basic/item_table.rb on lines 178..187
    lib/bcdice/game_system/satasupe/tables.rb on lines 6..15

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 48.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    There are no issues that match your filters.

    Category
    Status