bcdice/BCDice

View on GitHub

Showing 367 of 1,233 total issues

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

      def getOnewayDateTable()
        name = "片思いデート"

        table = [
          [11, "「気付いてくれないあなたが悪いんだから……!」\n突然の告白と、刃物沙汰。撃退士じゃなかったら死んでいた。受け身キャラは《生命力》が3D6点減少する。攻め気キャラの受け身キャラに対する《感情値》が3点上昇し、属性が《敵意》にあんる。受け身キャラは攻め気キャラに対するフラグがあった場合、フラグを折る。"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 303..329
lib/bcdice/game_system/Elysion.rb on lines 332..359
lib/bcdice/game_system/Elysion.rb on lines 391..418

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 73.

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 4 locations. Consider refactoring.
Open

      def getRandomNpcOther
        name = "教師・その他NPC表"

        table = [
          [11, "振り直し/任意"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 725..752
lib/bcdice/game_system/Elysion.rb on lines 785..812
lib/bcdice/game_system/Elysion.rb on lines 815..842

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 73.

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 2 locations. Consider refactoring.
Open

      def result_1d100(total, _dice_total, cmp_op, target)
        return nil unless cmp_op == :<=

        if total >= 100
          Result.fumble("ファンブル")
Severity: Major
Found in lib/bcdice/game_system/Gundog.rb and 1 other location - About 1 hr to fix
lib/bcdice/game_system/GundogRevised.rb on lines 38..60

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 73.

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 4 locations. Consider refactoring.
Open

      def getRandomNpcDownClassmen
        name = "学生図鑑 下級学年表"

        table = [
          [11, "若菜白兎(わかな・しろう):初等部2年2組:P72"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 725..752
lib/bcdice/game_system/Elysion.rb on lines 755..782
lib/bcdice/game_system/Elysion.rb on lines 815..842

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 73.

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 4 locations. Consider refactoring.
Open

      def getRandomNpcUpperClassmen
        name = "学生図鑑 上級学年表"

        table = [
          [11, "下妻笹緒(しもつま・ささお):高等部2年2組:P117"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 725..752
lib/bcdice/game_system/Elysion.rb on lines 755..782
lib/bcdice/game_system/Elysion.rb on lines 785..812

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 73.

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 4 locations. Consider refactoring.
Open

      def getRandomNpcSchoolLife
        name = "学生生活関連NPC表"

        table = [
          [11, "振り直し/任意"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 755..782
lib/bcdice/game_system/Elysion.rb on lines 785..812
lib/bcdice/game_system/Elysion.rb on lines 815..842

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 73.

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 4 locations. Consider refactoring.
Open

      def getFrindDateTable()
        name = "友達デート"

        table = [
          [11, "「こんなはずじゃなかったのにッ!」\n仲良くするつもりが、ひどい喧嘩になってしまう。この表の使用者のお互いに対する《感情値》が1点上昇し、属性が《敵意》になる。"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 303..329
lib/bcdice/game_system/Elysion.rb on lines 362..388
lib/bcdice/game_system/Elysion.rb on lines 391..418

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 73.

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 4 locations. Consider refactoring.
Open

      def getDateTable()
        name = 'デート'

        table = [
          [11, "「こんなはずじゃなかったのにッ!」仲良くするつもりが、ひどい喧嘩になってしまう。この表の使用者のお互いに対する《感情値》が1点上昇し、属性が《敵意》になる。"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 332..359
lib/bcdice/game_system/Elysion.rb on lines 362..388
lib/bcdice/game_system/Elysion.rb on lines 391..418

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 73.

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 4 locations. Consider refactoring.
Open

      def getMidnightDateTable()
        name = "真夜中デート"

        table = [
          [11, "「こんなはずじゃなかったのにッ!」\n仲良くするつもりが、ひどい喧嘩になってしまう。この表の使用者のお互いに対する《感情値》が1点上昇し、属性が《敵意》になる。"],
Severity: Major
Found in lib/bcdice/game_system/Elysion.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Elysion.rb on lines 303..329
lib/bcdice/game_system/Elysion.rb on lines 332..359
lib/bcdice/game_system/Elysion.rb on lines 362..388

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 73.

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 2 locations. Consider refactoring.
Open

      def get_dice_pools(m)
        rage_dice_included_command = m[COMMAND_RAGE_DICE_INCLUDED_INDEX]
        if rage_dice_included_command && rage_dice_included_command == "WAI"
          # Rage Diceを内数処理するの場合
          rage_dice_pool = m[RAGE_DICE_INCLUDED_INDEX].nil? ? -1 : m[RAGE_DICE_INCLUDED_INDEX].to_i
Severity: Major
Found in lib/bcdice/game_system/WerewolfTheApocalypse5th.rb and 1 other location - About 1 hr to fix
lib/bcdice/game_system/VampireTheMasquerade5th.rb on lines 99..116

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 72.

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 2 locations. Consider refactoring.
Open

      def get_dice_pools(m)
        hunger_dice_included_command = m[COMMAND_HUNGER_DICE_INCLUDED_INDEX]
        if hunger_dice_included_command && hunger_dice_included_command == "VMI"
          # Hunger Diceを内数処理するの場合
          hunger_dice_pool = m[HUNGER_DICE_INCLUDED_INDEX].nil? ? -1 : m[HUNGER_DICE_INCLUDED_INDEX].to_i
Severity: Major
Found in lib/bcdice/game_system/VampireTheMasquerade5th.rb and 1 other location - About 1 hr to fix
lib/bcdice/game_system/WerewolfTheApocalypse5th.rb on lines 99..116

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 72.

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 6 locations. Consider refactoring.
Open

      NIGHT_MARKET_SUVIVAL_TABLE = DiceTable::RangeTable.new(
        "サバイバル用品",
        "1D100",
        [
          [1..5, "対スモッグ呼吸マスク 20ed(日用)"],
Severity: Major
Found in lib/bcdice/game_system/cyberpunk_red/tables.rb and 5 other locations - About 1 hr to fix
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 6..31
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 34..59
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 62..87
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 90..115
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 118..143

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 71.

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 6 locations. Consider refactoring.
Open

      NIGHT_MARKET_FOODS_TABLE = DiceTable::RangeTable.new(
        "食品とドラッグ",
        "1D100",
        [
          [1..5, "缶詰 100ed(安物)"],
Severity: Major
Found in lib/bcdice/game_system/cyberpunk_red/tables.rb and 5 other locations - About 1 hr to fix
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 34..59
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 62..87
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 90..115
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 118..143
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 146..171

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 71.

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 6 locations. Consider refactoring.
Open

      NIGHT_MARKET_CYBERWARE_TABLE = DiceTable::RangeTable.new(
        "サイバーウェア",
        "1D100",
        [
          [1..5, "サイバーアイ 100ed(上等)"],
Severity: Major
Found in lib/bcdice/game_system/cyberpunk_red/tables.rb and 5 other locations - About 1 hr to fix
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 6..31
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 34..59
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 62..87
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 118..143
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 146..171

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 71.

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 6 locations. Consider refactoring.
Open

      NIGHT_MARKET_MECHANIC_TABLE = DiceTable::RangeTable.new(
        "個人用電子機器",
        "1D100",
        [
          [1..5, "エージェント 100ed(上等)"],
Severity: Major
Found in lib/bcdice/game_system/cyberpunk_red/tables.rb and 5 other locations - About 1 hr to fix
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 6..31
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 62..87
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 90..115
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 118..143
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 146..171

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 71.

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 6 locations. Consider refactoring.
Open

      NIGHT_MARKET_FASHION_TABLE = DiceTable::RangeTable.new(
        "衣料品とファッションウェア",
        "1D100",
        [
          [1..5, "バッグ・レディ・シック"],
Severity: Major
Found in lib/bcdice/game_system/cyberpunk_red/tables.rb and 5 other locations - About 1 hr to fix
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 6..31
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 34..59
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 62..87
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 90..115
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 146..171

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 71.

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 6 locations. Consider refactoring.
Open

      NIGHT_MARKET_WEAPONS_TABLE = DiceTable::RangeTable.new(
        "武器と防具",
        "1D100",
        [
          [1..5, "中型拳銃 50ed(程々)"],
Severity: Major
Found in lib/bcdice/game_system/cyberpunk_red/tables.rb and 5 other locations - About 1 hr to fix
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 6..31
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 34..59
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 90..115
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 118..143
lib/bcdice/game_system/cyberpunk_red/tables.rb on lines 146..171

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 71.

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 4 locations. Consider refactoring.
Open

      def get_identity_table
        name = 'アイデンティティ表:基本'
        table = [
          [1, '戦い:戦いこそが、あなたをあなたたらしめている。'],
          [2, '守護:あなたには守るべきものがある。'],
Severity: Major
Found in lib/bcdice/game_system/Strave.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Strave.rb on lines 103..127
lib/bcdice/game_system/Strave.rb on lines 157..181
lib/bcdice/game_system/Strave.rb on lines 184..208

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 70.

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 4 locations. Consider refactoring.
Open

      def get_affiliation_table
        name = '所属表:基本'
        table = [
          [1, 'アリウス管理委員会:あなたはアリウス管理委員会に所属している。'],
          [2, 'オーヴァーブルー:あなたはオーヴァーブルーに所属している。'],
Severity: Major
Found in lib/bcdice/game_system/Strave.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Strave.rb on lines 130..154
lib/bcdice/game_system/Strave.rb on lines 157..181
lib/bcdice/game_system/Strave.rb on lines 184..208

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 70.

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 4 locations. Consider refactoring.
Open

      def get_affiliation_table2
        name = '所属表:ヴァリアンスネイヴァー'
        table = [
          [1, 'シュヴァレ・トワール:あなたはシュヴァレ・トワールに所属している。'],
          [2, 'ディープシンカー:あなたはディープシンカーに所属している。'],
Severity: Major
Found in lib/bcdice/game_system/Strave.rb and 3 other locations - About 1 hr to fix
lib/bcdice/game_system/Strave.rb on lines 103..127
lib/bcdice/game_system/Strave.rb on lines 130..154
lib/bcdice/game_system/Strave.rb on lines 184..208

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 70.

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

Severity
Category
Status
Source
Language