-
Вот такая штука: function Node:haveMoves(et)
local mt = et
error(self.mElement,1)
if mt == 'wildcard' and self.mElement ~=nil then
mt = self.mElement
end
if mt ~= self.mElement and self.mElement ~= 'wildcard' and self.mElement ~=nil then
return true
end
if self.mChildren ~= nil then
for s = 1, #self.mChildren do
if self.mChildren[s]:haveMoves(mt) then
return true
end
end
end
return false
end функция падает на строчке: error(self.mElement,1) и выдает Lua Error: (null) если строку error закомментировать, то функция отрабатывает, но не правильно. она всегда возвращает false. Функция должна возвращать true, если найдены минимум дватипа элементов(не считая wildcard)
-
> @!!ex © (23.09.08 17:40)
А в коде обработчик функции error нормально работает? Может грабли там?
-
C error разобрался. Спасибо, GrayFace... А функция все равно не правильно работает. :(
-
функция не работает, потому что структура данных совсем не та, для которой функция предназначена. так что я ступил.
-
> @!!ex © (23.09.08 20:08) [3] > > функция не работает, потому что структура данных совсем > не та, для которой функция предназначена. так что я ступил.
Ну так я и спрашивал об этом в [1].
А вообще в самих обработчиках скриптовых функций(в коде программы) стоит делать получаемых параметров, чтобы не было вылета, а просто корректно возвращался false в случае неудачи. Это чуть замедлит работу, но сделает более стабильной работу программы/игры при багах в скрипте.
-
> @!!ex © (23.09.08 19:20) [2]
Кто-кто надо мной ржал когда я LUA рекомендовал ?
-
Городской Шаман (23.09.08 20:28) [4] А вообще в самих обработчиках скриптовых функций(в коде программы) стоит делать получаемых параметров, чтобы не было вылета, а просто корректно возвращался false в случае неудачи. Это чуть замедлит работу, но сделает более стабильной работу программы/игры при багах в скрипте. Я у себя сделал проще - убрал вызов exit в случае ошибки, заменил на throw. И собирать Lua надо под C++ - тогда он использует Exception'ы в некоторых местах.
-
> [5] tesseract © (23.09.08 21:12)
не помню чтобы я ржал... в любом случае это не мой выбор. надо было исправить прогу сторонних разработчиков. исправил вроде, тьфу-тьфу-тьфу.
-
> надо было исправить прогу сторонних разработчиков.
С этого всё и начинаеться. LUA в играх, как 1С в бухгалтерии.
-
> tesseract © (23.09.08 23:46) [8] > > > надо было исправить прогу сторонних разработчиков. > > С этого всё и начинаеться. LUA в играх, как 1С в бухгалтерии.
Такая же дрянь? Или вы о чем?
-
> [9] Городской Шаман (24.09.08 00:20)
как и в случае с 1С - лучше нету. обычный язык, довольно быстрый, насколько мне известно. правда его питон тестин, ИМХО.
-
> LUA в играх, как 1С в бухгалтерии.
Спасибо что предупредил. Буду держаться подальше от луа :)
-
> Real © (24.09.08 01:00) [11] > > > > LUA в играх, как 1С в бухгалтерии. > > Спасибо что предупредил. Буду держаться подальше от луа
Как раз lua это очень удобная быстрая и полностью конфигурируемая вещь. Например, в стандарте языка не определено ни одной функции (есть только рекомендации на определение обработчиков стандартных функций). Так что очень странно выглядит сравнение lua с 1С. Lua для игр это примерно как чистый С для системного программирования и гибко, и достаточно. А лучше говенного 1С есть проекты. Например, этот http://debet.kiev.ua/
-
-
На самом деле, lua вполне замечательная вещь. Пока от этого языка только приятные впечатления. документация есть здесь: www.lua.ru
-
> А лучше говенного 1С есть проекты.
1С, как показала практика, сильно от рук настройщика зависит. За два года база пришла в норму и теперь всё спокойно. > Например, этот http://debet. > kiev.ua/
Это они Раду отавтамотизировали ? И они кстати сильно используют GPL лицензии - Движки Mozilla и тд. Накатано на Eclipse RCP + java/ java script. Сиречь "побольше гвоздей и держиться" и кстати, где тогда исходнички в свободном доступе ? Надо на этих ребят в FSF стукануть. До 8-ки в плане производительности ей, стопроцентно очень далеко.
-
-
> tesseract © (24.09.08 13:04) [15] > > и кстати, где тогда исходнички в свободном доступе ? Надо > на этих ребят в FSF стукануть.
Мозила и Eclipse RCP под LGL и Mozilla license, тоесть их исходники можно использовать в коммерческих проектах, и не открывать коммерческие исходники.
В общем там все очень хорошо с лицензионной чистоты. Они ж не патентуют исходники Eclipse и Mozilla.
Кстати Gecko - движок мозилы можно спокойно использовать в закрытых коммерческих проектах.
-
> tesseract © (24.09.08 13:04) [15]
А по части скорости работы, так как там Java то ставишь 512 памяти и все взлетает. На 256 будет подлагивать.
-
> А по части скорости работы, так как там Java то ставишь > 512 памяти и все взлетает. На 256 будет подлагивать.
большие сомнения - я их документацию почитал. До 1С даже 6 им далеко. У меня 7.7 (исправленная и дополненная) летает на MS SQL. Думаю таки 8.1 поставить. Хотя кода переписывать ой ё...... А там ещё много cвоих и чужих COM-объектов, которые данная разработка поддерживать не собираеться. Про java на 512 - у меня на такой опреативе сэплы из SDK тормозят, а 1С - по барабану, на 32 метра отлично работает.
|