Пятница, 29.03.2024, 12:06
Приветствую Вас Guest | RSS
Главная страница | Статьи | Регистрация | Вход
Меню сайта

Случайный рисунок

Категории каталога
Туториалы по маппингу (HL2) [68]
Туториалы по маппингу для Half-Life
Туториалы по текстурированию (HL2) [10]
Туторы по текстурированию для Half-Life
Туториалы по моделированию (HL2) [9]
Туторы по моделированию для Half-Life
Туториалы по программированию (HL2) [53]
Туторы по прагроммированию для Half-life
Другие туториалы (HL1 и HL2) [4]
Туторы которые не вошли в другие категории
Half-Life 2 Beta [1]
Статьи о npc и weapon в бете Half-Life 2, а так же мануалы и FAQ.
Туториалы по маппингу (HL1) [14]
Туторы по маппингу для Half-Life 1
Туториалы по текстурированию (HL1) [1]
Туторы по текстурированию для Half-Life 1
Туториалы по моделированию (HL1) [1]
Туторы по моделированию для Half-Life 1
Туториалы по программированию (HL1) [30]
Туторы по программированию для Half-Life 1

Наш опрос
Приводить ли сайт в чувство?
Всего ответов: 735

Начало » Статьи » Туториалы по программированию (HL2)

AlyxGun
Итак приступим:

Я думаю вы знаете, что если АликсГан попробовать подобрать, то он не возьмётся. Исправим это. Откройте weapon_alyxgun.h и найдите

virtual void SetPickupTouch( void )
{
// Alyx gun cannot be picked up
SetTouch(NULL);
}

Закаменте это. Можно компилить, но чего-то не хватает. Чего? Правильно! Патронов и импульса 101.

Итак откройте item_ammo.cpp и найдите

LINK_ENTITY_TO_CLASS(item_ar2_grenade, CItem_AR2_Grenade);
LINK_ENTITY_TO_CLASS(item_ammo_smg1_grenade, CItem_AR2_Grenade);

После добавьте это:

// ========================================================================
// >> AlyxGun Ammo
// ========================================================================
#define SIZE_AMMO_ALYXGUN 30

class CItem_AlyxGun : public CItem
{
public:
DECLARE_CLASS( CItem_AlyxGun, CItem );

void Spawn( void )
{
Precache( );
SetModel( "models/items/boxsrounds.mdl");
BaseClass::Spawn( );
}
void Precache( void )
{
PrecacheModel ("models/items/boxsrounds.mdl");
}
bool MyTouch( CBasePlayer *pPlayer )
{
if (ITEM_GiveAmmo( pPlayer, SIZE_AMMO_ALYXGUN, "AlyxGun"))
{
if ( g_pGameRules->ItemShouldRespawn( this ) == GR_ITEM_RESPAWN_NO )
{
UTIL_Remove(this);
}
return true;
}
return false;
}
};
LINK_ENTITY_TO_CLASS(item_box_AlyxGun, CItem_AlyxGun);
LINK_ENTITY_TO_CLASS(item_ammo_alyxgun, CItem_AlyxGun);

Теперь перейдём к импульсу. Откройте player.cpp и найдите строку case 101. Это и есть импульс 101. Можете поиграться со значениями, но мы добавим после

GiveAmmo( 16, "XBowBolt" );

это:

GiveAmmo( 150, "AlyxGun" );

А потом после

GiveNamedItem( "weapon_crossbow" );

это:

GiveNamedItem( "weapon_alyxgun" );

Всё. Можно компилить! Модельку возьмите из SMod'a.

Теперь немного поправим скрипты:
Откройте weapon_alyxgun.txt и впишите это:

// Alyx Gun

WeaponData
{
// Weapon data is loaded by both the Game and Client DLLs.
"printname" "AlyxGun" //название, можно изменить
"viewmodel" "models/weapons/v_AlyxGun.mdl" //Моделька в руках из СМода
"playermodel" "models/weapons/W_Alyx_Gun.mdl"
"anim_prefix" "alyxgun"
"bucket" "1"
"bucket_position" "2"

"clip_size" "30"
"clip2_size" "-1"

"default_clip" "30"
"default_clip2" "-1"

"primary_ammo" "AlyxGun"

"weight" "2"
"item_flags" "0"

// Sounds for the weapon. There is a max of 16 sounds per category (i.e. max 16 "single_shot" sounds)
SoundData
{

"reload" "Weapon_Pistol.Reload"
"reload_npc" "Weapon_Pistol.NPC_Reload"
"empty" "Weapon_Pistol.Empty"
"single_shot" "Weapon_Pistol.Single"
"single_shot_npc" "Weapon_Pistol.NPC_Single"
"special1" "Weapon_Pistol.Special1"
"special2" "Weapon_Pistol.Special2"
"burst" "Weapon_Pistol.Burst"
}

// Weapon Sprite data is loaded by the Client DLL.
TextureData
{
"weapon"
{
"font" "WeaponIcons"
"character" "d"
}
"weapon_s"
{
"font" "WeaponIconsSelected"
"character" "d"
}
"ammo"
{
"file" "sprites/a_icons1"
"x" "55"
"y" "60"
"width" "73"
"height" "15"
}
"crosshair"
{
"file" "sprites/crosshairs"
"x" "0"
"y" "48"
"width" "24"
"height" "24"
}
"autoaim"
{
"file" "sprites/crosshairs"
"x" "0"
"y" "48"
"width" "24"
"height" "24"
}
}
}

Всё. Туториал был написан мною. Короче йа рулю X)

Категория: Туториалы по программированию (HL2) | Добавил: Strider (16.05.2009) | Автор: Strider
Просмотров: 2130 | Комментарии: 10 | Рейтинг: 3.8 |

Всего комментариев: 10
10 Hitmen  
0
Однако в моде Obsedian Conflict анимация и код есть. happy

8 Hitmen  
0
Страйдер молодец, архив - фигня, если честно, т.к. аликсган нужно кодить, это насамом деле ещё не все причуды пистолетика. Недавно копался в анимации и нашёл фигню, где alyxgun разбирается в ручной автомат. biggrin biggrin biggrin
Если аликсган частично восстановлен, то может будет возможно восстановить анимацию? =)

Я смотрел у модели: W_Alyx_Gun.mdl smile


9 Strider  
0
Про автомат знаю, и даже про винтовку) Но сделать это, по моему не реально)

7 AlexGordon  
0
Тут все проще, скачайте этот архив - http://alexgordon.ucoz.ru/1.rar
И распихайте все по папкам.
Далее, разместите на вашей карте Weapon_Alyxgun черз ентети, и все, как вы его подбираете - у вас аликсган с двумя режимами стрельбы, но со звуками пистолета. Никакого коддинга!

6 Frest  
0
молодец, кстати насчет двух видов стрельбы все знают ))

5 Strider  
0
Детлер, переактивируй плз)

4 Strider  
0
Вообще звуки от пистолета подходят. Кстати есть одна неизвестная особенность! 2 режима стрельбы!

3 NeoGame_12  
0
не обязательно ведь в скрипте снизу написано о звуках пистолета:

"reload" "Weapon_Pistol.Reload"
"reload_npc" "Weapon_Pistol.NPC_Reload"
"empty" "Weapon_Pistol.Empty"
"single_shot" "Weapon_Pistol.Single"
"single_shot_npc" "Weapon_Pistol.NPC_Single"
"special1" "Weapon_Pistol.Special1"
"special2" "Weapon_Pistol.Special2"
"burst" "Weapon_Pistol.Burst"

и необязательно было что делать с длл фигнёй, просто в папке scripts найти файл weapon_alyxgun.txt и заменить:

"viewmodel" "models/weapons/w_alyx_gun.mdl"

на

"viewmodel" "ВАША МОДЕЛЬ"

там где написано ваша модель надо поставить путь к модели от первого лица,кстати насчет "primary_ammo" "AlyxGun" там где AlyxGun можно поставить просто Pistol или 357 ну короче понятно.А вобще тутор хороший.


2 DetLeR  
1
Это конечно все хорошо, но ты забыл написать про добовление звуков в скрипт game_sounds_weapons.txt

1 OlegS  
1
молодец smile

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Кто в Онлайн

Друзья сайта

Баннеры

  Сайт CrazyArts   Black   Сообщество сайтов о Half-Life   Самый   Только   Все   hl2 top 100     Rambler's Top100  

игры
игры

  Каталог сайтов Планета Топ 100 - Planet Top 100       ТОП ЛУЧШИХ ИГРОВЫХ САЙТОВ           Detroit Team Site :: Моды от Detroit Team, видео, новости.   Naruto-kun[Звезда Наруто]  


The idea of dising: Homie7