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

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

Тема для обсуждения скриптов всего и всех в серии игр STALKER.


Задавая вопрос (!):
1. Внимательно изучите суть вопроса. Вопрос должен соответствовать выбранной Вами темы. Это поможет сохранить порядок и читабельность темы, а также облегчит поиск и понимание сего;
2. Изучите то, что уже есть в теме (пролистайте "руками", воспользуйтесь поиском на форуме);
3. Изучите информацию которая может вам помочь:

  Информация (Показать)

4. Дабы не превращать обсуждение в "кашу" разной информативной направленности, задавайте несколько вопросов по порядку (в разных постах) после того, как получите ответ на предыдущий вопрос;
5. "Спасибо" и тому подобное - будьте так любезны в ПМ. Если не любите писать в ПМ, в конце вопроса напишите фразу: "Заранее спасибо!" - или что-то в этом духе;
6. ПОЖАЛУЙСТА! Указывайте, для какой игры Вам необходима информация (ТЧ, ЧН, ЗП), если стоит мод - укажите название мода;
7. Если Вы что-то сделали и результат не такой, какой Вами задумывался, то, пожалуйста, приводите коды которые Вы изменяли/писали целиком! Это поможет другим правильно ответить на Ваш вопрос, а также оградит Вас от лишней писанины.
8. Оформляйте сообщение. Пользуйтесь тегами для того, чтобы отделить код от текста. Пишите грамотно - ПОЛЬЗУЙТЕСЬ ЗНАКАМИ ПРЕПИНАНИЯ.
9. И помните: «Правильно заданный вопрос – половина ответа».

 

Какие вопросы следует задавать, а какие нет...

  Читать рекомендуется. (Показать)

И последнее: очень рекомендовано к прочтению Правила форума
 


  • Спасибо 1
  • Полезно 2
Ссылка на комментарий

Всем привет. Нужна помощь по функциям.

Есть код:

function blabla()

local number = self:edit_GetText()

end

function edit_GetText()

return self.edit:GetText()

end

edit_gettext это функция editbox. В editbox мы должны ввести число которое после должно записатся в переменную number, но оно не записывается. В чем же может быть проблема??

Ссылка на комментарий
@naxac, я сначала делал так, но значение меняется жутко медленно, поэтому перешёл на trackbar и прикрутил вывод тек. значения рядом. Изменено пользователем Kirgudu
Ссылка на комментарий

Такая проблема. Использую модифицированную ph_car от lscon.

Вот в чем проблема. Перевел функцию на новое хранилище обьектов, И так, переписал функцию.

 

 

  Показать

 

 

Теперь данные берем из db.btr_target. Там, вроде бы, храниться то, что нужно.

Вот инициализация хранилища:

 

 

  Показать

 

 

Итого - ничего. Если выставить db.creature - вылет со ссылкой на obj(мол boolean value). Если db.storage - вылет со ссылкой на метод alive(), мол его к obj применить нельзя...

Вроде все должно работать, в остальных частях схемы(логика БТР) проблем нет, брал прямо из ОП-2.

 

Кто-то скажет скопировать оригинальный btrs_friends = {}, еще раз говорю - на счет друзей БТР фишка не особо нужна. Тем более проверка на группировки и прочее уже вшита в функцию.

 

Жду вашей помощи...

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

Не соответствует правилам.

Ссылка на комментарий
  21.07.2016 в 12:39, saymon6996 сказал:

Всем привет. Нужна помощь по функциям.

Есть код:

function blabla()

local number = self:edit_GetText()

end

function edit_GetText()

return self.edit:GetText()

end

edit_gettext это функция editbox. В editbox мы должны ввести число которое после должно записатся в переменную number, но оно не записывается. В чем же может быть проблема??

Это ТЧ или ЗП?

Ссылка на комментарий

Итак, после over9000 вылетов, поломок update() и результатов = nil, я добился этого - БТР гасит монстров!!!

Может, пригодиться кому.

Для чистого ТЧ, разве что нужно объявить хранилище monster_stock, там только монстры...

 

  Цитата

 

function action_car:update_friends_and_target()

 
get_console():execute("CHEKING!!!")
 if self.st.fire_target == "monsters" then
for k in pairs(db.monster_stock) do
local obj = level.object_by_id(k)
if obj and IsMonster(obj) and obj:alive() and self.car:IsObjectVisible(obj) then
               self.target_obj = obj
               self.state_firetarget = state_firetarget_enemy
get_console():execute(" !!_"..obj:name().."_!!")
end
end
end
end
  • Нравится 1

Не соответствует правилам.

Ссылка на комментарий

@saymon6996, покажите полный код (только под спойлер уберите), а так могу предположить что функция не назначена на кнопку (я же не прав? ;) ))

Изменено пользователем mortan
Ссылка на комментарий
  21.07.2016 в 20:42, mortan сказал:

@saymon6996, покажите полный код (только под спойлер уберите), а так могу предположить что функция не назначена на кнопку (я же не прав? ;) ))

А не подскажешь как под спойлер текст пустить, а то я с телефона, интернет только на нем. Я за городом)

@mortan,

 

  Показать

 

Все, разобрался)

Ссылка на комментарий
@saymon6996,разобрались со спойлером или проблемой?) Ну елки,в коде не видно вашей функции,так что я могу только догадываться что вы еще добавили в него. Когда у вас вызывается функция - после нажатия кнопки или по мере ввода?
Ссылка на комментарий
  21.07.2016 в 23:06, mortan сказал:

@saymon6996,разобрались со спойлером или проблемой?) Ну елки,в коде не видно вашей функции,так что я могу только догадываться что вы еще добавили в него. Когда у вас вызывается функция - после нажатия кнопки или по мере ввода?

Не знаю как так телефон мог скопировать, что именно середняя часть кода не отображается.

Вообщем вот все, что касается этих функций:

 

  Показать

 

Добавлено Kirgudu,

Пункт 2.6 правил форума, устное предупреждение.
Рекомендую изучить правила цитирования

Ссылка на комментарий
  21.07.2016 в 23:58, saymon6996 сказал:

Не знаю как так телефон мог скопировать, что именно середняя часть кода не отображается.

Вообщем вот все, что касается этих функций:

 

  Показать

 

Вот весь код:

 

  Показать

 

 

Добавлено Kirgudu,

Пункт 2.6 правил форума, рецидив, сутки чтения.

Ссылка на комментарий

Добрый день. Есть у меня файл item.ltx. В нем есть секция: [New_eat]:bread. В секции есть значение item_create = перечисление, любых_секций, например, bread.

Так же есть скрипт. И в нем пустая таблица. Допустим local item_tbl = {}

 

Как мне заполнять эту таблицу значениями из item_create?

Изменено пользователем Kober(BRUC)
Ссылка на комментарий
upgrades_string = ini:r_string(destr_item:section(), "upgrades")
tab_u = string.split(upgrades_string, 1, ",")

tab_u - нужная таблица.

В _g.script добавить:

--[[
 Функция разделения строки.
 Авторы: Gun12, Garry_Galler, Artos
--]]
string.split = function(str, mode, div, pattern)
    local tbl = {}
 if div then
  pattern = '%s*([^'..div..']+)%s*'
 elseif not pattern then
  pattern = '[%w%_]+'
 end
    if mode == nil then 
        for str_parse in str:gmatch(pattern) do
            table.insert(tbl, str_parse)
        end
    elseif mode == true then 
        for str_parse in str:gmatch(pattern) do
            tbl[str_parse] = true
        end
    elseif type(mode) == "number" then 
        for str_parse in str:gmatch(pattern) do
   tbl[#tbl+1] = tonumber(str_parse) or str_parse
        end
    end
 return tbl
end
Ссылка на комментарий

Наткнулся на интересную штучку в секции [spawner]

 

  Цитата

 

[spawner]

cond = never

(Была у БТР в Припяти, хотя я там вообще БТР в оригинале не припомню...

 

В xr_spawner.script такого условия "never" нет...

Выходит её теоретическое значение : когда спавнить - НИКОГДА!!11 ? :D

А зачем она тогда?)

Не соответствует правилам.

Ссылка на комментарий
  UnLoaded писал(а):
Может потому и нет его в оригинале, что "never" ?

 

А описание скриптовое этого never где? А?

 

P.S Условие спавна - "никогда" сводит на нет весь сокральный смысл секции спавна БТР, ведь описание всех его параметров просто не нужно в итоге, ведь "never-never" не будет использовано....

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

Не соответствует правилам.

Ссылка на комментарий

 

 

  Dennis_Chikin писал(а):
И при чем здесь xr_spawner ?

 

Цитирую(http://stalkerin.gameru.net):

Общая секция спавнер

та секция, которая присутствует как у NPC, так и у монстров....

 

В самом конце:

Файл: gamedata\scripts\xr_spawner.script

Не соответствует правилам.

Ссылка на комментарий

@CRAZY_STALKER666, от него требуется только секцию взять. Я его в две строки переписал, тут по моему даже выкладывал. Секция 'never' ничего не значит, если ее не будет, он на нее просто не перейдет, вот и все, функция вернет nil и проверка не пройдет. Проверь если есть желание.

  • Спасибо 1
Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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