Arisu Posted March 20, 2011 Share Posted March 20, 2011 теперь вот еще какая проблема. у меня есть координаты машины (x, y, z) и ее вращения (x, y, z). Нужно запустить ракету от машины, чтобы она летела строго вперед. С параметрами функции createProjectile разобраться не могу, всё что могу получить от ракеты через getElementVelocity, getElementRotation от ракеты, запущенной из базуки - тоже ни о чем не говорит. какие-то вообще несвязные числа. Link to comment
MX_Master Posted March 20, 2011 Share Posted March 20, 2011 А из какой точки относительно транспорта будет вылетать ракета? из бампера, с крыши? Если точка будет внутри транспорта, то ничего не вылетит, я к этому клоню. Допустим rotX, rotY, rotZ это углы транспорта. Параметры velX, velY, velZ этой функции нужно пропорционально связать с углами транспорта. Чтобы пустить ракету по направлению транспорта, у velY значение должно быть чуть больше. local velX, velY, velZ = rotZ / 720, rotY / 720 + 0.1, rotZ / 720 но это теоритически Углы наклона ракеты могут совпадать с rotX, rotY, rotZ транспорта, а могут и не совпадать. Ради теста можно просто подставить их. В любом случае, еси не подходят, то там минимальная поправка. Точка старта ракеты - для теста мона взять просто над транспортом в паре метров. Силу вылета можно поставить средней, например 1. -- vehicle это какой-то транспорт -- узнаем данные транспорта local posX, posY, posZ = getElementPosition(vehicle) local rotX, rotY, rotZ = getElementRotation(vehicle) -- флаг: выпущена ракета или нет (для теста) local launched = false -- запустим только если данные транспорта корректны if posX and rotX then -- начальная скорость ракеты local velX, velY, velZ = rotZ/720, rotY/720 + 0.1, rotZ/720 launched = createProjectile( -- запускаем ракету getLocalPlayer(), -- источник будет - локальный игрок, т.е. ракета будет синхрится для всех 19, -- простая ракета posX, posY, posZ + 2, -- точка старта в паре метров выше 1, -- сила вылета при старте nil, -- цели у ракеты нет, куда уж попадет, туда попадет rotX, rotY, rotZ, -- углы ракеты velX, velY, velZ -- начальная скорость ракеты ) end outputChatBox( 'Ракета выпущена: ' .. tostring(launched) ) это все просто теория моя (: Link to comment
Arisu Posted March 23, 2011 Author Share Posted March 23, 2011 Сделал. Ракеты летят рандомно, всё равно. То закручиваются, то разворачиваются и ударяют в себя, то еще чо-нибудь. Позовите в эту тему лила тоади пожалуйста, уж он то точно должен знать? Link to comment
MX_Master Posted March 23, 2011 Share Posted March 23, 2011 моск размяк и провести свои тесты не решаешься? )) ну ты ваще даешь Link to comment
Easterdie Posted March 23, 2011 Share Posted March 23, 2011 ракеты вылетают там где надо, но при этом, о чудо, они летят по замысловатой траектории, по самым невразумительным дугам, которые тока можно придумать, дважды я умудрился закрутить ракету над своей машиной, из которой и вылетала ракета. я так понимаю хома делал не одну попытку релиза этой ерунды и по моим и по своим соображениям, но ничего не вышло, кроме описанного выше дугообразного рандома. Link to comment
MX_Master Posted March 23, 2011 Share Posted March 23, 2011 я же сказал, что углы для функции - могут не совпадать с углам для транспорта по желанию некоторые параметры ставьте в 0 и потом проверяйте эффект. По моему это самое интересное занятие - проверять куда полетит ракета )) 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