[Ссылки могут видеть только зарегистрированные пользователи. ]
Добрый день пользователи zhyk.ru
Сейчас я вам расскажу как добавить функцию "Visual Menu Edition" в WallHack.
Что же она делает? Она изменяет оформление меню (шрифт,цвет чего угодно, цвет фона и т.д)
Готовой функции не даю (т.к у всех будет совсем разные переменные да и исходники у многих разные, одни используют Трололо2 , а другие PHC D3D Menu а третьи другой и все они разные.)
Сначала думаем что мы хотим изменять. Одни выберут фон, другие шрифт и т.д
А я расскажу как все изменить.
Как всегда делаем переменные:
Код:
int fontedition;
int curedition;
int drawboxedition;
int colortextedition;
int wtf2;
и т.д (У кого фантазия большая)
И так, перед следующими действиями вы должны научиться ориентироваться в исходнике (т.е где курсор, где текст при активации функции и т.д)
Пример приведу только для одного исходника, это Трололо2 (т.к для всех исходников нету времени и желания этого делать.)
Думаю вы должны на одном примере сообразить что к чему.
Вот функция MenuShow (Здесь собраны все везуальные части исходника):
Код:
void MenuShow(float x, float y, LPDIRECT3DDEVICE9 pDevice)
{
int i, val;
DWORD color;
char text[100];
if (!Mvisible) return;
for (i=0; i<Mmax; i++)
{
val=(MENU[i]->var)?(*MENU[i]->var):0;
sprintf(text, "%s", MENU[i]->txt);
if (i==Mpos)
{
color=MCOLOR_CURRENT; //!!!!!!!!!!!!! Цвет текста - эффект курсора (Изменяет цвет текста - эффект курсора)
sprintf(text, "-- %s", MENU[i]->txt);
}
else if (MENU[i]->typ==MENUFOLDER)
color=MCOLOR_FOLDER; //!!!!!!!!!!!!! Цвет названия папки ()
else if (MENU[i]->typ==MENUTEXT)
color=MCOLOR_TEXT; //!!!!!!!!!!!!!! Цвет текста (Просто название функций и т.д)
else
color=(val)?MCOLOR_ACTIVE:MCOLOR_INACTIVE; //!!!!!!!!! Цвет текста, когда пункт активный или неактивный.
if (MENU[i]->opt)
{
if (MENU[i]->typ==MENUFOLDER)
{
DrawTextL(x+3, y, color,text); //Отвечает за смещение при активном
y = y + 2;
}else{
DrawTextL(x+3, y, color,text);
}
}
if (MENU[i]->opt)
{
if (MENU[i]->typ==MENUTEXT)
DrawTextR((x+Mxofs), y, color,(char *)MENU[i]->opt);
else
DrawTextR((x+Mxofs), y, color,(char *)MENU[i]->opt[val]);
}
y+=Mysize;
}
}
Вы должны понять где именно то,что хотите изменить (Это можно сделать как цветом (т.е вы знаете что в исходе (Например) цвет текста пишется COLOR_TEXT, а так же его программное значение имеет (Например Белый цвет), то вы сможете найти тот участок, где он используется и для чего.))
Допустим вы нашли эту часть, где находится то что вам надо.
Как сделать так, что бы при активации пункта в меню оно изменялось на допустим Красный,Желтый,Зеленый и т.д (Это только пример).
Возьму пример (В том же Трололо2) цвет папки.
Вот если вы хотите делать именно такое изменение, то делайте так:
Код:
void MenuShow(float x, float y, LPDIRECT3DDEVICE9 pDevice)
{
int i, val;
DWORD color;
char text[100];
if (!Mvisible) return;
for (i=0; i<Mmax; i++)
{
val=(MENU[i]->var)?(*MENU[i]->var):0;
sprintf(text, "%s", MENU[i]->txt);
if (i==Mpos)
{
color=MCOLOR_CURRENT;
sprintf(text, "-- %s", MENU[i]->txt);
}
else if (MENU[i]->typ==MENUFOLDER)
//======================= ЗДЕСЬ ===================//
// color=MCOLOR_FOLDER; - оригинальное состояние.
if(colortextedition==0)
color=MCOLOR_FOLDER; //Это в выключенно состоянии.
else if(colortextedition==1)color=RED;
else if(colortextedition==2)color=YELLOW;
else if(colortextedition==3)color=GREEN;
else if(colortextedition==4)color=BLUE;
else if(colortextedition==5)color=BROWN; //и т.д (Насколько фантазии хватит.)
//================================================//
else if (MENU[i]->typ==MENUTEXT)
color=MCOLOR_TEXT;
else
color=(val)?MCOLOR_ACTIVE:MCOLOR_INACTIVE;
if (MENU[i]->opt)
{
if (MENU[i]->typ==MENUFOLDER)
{
DrawTextL(x+3, y, color,text);
y = y + 2;
}else{
DrawTextL(x+3, y, color,text);
}
}
if (MENU[i]->opt)
{
if (MENU[i]->typ==MENUTEXT)
DrawTextR((x+Mxofs), y, color,(char *)MENU[i]->opt);
else
DrawTextR((x+Mxofs), y, color,(char *)MENU[i]->opt[val]);
}
y+=Mysize;
}
}
Так же можно сделать со всем.
Теперь делаем управление через меню
Что за бред? Зачем это нужно? Тупо лишний код. Я думаю пользователь не будет каждый раз всё прописывать... Ну сохранение настроек написал бы в придачу!
Что за бред? Зачем это нужно? Тупо лишний код. Я думаю пользователь не будет каждый раз всё прописывать... Ну сохранение настроек написал бы в придачу!
Я предоставил Гайд в целях развития пользователей.К тому же прикольная шняга получается
Это уже будет их проблеммой, что они не будут. Это раздел "Разработка ПО", а не нажми ф5
Они должны сами все делать.
Не понял про сохранения!?
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Парни предлагаю создать раздел по ПО урокам програмирования. Это будет я думаю весма уместно на этом форуме, Да и потом я думаю тут есть люди которое могуть поделиться своими знаниями и достижениями.Как вы считаете????Простите конечно за флуд в теме не по теме.Приношу извинения...
Парни предлагаю создать раздел по ПО урокам програмирования. Это будет я думаю весма уместно на этом форуме, Да и потом я думаю тут есть люди которое могуть поделиться своими знаниями и достижениями.Как вы считаете????Простите конечно за флуд в теме не по теме.Приношу извинения...
а чем этот раздел не подходит? Вы что думаете, что здесь должны давать только готовые функции и рабочие исходы вх ?? Раздел называется "Разработка ПО", а значит здесь создают темы с разработкой ПО.
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
overlord_10, круто довно искал ))
для более не понятливых можно изменьть цвета боксов в меню по шелчку
Наконец поняли
Таким образом можно менять не только "Цвет", но и шрифт, Размер шрифта, потожение текста, цвет текста, цвет линий, цвет фона, цвет курсора, цвет активированной функции и т.д
короче можно все сделать.. Если кому надо, могу потом сделать уже готовый исходник, в котором это все будет..
Просто скоро я мб в паблик выложу 1 норм исход
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).