DEVEK Posted November 5, 2012 Share Posted November 5, 2012 (edited) Здравствуйте уважаемые! Вот написал небольшой скриптик для открытия и автоматического закрытия ворот, но что-то не хотят они работать... Может глянет кто, где мой глаз "замылился"? local objGateR = createObject(3055, 2422.3000488281, -2455.8999023438, 14.800000190735, 0, 0, 314) local objGateL = createObject(3055, 2427.6999511719, -2461.5000000000, 14.800000190735, 0, 0, 314) local openCHGate = false function useChopGarageGate(thePlayer) local x, y, z = getElementPosition(thePlayer) local distance1 = getDistanceBetweenPoints3D(2425.5986000000, -2458.7880000000, 13.625000000000, x, y, z) if (distance1<=5) and (openCHGate==false) then openCHGate = true outputChatBox("Ворота гаража открыты.", thePlayer, 0, 255, 0) moveObject(objGateR, 1000, 2420.3000488281, -2455.8999023438, 14.800000190735, 0, 0, 314) moveObject(objGateL, 1000, 2430.0000000000, -2461.5000000000, 14.800000190735, 0, 0, 314) setTimer(closeChopGarageGate, 5000, 1, thePlayer) end end addCommandHandler("gate", useChopGarageGate) function closeChopGarageGate(thePlayer) setTimer(resetStateGCH, 1000, 1) moveObject(objGateR, 1000, 2422.3000488281, -2455.8999023438, 14.800000190735, 0, 0, 314) moveObject(objGateL, 1000, 2427.6999511719, -2461.5000000000, 14.800000190735, 0, 0, 314) end function resetStateGCH() openCHGate = false end Edited November 7, 2012 by Guest Link to comment
Vamp1r Posted November 5, 2012 Share Posted November 5, 2012 По-моему координаты по которым ты проверяешь игрока не соответствуют координатам самих объектов. + Способ не очень-то хороший, т.к. каждые новые ворота ты будешь делать по новой. Link to comment
Kenix Posted November 5, 2012 Share Posted November 5, 2012 https://forum.multitheftauto.com/viewtop ... c5700c509f Link to comment
DEVEK Posted November 5, 2012 Author Share Posted November 5, 2012 Здравствуйте уважаемые!Вот написал небольшой скриптик для открытия и автоматического закрытия ворот, но что-то не хотят они работать... Может глянет кто, где мой глаз "замылился"? local objGateR = createObject(3055, 2422.3000488281, -2455.8999023438, 14.800000190735, 0, 0, 314) local objGateL = createObject(3055, 2427.6999511719, -2461.5000000000, 14.800000190735, 0, 0, 314) local openCHGate = false function useChopGarageGate(thePlayer) local x, y, z = getElementPosition(thePlayer) local distance1 = getDistanceBetweenPoints3D(2425.5986000000, -2458.7880000000, 13.625000000000, x, y, z) if (distance1<=5) and (openCHGate==false) then openCHGate = true outputChatBox("Ворота гаража открыты.", thePlayer, 0, 255, 0) moveObject(objGateR, 1000, 2420.3000488281, -2455.8999023438, 14.800000190735, 0, 0, 314) moveObject(objGateL, 1000, 2430.0000000000, -2461.5000000000, 14.800000190735, 0, 0, 314) setTimer(closeChopGarageGate, 5000, 1, thePlayer) end end addCommandHandler("gate", useChopGarageGate) function closeChopGarageGate(thePlayer) setTimer(resetStateGCH, 1000, 1) moveObject(objGateR, 1000, 2422.3000488281, -2455.8999023438, 14.800000190735, 0, 0, 314) moveObject(objGateL, 1000, 2427.6999511719, -2461.5000000000, 14.800000190735, 0, 0, 314) end function resetStateGCH() openCHGate = false end Решение найдено! Заменил в строке: local x, y, z = getElementPosition(thePlayer) на: local x, y, z = getElementPosition(getLocalPlayer()) и все заработало! Кто подскажет, что за ерундень такая? Link to comment
Flaker Posted November 5, 2012 Share Posted November 5, 2012 А ты еще и на клиенте это делаешь? Мдаа... Переноси все на сервер, иначе не синхронизированно! Link to comment
DEVEK Posted November 6, 2012 Author Share Posted November 6, 2012 А ты еще и на клиенте это делаешь? Мдаа... Переноси все на сервер, иначе не синхронизированно! Спасибо за замечание! Может подскажите как лучше сделать это? Link to comment
Flaker Posted November 6, 2012 Share Posted November 6, 2012 Берешь значит копыта горного козла, берешь золу из вулкана Иэттунуп, далее сырые косточки мятого женьшеня, голову отравленного кита, хобот морской коровы, расплавленное золото из сундука капитана черной жемчужины, орошаешь все это вровью убитой девственници, теперь перемешиваем, кипятим на медленном огне температурой около 8к градусов, в медном тазу... И опана, спустя 18 лет, ты готов испробовать этот божественный скрипт! P.S. Ну а если по теме просто в meta.xml указываешь какой файл серверный, а какой клиентский: Всю серверную часть пишешь в файлах сервера, а клиентскую в файлах клиента! Link to comment
DEVEK Posted November 7, 2012 Author Share Posted November 7, 2012 Берешь значит копыта горного козла, берешь золу из вулкана Иэттунуп, далее сырые косточки мятого женьшеня, голову отравленного кита, хобот морской коровы, расплавленное золото из сундука капитана черной жемчужины, орошаешь все это вровью убитой девственници, теперь перемешиваем, кипятим на медленном огне температурой около 8к градусов, в медном тазу... И опана, спустя 18 лет, ты готов испробовать этот божественный скрипт!P.S. Ну а если по теме просто в meta.xml указываешь какой файл серверный, а какой клиентский: Всю серверную часть пишешь в файлах сервера, а клиентскую в файлах клиента! Спасибо! "Затупил"... Перене.! Все в "синхре"! Кстати потому и не работал скрипт, что запускался на клиенте... Спасибо всем за помощь! С уважением, Дмитрий. Link to comment
Flaker Posted November 7, 2012 Share Posted November 7, 2012 Пожалуйста, Дмитрий! йу а велкам Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now