Refactor, try to limit dependencies

This commit is contained in:
2022-07-28 00:59:56 +01:00
parent 8aa5c17ab9
commit 160560af5f
418 changed files with 15104 additions and 13342 deletions
+10 -8
View File
@@ -1,8 +1,9 @@
module Dodge.Magnet where
import Dodge.Data
import Geometry
import Control.Lens
import Dodge.Data.Bullet
import Dodge.Data.Magnet
import Geometry
dampField :: Magnet -> Bullet -> Bullet
dampField mg pt = case pt of
@@ -21,11 +22,12 @@ curveAroundField minrad maxrad mg pt = case pt of
thedist = dist btpos mgpos
mgpos = _mgPos mg
btpos = _buPos pt
rotateToCircle vel
| (isLHS mgpos btpos (btpos +.+ vel) && isRHS mgpos btpos (mgpos +.+ vNormal vel) )
|| (isRHS mgpos btpos (btpos +.+ vel) && isLHS mgpos btpos (mgpos +.+ vNormal vel) )
= rotateV rot vel
rotateToCircle vel
| (isLHS mgpos btpos (btpos +.+ vel) && isRHS mgpos btpos (mgpos +.+ vNormal vel))
|| (isRHS mgpos btpos (btpos +.+ vel) && isLHS mgpos btpos (mgpos +.+ vNormal vel)) =
rotateV rot vel
| otherwise = rotateV (negate rot) vel
rot | thedist < minrad = 0.5
| otherwise = 0.5 * ((maxrad - thedist) / (maxrad - minrad) ) ** 2
rot
| thedist < minrad = 0.5
| otherwise = 0.5 * ((maxrad - thedist) / (maxrad - minrad)) ** 2
_ -> pt