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

[SoC] Ковыряемся в файлах


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

19 часов назад, dPlayer сказал:

стоит, пока ГГ не отойдёт от него

доделать амк-шный "фикс":

    -- Чтобы не стояли и не пялились часами
    local tken=(self.a.meet_manager.state~="nil")
    local istk=self.object:is_talking()
    if self.begtime==nil and tken then
      self.begtime=time_global()
    elseif not tken then
      self.begtime=nil
    elseif tken and self.begtime+10000<time_global() and (not istk) and (not self.a.meet_manager.wpn_meet) then
    -- 10 секунд посмотрели на меченного и хватит
      return false
    elseif istk or self.a.meet_manager.wpn_meet then
      self.begtime=time_global()      
    end


в xr_meet ?

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

@Dennis_Chikin, ну да, стоит из-за этого.

@AndrewMor, в принципе норм, только топчется на месте при смене цели, если совместить смену скажем с поворотом, то ничего?

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

Категорически приветствую.
Возможно, эта тема уже поднималась, в этом случае просто ткните носом, я не нашел.
Нужно сделать на платформе ТЧ медицинские препараты с продолжительным действием, как например в ЗП - съел "Барвинок" и в течение 20 секунд он защищает от получаемых кровотечений. В принципе, нужно то же самое. Пытался сделать на основе SlowMedicine, но получил только замедленное в 20 раз заживление уже полученных ран. Надеюсь, понятно объяснил.
Рассчитываю на помощь, ибо в скриптах сам не особо.

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

Возникла следующая проблема. В инвентаре при обыске контейнеров/трупов надпись на кнопке "Take all" вместо "Взять все". Русская дисковая лицензия, старфорс, все дела, пропатчена до 1.0004. В папку с игрой распаковал игровые архивы gamedata для ковыряния, но сделать еще ничего не успел, а надпись уже была на английском. Есть подозрение, что это проявляется только на широкоформатных мониторах, т.к. если склероз не изменяет, на старом мониторе все было как надо. Собственно вопрос: как исправить? Перерыл кучу файлов, особенно с пометкой "16" в названии. Даже скачал прогу для просмотра текстур. Но нигде не нашел где хранится сам текст, который выводится на кнопки. Поиск по форуму тоже не помог.

Изменено пользователем Lethifold
очепятка
Ссылка на комментарий

@Lethifold, config\ui\carbody_new_16.xml, текст

text align="c" font="graffiti22" r="238" g="153" b="26">Take All</text>

заменить на

text align="c" font="graffiti22" r="238" g="153" b="26">Взять всЁ</text>

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

AMD Athlon II X2 250, NVIDIA GTS 450, RAM 8.0 GB, WIN 7/64  правки Золотой Шар

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

@nasar75, Спасибо огромное! А то коробило жутко.

 

А это вообще что-то новенькое: перед назначенными клавишами с какого-то перепугу появилась нестираемая буква "k". Например клавиши движения теперь выглядят так: kW, kS, kA, kD. А при взгляде на сундук/предмет появляется не "Нажмите (F)", а "Нажмите (kF)". Удалял вручную из user.ltx но это не помогло. А еще все настройки клавиш сбросились на дефолтные. Что это может быть и как с этим бороться?

Ссылка на комментарий
4 hours ago, fracture_strong said:

ибо в скриптах сам не особо

Вот в этом то и проблема. А так, ничего сложного. Из use callback-а регистрируешь свой обработчик для апдейта актора и запускаешь таймер на икс секунд. Обработчик с определенной частотой проверяет наличие кровотечения и если имеется, лечит раны. Как таймер дотикает, убирает обработчик с апдейта актора. Вот примерно и все.

  • Нравится 2
  • Полезно 1
Ссылка на комментарий
10 часов назад, dsh сказал:

Из use callback-а регистрируешь свой обработчик для апдейта актора и запускаешь таймер на икс секунд. Обработчик с определенной частотой проверяет наличие кровотечения и если имеется, лечит раны. Как таймер дотикает, убирает обработчик с апдейта актора.

Можно привести пример проверки на наличие кровотечения и саму функцию лечения?

Ссылка на комментарий
1 час назад, dPlayer сказал:

Што-то я забуксовал. Как удалить предмет, ну скажем условный

Наверно только задать стори ид Вашим булкам, и уж отседова делать итерацию инвентори имхо.

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

Точно также, как и в поле нечистом: alife():release( obj, true )

Получить - local obj = alife():object( ид или имя )

 

Перед началом действа убедиться, что с ним кто-нибудь не делает что-нибудь странное, и если по имени - что нет дубликатов.

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

@Dennis_Chikin, точно, спсибо!

А почему вот это:

if has_alife_info("info")
			then
				level_tasks.add_location(025, "green_location", "tutorial_secret_place1")
			else
				return false
		end

не сохраняет отметку при сейвлоаде или переходе на другой уровень?

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

"level_tasks.add_location" - по тому что телепаты опять в отпуск свалили.

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

@Dennis_Chikin, это из оригинала.

function add_location(sid, location, hint)
	local sim = alife()
	if sim then
		local obj = sim:story_object(sid)
		
		if obj then
			if hint then
				level.map_add_object_spot(obj.id, location, hint)
			else
				level.map_add_object_spot(obj.id, location, "")
			end
		end
	end
end

 

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

level.map_add_object_spot(obj.id, location, hint)

 

Ну, собственно, как задумано - так и работает. Установка метки на время текущего сеанса, до любой перезагрузки.

Ссылка на комментарий
6 часов назад, dPlayer сказал:

level.map_add_object_spot

Эта ф-ция ставит метку на клиентский объект, по этому метка пропадает при сэйв\лоад. Используй level.map_add_object_spot_ser.

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

@fracture_strong, db.actor:get_bleeding() возвращает величину этого самого кровотечения

db.actor:heal_wounds( 0.0000001 ) заживляет раны на указанную величину. Вероятно это работает только в x-ray extensions или других движках.

 

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

@AndreySol, а, ну я его и использовал, но там было через одно место сделано, а не 3 строками)

Спасибо ОГСМ, допер как удалить предмет из инвентаря. По крайне мере там использован ещё вызов ф-ции из

db.actor:iterate_inventory(ф-ция,db.actor)

 

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

Приветствую, уважаемые Форумчане подскажите плиз, как избавиться от (тараканов) застревания шкалы опасности в пике (баг какой-то с ними или ихними фантомами?) будучи атакованным пси-псевдопсами, просто сейв-лоад оно понятно конечно, но не метод это имхо. Если есть решение, то поделитесь реализацией.:dash2:

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

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

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

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

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

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

Войти

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

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

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