| summaryrefslogtreecommitdiff | 
diff options
| author | nsensfel <SpamShield0@noot-noot.org> | 2019-06-06 17:54:05 +0200 | 
|---|---|---|
| committer | nsensfel <SpamShield0@noot-noot.org> | 2019-06-06 17:54:05 +0200 | 
| commit | 5fd8f5d303e8915cc74a52e5b86d1fd8f073cb4d (patch) | |
| tree | c732d37accd97348ff0f886021bcbb8f48dff0fb /src/battle/mechanic | |
| parent | c3afe2633025641dd02e05d6c55dd9cafc42b8a2 (diff) | |
Fixes some of the issues I've found.
Diffstat (limited to 'src/battle/mechanic')
| -rw-r--r-- | src/battle/mechanic/action/btl_action_attack.erl | 12 | ||||
| -rw-r--r-- | src/battle/mechanic/action/btl_action_move.erl | 6 | 
2 files changed, 11 insertions, 7 deletions
| diff --git a/src/battle/mechanic/action/btl_action_attack.erl b/src/battle/mechanic/action/btl_action_attack.erl index 1953096..4a4ee8a 100644 --- a/src/battle/mechanic/action/btl_action_attack.erl +++ b/src/battle/mechanic/action/btl_action_attack.erl @@ -95,29 +95,31 @@ get_character_abilities (Action, Character, TargetCharacter) ->        ),     DefenseRange = shr_weapon:get_minimum_range(CharacterWeapon), -   AttackRange =  shr_weapon:get_maximum_range(CharacterWeapon), +   AttackRange = shr_weapon:get_maximum_range(CharacterWeapon),     TargetDefenseRange = shr_weapon:get_minimum_range(TargetCharacterWeapon),     TargetAttackRange =  shr_weapon:get_maximum_range(TargetCharacterWeapon),     IsNotOpportunistic = btl_action:get_is_opportunistic(Action), -   AttackRange = +   RequiredRange =        shr_location:dist        (           btl_character:get_location(Character),           btl_character:get_location(TargetCharacter)        ), +   true = (AttackRange >= RequiredRange), +     {        (DefenseRange == 0),        (           IsNotOpportunistic           and (TargetDefenseRange == 0) -         and (TargetAttackRange =< AttackRange) +         and (TargetAttackRange =< RequiredRange)        ),        (           IsNotOpportunistic -         and (TargetAttackRange =< AttackRange) +         and (TargetAttackRange =< RequiredRange)        )     }. @@ -664,7 +666,7 @@ handle (Action, S0Character, S0Update) ->        ataxic:update_field        (           btl_character:get_current_health_field(), -         ataxic:constant(btl_character:get_current_health(S1Character)) +         ataxic:constant(btl_character:get_current_health(S1TargetCharacter))        ),     {S3Battle, BattleAtaxiaUpdate1} = diff --git a/src/battle/mechanic/action/btl_action_move.erl b/src/battle/mechanic/action/btl_action_move.erl index a32a40f..a24a96e 100644 --- a/src/battle/mechanic/action/btl_action_move.erl +++ b/src/battle/mechanic/action/btl_action_move.erl @@ -53,12 +53,14 @@ cross (PlayerIX, Map, ForbiddenLocations, [Step|NextSteps], Cost, Location) ->     false = IsForbidden,     Interruptions = -      list:foldl +      lists:foldl        (           fun (MarkerName, CurrentInterruptions) ->              case shr_map:get_marker(MarkerName, Map) of                 {ok, Marker} -> -                  case shr_map_marker:interrupts_movement(PlayerIX, Marker) of +                  case +                     shr_map_marker:interrupts_movement(PlayerIX, Marker) +                  of                       true -> [Marker|CurrentInterruptions];                       _ -> CurrentInterruptions                    end; | 


