berserkFidget :: EntThink
berserkFidget =
  GenericEntThink "berserk_fidget" $ \selfRef -> do
    self <- readRef selfRef

    if (self^.eMonsterInfo.miAIFlags) .&. Constants.aiStandGround /= 0
      then
        return True

      else do
        r <- Lib.randomF

        if r > 0.15
          then
            return True

          else do
            modifyRef selfRef (\v -> v & eMonsterInfo.miCurrentMove .~ Just berserkMoveStandFidget)
            soundIdle <- use $ mBerserkGlobals.mBerserkSoundIdle
            sound <- use $ gameBaseGlobals.gbGameImport.giSound
            sound (Just selfRef) Constants.chanWeapon soundIdle 1 Constants.attnIdle 0
            return True
berserkFidget :: EntThink
berserkFidget =
  GenericEntThink "berserk_fidget" $ \selfRef -> do
    self <- readRef selfRef

    if (self^.eMonsterInfo.miAIFlags) .&. Constants.aiStandGround /= 0
      then
        return True

      else do
        r <- Lib.randomF

        if r > 0.15
          then
            return True

          else do
            modifyRef selfRef (\v -> v & eMonsterInfo.miCurrentMove .~ Just berserkMoveStandFidget)
            soundIdle <- use $ mBerserkGlobals.mBerserkSoundIdle
            sound <- use $ gameBaseGlobals.gbGameImport.giSound
            sound (Just selfRef) Constants.chanWeapon soundIdle 1 Constants.attnIdle 0
            return True
berserkFidget =
  GenericEntThink "berserk_fidget" $ \selfRef -> do
    self <- readRef selfRef

    if (self^.eMonsterInfo.miAIFlags) .&. Constants.aiStandGround /= 0
      then
        return True

      else do
        r <- Lib.randomF

        if r > 0.15
          then
            return True

          else do
            modifyRef selfRef (\v -> v & eMonsterInfo.miCurrentMove .~ Just berserkMoveStandFidget)
            soundIdle <- use $ mBerserkGlobals.mBerserkSoundIdle
            sound <- use $ gameBaseGlobals.gbGameImport.giSound
            sound (Just selfRef) Constants.chanWeapon soundIdle 1 Constants.attnIdle 0
            return True