Lunali
@Lunali
скрытна.

Как сложить два числа в Lua в Coregames?

Не работает простая операция сложения.
Код пишу правильно:
print=UI.PrintToScreen
b=1;
c=1;
a =  b + c ;
 print (a)


И вот так:
print=UI.PrintToScreen
 
 print (1+2)


Не работает.
Программа - coregames.
Сбой и все...
Кто знает, как просто сложить два числа?
  • Вопрос задан
  • 212 просмотров
Решения вопроса 1
dollar
@dollar Куратор тега Lua
Делай добро и бросай его в воду.
Не знаком лично с программой coregames (хотя спасибо, что уточнили).

Однако навскидку могу предположить, что функция UI.PrintToScreen принимает только одну строку и не принимает никакие числа. Поэтому нужно число привести к строке:
print=UI.PrintToScreen
b=1;
c=1;
a =  b + c ;
print (tostring(a))

Того же эффекта можно достичь операцией конкатенации строк из-за автоматического приведения типов в Lua при использовании этой операции:
print("The result = " .. a)

Ну а если серьёзно подходить к вопросу, то вот в этом месте:
сбой и все...

Вы упускаете важную информацию. Характер сбоя многое говорит о проблеме. Печально, если приложение просто схлопывается или зависает. Но зачастую при ошибке оно выводит подробности ошибки. Например, это может быть что-то типа сообщения: "line 5 - количество и/или типы аргументов у функции неправильные". После этой инфы очень легко догадаться, в чём дело. Даже если вы сами не поняли смысл сообщения, в вопросе следовало бы указать все подробности сбоя, как он происходит и что выводит. Это вам совет на будущее.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
vabka
@vabka
Токсичный шарпист
Пробовали писать UI.PrintToScreen(tostring(1+2))
?
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы