Дед Опубликовано: 4 апреля 2005 Опубликовано: 4 апреля 2005 Про глушитель: function bool LoadAmmo(int ammoNum) { local class<Ammo> newAmmoClass; local Ammo newAmmo; local Pawn P; if ((ammoNum < 0) || (ammoNum > 2)) return false; p = Pawn(Owner); if (P == None) return false; newAmmoClass = AmmoNames[ammoNum]; if (newAmmoClass !=None) { if (newAmmoClass !=AmmoName) { newAmmo = Ammo(P.FindInventoryType(newAmmoClass)); if (newAmmo == None) { P.ClientMessage(Sprintf(msgOutOf, newAmmoClass.Default.ItemName)); return False; } if (NewAmmo !=None) if (NewAmmo.IsA('RAmmo556mm')) { shakemag = Default.shakemag; if (bHasSilencer) { bHasMuzzleFlash = False; NoiseLevel = 0.4; FireSound = Sound'Game.Weapons.MP5FireSil'; } else { bHasMuzzleFlash = True; NoiseLevel = Default.NoiseLevel; FireSound = Sound'Game.Weapons.MP5Fire'; } EnemyEffective = Default.EnemyEffective; HitDamage = Default.HitDamage; } else if (NewAmmo !=None) if (NewAmmo.IsA('RAmmo556mmJHP')) { shakemag = 350.000000; if (bHasSilencer) { NoiseLevel = 1.0; FireSound = Sound'Game.Weapons.MP5FireSil'; } else { NoiseLevel = 2.0; FireSound = Sound'Game.Weapons.MP5Fire2'; } HitDamage = 4; EnemyEffective = ENMEFF_Organic; } AmmoName = newAmmoClass; AmmoType = newAmmo; if (DeusExPlayer(P) !=None) DeusExPlayer(P).UpdateBeltText(Self); ReloadAmmo(); P.ClientMessage(Sprintf(msgNowHas, ItemName, newAmmoClass.Default.ItemName)); return True; } else { P.ClientMessage(Sprintf(msgNowHas, ItemName, newAmmoClass.Default.ItemName)); } } return False; } Это функция работы с патронами в 2027. При использовании разного вида патронов она меняет повреждение, а также уровень шума при стрельбе. Модифицируй.Правда это только тестовый вариант. Я ещё не проводил испытания на правильную работу. В частности у меня есть сомнения что она правильно работает при разных уровнях навыка. Надо смотреть. Если не через труп, то можно поискать - где там перед спавниваем трупа делается destroy() и вставить код туда.Для того чтобы опыт за контуженных не давали, надо проверять флаг, за это свойство отвечающий.
Forevener Опубликовано: 4 апреля 2005 Автор Опубликовано: 4 апреля 2005 Хм, модифицировать это сложно. Лучше пройти путь от weaponmodsilencer до deusexweapon.Так, конкретный вопрос. Сделал я Ammo12mm, текстуру в паке inXtremeItems, набрал skin=texture'inXtremeItems.Ammo12mmTex' (с названиями всё правильно), а при спавне текстура обычная (10мм). Самое интересное, в эдиторе нажимаю Ammp12mm properties..., выбираю там пункт skin, ввожу эту строку, и всё становится хорошо. Где-то надо текстурный пак загружать что ли? В каком-нибудь ini или в настройках уровня?С контуженными разобрался. Там if (carc.bNotDead && carc.KillerBindName=="JCDenton")...Но всё же, в моих скриптах убийца проверяется через труп [KillerBindName], а нужно чтобы в самом ScriptedPawn.Я про логи игрока, куда добавляются все сообщения, а не про технический лог.
Дед Опубликовано: 4 апреля 2005 Опубликовано: 4 апреля 2005 Через скрипт веапонмода ты нифига приличного не сделаешь. Способ выше - самый оптимальный и простой. В лог игрока без появления на экране не добавить. Если это utx пак, то конечно надо. Это u паки сами загружаюццо. Юзай: #exec OBJ LOAD FILE=Name Суй это в начало скрипта, между объявлением переменных и именем класса.
wild.child Опубликовано: 4 апреля 2005 Опубликовано: 4 апреля 2005 нифигасебе / ну вы крутые :?: я нифига из этих кодов не понял !!! :?:
Forevener Опубликовано: 4 апреля 2005 Автор Опубликовано: 4 апреля 2005 2WildchildДедЪ крутой. А я учусь. Играй в inXtreme 0.97, пока 2027 не вышел. Хотя нет, не надо. Я скоро начну карты выкладывать и iX 0.98. 2ДедЪДа-а-а... как я мог про #exec забыть... я ж его столько раз видел... А [skin=...] правильно?
Дед Опубликовано: 4 апреля 2005 Опубликовано: 4 апреля 2005 А [skin=...] правильно?Ну если в эдиторе работает - значит правильно. Только я вот не помню моделек патронов где skin юзался... Дедъ не крутой, Дедъ - 1337 н00б.
wild.child Опубликовано: 4 апреля 2005 Опубликовано: 4 апреля 2005 2 Ded :?: :?: :?: thanks *знаешь за чего* =)) псиб псиб псиб / *пожимая руку* ну пасибо друган =) я тебе за это ченибуть состругаю =) проси че хочешь (сигнатуру / рожу или ченить еще)
Forevener Опубликовано: 5 апреля 2005 Автор Опубликовано: 5 апреля 2005 Так-с. Как в Эдиторе поворачивать? А то у меня должны в одном месте люди стоять и смотреть (прикрывать друг друга), а повернуть их не получается. Так и смотрят друг на друга, и их батоном можно вырубить.
Дед Опубликовано: 5 апреля 2005 Опубликовано: 5 апреля 2005 Так-с. Как в Эдиторе поворачивать? А то у меня должны в одном месте люди стоять и смотреть (прикрывать друг друга), а повернуть их не получается. Так и смотрят друг на друга, и их батоном можно вырубить.Шыфт и левой мышко тянуть.
Forevener Опубликовано: 5 апреля 2005 Автор Опубликовано: 5 апреля 2005 Шифт - это перемещать. У Зондера в Туториале написано, что вращение - это Alt. У меня ничего не вращается при зажатом Alt'е. Только у brush крестик двигается, а у моделей ничего не происходит.
Дед Опубликовано: 5 апреля 2005 Опубликовано: 5 апреля 2005 Шифт - это перемещать. У Зондера в Туториале написано, что вращение - это Alt. У меня ничего не вращается при зажатом Alt'е. Только у brush крестик двигается, а у моделей ничего не происходит.Хз, какая кнопка, у меня за её нажатием только спинной москъ следит.Ну тогда юзай с контролом инструмент вращения (по значку узнаеш думаю).
Forevener Опубликовано: 5 апреля 2005 Автор Опубликовано: 5 апреля 2005 Оказывается, что нужны всё-таки другие экраны, а я-то только в Perspective был. Ладно, с этим разобрались.Создал я иконку оружия для HUD, на фиолетовом фоне. А в игре она не прозрачная. Что делать? Вроде бы в UnrealEd я указал, что она "Transparent".
Дед Опубликовано: 6 апреля 2005 Опубликовано: 6 апреля 2005 Оказывается, что нужны всё-таки другие экраны, а я-то только в Perspective был. Ладно, с этим разобрались.Создал я иконку оружия для HUD, на фиолетовом фоне. А в игре она не прозрачная. Что делать? Вроде бы в UnrealEd я указал, что она "Transparent".Цвет фона должен быть самым последним в палитре цветов данного файла. Юзаем фотошоп.При импорте текстуры нужно указать что они bMasked. Если импорт через эдитор - там такая опция есть. Если через скрипты, делаем так: #exec TEXTURE IMPORT FILE="TexturesIconsLargeIcon3006.pcx" NAME="LargeIcon3006" GROUP="Icons" FLAGS=2 FLAGS=2 - это и есть bMasked. Transparent - это совсем не то, это простая прозрачность.
Forevener Опубликовано: 6 апреля 2005 Автор Опубликовано: 6 апреля 2005 Угу. А ты можешь сказать точные настройки R:G:B: или HEX этого самого последнего в палитре цвета? И класть этот цвет надо при режиме Indexed Color или RGB Color? И ещё - как в скриптах между операциями пропустить 0.1 секунды?
Дед Опубликовано: 6 апреля 2005 Опубликовано: 6 апреля 2005 Угу. А ты можешь сказать точные настройки R:G:B: или HEX этого самого последнего в палитре цвета? И класть этот цвет надо при режиме Indexed Color или RGB Color? И ещё - как в скриптах между операциями пропустить 0.1 секунды?Текстуры - они все в index, иначе ересь будет.В RGB палитры нет по определению.Сам последний цвет неважен, главное что ОН был последним. Юзай tick и его deltatime.Ещё если в state'ах, то можно юзать sleep(X); (X - float-значение секунды)
Zzz Опубликовано: 6 апреля 2005 Опубликовано: 6 апреля 2005 Угу. А ты можешь сказать точные настройки R:G:B: или HEX этого самого последнего в палитре цвета? И класть этот цвет надо при режиме Indexed Color или RGB Color?Я делал так: в RGB делаешь все то что должно быть прозрачным прозрачным, а потом переводишь в Indexed режим (256 цветный который). После этого последний цвет (прозрачный) и будет последним в палитре.File>Save As>BMP или PCX. Импортируешь и любуешься на свою тексу =)
Forevener Опубликовано: 7 апреля 2005 Автор Опубликовано: 7 апреля 2005 Да где эта палитра? Как называется вообще это окно? Где этот последний цвет? И ДедЪ, я совсем не понял, как делать таймер. Ты напиши мне пожалуйста пример кода, где просто пропускается одна секунда.
Zzz Опубликовано: 7 апреля 2005 Опубликовано: 7 апреля 2005 При режиме Indexed, становится доступным пункт pallette (там же). Но если делать как описал я, то заглядывать в палитру даже не приходится.
Дед Опубликовано: 7 апреля 2005 Опубликовано: 7 апреля 2005 state ActivateCamo { Begin: CloackUp(); Sleep(1.0); CloackDown(); Sleep(1.0); } Или так: simulated function Timer() { PlaySound(ThunderSound,,255,True,1000000,); SetTimer(1.0,False); }
Forevener Опубликовано: 12 апреля 2005 Автор Опубликовано: 12 апреля 2005 Ух ты, смотрите-ка:AreaOfEffect убран. Переделан в SlugsPerShot, ProjectilesPerShot. Удобней?Для weaponpistolm (12мм пистолет) в DeusExWeapon добавлено несколько строчек, отвечающих за тип урона при смене боеприпасов. Там же я обнаружил то, что очень просто сделать ухудшение характеристик при установке глушителя.Если мне кто-нибудь расскажет, как самому переделать движение камеры в dx.dx, сделаю его красивым.
Forevener Опубликовано: 13 апреля 2005 Автор Опубликовано: 13 апреля 2005 Хм. Сделал скилл. В начале игры его видно (он сверху), скилл плавания видно слегка, а скроллера нет. Как добавить? И желательно в нормальное окно?И как заставлять работать InterpolationPoint (самому)?
Дед Опубликовано: 13 апреля 2005 Опубликовано: 13 апреля 2005 Я с окном скиллов очень долго парился. Окно со скроллингом - это совсем другое. Просто так не сделать, нужно много со скриптами ковыряццо.Проблему решил перерисовкой окна скиллов. Про ip есть очень хороший тутор на сайте Стива Така.
Zzz Опубликовано: 13 апреля 2005 Опубликовано: 13 апреля 2005 И как заставлять работать InterpolationPoint (самому)?Может быть прблема в том что номер миссии не "-2"... там где-то в deusexplayer т.н. "hack for cutscenes" таким образом сделали, кажтся :mrgreen:
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВойти
Уже зарегистрированы? Войдите здесь.
Войти сейчас