Перейти к содержанию

  • 0
Авторизация  
ytrav12

Не правильно подсчитываются шары Вашингтона

Вопрос

В процессе отбирания / возвращения инвентаря слетает счетчик DCDialogueSnowglobes.iDCSnowglobeTotal в DCSnowglobeDisplayScript [SCPT:0B300001] в результате чего перк коллекционер получается досрочно и теряется возможность дособрать шары на стенды. Предлагаю оторвать его нафиг, а проверять состояния рефов на эталонном стенде в Мегатонне примерно так:

 

Вместо

Спойлер

begin onActivate player
  if Player.HasPerk AASnowglobCollection == 0
    if DCDialogueSnowglobes.iDCSnowglobeTotal < 12
      startQuest DCSnowglobeEnabler
    elseif DCDialogueSnowglobes.iDCSnowglobeTotal == 12
      startQuest DCSnowglobeEnabler
      Player.addperk AASnowglobCollection
      if Once == 0
        ShowMessage DCAddPerkMessage
        ShowMessage DCSnowglobeFinalMessage
        set Once to 1
      endif
    endif
  else
    if Act == 0
      Set Act to 1
    endif
  endif
end

 

 

Заменить на

Спойлер

begin onActivate player
  if HD01MonumGlobeREF.GetDisabled || HD01TenpGlobeREF.GetDisabled || HD01PentagGlobeREF.GetDisabled || HD01CapitolGlobeREF.GetDisabled || HD01RooseveltGlobeREF.GetDisabled || HD01ParadiseGlobeREF.GetDisabled || HD01LamplightGlobeREF.GetDisabled || HD01PittGlobeREF.GetDisabled || HD01PointLookoutGlobeREF.GetDisabled || HD01AdamsGlobeREF.GetDisabled || HD01AnchGlobeREF.GetDisabled || HD01MothershipGlobeREF.GetDisabled
    ' если шары не все удаляем ошибочный перк и добавляем шары из инвентаря
    player.RemovePerk AASnowglobCollection
    startQuest DCSnowglobeEnabler
  endif

  if HD01MonumGlobeREF.GetDisabled || HD01TenpGlobeREF.GetDisabled || HD01PentagGlobeREF.GetDisabled || HD01CapitolGlobeREF.GetDisabled || HD01RooseveltGlobeREF.GetDisabled || HD01ParadiseGlobeREF.GetDisabled || HD01LamplightGlobeREF.GetDisabled || HD01PittGlobeREF.GetDisabled || HD01PointLookoutGlobeREF.GetDisabled || HD01AdamsGlobeREF.GetDisabled || HD01AnchGlobeREF.GetDisabled || HD01MothershipGlobeREF.GetDisabled
    ' если шары не все ничего не делаем (чтобы не страдать фигней с инверсиями условий)
  elseif Player.HasPerk AASnowglobCollection == 0
      Player.AddPerk AASnowglobCollection
      ShowMessage DCAddPerkMessage
      ShowMessage DCSnowglobeFinalMessage
    else
      if Act == 0
      Set Act to 1
    endif
  endif
end

 

 

Вроде работает, но лучше проверить

DCGlobeFix.esp

  • Спасибо! 1

Поделиться сообщением


Ссылка на сообщение

1 ответ на этот вопрос

Рекомендуемые сообщения

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  


×
×
  • Создать...