Русское сообщество по скриптингу

Деньги в минус  [Решено]

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Деньги в минус  [Решено]

Сообщение Husen » 01 июн 2019, 17:29

Привет)
В чём тут проблема? Когда меньше 5000$ , по сути оно не должно ничего делать а тут наобарот , когда у меня 800$ то мне начисляется 4200.
Код: Выделить всё
#include < amxmodx >
#include < cstrike >
#include < amxmisc >
#include < fakemeta >
#include < dhudmessage >

#define PLUGIN " LOTTERY_NEW "
#define VERSION " 1.0 "
#define AUTHOR " Kulogram "

#define KULO_LOTTERY_TIME    25.0                    /*Таймер в секундах, через сколько выдать деньги после покупки (по умолчанию: 18, потому что музыка идет 18 сек.)*/
#define LOTTERY_COWNDOWN    150.0                    /*Через сколько секунд можно повторно использовать лотерею*/
#define LOTTERY_MAX_MONEY    16000                    /*Максимальный выигрыш, в лотереи (по умолчанию: 16000$)*/
#define LOTTERY_MIN_MONEY    3000                        /*Минимальный выигрыш, в лотереи (по умолчанию: 100$)*/
#define LOTTERY_LVL_MONEY    5000                   /*Стоимость лотереи (по умолчанию: 5000$)*/

new Float:g_lottery_kulo_time33 ]

public 
plugin_init( ) {
    
register_pluginPLUGIN VERSION AUTHOR )
    
register_clcmd"say /lottery" "lottery_csdm" )
}

public 
lottery_csdmid ) { 
{    
    static 
Float:gametimegametime get_gametime( )
    if( 
g_lottery_kulo_timeid ] <= gametime ) {
        if( 
cs_get_user_moneyid ) < LOTTERY_LVL_MONEY )              
        {                                                                               
          
set_hudmessagerandom_num100 255 ) , random_num100 255 ) , random_num100 255 ) , -1.0 0.25 6.0 1.0 )
          
show_hudmessageid "[Steam] Пожалуйста, пополните баланс.^n[Steam] У вас нету денег на счету.")
        }                                            
        
cs_set_user_moneyid cs_get_user_moneyid ) - LOTTERY_LVL_MONEY )
        
set_taskKULO_LOTTERY_TIME "rolleteadd" id )
        
g_lottery_kulo_timeid ] = gametime LOTTERY_COWNDOWN
        
} else
            
set_dhudmessagerandom_num100 255 ) , random_num100 255 ) , random_num100 255 ) , -1.0 0.25 6.0 1.0 )
            
show_dhudmessageid "[Steam] EasyDrop будет доступен через [%...1f сек]"g_lottery_kulo_timeid ] - gametime )

return 
PLUGIN_HANDLED                                                               
}                
public 
rolleteaddid ) {                                                           
    new 
rolleterandom random_numLOTTERY_MIN_MONEY LOTTERY_MAX_MONEY )
    
cs_set_user_moneyid cs_get_user_moneyid ) + rolleterandom )
    
set_dhudmessagerandom_num100 255 ) , random_num100 255 ) , random_num100 255 ) , -1.0 0.25 6.0 1.0 )
    
show_dhudmessageid "[Steam] На ваш баланс^nЗачислено %d Долларов.^n Комиссия - 0%"rolleterandom )                                       
}                                                                                            
 
Аватара пользователя
Husen
 
Сообщения: 20
Зарегистрирован: 08 май 2019, 19:02
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Языки программирования: Я ничего не знаю

Re: Деньги в минус

Сообщение flymic24 » 01 июн 2019, 23:31

Код: Выделить всё
#include < amxmodx >
#include < cstrike >
#include < dhudmessage >

#define KULO_LOTTERY_TIME    25.0                    /*Таймер в секундах, через сколько выдать деньги после покупки (по умолчанию: 18, потому что музыка идет 18 сек.)*/
#define LOTTERY_COWNDOWN    150.0                    /*Через сколько секунд можно повторно использовать лотерею*/
#define LOTTERY_MAX_MONEY    16000                    /*Максимальный выигрыш, в лотереи (по умолчанию: 16000$)*/
#define LOTTERY_MIN_MONEY    3000                        /*Минимальный выигрыш, в лотереи (по умолчанию: 100$)*/
#define LOTTERY_LVL_MONEY    5000                   /*Стоимость лотереи (по умолчанию: 5000$)*/

new Float:g_lottery_kulo_time[ 33 ]

public plugin_init( ) {
    register_plugin( PLUGIN , VERSION , AUTHOR )
    register_clcmd( "say /lottery" , "lottery_csdm" )
}

public client_authorized(id)    {
    g_lottery_kulo_time[id] = 0.0;
}

public lottery_csdm( id ) {
    if (!is_user_connected(id))
        return PLUGIN_HANDLED;
    
    if
( cs_get_user_money( id ) < LOTTERY_LVL_MONEY )    {                                                                               
        set_hudmessage
( random_num( 100 , 255 ) , random_num( 100 , 255 ) , random_num( 100 , 255 ) , -1.0 , 0.25 , 0 , 6.0 , 1.0 )
        show_hudmessage( id , "[Steam] Пожалуйста, пополните баланс.^n[Steam] У вас нету денег на счету.")
        return PLUGIN_HANDLED;
    }
    
    new Float
:gametime; gametime = get_gametime();
    
    if
( g_lottery_kulo_time[ id ] <= gametime ) {
        cs_set_user_money( id , cs_get_user_money( id ) - LOTTERY_LVL_MONEY )
        set_task( KULO_LOTTERY_TIME , "rolleteadd" , id+88584)
        g_lottery_kulo_time[ id ] = gametime + LOTTERY_COWNDOWN
    
} else    {
        set_dhudmessage( random_num( 100 , 255 ) , random_num( 100 , 255 ) , random_num( 100 , 255 ) , -1.0 , 0.25 , 0 , 6.0 , 1.0 )
        show_dhudmessage( id , "[Steam] EasyDrop будет доступен через [%...1f сек]", g_lottery_kulo_time[ id ] - gametime )
    }
    return PLUGIN_HANDLED;
}

public rolleteadd( id ) {
    id -= 88584;
    
    if 
(!is_user_connected(id))
        return;
    
    new rolleterandom 
= random_num( LOTTERY_MIN_MONEY , LOTTERY_MAX_MONEY )
    cs_set_user_money( id , cs_get_user_money( id ) + rolleterandom )
    
    set_dhudmessage
( random_num( 100 , 255 ) , random_num( 100 , 255 ) , random_num( 100 , 255 ) , -1.0 , 0.25 , 0 , 6.0 , 1.0 )
    show_dhudmessage( id , "[Steam] На ваш баланс^nЗачислено %d Долларов.^n Комиссия - 0%", rolleterandom )                                       
}                                                                                            

Аватара пользователя
flymic24
 
Сообщения: 209
Зарегистрирован: 05 окт 2012, 17:29
Откуда: Bryansk
Благодарил (а): 4 раз.
Поблагодарили: 76 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Деньги в минус

Сообщение Husen » 02 июн 2019, 00:33

Спасибо большое) С меня шавуха когда вернусь в Брянск)
Аватара пользователя
Husen
 
Сообщения: 20
Зарегистрирован: 08 май 2019, 19:02
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Языки программирования: Я ничего не знаю


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16