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

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


Halford

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

LithOS, я совершенно незнаком с ассемблером :(

Если поможешь - я с радостью и спасибо тебе :)

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

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


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

malandrinus, вот кстати чисто на практике nil как 0 не интерпритируется обычно...

(то есть постоянно идут ошибки типа compare with nil и подобное)

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

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


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

malandrinus, это значит всего лишь,что в функции level.object_by_id(id)

в начале код

if not id then id = 0 end

 

с другими аналогично.посему это зависит от функции - и nil-у никогда не присвоится 0 автоматически.

но твой спич в силе - тут я поспорить не могу.

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

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


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

Garry_Galler, он нилом обьявляет не функцию,а скрипт.

ни разу не видел,чтобы конкретную функцию.

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

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


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

Garry_Galler, Чесслово, 1 раз такое вижу О_о

Всегда если уж ругалось,то на ВЕСЬ скрипт...

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


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

А кстати,кто нибудь знает в чем природа этих левел и гейм вертексов?

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

 

Зачем они нужны,эти вертексы?

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

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


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

gray-man, 1) никак.это только в конфиге можно править.

2) Есть такой файл в миске effectors.ltx кажется так...там все конфиги ppe - там и настраивается.

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


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

gray-man, так добавь сам.

возьми примеры например из солянки Шашки...

както видимо можно..

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

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


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

Starter, ухуу,это ты сказанул :)

сдесь конкретное спрашивают,а не "как сделать"...

 

но в принципе навскидку,проверяешь есть ли у текущего ствола прицел - через секцию или нетпакет ,потом проверяешь,fov и если маленький то действие.

Только ведь прицел от дыхания не запотевает :D

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


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

Ray, никак.исполняются функции в движке.

разве только трясти ПЫС(у)

Сообщение от модератора n6260
Или сделать утилиту что бы отслеживала нажатия кнопок... :)
Изменено пользователем n6260

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


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

n6260, угу,и из скрипта ее запускать?

а потом из нее запускать скрипты?при чем не просто запускать,а заставлять движок их запускать?

 

смешно :)

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

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


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

Garry_Galler, записывай id текстов.

И вообще записывай на сам обьект тайника,а не на ГГ.

Или отдельный девайс - на него записывай.Главное проинитить вовремя его.

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

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


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

Garry_Galler,

вот я и думаю сохранять в нем

В чем?В обьекте!Ну девайс и будет обьектом тем самым.

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


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

Garry_Galler,

function check_info()
return not (has_alife_info("info_1") and has_alife_info("info_2") and has_alife_info("info_3") and has_alife_info("info_4") and has_alife_info("info_5") and has_alife_info("info_6")) 
end

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

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


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

Vano_Santuri, у тебя удалится только тот обьект,что ты передал в функцию.

 

Добавлено через 2 мин.:

И malandrinus тебе уже написал - не пишут так.

пишут так:

 

function remove(obj)

if obj then

alife():release(alife():object(obj:id()), true)

end

return obj~=nil

end

 

и вообще зачем тут return?

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

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


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

Ray, Блиииииин....пацталом......:D

 

if a == b then

 

Как смогу - с меня плюс :D

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

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


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

Vano_Santuri, ну по нетпакетам сказать ничо не могу,но раз спавнится гуд то ошибок нет.

И еще:

if IsAnom(obj)==true then = if IsAnom(obj) then

 

И вот:

 

if string.find(s, "zone_mine_electric_dinamic") then

return true

else

return false

end

 

то же самоечто и

 

return string.find(s, "zone_mine_electric_dinamic")

 

далее if obj ~= nil then = if obj then

====

 

и важно: пиши local obj = level.object_by_id(k) а не obj = level.object_by_id(k)

 

перепиши все,и попробуй.

хотябы перепиши и запости - легче читать будет и думать где косяки сильные...

 

=====

возможно между спавном и удалением не прошел апдейт....

Зачем здесь функция вообще?

Кстати,да.

и тут: function IsAnom (obj)- тоже не нужны она.

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

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


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

Vano_Santuri, а как ты их спавнишь и удаляешь?

в 1 функции?

должно пройти гдето 1/10 секунды между спавном и удалением.

 

насильно никак.просто подождать.(ну там кода куча,да)

Но в игре у тебя заведомо пройдет не одня тысяча апдейтов - иначе эти анамалии просто не рентабельны :)

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

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


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

Забей-забей,я тут понял,что не в этом причина.

Перепиши код,как я посоветовал - тогда и разговор можно продолжить.А так его читать и в уме оптимизировать и думать еще - мне сложно.

 

Добавлено через 4 мин.:

Я тут подумал - это вообще все ацтой.

Секунду...

 

Добавлено через 4 мин.:

local tbl = {}

function zaton_anom()
  lv_new = math.random(1700000)       
  pos_new = level.vertex_position(lv_new)
  local obj = create_anomalies("zone_mine_electric_dinamic",3,pos_new.x,pos_new.y,pos_new.z,lv_new,0),
  table.insert(tbl,obj:id())
end

function destroi_anomalies()
  for i = 1,#tbl do
    alife():release(alife():object(tbl[i]), true)
  end
end

 

Вот и все.Я использую только create_anomalies из твоего.

А работать удаление будет в 700-800 раз быстрее твоего.

 

попробуй мой код ;)

А зачем усложнять?

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

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


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

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