Browse Source

Use HeroClass in UI functions

pull/6601/head^2
ephphatha 3 years ago committed by Anders Jenbo
parent
commit
28fd553266
  1. 4
      Source/DiabloUI/diabloui.h
  2. 10
      Source/DiabloUI/hero/selhero.cpp
  3. 4
      Source/pfile.cpp
  4. 2
      Source/pfile.h

4
Source/DiabloUI/diabloui.h

@ -83,8 +83,8 @@ void UiTitleDialog();
void UnloadUiGFX();
void UiInitialize();
bool UiValidPlayerName(std::string_view name); /* check */
void UiSelHeroMultDialog(bool (*fninfo)(bool (*fninfofunc)(_uiheroinfo *)), bool (*fncreate)(_uiheroinfo *), bool (*fnremove)(_uiheroinfo *), void (*fnstats)(unsigned int, _uidefaultstats *), _selhero_selections *dlgresult, uint32_t *saveNumber);
void UiSelHeroSingDialog(bool (*fninfo)(bool (*fninfofunc)(_uiheroinfo *)), bool (*fncreate)(_uiheroinfo *), bool (*fnremove)(_uiheroinfo *), void (*fnstats)(unsigned int, _uidefaultstats *), _selhero_selections *dlgresult, uint32_t *saveNumber, _difficulty *difficulty);
void UiSelHeroMultDialog(bool (*fninfo)(bool (*fninfofunc)(_uiheroinfo *)), bool (*fncreate)(_uiheroinfo *), bool (*fnremove)(_uiheroinfo *), void (*fnstats)(HeroClass, _uidefaultstats *), _selhero_selections *dlgresult, uint32_t *saveNumber);
void UiSelHeroSingDialog(bool (*fninfo)(bool (*fninfofunc)(_uiheroinfo *)), bool (*fncreate)(_uiheroinfo *), bool (*fnremove)(_uiheroinfo *), void (*fnstats)(HeroClass, _uidefaultstats *), _selhero_selections *dlgresult, uint32_t *saveNumber, _difficulty *difficulty);
bool UiCreditsDialog();
bool UiSupportDialog();
bool UiMainMenuDialog(const char *name, _mainmenu_selections *pdwResult, int attractTimeOut);

10
Source/DiabloUI/hero/selhero.cpp

@ -29,7 +29,7 @@ bool selhero_isMultiPlayer;
bool (*gfnHeroInfo)(bool (*fninfofunc)(_uiheroinfo *));
bool (*gfnHeroCreate)(_uiheroinfo *);
void (*gfnHeroStats)(unsigned int, _uidefaultstats *);
void (*gfnHeroStats)(HeroClass, _uidefaultstats *);
namespace {
@ -226,7 +226,7 @@ void SelheroClassSelectorFocus(int value)
const auto heroClass = static_cast<HeroClass>(vecSelHeroDlgItems[value]->m_value);
_uidefaultstats defaults;
gfnHeroStats(static_cast<unsigned int>(heroClass), &defaults);
gfnHeroStats(heroClass, &defaults);
selhero_heroInfo.level = 1;
selhero_heroInfo.heroclass = heroClass;
@ -546,7 +546,7 @@ void selhero_List_Init()
static void UiSelHeroDialog(
bool (*fninfo)(bool (*fninfofunc)(_uiheroinfo *)),
bool (*fncreate)(_uiheroinfo *),
void (*fnstats)(unsigned int, _uidefaultstats *),
void (*fnstats)(HeroClass, _uidefaultstats *),
bool (*fnremove)(_uiheroinfo *),
_selhero_selections *dlgresult,
uint32_t *saveNumber)
@ -607,7 +607,7 @@ void UiSelHeroSingDialog(
bool (*fninfo)(bool (*fninfofunc)(_uiheroinfo *)),
bool (*fncreate)(_uiheroinfo *),
bool (*fnremove)(_uiheroinfo *),
void (*fnstats)(unsigned int, _uidefaultstats *),
void (*fnstats)(HeroClass, _uidefaultstats *),
_selhero_selections *dlgresult,
uint32_t *saveNumber,
_difficulty *difficulty)
@ -621,7 +621,7 @@ void UiSelHeroMultDialog(
bool (*fninfo)(bool (*fninfofunc)(_uiheroinfo *)),
bool (*fncreate)(_uiheroinfo *),
bool (*fnremove)(_uiheroinfo *),
void (*fnstats)(unsigned int, _uidefaultstats *),
void (*fnstats)(HeroClass, _uidefaultstats *),
_selhero_selections *dlgresult,
uint32_t *saveNumber)
{

4
Source/pfile.cpp

@ -676,9 +676,9 @@ bool pfile_ui_set_hero_infos(bool (*uiAddHeroInfo)(_uiheroinfo *))
return true;
}
void pfile_ui_set_class_stats(unsigned int playerClass, _uidefaultstats *classStats)
void pfile_ui_set_class_stats(HeroClass playerClass, _uidefaultstats *classStats)
{
const ClassAttributes &classAttributes = GetClassAttributes(static_cast<HeroClass>(playerClass));
const ClassAttributes &classAttributes = GetClassAttributes(playerClass);
classStats->strength = classAttributes.baseStr;
classStats->magic = classAttributes.baseMag;
classStats->dexterity = classAttributes.baseDex;

2
Source/pfile.h

@ -116,7 +116,7 @@ HeroCompareResult pfile_compare_hero_demo(int demo, bool logDetails);
void sfile_write_stash();
bool pfile_ui_set_hero_infos(bool (*uiAddHeroInfo)(_uiheroinfo *));
void pfile_ui_set_class_stats(unsigned int playerClass, _uidefaultstats *classStats);
void pfile_ui_set_class_stats(HeroClass playerClass, _uidefaultstats *classStats);
uint32_t pfile_ui_get_first_unused_save_num();
bool pfile_ui_save_create(_uiheroinfo *heroinfo);
bool pfile_delete_save(_uiheroinfo *heroInfo);

Loading…
Cancel
Save