Hack machine pistol whir down when no ammo
This commit is contained in:
@@ -167,10 +167,17 @@ invItemLocUpdate cr loc w = doAnyEquipmentEffect loc cr $ case itm ^. itType of
|
||||
| fromMaybe 0 (itm ^? itParams . wTime) >= _coolEnd (useDelay itm) ->
|
||||
w & pointerToItem itm . itParams . wTime
|
||||
.~ 0
|
||||
| fromMaybe 0 (itm ^? itParams . wTime) >= _coolStart (useDelay itm) ->
|
||||
& pointerToItem itm . itParams . coolSound .~ Nothing
|
||||
| fromMaybe 0 (itm ^? itParams . wTime) == _coolStart (useDelay itm) ->
|
||||
w
|
||||
& randGen .~ g
|
||||
& pointerToItem itm . itParams . wTime +~ 1
|
||||
& pointerToItem itm . itParams . coolSound ?~ sid
|
||||
& soundContinue (CrWeaponSound (_crID cr) (fromIntegral $ _itID itm)) (_crPos cr) sid (Just 1)
|
||||
| fromMaybe 0 (itm ^? itParams . wTime) > _coolStart (useDelay itm) ->
|
||||
w
|
||||
& pointerToItem itm . itParams . wTime +~ 1
|
||||
& soundContinue (CrWeaponSound (_crID cr) (fromIntegral $ _itID itm)) (_crPos cr) whirdownS (Just 1)
|
||||
& soundContinue (CrWeaponSound (_crID cr) (fromIntegral $ _itID itm)) (_crPos cr) (fromMaybe undefined (itm ^? itParams . coolSound . _Just)) (Just 1)
|
||||
| itm ^? itParams . isWarming == Just True ->
|
||||
w
|
||||
& pointerToItem itm . itParams . isWarming .~ False
|
||||
@@ -186,6 +193,7 @@ invItemLocUpdate cr loc w = doAnyEquipmentEffect loc cr $ case itm ^. itType of
|
||||
w ^? cWorld . lWorld . creatures . ix 0 . crType . avatarPulse . pulseProgress
|
||||
== Just 0
|
||||
itm = loc ^. locLDT . ldtValue . _1
|
||||
(sid, g) = runState (takeOne [whirdownSmall1S,whirdownSmall2S]) (w ^. randGen)
|
||||
|
||||
copierItemUpdate :: Item -> Creature -> World -> World
|
||||
copierItemUpdate itm cr w = fromMaybe w $ do
|
||||
|
||||
Reference in New Issue
Block a user