Отправлено: 18.01.10 21:54. Заголовок: Morse прикольно! я к..
Morse прикольно! я кстати не догадался зафигачить многострочный текст в строку инициализации кстати, массив user.lights={} можно так же сделать локальным local lights={} чтобы не замусоривать пространство имен
Отправлено: 19.01.10 23:07. Заголовок: по строчкам задаем ..
по строчкам
задаем переменную i задаем пустой "массив" (или что тут под ним понимают) входим в цикл с постусловием тут у тебя ошибка. i-тому элементу массива мы присваиваем ссылку на объект с соотв. именем инкремент если объекты с заданными именами кончились, выходим из цикла
объявляем функцию начинаем итерацию по элементам массива если рандомное число больше 0.75 свойству active присваиваем 0, иначе 1 конец цикла рекурсивно закидываем функцию в очередь конец функции
вызываем функцию в первый раз
всем фонарям на карте были вручную даны имена (от l1 и далее по порядку). это конечно неудобно, но другого варианта нет (по крайней мере пока)
Отправлено: 20.01.10 13:29. Заголовок: вопрос по скрипту: я..
вопрос по скрипту: я хочу чтобы при уничтожение какого-либо объекта игра становилась на паузу и писалось сообщение, вот я прописываю в on_destroy такую фразу freeze(true); message("Команда хХх выиграла"). Уничтожаю объект и ничего не происходит, что я делаю не так З.Ы. у меня версия 1:48
Отправлено: 20.01.10 21:22. Заголовок: во-первых l - малень..
во-первых l - маленькое, не L, а во-вторых, у меня - нет с единицы. а вообще без разницы, хоть с -10, только переменную i надо будет нужным числом инициализировать. и я не уверен как с таким вывертом ipairs подружится...
и кстати если уж на то пошло то и l можно на L заменить, только тогда уж везде.
Отправлено: 20.01.10 21:44. Заголовок: И ещё подскажите пож..
И ещё подскажите пожалуйста. В версии 1.49-1.51 есть объект- декорация. В его свойствах под его текстуру можно подогнать любой файл из папки textures(вроде бы как), а как сделать чтобы в декорацию можно было загнать простую картинку, ну например эту
Отправлено: 20.01.10 22:14. Заголовок: картинку надо перегн..
картинку надо перегнать в 32-х битный (обязательно) tga, потом написать для этой картинки lua файл с извращенным синтаксисом (пример - в любой крупной кампании или в файле textures.lua), а потом на этот луа-файл кастануть loadtheme, после этого он появится в списке текстур
Отправлено: 21.01.10 10:52. Заголовок: А лучше этот луа-фай..
А лучше этот луа-файл положить в папку с темами и поставить его как тему в сойствах карты, иначе подцепленная подобным образом текстура на объекте не сохранится после save/load.
hdr{ attr heightd attr widthd attr author attr desc attr e-mail attr link-url attr on_init attr function explosion(x, y, times, spd) local times = times or 1 local spd = spd or 0 for i=0, times-1 do pushcmd(function() actor("user_object", x, y, {name="exploder"}); damage(100, "exploder") end, 0+i/100*spd) end end
function bombard(x1, y1, x2, y2, times, spd, explo, explospd) times = times or 24 spd = spd or 15 explo = explo or 1 explospd = explospd or 0 local pixx = (x2-x1)/times local pixy = (y2-y1)/times for i=0, times-1 do pushcmd(function() explosion(x1+pixx*i, y1+pixy*i, explo, explospd) end, 0+i/100*spd) end end
function dangerzone(x1, y1, x2, y2, time, spd, islinear, linspd) time = time or 500 spd = spd or 500 islinear = islinear or 0 linspd = linspd or math.random(5, 20) if islinear==0 then local i=time/spd for q=0, i-1 do pushcmd(function() rx = math.random(x1*32, x2*32) ry = math.random(y1*32, y2*32) explosion(rx, ry) end, spd*q/100) end end if islinear==1 then local i=time/spd for q=0, i-1 do pushcmd(function() local rx1 = math.random(x1*32, x2*32) local rx2 = math.random(x1*32, x2*32) local ry1 = math.random(y1*32, y2*32) local ry2 = math.random(y1*32, y2*32) bombard(rx1, rx2, ry1, ry2, linspd, spd) end, spd*q/100) end end end theme desertattr type deathmatchattr version 5395}hdr dfn:y wall_concrete name x y health health_max on_destroy on_damage corner styleobj:" ЂA ЂA HB HB obj:" @B ЂA HB HB obj:" B ЂA HB HB obj:" C ЂA HB HB obj:" 0C ЂA HB HB obj:" PC ЂA HB HB obj:" ?C ЂA HB HB obj:" ЁC ЂA HB HB obj:" ёC ЂA HB HB obj:" ИC ЂA HB HB obj:" ШC ЂA HB HB obj:" иC ЂA HB HB obj:" шC ЂA HB HB obj:" D ЂA HB HB obj:" D ЂA HB HB obj:" D ЂA HB HB obj:" D ЂA HB HB obj:" $D ЂA HB HB obj:" ,D ЂA HB HB obj:" 4D ЂA HB HB ...
Отправлено: 22.01.10 01:33. Заголовок: опиши что именно не ..
опиши что именно не получается, и не печатай скрипты таким вырвиглазным методом.
и кстати: вывод консоли очень часто может ответить на все вопросы. поглядывай туда если тебе кажется что скрипты воркают не как надо, там ошибки всегда весьма заметны.
Отправлено: 22.01.10 20:37. Заголовок: я пишу в скрипте ини..
я пишу в скрипте инициализации
function explosion(x, y, times, spd) local times = times or 1 local spd = spd or 0 for i=0, times-1 do pushcmd(function() actor("user_object", x, y, {name="exploder"}); damage(100, "exploder") end, 0+i/100*spd) end end
function bombard(x1, y1, x2, y2, times, spd, explo, explospd) times = times or 24 spd = spd or 15 explo = explo or 1 explospd = explospd or 0 local pixx = (x2-x1)/times local pixy = (y2-y1)/times for i=0, times-1 do pushcmd(function() explosion(x1+pixx*i, y1+pixy*i, explo, explospd) end, 0+i/100*spd) end end
function dangerzone(x1, y1, x2, y2, time, spd, islinear, linspd) time = time or 500 spd = spd or 500 islinear = islinear or 0 linspd = linspd or math.random(5, 20) if islinear==0 then local i=time/spd for q=0, i-1 do pushcmd(function() rx = math.random(x1*32, x2*32) ry = math.random(y1*32, y2*32) explosion(rx, ry) end, spd*q/100) end end if islinear==1 then local i=time/spd for q=0, i-1 do pushcmd(function() local rx1 = math.random(x1*32, x2*32) local rx2 = math.random(x1*32, x2*32) local ry1 = math.random(y1*32, y2*32) local ry2 = math.random(y1*32, y2*32) bombard(rx1, rx2, ry1, ry2, linspd, spd) end, spd*q/100) end end end
Как ты с диско и при нахождении на триггер выполняется действие с помощью этих функций: взрывается пол стадии
Отправлено: 22.01.10 21:00. Заголовок: "Человек" и ..
"Человек" и "vlad0dalv", сидящие с одного IP: не используйте никаких форматирующих тегов. Ваши сообщения после премодерации приходят в нечитабельное состояние.
Что именно не работает? Триггер? Тогда поэкспериментируй с pushcmd. Пол стадии(я так понимаю, пол в значении "пол", а не "половина"?) взрывается по всей площади в один момент? Проверь, выставил ли ты все параметры в функции dangerzone, а time не равно 0.
Отправлено: 22.01.10 21:00. Заголовок: я хочу чтобы при уни..
я хочу чтобы при уничтожение какого-либо объекта игра становилась на паузу и писалось сообщение, вот я прописываю в on_destroy такую фразу freeze(true); message("Команда хХх выиграла"). Уничтожаю объект и ничего не происходит, что я делаю не так З.Ы. у меня версия 1:48
Все даты в формате GMT
3 час. Хитов сегодня: 13
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет