Jump to content

nikitafloy

Members
  • Posts

    419
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by nikitafloy

  1. Игрок ругается - ставим мут на опр. время, по истечению чего мут снимается. НО этого не происходит, в дэбаге пишет следущее - "1467 строка, указывающая на данный вывод тексте из 'admin': Admin security - Client without admin panel rights trigged an admin panel event." (Нет доступа к панели администратора) Собственно не понимаю как решить данную проблему с 'UnMute'.
  2. Я привел свое объяснение '--', правильно ли я рассуждаю? В данном коде мне пишет строку красным цветом, не помню, что там написано.
  3. В function createVeh () for _, vehicle in ipairs ( carsR ) do local id, x, y, z, rx, ry, rz = unpack ( vehicle ) veh = createVehicle( id, x, y, z, rx, ry, rz ) end end addEventHandler("onResourceStart", resourceRoot, createVeh) Можно сделать что-то типа function createVeh () number = 0 for _, vehicle in ipairs ( carsR ) do local id, x, y, z, rx, ry, rz = unpack ( vehicle ) veh = createVehicle( id, x, y, z, rx, ry, rz ) number = number + 1 setElementData(veh,"nomer",number) end end addEventHandler("onResourceStart", resourceRoot, createVeh) Потом не нужно будет делать 100500 проверок на "взорваность" nom = getElementData(source,"nomer") respawnVehicle(vehicle[nom]) Благодарю за ответ. И извиняюсь за то, что не допонимаю здесь всё. local carsR = { { 420, 1714.30005, 1470.5, 10.6, 0, 0, 342.498 }, { 420, 1711.59998, 1460.5, 10.6, 0, 0, 344.493 }, { 420, 1708.5, 1450.40002, 10.6, 0, 0, 344.993 }, { 420, 1706.90002, 1420.59998, 10.6, 0, 0, 5.493 }, { 420, 1708.40002, 1412.09998, 10.6, 0, 0, 11.488 }, { 420, 1710.09998, 1404.5, 10.6, 0, 0, 5.493 }, { 420, 1719.40002, 1411.80005, 10.6, 0, 0, 10.736 }, { 420, 1717.40002, 1434.69995, 10.4, 0, 0, 358.734 }, { 409, 2040.09961, 1008.59998, 10.6, 0, 0, 180 }, -- Создается не лимузин, а такси, который указан выше под ID 420 :\ Должно быть все ОК, но это не так... { 409, 2040.09961, 999.59961, 10.6, 0, 0, 180 }, -- Создается не лимузин, а такси, который указан выше под ID 420 :\ Должно быть все ОК, но это не так... { 409, 2040.09961, 1017.7998, 10.6, 0, 0, 180 } -- Создается не лимузин, а такси, который указан выше под ID 420 :\ Должно быть все ОК, но это не так... } function createVeh () number = 0 -- nil изначально for _, vehicle in ipairs ( carsR ) do local id, x, y, z, rx, ry, rz = unpack ( vehicle ) veh = createVehicle( id, x, y, z, rx, ry, rz ) number = number + 1 -- Коробка 'number' в которой идет счет всех созданых авто setElementData(veh,"nomer",number) -- задаем ключ 'nomer' для данных авто, прикрепляем к ним свой номер (Если можно, расскажите про 2-ой аргумент поподробнее, не совсем понимаю) end end addEventHandler("onResourceStart", resourceRoot, createVeh) function respawnExplodedVehicle() nom = getElementData(source,"nomer") -- Извлекаем данные из ключа 'nomer', т.к. идет посылка запроса 'source', то он будет считываться из данных, которые мы присвоили if isVehicleBlown ( vehicle[nom] ) == true then -- Проверка всех автомобилей, если взорваны, то установить таймер и зареспаунить все авто. Я так понимаю. setTimer(function() respawnVehicle ( vehicle[nom] ) end, 10000, 1, source) else return end end addEventHandler("onVehicleExplode", getRootElement(), respawnExplodedVehicle) function respPosVehicle ( ) nom = getElementData(source,"nomer") -- Здесь вообще неразбериха получается какая-то if getElementPosition ( vehicle[nom] ) ~= vehicle[nom] then setTimer(function() respawnVehicle( vehicle[nom] ) end, 10000, 1, source) else return end end addEventHandler("onPlayerQuit", getRootElement(), respPosVehicle)
  4. Мне нужно локализовать одно авто из всех, а не восстанавливать все авто на сервере, т.к. я имею еще и личный транспорт, они должны платить, если авто взорвется. Т.е. есть все авто, из них 10% - такси и лимузины для работы, если 1 машина взрывается или ее положение изменяется, то через опр. время она должна среспауниться. Вот что я получил, но я не знаю как вытащить всю строку из таблицы, чтобы задать аргумент одной локальной машины (а1, a2,.. и vehicle[1],... не считайте как правильные, т.к. одних уже не существует, другие здесь не уместны): local carsR = { { 420, 1714.30005, 1470.5, 10.6, 0, 0, 342.498 }, { 420, 1711.59998, 1460.5, 10.6, 0, 0, 344.493 }, { 420, 1708.5, 1450.40002, 10.6, 0, 0, 344.993 }, { 420, 1706.90002, 1420.59998, 10.6, 0, 0, 5.493 }, { 420, 1708.40002, 1412.09998, 10.6, 0, 0, 11.488 }, { 420, 1710.09998, 1404.5, 10.6, 0, 0, 5.493 }, { 420, 1719.40002, 1411.80005, 10.6, 0, 0, 10.736 }, { 420, 1717.40002, 1434.69995, 10.4, 0, 0, 358.734 }, { 409, 2040.09998, 1008.59998, 10.6, 0, 0, 180 }, { 409, 2040.09961, 999.59961, 10.6, 0, 0, 180 }, { 409, 2040.09961, 1017.7998, 10.6, 0, 0, 180 } } function createVeh () for _, vehicle in ipairs ( carsR ) do local id, x, y, z, rx, ry, rz = unpack ( vehicle ) veh = createVehicle( id, x, y, z, rx, ry, rz ) end end addEventHandler("onResourceStart", resourceRoot, createVeh) function respawnExplodedVehicle() for _, vehicle in ipairs ( carsR ) do if isVehicleBlown ( vehicle[1] ) == true then setTimer(function() respawnVehicle ( vehicle[1] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[2] ) == true then setTimer(function() respawnVehicle ( vehicle[2] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[3] ) == true then setTimer(function() respawnVehicle ( vehicle[3] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[4] ) == true then setTimer(function() respawnVehicle ( vehicle[4] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[5] ) == true then setTimer(function() respawnVehicle ( vehicle[5] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[6] ) == true then setTimer(function() respawnVehicle ( vehicle[6] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[7] ) == true then setTimer(function() respawnVehicle ( vehicle[7] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[8] ) == true then setTimer(function() respawnVehicle ( vehicle[8] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[9] ) == true then setTimer(function() respawnVehicle ( vehicle[9] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[10] ) == true then setTimer(function() respawnVehicle ( vehicle[10] ) end, 10000, 1, source) else return end if isVehicleBlown ( vehicle[11] ) == true then setTimer(function() respawnVehicle ( vehicle[11] ) end, 10000, 1, source) else return end end end addEventHandler("onVehicleExplode", getRootElement(), respawnExplodedVehicle) function respPosVehicle ( ) for _, vehicle in ipairs ( carsR ) do local a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11 = unpack ( vehicle ) if getElementPosition ( a1 ) ~= a1 then setTimer(function() respawnVehicle ( a1 ) end, 10000, 1, source) else return end if getElementPosition ( a2 ) ~= a2 then setTimer(function() respawnVehicle ( a2 ) end, 10000, 1, source) else return end if getElementPosition ( a3 ) ~= a3 then setTimer(function() respawnVehicle ( a3 ) end, 10000, 1, source) else return end if getElementPosition ( a4 ) ~= a4 then setTimer(function() respawnVehicle ( a4 ) end, 10000, 1, source) else return end if getElementPosition ( a5 ) ~= a5 then setTimer(function() respawnVehicle ( a5 ) end, 10000, 1, source) else return end if getElementPosition ( a6 ) ~= a6 then setTimer(function() respawnVehicle ( a6 ) end, 10000, 1, source) else return end if getElementPosition ( a7 ) ~= a7 then setTimer(function() respawnVehicle ( a7 ) end, 10000, 1, source) else return end if getElementPosition ( a8 ) ~= a8 then setTimer(function() respawnVehicle ( a8 ) end, 10000, 1, source) else return end if getElementPosition ( a9 ) ~= a9 then setTimer(function() respawnVehicle ( a9 ) end, 10000, 1, source) else return end if getElementPosition ( a10 ) ~= a10 then setTimer(function() respawnVehicle ( a10 ) end, 10000, 1, source) else return end if getElementPosition ( a11 ) ~= a11 then setTimer(function() respawnVehicle ( a11 ) end, 10000, 1, source) else return end end end addEventHandler("onPlayerQuit", getRootElement(), respPosVehicle)
  5. Времени уже нет на это, скоро график 0-ой. Оставлю тему для других пользователей, которые будут заинтересованы. Спасибо.
  6. Прочитал несколько раз, не вник Выбери нужное: setVehicleRespawnPosition spawnVehicle respawnVehicle Вот, начиркал, пока что нет возможности проверить... local pt1 = 1714.30005, 1470.5, 10.6 t1 = createVehicle( 420, 1714.30005, 1470.5, 10.6, 0, 0, 342.498 ) setVehicleRespawnPosition ( t1, 1714.30005, 1470.5, 10.6, 0, 0, 342.498 ) toggleVehicleRespawn(t1, true) local pt2 = 1711.59998, 1460.5, 10.6 t2 = createVehicle( 420, 1711.59998, 1460.5, 10.6, 0, 0, 344.493 ) setVehicleRespawnPosition ( t2, 1711.59998, 1460.5, 10.6, 0, 0, 344.493 ) toggleVehicleRespawn(t2, true) local pt3 = 1708.5, 1450.40002, 10.6 t3 = createVehicle( 420, 1708.5, 1450.40002, 10.6, 0, 0, 344.993 ) setVehicleRespawnPosition ( t3, 1708.5, 1450.40002, 10.6, 0, 0, 344.993 ) toggleVehicleRespawn(t3, true) local pt4 = 1706.90002, 1420.59998, 10.6 t4 = createVehicle( 420, 1706.90002, 1420.59998, 10.6, 0, 0, 5.493 ) setVehicleRespawnPosition ( t4, 1706.90002, 1420.59998, 10.6, 0, 0, 5.493 ) toggleVehicleRespawn(t4, true) local pt5 = 1708.40002, 1412.09998, 10.6 t5 = createVehicle( 420, 1708.40002, 1412.09998, 10.6, 0, 0, 11.488 ) setVehicleRespawnPosition ( t5, 1708.40002, 1412.09998, 10.6, 0, 0, 11.488 ) toggleVehicleRespawn(t5, true) local pt6 = 1710.09998, 1404.5, 10.6 t6 = createVehicle( 420, 1710.09998, 1404.5, 10.6, 0, 0, 5.493 ) setVehicleRespawnPosition ( t6, 1710.09998, 1404.5, 10.6, 0, 0, 5.493 ) toggleVehicleRespawn(t6, true) local pt7 = 1719.40002, 1411.80005, 10.6 t7 = createVehicle( 420, 1719.40002, 1411.80005, 10.6, 0, 0, 10.736 ) setVehicleRespawnPosition ( t7, 1719.40002, 1411.80005, 10.6, 0, 0, 10.736 ) toggleVehicleRespawn(t7, true) local pt8 = 1717.40002, 1434.69995, 10.4 t8 = createVehicle( 420, 1717.40002, 1434.69995, 10.4, 0, 0, 358.734 ) setVehicleRespawnPosition ( t8, 1717.40002, 1434.69995, 10.4, 0, 0, 358.734 ) toggleVehicleRespawn(t8, true) local pt9 = 2040.09998, 1008.59998, 10.6 t9 = createVehicle( 420, 2040.09998, 1008.59998, 10.6, 0, 0, 180 ) setVehicleRespawnPosition ( t9, 2040.09998, 1008.59998, 10.6, 0, 0, 180 ) toggleVehicleRespawn(t9, true) local pt10 = 2040.09961, 999.59961, 10.6 t10 = createVehicle( 420, 2040.09961, 999.59961, 10.6, 0, 0, 180 ) setVehicleRespawnPosition ( t10, 2040.09961, 999.59961, 10.6, 0, 0, 180 ) toggleVehicleRespawn(t10, true) local pt11 = 2040.09961, 1017.7998, 10.6 t11 = createVehicle( 420, 2040.09961, 1017.7998, 10.6, 0, 0, 180 ) setVehicleRespawnPosition ( t11, 2040.09961, 1017.7998, 10.6, 0, 0, 180 ) toggleVehicleRespawn(t11, true) function respawnExplodedVehicle() setTimer(function() if isVehicleBlown ( t1 ) == true then respawnVehicle ( t1 ) else return end if isVehicleBlown ( t2 ) == true then respawnVehicle ( t2 ) else return end if isVehicleBlown ( t3 ) == true then respawnVehicle ( t3 ) else return end if isVehicleBlown ( t4 ) == true then respawnVehicle ( t4 ) else return end if isVehicleBlown ( t5 ) == true then respawnVehicle ( t5 ) else return end if isVehicleBlown ( t6 ) == true then respawnVehicle ( t6 ) else return end if isVehicleBlown ( t7 ) == true then respawnVehicle ( t7 ) else return end if isVehicleBlown ( t8 ) == true then respawnVehicle ( t8 ) else return end if isVehicleBlown ( t9 ) == true then respawnVehicle ( t9 ) else return end if isVehicleBlown ( t10 ) == true then respawnVehicle ( t10 ) else return end if isVehicleBlown ( t11 ) == true then respawnVehicle ( t11 ) else return end end, 5000, 1, source) end addEventHandler("onVehicleExplode", getRootElement(), respawnExplodedVehicle) function respPosVehicle ( ) if getElementPosition ( t1 ) ~= pt1 then elseif getElementPosition ( t2 ) ~= pt2 then elseif getElementPosition ( t3 ) ~= pt3 then elseif getElementPosition ( t4 ) ~= pt4 then elseif getElementPosition ( t5 ) ~= pt5 then elseif getElementPosition ( t6 ) ~= pt6 then elseif getElementPosition ( t7 ) ~= pt7 then elseif getElementPosition ( t8 ) ~= pt8 then elseif getElementPosition ( t9 ) ~= pt9 then elseif getElementPosition ( t10 ) ~= pt10 then elseif getElementPosition ( t11 ) ~= pt11 then setTimer(function() respawnVehicle ( t1 ) respawnVehicle ( t2 ) respawnVehicle ( t3 ) respawnVehicle ( t4 ) respawnVehicle ( t5 ) respawnVehicle ( t6 ) respawnVehicle ( t7 ) respawnVehicle ( t8 ) respawnVehicle ( t9 ) respawnVehicle ( t10 ) respawnVehicle ( t11 ) end, 5000, 1, source) else return end end addEventHandler("onPlayerQuit", getRootElement(), respPosVehicle)
  7. Мой сервер дает нагрузку на CPU и выбор не очень большой - чистить логи и прочее, но я считаю, что это уже помогает, но не всегда. Второе - докупить лимит CPU. Так вот, одним из решением, уже 3 - изменение структуры сохранения/загрузки файлов на MySQL. Но и здесь выбор не огромен - сервер будет долго в оффлайне, а игроков набралось прилично, и я их легко могу потерять. И второе - заказать, чтобы кто-то это сделал за меня. Поэтому мне нужны строгие руководства как это делается вообще, т.к. я с этим никогда не встречался и думаю, что будет трудновато. Обобщим - Нужно перевести ресурсы сервера, отчасти, на MySQL. Каковы мои шаги? Спасибо.
  8. Как можно локально спавнить взорванные машины и машины, которые различаются от своей позиции. Т.е. создаем авто, если авто взорвано, то респуним его на место, если он находится в др. позиции, отл. от его собственной, то респуним его на место.
  9. Решил проблему, перенес на сторону сервера. Спасибо! ----- На общей карте не видно blip'а. В скриптах - автосалон, заправка. Он на карте изображен. Что отвечает за это? Какая функция? ----- SetInteriorSoundsEnabled - Где я могу воспользоваться данной функцией? ----- После анимации игрок залипает на месте и развисает, если ударить кулаком. Это ОК? Или есть какой-то метод?
  10. Ружье ни в какую не отнимается. Даже giveWeapon прововал, никак. Во втором скрипте (Сегодня мастерил, пока ждал ответа :3 Надо же набираться опыта.) Здесь не отбираются деньги, пробовал разные аргументы. Ну первым делом проводил на стороне сервера. Ни в какую. Только извлекал весь список народу и отнимал в общем кол-ве у каждого. Не знаю как создать 'thePlayer'...
  11. БЛАГОДАРЮ! ОГРОМНОЕ СПАСИБО! Прокомментируйте поправки, пожалуйста. Смастерил пляшущих педов (+18) в стрип-баре, деньги не забираются. Надо и там то же помастерить.
  12. не работал с колшейпами если честно, но могу дать совет, при входе и выходе дать игроку ключи к примеру on - 0/1 и когда его kill то проверяй на наличие у ключа on нужного числа. / p.s. лень заставляет шевелить мозгами)) local DMzone = createColCuboid ( 2495, 2616, 9.5, 255, 243, 80 ) function shapeHit ( player ) outputChatBox ( ""..tostring(getPlayerName ( player )).." вошел в зону DM. (/dm) ",getRootElement(),255,255,0 ) setElementData( player,"oncolshape", 1 ) end addEventHandler ( "onColShapeHit", DMzone, shapeHit ) function player_Wasted ( ammo, attacker, weapon, bodypart ) if ( attacker ) then if getElementData(source,"oncolshape" ) then if getElementData(source,"oncolshape" ) == 1 then if ( getElementType ( attacker ) == "player" ) then givePlayerMoney(attacker, 7500) takePlayerMoney(source,7500) end end end end end end addEventHandler ( "onPlayerWasted", getRootElement(), player_Wasted ) function hill_Exit ( thePlayer, matchingDimension ) if getElementType ( thePlayer ) == "player" then if isPlayerDead ( thePlayer ) ~= true then setElementData(thePlayer,"oncolshape", 0 ) end end end addEventHandler ( "onColShapeLeave",DMzone, hill_Exit ) хм, ну что то вроде ) мне просто заняться нечем))) Спасибо большое , но деньги не выдаются и, вроде, не отнимаются. Как и было... Чтобы после смерти слоты с ружьем были пусть, мне нужно воспользоваться: giveWeapon ?
  13. viewtopic.php?f=141&t=40703 Извиняюсь, исправлено.
  14. Спасибо, всё очень сильно помогло, осталось последнее - получение денег. Не совсем понимаю, что творится ниже в 'onKillDM', но тем не менее. Вроде все ОК, дэбаг молчит. Иногда ругается на 3 строку, что она должна быть 'boolean'. Но деньги после убийства не передаются. Наверняка легко будет выследить данную ошибку, я пока что-то не могу.
  15. А что с ими разбиратся ? Почитай на вики про функцию, там все есть. Я бы помог, но извини, я не ванга, и не знаю где тебе нужна дм зона Мне нужно интуитивно выставлять ширину, высону и длину? Или же найти центр и ее стороны, затем найти их разницу? Как быть с onPlayerWasted? Мне нужно как-то выдрать игрока, который был убит. Проверьте меня, если что:
  16. Делай колшейп в дм зоне createColCuboid И при убийстве/смерти проверяй, был ли тот игрок в колшейпе isElementWithinColShape С колшейпами я не разобрался до конца.
  17. Ай-Яй, проглядел. Сейчас попробуем. Откуда мне брать аргумент убитого?
  18. Привет всем. Что я должен использовать для DM - зоны? Человек убивает другого - 2 player, первый получает деньги, у второго отнимаются. function onPlayerWastedDM ( attacker ) if ( attacker ) then if ( getElementType ( attacker ) == "player" ) then givePlayerMoney( attacker, 7500 ) end end end addEventHandler( "onPlayerWastedDM", getRootElement( ), function() setTimer( spawnPlayer, 2000, 1, player, 1607, 1826.6, 10.8 ) takePlayerMoney ( player, 7500 ) end ) Не работает.
  19. Скрипт переписали более правильнее и короче, я потом сам переделывал, как понял. Вот и получился ломаный пластилин. unpack ( i ) Здесь я подразумевал, что переменные распаковываются в некую коробку i, которой можно манипулировать, хотя сейчас я вспомнил, что там были указаны - коробка i и ее элементы через запятую, но я посчитал, что должно быть по другому, к чему я и пришел - dont work. А спросить у того человека я не мог, потому что он редко отвечает, т.к. работает саппортом у хостера и сам делает скрипты на заказ, поэтому решил взять всю инициативу на себя. НО как бы не писали, что Lua учится за пару дней, я в это сейчас не верю, потому что я уже около месяца изучаю Lua и до сих пор чего-то не допонимаю. Вот поспешил и людей насмешил...
  20. local a, b = unpack ( i ) playSound3D ( url, i ) setSoundMaxDistance ( url, 40 ) Сами хоть поняли что делаете? Да. Мне помогали с этим скриптом и он когда-то работал.
  21. Ок, у меня набралось немного вопросов. 1. Почему данный скрипт не работает, какие в нем косяки? Раньше он работал ОК. local url = "http://yp.shoutcast.com/sbin/tunein-station.pls?id=1588890&play_status=1" local speak = { {1049.6, 2324.4, 11.3}, {1053, 2304.9, 11.3} } function playTheSound( ) for k, i in ipairs ( speak ) do local a, b = unpack ( i ) playSound3D ( url, i ) setSoundMaxDistance ( url, 40 ) end end addEventHandler( "onClientResourceStart", resourceRoot, playTheSound ) 2. Изучил и решил сделать подобное, но с поправками - viewtopic.php?f=141&t=63040 Есть 2 педа - охрана, когда их начинают бить и сносят 10 хп, то они начинают стрелять по игроку, но как направить на них цель педа? Читал про кулшейп, не понял какую из тем вики мне стоило бы почитать. Все на английском, в общем у меня в голове хаус. Вот что имею на данный момент: Клиент Сервер:
  22. Так ID модели 16613, он не правильно написал.
  23. removeWorldModel(16613, 0.25, -346.67187, 1595.07813, 79.66406) Эта строка уже вписана у меня.
  24. ОК, хорошо, завтра примусь читать. Вроде бы все просто - бери и делай как указано в wiki.
×
×
  • Create New...