@szjyakgf

Как решить проблему с типами данных?

Я использую Large Numbers Library и проблема с типами данных

private AlphabeticNotation HealthBoss = new AlphabeticNotation(12, 0);
public AlphabeticNotation HealthBossNow = new AlphabeticNotation(30, 0);
HealthBarImage.fillAmount = HealthBossNow / HealthBoss;


Ошибка: Assets\Scripts\Game.cs(129,37): error CS0266: Cannot implicitly convert type 'LargeNumbers.AlphabeticNotation' to 'float'. An explicit conversion exists (are you missing a cast?
  • Вопрос задан
  • 82 просмотра
Пригласить эксперта
Ответы на вопрос 2
AshBlade
@AshBlade Куратор тега C#
Просто хочу быть счастливым
HealthBarImage.fillAmount = (float) HealthBossNow / HealthBoss;
Ответ написан
mindtester
@mindtester Куратор тега C#
http://iczin.su/hexagram_48
определение AlphabeticNotation в студию!
... а то у меня подозрения, что это символьная арифметика безразмерной величины. тогда типовые рецепты не пойдут, нужно приведение типа, но с учетом размерности... не так
HealthBarImage.fillAmount = (float) HealthBossNow / HealthBoss;
а скорее так
HealthBarImage.fillAmount = ((double) HealthBossNow) / ((double) HealthBoss);
а еще в студию тип HealthBarImage.fillAmount... а еще, возможно допустимо перегрузить оператор деления для AlphabeticNotation... и это лучший вариант, но он требует понимания типа, языка.. ну и математики )))

ps а если это еще и двухмерная величина.... то вам еще над многим придется подумать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы