[Ссылки могут видеть только зарегистрированные пользователи. ]
Всем привет
Был не уверен насчет правильного раздела (но все таки выло здесь )
Сегодня я вас найчу добавлять функцию "прицел из спрайтов" в ваш ВХ..
Сейчас я вам покажу на 1 примере (данный прицел из спрайтов есть в моем ВХ) под номером 1
Вот как он будет выглядеть в игре скрин
Начинаем:
Открываем файл cMain.cpp (ну или главный файл любого другого исхода)
Листаем до строчки
if(spritehair==1)
{
/*
Делаем прицел из спрайтов
*/
DWORD WidthH = 100;//ширина спрайта (картинки) прицела (если это не делать, то прицел будет растягиваться или сжиматься)
DWORD HeightH = 60;//высота спрайта (картинки) прицела (если это не делать, то прицел будет растягиваться или сжиматься)
DWORD Xfactor = 18; //Это х фактор (возможно центр (перекретие) прицела находится не точно в центре спрайта, уменьшаем или увеличиваем.
DWORD CentrX = Viewport.Width / 2 - (WidthH / 2) +1; //здесь ничего не изменяем.. Это для нахождения центра экрана и центра спрайта
DWORD CentrY = Viewport.Height / 2 - (HeightH / 2); //здесь ничего не изменяем.. Это для нахождения центра экрана и центра спрайта
//+|+++++++++++++++++++++++++++++НЕ МЕНЯЕМ+++++++++++++++++++++++++++++++++++++++++|
phair.x=CentrX; phair.y=CentrY+Xfactor; phair.z=0.0f;// ничего не меняем +++|
// | +++|
if(txhair == NULL)D3DXCreateTextureFromFileInMemoryEx(pDevice// а то могут +++|
,&_chair,sizeof(_chair),WidthH,HeightH,D3DX_DEFAULT,0,D3DFMT_UNKNOWN// +++|
,D3DPOOL_MANAGED,D3DX_DEFAULT,D3DX_DEFAULT,0,NULL,NULL,&txhair);// быть +++|
if(sphair == NULL)D3DXCreateSprite(pDevice, &sphair);// ошибки +++|
// | +++|
sphair->Begin(D3DXSPRITE_ALPHABLEND);// +++|
sphair->Draw(txhair,0,0,&phair,0xFFFFFFFF);// +++|
sphair->End();// +++|
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++|
}
Рядом вставляем код:
Код:
if(ekran)
{
pDevice->GetViewport(&Viewport);
}
Теперь нужно зайти в файл cOptions.h удалить вот это скрин
Потом рядом с каждой переменной вставляем
Код:
int функция=0; //стандартное состояние (нужно активировать в меню)
int функция=1; //автоматически активируется при активации меню
Вставляем в файле cOptions.h
Код:
int ekran=1; //автоматически вкл
Теперь открываем файл cMain.h и нажимаем Ctrl+F нажимаем и делаем как на скрине
Делаем все так же только с "cCat."
Ну вроде в этом коде вам ничего не нужно больше делать...
Переходим в файл cMain.h (или в другой файл, в зависимости от исхода)
где "hair" - название спрайта (поймете в следующем действии)
Переходим в файл cSprites.h
Перед строчкой
Код:
#endif
Вставляем код:
Код:
BYTE _chair[] = {0x00};
где "hair" - название спрайта
Теперь заменяем вот это "0x00" на то что будет в этом файле ссылка
Ну а теперь осталось только добавить в меню:
Открываем файл cOptions.h и вписываем код:
Код:
int spritehair;
Открываем файл cMain.h и вписываем в меню вот этот код:
Код:
warl0ck->AddItem(" Прицел из спрайтов",optcrosshair,&cItem.spritehair,2);
или
Код:
Dimedrol1536->AddItem(" Прицел из спрайтов",optcrosshair,&cItem.spritehair,2);
Вот файл с байтами 1 прицела [Ссылки могут видеть только зарегистрированные пользователи. ]
Вот так он будет выглядеть в игре
//++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++//
Вот еще несколько вариантов прицела , но для них уже нужно будет вам самим искать правильные цифры
2. [Ссылки могут видеть только зарегистрированные пользователи. ]
3. [Ссылки могут видеть только зарегистрированные пользователи. ]
Если будите сами делать прицел из спрайтов, то вам понадобятся еще:
-Программа для перевода картинок в байты ([Ссылки могут видеть только зарегистрированные пользователи. ])
-D3D_tester , что бы проверять (с первого раза может не получится) ([Ссылки могут видеть только зарегистрированные пользователи. ])
-Adobe Photoshop, для рисования спрайтов прицела (но помните, нужно всегда сохранять спрайт в формате *.png) ([Ссылки могут видеть только зарегистрированные пользователи. ])
/так же можно делат с ником автора. (табличку )
Если будут вопросы, то пишите в ЛС или в скайп overlord_10, или в теме.
[Ссылки могут видеть только зарегистрированные пользователи. ]
________________
Последний раз редактировалось Skilful; 28.12.2011 в 20:14.
overlord_10, Молодец!, Красиво оформил, всё чётко и понятно!
И главное 20 минут заняло все это спс
Цитата:
Сообщение от Terror1st
да, очень даже круто!!! все доходчиво объяснено! спасибо за ценную и главное актуальную тему!!!
Просто уже надоели эти прицелы (в игре) , а те что рисовали ВХ (не очень красивые).. Да еще увидел в одном зарубежном ВХ (от игры варрок ) был прицел из спрайтов , вот я и придумал =)...
Спасибо )
Хотел спросить , какой стандартный прицел в пб по размерам ? ) а то не хочется создать мутанта посреди экрана )
точно уже не помню, но делай:
ширина - 70
высота - 30
а там если не понравится, то делай примерно в таких пропорциях (уменьшай/увеличивая)
Цитата:
Сообщение от ДваЦента
overlord_10, прошу не посчитать за оскорбление, но я нашёл пару ошибок(я думаю это ошибки)
1)
я думаю надо или было, или вылоЖУ
2)
думаю ты хотел что-то вроде "научу"
у тебя в посте под ним ничего не скрывается(ты написал это как обычное слово)
1 вопрос но зачем нужен ещё один прицел ????(сори за флуд)
ну, вот зачем у козла рога? Я тоже не знаю
Причел из спрайтов прикольный ;3 раньше через СЕ делали причелы, которые есть уже в игре, просто на других пухах, а вот с прицелом из спрайтов еще лучше, можно ставить какой хочешь прицел, насколько ты умеешь пользоваться поисковиком гугл , или насколько у тебя больше фантазии и умений в фотошопе..