![]() |
можно...да и раньше можно было собсна вроде как..
а что за обстоятельства то? |
тэкс....посмотрел код, все отлично, спс! :good:
думаю реально надо делать через ету проверку. ибо она рбаотает почти для всех самолетов, кроме некоторых таки как корсар, вилдкет,лайтинг ну и т.п. в общем для них просто пропишу исключения :) |
пока не удается в классе конролс в методе апдейт сделать так, чтобы в нужных условиях не происходил сброс бомбы, а всего лишь перешагивалось на следующую бомбу(чтобы бомба осталась висеть в самолете и при посадке рванула как и положено)
мозг чето совсем не варит...буду еще пробовать... хотелось бы канешно-но можно по старинке, просто в бомболюке... |
Цитата:
Вот только насчет реализма не уверен. Насколько я понимаю, бомба скорее всего все равно вывалилась бы из бомболюка при выходе из пикирования - это раз. Ну а если даже и нет - то с чего бы ей рвануть при посадке, вентилятор-то предохранительный на ней останется, а с ним рванет она разве что случайно. |
Цитата:
в общем за недостатком времени-просто модернизирую свой старый мод на бомбы. а еще сча работаю с парметром setReadyness - чтобы симулировать пробитие винта. сбросил с истра с подфюзюляжного держателя-бац бомба в винт и все, мотор не тянет :) там же как я понимаю надо добавить что то типа строчки setReadyness = Х.Х? или технически намного сложнее сделать чтобы связать подобным образом классы бомбс и мотор? |
Ну из класса FlightModelMain крафта игрока надо вызвать EI.engines[0].setReadyness(actor, fReadyness) где fReadyness - степень нетянутия :) . Сложно или нет зависит от того, есть ли в твоём классе доступ к ФМ игрока. Если из класса Controls, то теоретически (не проверял) вызов должен выглядеть так:
FM.EI.engines[0].setReadyness(FM.actor, fReadyness); |
а через Motor.doSetReadyness( f) низя?(работаю через класс Bomb)
я просто непрограммер, до книжки еще недобрался и не могу понять что значит " non static method connot referndet from static contxt" вернее более менее понятно. они же вроде оба void идут...ищу как ето лечить.... |
Цитата:
Из класса Bomb можно сломать игроку двигатель например так: World.getPlayerFM().EI.engines[0].setReadyness(getOwner(), fReadyness); Тока ты уж не забудь удостовериться, что бомбу игрок бросает (getOwner() == World.getPlayerAircraft()), а то бомбу уронит бот, а двигатель игроку хряпнут :) |
Цитата:
|
Цитата:
по проверке- да она уже была еще в 1й версии мода. там для ботов не рассчитывалось(токо для игрока), ибо они правильно бросают все равно,зачем грузить машину? :) а способ твой работает отлично, спс, уже опробовал. весело :good: Цитата:
зачем так именно так ? :) для всех внешних подвесок-бомба падает но ломает с какойто вероятностью двигатель\винт для всех внутренних- бомба никуда не летит при етом, визуально бомба остаеться внутри :) но при посадке просто не детонирует так как нормальные бомбы(то ли экипаж обезвредил,то ли таки вытолкнули\выпала...).ну и соотвественно исключения. вот такой я вариант делаю... ----- зы: можно сделать запрет на сброс бомбы в пике. ее можно будет сбросить выйди из пике. но для етого надо изменять класс controls, а он часто используеться. поетому мод будет просто очень конфликтным:) |
Sjack подскажи плз а обязательно ли организовывать циклы(как в классе контролс) чтобы юзать строчку
String hookName = FM.CT.Weapons[k][l].getHookName(); просто ведь оружие у нас всегда бомбы( а ето к = 3) а переменную l можно обновлять в конце метода.... ЗЫ: еще параллельна копаю классы с самолетами и оружием завязанные, там тоже должна быть аналогичная по функциональности строчка :) . ---- и ето, тут товарищи с spsialaircraftservice спрашивали мод, который позволяет сбрасывать бомбы по одной-мб ты дооформишь его? :) |
чета я так подумал...иначал работать с классом BombGun - он походу стоит выше по иерархии....
и там уже есть проверка на вунтренний\наружный подвес. и в нем же опять же удалось наладить без циклов команду gethookname... но наладить проверку на расположение не используя цикл пока не удаеться...=/ |
а если быть совсем точным- то редактирую метод protected void interpolateStep()
йес! получилось без циклов :) String hookName = getHookName(); Aircraft craft = ((Aircraft)actor); HierMesh mesh = craft.hierMesh(); int chunkIndex = mesh.hookParentChunk(hookName); mesh.setCurChunk(chunkIndex); String chunkName = mesh.chunkName(); и в етом методе выводит все что нужно для счастья :) |
Текущее время: 21:34. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot