parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

G_Z 27.07.2020 01:07 / 27.07.2020 01:20

^asres.markcolor[^asres.mark[$skill_id]]
Метод @mark возвращает строки.
При этом строка может содержать только число и тогда ошибки не будет, так и буквы («не цифры») — у вас там три варианта, и число в виде строки возвращается только в первом из них.

Соответственно, если @mark вернул строку «с буквами», то в @markcolor в expression switch'а попадёт строка, не приводимая к числу.
На это Парсер и ругается.

Пример:
# ошибки нет
$string[1]
$bool($string >= 0)

# ошибка есть — invalid number (double) test
$string[test]
$bool($string >= 0)