Перейти к контенту

Скриптование


Svoboда

Рекомендуемые сообщения

Просто оставлю это здесь:

 

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. Я всё же считаю, что лучше привязать значение глос фактора к интенсивности дождя, тогда не нужно будет зависеть от имён погодных секций.

Изменено пользователем Barmolini
  • Спасибо 1

Поделиться этим сообщением


Ссылка на сообщение

 

 

в этом есть какая-то великая сермяжная правда?
Если в таблице не будет ключа которое вернёт get_weather, то табличка вернёт nil, как следствие конкатенация выдаст ошибку, поэтому здесь в случае когда ключа как раз нет (nil == false) отработает оператор or вернёт второй свой операнд, а это то, что вернёт get_float("r2_gloss_factor") и поэтому конкатенация пройдёт успешно.

Поделиться этим сообщением


Ссылка на сообщение

@Dennis_Chikin, это как бы класс. В котором есть метод спавна набора объектов. И есть методы в которых задаются разные наборы.

Зачем - это другой вопрос.

Да и работать должно же по идее.

Изменено пользователем Barmolini

Поделиться этим сообщением


Ссылка на сообщение
Он передает в свою функцию ссылку на копию стека

А есть другой способ вызывать в классе собственный метод, не создавая отдельно объект?

 

@stalk9r, кстати да! Вызывать то метод нужно через двоеточие, не через точку! :)

Изменено пользователем Barmolini

Поделиться этим сообщением


Ссылка на сообщение

@Dennis_Chikin, я же писал: 

Зачем - это другой вопрос.

Какой-то смысл автор в этом увидел. Хозяин - барин.

Изменено пользователем Barmolini

Поделиться этим сообщением


Ссылка на сообщение

@Dennis_Chikin, да там банальная опечатка. Вызов нужно делать через двоеточие:

self:pokupka({"bread","vodka","kolbasa"})
И всё будет чудно.
  • Спасибо 1

Поделиться этим сообщением


Ссылка на сообщение

Вроде как да. До тех пор, пока будет существовать ссылка на переменную f - будет доступен объект в котором этот f был создан.

Кстати, можно и так вызывать функцию f:

local my_obj = my_script.my_SMALL_class()
local my_F = my_obj:Get_f()()
  • Спасибо 1

Поделиться этим сообщением


Ссылка на сообщение

А скажите пожалуйста, что такого уродского в этом коде:

if string.find( obj:section(), "af_" ) then

Интересно в познавательных целях и чтобы не писать "по уродски".

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...