Barmolini 1 Опубликовано 16 Октября 2014 (изменено) Просто оставлю это здесь: weathers = { sect_default_weather_rain = 6, sect_default_weather_groza = 8, sect_default_weather_pasmurno = 2, sect_default_weather_clear = 0.5, } function UpdateGlosFactor() get_console():execute("r2_gloss_factor "..(weathers[level.get_weather()] and weathers[level.get_weather()] or get_console():get_float("r2_gloss_factor"))) end P.S. Я всё же считаю, что лучше привязать значение глос фактора к интенсивности дождя, тогда не нужно будет зависеть от имён погодных секций. Изменено 16 Октября 2014 пользователем Barmolini 1 Поделиться этим сообщением Ссылка на сообщение
Barmolini 1 Опубликовано 16 Октября 2014 в этом есть какая-то великая сермяжная правда?Если в таблице не будет ключа которое вернёт get_weather, то табличка вернёт nil, как следствие конкатенация выдаст ошибку, поэтому здесь в случае когда ключа как раз нет (nil == false) отработает оператор or вернёт второй свой операнд, а это то, что вернёт get_float("r2_gloss_factor") и поэтому конкатенация пройдёт успешно. Поделиться этим сообщением Ссылка на сообщение
Barmolini 1 Опубликовано 4 Ноября 2014 (изменено) @Dennis_Chikin, это как бы класс. В котором есть метод спавна набора объектов. И есть методы в которых задаются разные наборы. Зачем - это другой вопрос. Да и работать должно же по идее. Изменено 4 Ноября 2014 пользователем Barmolini Поделиться этим сообщением Ссылка на сообщение
Barmolini 1 Опубликовано 4 Ноября 2014 (изменено) Он передает в свою функцию ссылку на копию стека А есть другой способ вызывать в классе собственный метод, не создавая отдельно объект? @stalk9r, кстати да! Вызывать то метод нужно через двоеточие, не через точку! Изменено 4 Ноября 2014 пользователем Barmolini Поделиться этим сообщением Ссылка на сообщение
Barmolini 1 Опубликовано 4 Ноября 2014 (изменено) @Dennis_Chikin, я же писал: Зачем - это другой вопрос. Какой-то смысл автор в этом увидел. Хозяин - барин. Изменено 4 Ноября 2014 пользователем Barmolini Поделиться этим сообщением Ссылка на сообщение
Barmolini 1 Опубликовано 4 Ноября 2014 @Dennis_Chikin, да там банальная опечатка. Вызов нужно делать через двоеточие: self:pokupka({"bread","vodka","kolbasa"})И всё будет чудно. 1 Поделиться этим сообщением Ссылка на сообщение
Barmolini 1 Опубликовано 17 Ноября 2014 Вроде как да. До тех пор, пока будет существовать ссылка на переменную f - будет доступен объект в котором этот f был создан. Кстати, можно и так вызывать функцию f: local my_obj = my_script.my_SMALL_class() local my_F = my_obj:Get_f()() 1 Поделиться этим сообщением Ссылка на сообщение
Barmolini 1 Опубликовано 5 Декабря 2014 А скажите пожалуйста, что такого уродского в этом коде: if string.find( obj:section(), "af_" ) then Интересно в познавательных целях и чтобы не писать "по уродски". Поделиться этим сообщением Ссылка на сообщение