IL2HorusTeam/il2fb-game-log-parser

View on GitHub

Showing 139 of 141 total issues

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

class AIAircraftWasDamagedByHumanAircraft(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] r01000 damaged by User1:Bf-109G-6_Late at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class AIAircraftCrewMemberParachuteWasDestroyedByMovingUnit(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] r01000(0) has chute destroyed by 0_Chief at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class AIAircraftCrewMemberParachuteWasDestroyedByMovingUnitMember(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] r01000(0) has chute destroyed by 0_Chief0 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class AIAircraftCrewMemberParachuteWasDestroyedByHumanAircraft(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] r01000(0) has chute destroyed by User0:Bf-109G-2 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445

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

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

class HumanHasSelectedAirfield(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] User0 selected army Red at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class BuildingWasDestroyedByStationaryUnit(ParsableEvent):
    """
    Examples:

        "[8:33:05 PM] 3do/Buildings/Finland/CenterHouse1_w/live.sim destroyed by 0_Static at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class HumanAircraftWasShotDownByAIAircraft(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] User0:Pe-8 shot down by r01000 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class MovingUnitWasDestroyedByMovingUnit(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] 0_Chief destroyed by 1_Chief at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class AIAircraftCrewMemberWasKilledByAIAircraft(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] r01000(0) was killed by r01001 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3253..3277
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

class AIAircraftCrewMemberWasKilledInParachuteByMovingUnitMember(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] r01000(0) was killed in his chute by 0_Chief0 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 75 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 243..267
il2fb/parsers/game_log/events.py on lines 592..616
il2fb/parsers/game_log/events.py on lines 620..644
il2fb/parsers/game_log/events.py on lines 648..672
il2fb/parsers/game_log/events.py on lines 676..700
il2fb/parsers/game_log/events.py on lines 704..728
il2fb/parsers/game_log/events.py on lines 732..756
il2fb/parsers/game_log/events.py on lines 760..784
il2fb/parsers/game_log/events.py on lines 788..812
il2fb/parsers/game_log/events.py on lines 816..840
il2fb/parsers/game_log/events.py on lines 844..868
il2fb/parsers/game_log/events.py on lines 1148..1172
il2fb/parsers/game_log/events.py on lines 1176..1200
il2fb/parsers/game_log/events.py on lines 1204..1228
il2fb/parsers/game_log/events.py on lines 1232..1256
il2fb/parsers/game_log/events.py on lines 1260..1284
il2fb/parsers/game_log/events.py on lines 1288..1312
il2fb/parsers/game_log/events.py on lines 1316..1340
il2fb/parsers/game_log/events.py on lines 1344..1368
il2fb/parsers/game_log/events.py on lines 1372..1396
il2fb/parsers/game_log/events.py on lines 1400..1424
il2fb/parsers/game_log/events.py on lines 1428..1452
il2fb/parsers/game_log/events.py on lines 1456..1480
il2fb/parsers/game_log/events.py on lines 1484..1508
il2fb/parsers/game_log/events.py on lines 1512..1536
il2fb/parsers/game_log/events.py on lines 1540..1564
il2fb/parsers/game_log/events.py on lines 1568..1593
il2fb/parsers/game_log/events.py on lines 1597..1622
il2fb/parsers/game_log/events.py on lines 1626..1651
il2fb/parsers/game_log/events.py on lines 1655..1680
il2fb/parsers/game_log/events.py on lines 1684..1709
il2fb/parsers/game_log/events.py on lines 1911..1935
il2fb/parsers/game_log/events.py on lines 1939..1963
il2fb/parsers/game_log/events.py on lines 1967..1991
il2fb/parsers/game_log/events.py on lines 1995..2019
il2fb/parsers/game_log/events.py on lines 2023..2047
il2fb/parsers/game_log/events.py on lines 2051..2075
il2fb/parsers/game_log/events.py on lines 2079..2103
il2fb/parsers/game_log/events.py on lines 2107..2131
il2fb/parsers/game_log/events.py on lines 2135..2159
il2fb/parsers/game_log/events.py on lines 2163..2187
il2fb/parsers/game_log/events.py on lines 2191..2215
il2fb/parsers/game_log/events.py on lines 2219..2243
il2fb/parsers/game_log/events.py on lines 2247..2271
il2fb/parsers/game_log/events.py on lines 2275..2299
il2fb/parsers/game_log/events.py on lines 2303..2327
il2fb/parsers/game_log/events.py on lines 2331..2355
il2fb/parsers/game_log/events.py on lines 2359..2383
il2fb/parsers/game_log/events.py on lines 2387..2411
il2fb/parsers/game_log/events.py on lines 2415..2439
il2fb/parsers/game_log/events.py on lines 2443..2467
il2fb/parsers/game_log/events.py on lines 2523..2547
il2fb/parsers/game_log/events.py on lines 2551..2575
il2fb/parsers/game_log/events.py on lines 2579..2603
il2fb/parsers/game_log/events.py on lines 2607..2631
il2fb/parsers/game_log/events.py on lines 2635..2659
il2fb/parsers/game_log/events.py on lines 2771..2795
il2fb/parsers/game_log/events.py on lines 2799..2823
il2fb/parsers/game_log/events.py on lines 2827..2851
il2fb/parsers/game_log/events.py on lines 2855..2879
il2fb/parsers/game_log/events.py on lines 2883..2907
il2fb/parsers/game_log/events.py on lines 3057..3081
il2fb/parsers/game_log/events.py on lines 3085..3109
il2fb/parsers/game_log/events.py on lines 3113..3137
il2fb/parsers/game_log/events.py on lines 3141..3165
il2fb/parsers/game_log/events.py on lines 3169..3193
il2fb/parsers/game_log/events.py on lines 3197..3221
il2fb/parsers/game_log/events.py on lines 3225..3249
il2fb/parsers/game_log/events.py on lines 3281..3305
il2fb/parsers/game_log/events.py on lines 3309..3333
il2fb/parsers/game_log/events.py on lines 3337..3361
il2fb/parsers/game_log/events.py on lines 3365..3389
il2fb/parsers/game_log/events.py on lines 3393..3417
il2fb/parsers/game_log/events.py on lines 3421..3445
il2fb/parsers/game_log/events.py on lines 3449..3473

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

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

def get_human_transformer(dst_field_name, src_field_prefix=None):
    if not src_field_prefix:
        src_field_prefix = dst_field_name

    callsign_field_name = '{0}_callsign'.format(src_field_prefix)
Severity: Major
Found in il2fb/parsers/game_log/transformers.py and 4 other locations - About 3 hrs to fix
il2fb/parsers/game_log/transformers.py on lines 126..137
il2fb/parsers/game_log/transformers.py on lines 144..155
il2fb/parsers/game_log/transformers.py on lines 182..193
il2fb/parsers/game_log/transformers.py on lines 199..210

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

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

class HumanHasToggledWingtipSmokes(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] User0:Pe-8 turned wingtip smokes off at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 1 other location - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 324..347

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

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

class HumanHasToggledLandingLights(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] User0:Pe-8 turned landing lights off at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 1 other location - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 351..374

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

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

class TreeWasDestroyedByMovingUnit(ParsableEvent):
    """
    Examples:

        "[8:33:05 PM] 3do/Tree/Line_W/live.sim destroyed by 0_Chief at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 10 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 378..401
il2fb/parsers/game_log/events.py on lines 405..428
il2fb/parsers/game_log/events.py on lines 510..534
il2fb/parsers/game_log/events.py on lines 538..562
il2fb/parsers/game_log/events.py on lines 1713..1738
il2fb/parsers/game_log/events.py on lines 1742..1767
il2fb/parsers/game_log/events.py on lines 1771..1796
il2fb/parsers/game_log/events.py on lines 1800..1825
il2fb/parsers/game_log/events.py on lines 2663..2687
il2fb/parsers/game_log/events.py on lines 2691..2715

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

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

class HumanIsTryingToTakeSeat(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] User0 is trying to occupy seat USN_VF_51A020(0)"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 10 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 378..401
il2fb/parsers/game_log/events.py on lines 510..534
il2fb/parsers/game_log/events.py on lines 538..562
il2fb/parsers/game_log/events.py on lines 1713..1738
il2fb/parsers/game_log/events.py on lines 1742..1767
il2fb/parsers/game_log/events.py on lines 1771..1796
il2fb/parsers/game_log/events.py on lines 1800..1825
il2fb/parsers/game_log/events.py on lines 1829..1854
il2fb/parsers/game_log/events.py on lines 2663..2687
il2fb/parsers/game_log/events.py on lines 2691..2715

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

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

class HumanHasDamagedOwnAircraft(ParsableEvent):
    """
    Examples:

        "[8:33:05 PM] User0:Pe-8 damaged by landscape at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 10 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 378..401
il2fb/parsers/game_log/events.py on lines 405..428
il2fb/parsers/game_log/events.py on lines 510..534
il2fb/parsers/game_log/events.py on lines 1713..1738
il2fb/parsers/game_log/events.py on lines 1742..1767
il2fb/parsers/game_log/events.py on lines 1771..1796
il2fb/parsers/game_log/events.py on lines 1800..1825
il2fb/parsers/game_log/events.py on lines 1829..1854
il2fb/parsers/game_log/events.py on lines 2663..2687
il2fb/parsers/game_log/events.py on lines 2691..2715

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

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

class TreeWasDestroyedByAIAircraft(ParsableEvent):
    """
    Examples:

        "[8:33:05 PM] 3do/Tree/Line_W/live.sim destroyed by r01000 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 10 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 378..401
il2fb/parsers/game_log/events.py on lines 405..428
il2fb/parsers/game_log/events.py on lines 510..534
il2fb/parsers/game_log/events.py on lines 538..562
il2fb/parsers/game_log/events.py on lines 1713..1738
il2fb/parsers/game_log/events.py on lines 1742..1767
il2fb/parsers/game_log/events.py on lines 1800..1825
il2fb/parsers/game_log/events.py on lines 1829..1854
il2fb/parsers/game_log/events.py on lines 2663..2687
il2fb/parsers/game_log/events.py on lines 2691..2715

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

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

class HumanHasChangedSeat(ParsableEvent):
    """
    Example:

        "[8:33:05 PM] User0:Pe-8(0) seat occupied by User0 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 10 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 405..428
il2fb/parsers/game_log/events.py on lines 510..534
il2fb/parsers/game_log/events.py on lines 538..562
il2fb/parsers/game_log/events.py on lines 1713..1738
il2fb/parsers/game_log/events.py on lines 1742..1767
il2fb/parsers/game_log/events.py on lines 1771..1796
il2fb/parsers/game_log/events.py on lines 1800..1825
il2fb/parsers/game_log/events.py on lines 1829..1854
il2fb/parsers/game_log/events.py on lines 2663..2687
il2fb/parsers/game_log/events.py on lines 2691..2715

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

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

class AIHasDamagedOwnAircraft(ParsableEvent):
    """
    Examples:

        "[8:33:05 PM] r01000 damaged by landscape at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 10 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 378..401
il2fb/parsers/game_log/events.py on lines 405..428
il2fb/parsers/game_log/events.py on lines 510..534
il2fb/parsers/game_log/events.py on lines 538..562
il2fb/parsers/game_log/events.py on lines 1713..1738
il2fb/parsers/game_log/events.py on lines 1742..1767
il2fb/parsers/game_log/events.py on lines 1771..1796
il2fb/parsers/game_log/events.py on lines 1800..1825
il2fb/parsers/game_log/events.py on lines 1829..1854
il2fb/parsers/game_log/events.py on lines 2691..2715

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

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

class TreeWasDestroyedByHumanAircraft(ParsableEvent):
    """
    Examples:

        "[8:33:05 PM] 3do/Tree/Line_W/live.sim destroyed by User0:Pe-8 at 100.0 200.99"
Severity: Major
Found in il2fb/parsers/game_log/events.py and 10 other locations - About 3 hrs to fix
il2fb/parsers/game_log/events.py on lines 378..401
il2fb/parsers/game_log/events.py on lines 405..428
il2fb/parsers/game_log/events.py on lines 510..534
il2fb/parsers/game_log/events.py on lines 538..562
il2fb/parsers/game_log/events.py on lines 1742..1767
il2fb/parsers/game_log/events.py on lines 1771..1796
il2fb/parsers/game_log/events.py on lines 1800..1825
il2fb/parsers/game_log/events.py on lines 1829..1854
il2fb/parsers/game_log/events.py on lines 2663..2687
il2fb/parsers/game_log/events.py on lines 2691..2715

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

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