Jump to content

MX_Master

Members
  • Posts

    1,967
  • Joined

  • Last visited

Everything posted by MX_Master

  1. я уже свой накатал, все некогда нормально протестировать, но зато все сделано в уникальном русском стиле ((:
  2. map файлы никогда не сохраняются на диске клиента
  3. Ссылка на аналогичную тему другого форума не принимается в качестве ссылки на ресурс. Скрины с огромным адресом этого же форума тоже не приветствуются.
  4. покажи ссылку на то, что ты смотрел на вики по твоему вопросу
  5. сервер setTimer( function() local tPlayers = getElementsByType('player') for _, uPlayer in ipairs(tPlayers) do setElementData( uPlayer, 'fightingStyle', getPedFightingStyle(uPlayer), true ) end end, 500, 0 ) клиент function FSvisible () local FSstatus = getElementData( localPlayer, 'fightingStyle' ) or 4 -- ...
  6. глупо юзать отвертку для забивания гвоздей
  7. отстой... я хотел попробовать сделать ассасинс крид мод, катану и биту на меч и булаву заменить... дерьмово. а в будущих версиях будет доступно? Чтобы получить что-то надо что-то сделать для этого хотя бы. А за такие замечательные слова вроде "отстой", ты можешь рассчитывать только на себя.
  8. Юзайте ББ код [LUА] маркер создай в клиенте и потом в клиенте же addEventHandler( "onClientMarkerHit", marker1, function ( player ) if player == localPlayer then toggle1window() end end )
  9. вибраторы, бита, катана, тек9
  10. Грубо говоря, если с десяток шарящих личностей нашего форума поставить на эту задачу со свободным участием, то выполнится первый черновой вариант не ранее, чем через месяц-два. А вот, если каждый будет финансово поощрен, да еще и имя его будет в анналах, вот тогда первый черновой вариант будет уже за неделю-две (:
  11. на браузерных играх сидит чуть ли не миллиард человек (: потому что все просто, быстро и кроме детей есть и другие люди. Кроме того, там прогеры это сделали, находясь на работе и получая деньги представляю сколько нужно логики и DХ зарисовок, чтобы качественно сделать пару игр, а вы представляете?
  12. Так, вот исходник client.lua - http://pastebin.com/twf0XFGG Вот, что я там изменил, но не проверил еще - http://pastebin.com/Zd24GGWg Основное я отметил, детальные изменения - нажать на "view the difference"
  13. Я думаю, что-ньть придумаем, а пока нужно с чего-то начать (: блин, я даже забыл, что я хотел подправить код, ща накатаю и проверю..
  14. Да, эти предметы нельзя заменить, уже проверено не один раз. На баг трекере уже есть такой вопрос. Нет, главное чтобы на разном FPS было одинаково. На заметку: модули не имеют полного доступа к МТА возможностям. Поэтому Module SDK только для тех серверных инструментов, которые не лезут в сам функционал МТА, а лишь добавляют какой-то независимый функционал. На мой взгляд, проще реализовать большинство фич на уровне скриптинга. Поэтому лезть в Module SDK надо только в крайнем случае и при хорошем знании С++. Как все работает можно узнать из готовых стандартных модулей - http://code.google.com/p/multitheftauto-modules/ Насчет плавного изменения цвета с необязательной точностью.. Рабочий пример. Код оптимизирован (выдернул из своей библы с DX элементами). Хотя код и большой, но весь упор сделан на то, чтобы при каждом кадре было минимум вычислений и проверок. --[[ префиксы в названия переменных, означают тип переменной: f = function, t = table, n = number, b = boolean tColor и tNewColor должны быть таблицами вида {r,g,b,a}, например, {255,128,64,255}, {148,0,10,117} ]] local tColor = {255,0,0,255} -- текущий цвет local nFPS, nFPSCounter = 36, 0 -- для подсчета FPS local tRecolor = { -- параметры плавного измнения цвета bIsActive = false, -- активно или нет tColorStep = {}, -- шаг для каждой составляющей цвета nSteps = 0, -- кол-во шагов tTargetColor = {} -- новый цвет } -- плавное изменение цвета function fRecolor ( tNewColor, nSeconds ) tRecolor.bIsActive = false -- выключим, если было включено tRecolor.nSteps = math.ceil( nFPS * nSeconds ) -- всего шагов for n = 1, 4 do tRecolor.tColorStep[n] = ( tNewColor[n] - tColor[n] ) / tRecolor.nSteps tRecolor.tTargetColor[n] = tNewColor[n] end tRecolor.bIsActive = true end addEventHandler( 'onClientResourceStart', resourceRoot, function() -- FPS счетчик setTimer( function() nFPS = nFPSCounter; nFPSCounter = 0 end, 1000, 0 ) -- для примера плавное изменение цвета каждые 3 сек, setTimer( function() fRecolor( { math.random(0,255), -- случайный цвет math.random(0,255), math.random(0,255), math.random(0,255), }, 1.5 ) -- меняется за 1.5 сек end, 3000, 0 ) end ) addEventHandler( 'onClientRender', root, function() -- FPS счетчик nFPSCounter = nFPSCounter + 1 -- изменение цвета, если оно активно if tRecolor.bIsActive then if tRecolor.nSteps <= 0 then for n=1,4 do tColor[n] = tRecolor.tTargetColor[n] end tRecolor.bIsActive = false else for n=1,4 do tColor[n] = tColor[n] + tRecolor.tColorStep[n] end if tRecolor.nSteps <= 2 then for n = 1, 4 do if tColor[n] < 0 then tColor[n] = 0 elseif tColor[n] > 255 then tColor[n] = 255 end end end tRecolor.nSteps = tRecolor.nSteps - 1 end end -- простой квадратик для примера, у него будет меняться цвет dxDrawRectangle( 300,300, 200,200, tocolor(tColor[1],tColor[2],tColor[3],tColor[4]) ) end ) Любой код является личным мнением и решением автора на поставленную задачу. Других вариантов может быть много.
  15. VPS / VDS ПРОЦ 500-1000 МГц ОЗУ 256-512 Мб ДИСК 5-10 Гб лучше XEN технология виртуализации
  16. и кому же захочется сделать кучу логико скриптов ради "заработать на хостинг" (((: только скриптеру-маньяку
  17. Тебе по времени нужна абсолютная точность?
  18. фулдилка оживилась после смены названия (: .. даже случайные прохожие тут повякивать стали В моем словесном примере баланс между подсчетами в каждом кадре и точностью по времени. Я делал такие же подсчеты в каждом кадре, но после тестов двух вариантов стало понятно, что такая точность не нужна, когда дело касается просто визуализации. Когда промежуток времени небольшой для изменения цвета, а обычно, это так и есть, то тиками можно ничего не мерить. Потому что для всех по ощущениям этот эффект итак будет одинаков по времени.
  19. стиля нет, но не металл я, кстати, делал такой плавный переход цвета за указанное время. Как бы то ни было, нужно знать текущий фпс, ну хотя бы за последнюю секунду. цвет должен быть представлен в виде RGB или RGBA отдельными числами 5 секунд * текущийФПС - это столько шагов нужно для изменения цвета разницу исходного и желаемого цвета делим на вышеуказанное - это размеры шагов и в каждом кадре прибавляешь к цвету, отнимая от кол-ва шагов, следя, чтобы за рамки 0..255 значения не выбились
  20. да в одиночке есть такое, объект в виде маркера над элементом двигается вверх/вниз. штыдно сказать, качнул ща танцевальные хиты 90-х, слушаю.. есть знакомые всем хиты..
  21. Потому что у нас все разговоры - только по делу ))))
  22. да да, я помню тоже себя поймал на том, что юзал анимации в клиенте, думая, что они синхронизируются (: То, что они будут применяться в клиенте это все равно в данном случае правильно. Потому что вся логика и действия все равно будут выполняться в клиенте. Сервер нам нужен будет только, когда стиль ходьбы у ПЕДа измениться. Тогда он разошлет всем клиентам об этом инфо, но не более. Применяться анимация должна по идее не только к локальному игроку, но и к другим ПЕДам, которые есть в стриме с локальным игроком. Насчет, анимации бега к машине.. Сам этот бег, это простой игровой скрипт, который юзает BIND'ы действий передвижения ПЕДа для достижения точки возле транспорта. Если это критично, что ПЕД пробежит быстро и обычным стилем, то придется долго думать над этим и извращаться (: Подобный игровой скрипт бега к тачке можно заскриптить в крайнем случае. Смотрю скрипты и внесу изменения.. потом проверю, если предположение мое правильное, то можно продолжить двигаться так и далее..
×
×
  • Create New...