Mid implementation of external ammo sources

This commit is contained in:
2024-06-20 22:58:52 +01:00
parent 7162893c4f
commit d41604fcde
16 changed files with 313 additions and 254 deletions
+9
View File
@@ -81,6 +81,7 @@ ammoPosition itm hit = case hit of
GRAPECANNON _ -> NoAmmoPosition
MINIGUNX _ -> NoAmmoPosition
VOLLEYGUN i -> volleygunAmmoPos i
MULTIGUN i -> multigunAmmoPos i
RIFLE -> Bullets [(V3 5 0 3, Q.axisAngle (V3 1 0 0) 0)]
REPEATER -> Magazine (V3 10 (-2) 0) rhs
AUTORIFLE -> Magazine (V3 10 (-2) 0) rhs
@@ -129,6 +130,13 @@ volleygunAmmoPos i =
where
f n = fromIntegral n * 5 - ((fromIntegral i - 1) * 2.5)
multigunAmmoPos :: Int -> AmmoPosition
multigunAmmoPos i =
Bullets
[(V3 5 (f n) 3, Q.axisAngle (V3 1 0 0) 0) | n <- [0 .. i -1]]
where
f n = fromIntegral n * 5 - ((fromIntegral i - 1) * 2.5)
revolverAmmoPos :: AmmoPosition
revolverAmmoPos =
Bullets
@@ -154,6 +162,7 @@ heldItemSPic ht it = case ht of
GRAPECANNON _ -> noPic $ bangConeShape 20
MINIGUNX i -> miniGunXPictItem i it
VOLLEYGUN i -> noPic $ volleyGunShape i <> addBullets it
MULTIGUN i -> noPic $ volleyGunShape i <> addBullets it
RIFLE -> noPic $ baseRifleShape <> addBullets it
REPEATER -> noPic $ baseRifleShape <> addTinClip it
AUTORIFLE -> noPic $ baseRifleShape <> addTinClip it