Форум » Вопросы и ответы » Вопросы по скриптам » Ответить

Вопросы по скриптам

Киллер: Задавайте вопросы по скриптовому языку ЗОД и ждите скорейшего ответа на них!

Ответов - 285, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All

VIRUS: Я так и не понял как оно работает. Вот как сделать стенку передвигающеюся по наезду на тригер?

Anti_Killer: Пособирал сейчас. В общем например user.toggle1Close=1 user.toggle1Active=0 conf.sv_timelimit = 0 conf.sv_fraglimit = 0 loadmap("-----------------------------------Путь до мапы---------------------------------") service("player_local", {name="player", nick="tester",vehname="veh1", class="default"}) actor("trigger",272 + 32, 32, {name="t", on_enter="user.onOpen()"}) for i = 1, 10 do pushcmd(function() actor("wall_concrete", 272, i*32, {name="wall_n"..i}) end, 1 + 0.1 * i) end function user.onOpen() if (user.toggle1Active==0) then user.toggle1Active=1 if (user.toggle1Close == 1) then user.moveObjectsY(9,2,30,"wall_n",1,10,1); user.toggle1Close=0; else user.moveObjectsY(9,30,2,"wall_n",1,10,1); user.toggle1Close=1; end pushcmd(function() user.toggle1Active=0 end,3) end end создаст стену из 10 блоков в самом начале любой мапы. И тригер справа от первого блока этой стены , сразу на соседней клетке, по наезду на который стена проедит до 30 клетки. Еще раз заедишь и она начнет двигаться обратно. НО Так же тебе надо скопировать все функции Morse начиная строкой "--------БИБЛИОТЕКА ФУНКЦИЙ-by Morse" и до "---применяем к первой карте---"

slava98: А как переместить бетон с 42.14 на 51.14? Я пробовал. user.moveObjectsX(42,14,51,"p2",42,51,1)


Morse: Способ создания-уничтожения надо признать идеологически неверным, устаревшим, и идущим вразрез с генеральной линией партии. Трясите антикиллера - пусть он в объектах сделает возможным редактирование координат. Сразу жить станет намного проще.

VIRUS: Morse о нематериален. Трясти не сможем, но мы со Славой уговорим его.

slava98: VIRUS пишет: Трясти не сможем, но мы со Славой уговорим его. Да, наверное .

slava98: Morse пишет: Способ создания-уничтожения надо признать идеологически неверным, устаревшим, и идущим вразрез с генеральной линией партии. А мне он нравится. Кроме того, я в нём разобрался и всё вышло. Теперь можно хоть мобильную тюрель сделать .

VIRUS: slava98

Morse: мобильная "тюрель" у тебя не выйдет - она не сможет стрелять. а разобраться можно в чем угодно, даже в женщинах.

Anti_Killer: Способ создания-уничтожения надо признать идеологически неверным, устаревшим, и идущим вразрез с генеральной линией партии. Трясите антикиллера - пусть он в объектах сделает возможным редактирование координат. Сразу жить станет намного проще. Идея хорошая, только проблемка в том что я исходники от своей версии мягко говоря запорол, соберу из своих патчей её заново, так что как восстановлю , постараюсь реализовать это 8 чудо света если координаты не слишком намертво там заделаны. Хотя способ с -удалить-восстановить на данном этапе еще можно использовать и не надо на него сильно плеваться. Если пере создавать объект со скоростью 0.01 секунды то получается очень красиво, фпс при этом практически не падает. Сейчас доделываю одну компанию. После неё займусь ) -----добавил позже-------- Все положение дел описал в подфоруме компаний

VIRUS: Anti_Killer У меня вышло их сдвинуть!

VIRUS: У кого осталась Mkmap а то на сайтах не рабочие?

Anti_Killer: забыл про официальный сайт ? ) http://ins-games.narod.ru/download.htm

slava98: VIRUS http://tankzod.do.am/load/8-1-0-61 Всё работает.

VIRUS: [pre]loadmap(user.campFmaps.."map01.map") service( "player_local", { name="player1", skin="yellow", team=1, on_die="user.OnDiePlayer()", class="default", nick="Player1" } ) if user.boo = 5 then message("Вы собрали все бустеры.") end -------------------------- user.boo=0 [/pre] Ошибка в 9-ой строке.

slava98: VIRUS пишет: if user.boo = 5 then message("Вы собрали все бустеры.") end Короче, вот здесь. А может надо поставить function user....

Morse: черт, я с этим питоном луа уже забыл. попробуй if (user.boo == 5) then ...

Anti_Killer: можно и без скобок. Главное == не путать с =

VIRUS: [pre]function user.LevelChangeBox(n) if n~=nil then if n==1 then botreduce=botreduce-1 elseif n==2 then botreduce=botreduce+1 end end local levelname; if botreduce==1 then levelname="Средний" elseif botreduce==2 then levelname="Ниже среднего" elseif botreduce==3 then levelname="Легкий" elseif botreduce==4 then levelname="Сверх легкий" elseif botreduce==5 then levelname="для дошколят" elseif botreduce==0 then levelname="Сложный" elseif botreduce==-1 then levelname="Аццки сложный" elseif botreduce==-2 then levelname="Непобедимый" elseif botreduce<-2 then levelname="Чтото нереальное" elseif botreduce>5 then levelname="еще легче =/" end local low = botreduce*100 if n ~= 3 then service("msgbox", {text="Настройка уровня сложности\n Вы сейчас играете на уровне сложности \n\n\n\n ["..levelname.."]\n\n\n\n",on_select="user.LevelChangeBox(n)",option1="Повысить",option2="Понизить",option3="Закрыть"}) for n = 1,3 do if exists("enemy"..n) then local bot = object("enemy"..n) if user.cpower==nil or user.cmax_speed==nil or user.cpower==0 or user.cmax_speed==0 then user.cpower=classes[bot.class].power[1] user.cmax_speed=classes[bot.class].max_speed[1] end classes[bot.class].max_speed[1]=user.cmax_speed-low classes[bot.class].power[1] = user.cpower-low bot.class=bot.class end end end [/pre] Как разобратся?

Anti_Killer: Как разобратся? в чем проблема конкретно ? Функция создает диалоговое окно в котором в зависимости от значения переменной botreduce выводит разные сообщения . Все остальное это применение класса боту.



полная версия страницы