ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   [mod_sa] PulseHealt and read Basic Menu (https://forum.antichat.xyz/showthread.php?t=1300790)

im0rg 11.05.2013 13:34

Всем привет, вот как и обещал делаю урок по редактированию в стандартном меню с помощью "+" и "-"

Перед тем как продолжать читать сначала смотрим тему эту

Ну что ж начнем

Заходим в dumb_menu.cpp

И ищем там вот такую строчку

Код:





Код:

static int menu_callback_cheats ( int op, struct menu_item *item )


И перед ней добавляем

Код:





Код:

static int menu_callback_newcheats ( int op, struct menu_item *item )
{
    int                    mod;
    switch ( op )
    {
    case MENU_OP_ENABLED:
        switch ( item->id )
        {
          case ID_NEWCHEAT_PULSEHEALTH:
          return cheat_state->_generic.pulsehealth;
        }
        break;
 
    case MENU_OP_SELECT:
        switch ( item->id )
        {
            case ID_NEWCHEAT_PULSEHEALTH:
            cheat_state->_generic.pulsehealth ^= 1;
            break;
        }
 
    case MENU_OP_DEC:
    case MENU_OP_INC:
        mod = ( op == MENU_OP_DEC ) ? -1 : 1;
        int max = 30;
        int min = 1;
        if ( item->id == ID_NEWCHEAT_PULSESPEED )
        {
            set.pulsespeed += (int)mod;  // К нашей скорости прибавляем mod ( это и есть + и - )
            menu_item_name_set( item, "Pulse speed: %d", set.pulsespeed );
            if (set.pulsespeed  max)
            {
                set.pulsespeed = min;
            }
            return 1;
        }
    }
    return 0;
}





Теперь добавим ко все define

Код:





Код:

#define ID_NEWCHEAT_PULSEHEALTH                        8923// сама функция
#define ID_NEWCHEAT_PULSESPEED                        8924/// скорость





Теперь добавим ко всем меню

Код:





Код:

menu_item_add( menu_newcheats, NULL ,"PulseHealth", ID_NEWCHEAT_PULSEHEALTH, MENU_COLOR_DEFAULT, NULL );
    snprintf( name, sizeof(name), "Pulse speed: %d", set.pulsespeed );
    menu_item_add( menu_newcheats, NULL, name, ID_NEWCHEAT_PULSESPEED, MENU_COLOR_DEFAULT, NULL );





В cheat.h

Код:





Код:

int    pulsehealth;




В ini.cpp

Код:





Код:

if ( (ent = ini_register_entry("pulsespeed", TYPE_INT)) != NULL )
        ini_register_data( ent, &set.pulsespeed, "4" );





В ini.h

Код:





Код:

int                    pulsespeed;




Ну и сам пульсатор в samp.cpp

Код:





Код:

if(cheat_state->_generic.pulsehealth == 1)
    {
        struct actor_info *self = actor_info_get( ACTOR_SELF, ACTOR_ALIVE );
        static int p = 1;
        static bool pp = false;
        if ( p = 100 ) pp = true;
        }
        else
        {
        p-= set.pulsespeed;
        }
        self->hitpoints = p; //100.0 - ставит хп кол-ва 100
        self->armor = p; //тоже самое, только тут броня
        }
        return;
    }





Автор кода пульсатора Cico за это ставим в его репутацию "+"

С вами был Jesus, урок был сделан по заказу Norma_Cheater

Специально для сайта BlastHack.Net

При копировании указывать источникBlastHack.Net

Norma_Cheater 11.05.2013 14:46

Спс за урок !

im0rg 11.05.2013 15:05

Цитата:

Сообщение от Norma_Cheater

Спс за урок !

Всегда пожалуйста

BaHeK 11.05.2013 15:41

спс за пример нето что мне надо было но переделал как мне надо было и работает лови +:trollface:

Norma_Cheater 17.05.2013 18:25

А как добавить 2 настройку ? я смотрел как устроено в callback_cheats там немного по другому

im0rg 17.05.2013 20:14

Цитата:

Сообщение от Norma_Cheater

А как добавить 2 настройку ? я смотрел как устроено в callback_cheats там немного по другому

Аналогично этой же.

Norma_Cheater 17.05.2013 20:44

case MENU_OP_DEC:

case MENU_OP_INC:

mod = ( op == MENU_OP_DEC ) ? -1 : 1;

int max = 30;

int min = 1;

if ( item->id == ID_NEWCHEAT_PULSESPEED )

{

set.pulsespeed += (int)mod; // К нашей скорости прибавляем mod ( это и есть + и - )

menu_item_name_set( item, "Pulse speed: %d", set.pulsespeed );

if (set.pulsespeed max)

{

set.pulsespeed = min;

}


mod = ( op == MENU_OP_DEC ) ? -1 : 1;

int max = 30;

int min = 1;

if ( item->id == ID_NEWCHEAT_PULSESPEED )

{

set.pulsespeed += (int)mod; // К нашей скорости прибавляем mod ( это и есть + и - )

menu_item_name_set( item, "Pulse speed: %d", set.pulsespeed );

if (set.pulsespeed max)

{

set.pulsespeed = min;

}


return 1;

}

}

return 0;

}


Так?

im0rg 17.05.2013 20:50

Цитата:

Сообщение от Norma_Cheater

case MENU_OP_DEC:
case MENU_OP_INC:
mod = ( op == MENU_OP_DEC ) ? -1 : 1;
int max = 30;
int min = 1;
if ( item->id == ID_NEWCHEAT_PULSESPEED )
{
set.pulsespeed += (int)mod; // К нашей скорости прибавляем mod ( это и есть + и - )
menu_item_name_set( item, "Pulse speed: %d", set.pulsespeed );
if (set.pulsespeed max)
{
set.pulsespeed = min;
}
mod = ( op == MENU_OP_DEC ) ? -1 : 1;
int max = 30;
int min = 1;
if ( item->id == ID_NEWCHEAT_PULSESPEED )
{
set.pulsespeed += (int)mod; // К нашей скорости прибавляем mod ( это и есть + и - )
menu_item_name_set( item, "Pulse speed: %d", set.pulsespeed );
if (set.pulsespeed max)
{
set.pulsespeed = min;
}
return 1;
}
}
return 0;
}
Так?

Я не понял что ты написал, а самое главное что ты хочешь написать

Norma_Cheater 17.05.2013 21:16

как использовать изменение "+" "-" на двух функциях.

im0rg 17.05.2013 21:20

Цитата:

Сообщение от Norma_Cheater

как использовать изменение "+" "-" на двух функциях.

Ааа так бы сразу сказал код правильный тогда вроде


Время: 06:38