Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: Помогите с командой /pay - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[ Pawn ]
Помогите с командой /pay Нужно исправить баг.

#1
Пользователь офлайн   Samper887 

  • Прохожий
  • Вставить ник
  • Раскрыть информацию
Вообщем, у меня есть мод, но есть небольшая проблема. Я не могу передавать через /pay больше 1$, а также могу передавать отрицательное число. Помогите пожалуйста, я ещё плохо разбираюсь в Pawn.




CMD:pay(playerid,params[])
{
	new str[144];
    if(!IsPlayerConnected(playerid)) return 1;
    if(sscanf(params, "dd", params[0], params[1])) return SendClientMessage(playerid,COLOR_ORANGE, "[Информация] {FFFFFF}Используйте: /pay [id] [cумма]");
    if(p_info[playerid][level] < 1) return SendClientMessage(playerid, error, "Информация: Команда доступна с 1-го уровня.");
    if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, error, "Информация: Данный игрок не найден");
	if(1 < params[1] || params[1] > 10000) return SendClientMessage(playerid, error, "Информация: Нельзя передать больше 10.000$");
    if(distance(playerid, params[0]) > 5.0) return SendClientMessage(playerid, error,"Игрок далеко от Вас");
	if(p_info[playerid][cash] < params[1]) return SendClientMessage(playerid, error,"У вас нет столько денег");
	set_money(playerid, -params[1]);
	set_money(params[0], params[1]);
	f(str,"[Информация] {FFFFFF}Вы передали %s деньги в размере %d$",get_name(params[0]),params[1]);
	SendClientMessage(playerid, COLOR_ORANGE,str);
	f(str,"[Информация] {FFFFFF}%s передал Вам деньги в размере %d$",get_name(playerid),params[1]);
	SendClientMessage(params[0], COLOR_ORANGE,str);
	ApplyAnimation(playerid,"DEALER","shop_pay",4.1, 0, 1, 1, 0, 0, 1);
	//distance_chat(playerid,10.0,0xDE92FFFF,"Достал кошелёк");
	return 1;
}

0

#2
Пользователь офлайн   besmojio4ba 

  • Прохожий
  • Вставить ник
  • Раскрыть информацию
CMD:pay(playerid,params[])
{
        new str[144];
    if(!IsPlayerConnected(playerid)) return 1;
    if(sscanf(params, "dd", params[0], params[1])) return SendClientMessage(playerid,COLOR_ORANGE, "[Информация] {FFFFFF}Используйте: /pay [id] [cумма]");
    if(p_info[playerid][level] < 1) return SendClientMessage(playerid, error, "Информация: Команда доступна с 1-го уровня.");
    if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, error, "Информация: Данный игрок не найден");
        if(params[1] < 1 || params[1] > 10000) return SendClientMessage(playerid, error, "Информация: Нельзя передать больше 10.000$");
    if(distance(playerid, params[0]) > 5.0) return SendClientMessage(playerid, error,"Игрок далеко от Вас");
        if(p_info[playerid][cash] < params[1]) return SendClientMessage(playerid, error,"У вас нет столько денег");
        set_money(playerid, -params[1]);
        set_money(params[0], params[1]);
        f(str,"[Информация] {FFFFFF}Вы передали %s деньги в размере %d$",get_name(params[0]),params[1]);
        SendClientMessage(playerid, COLOR_ORANGE,str);
        f(str,"[Информация] {FFFFFF}%s передал Вам деньги в размере %d$",get_name(playerid),params[1]);
        SendClientMessage(params[0], COLOR_ORANGE,str);
        ApplyAnimation(playerid,"DEALER","shop_pay",4.1, 0, 1, 1, 0, 0, 1);
        //distance_chat(playerid,10.0,0xDE92FFFF,"Достал кошелёк");
        return 1;
}

0

#3
Пользователь офлайн   Pa4enka 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию
CMD:pay(playerid,params[])
{
    new
        targetid, money;

    if( sscanf(params, "ud", targetid, money) ) 
        return SendClientMessage(playerid, COLOR_ORANGE, !"[Информация] {FFFFFF}Используйте: /pay [id] [cумма]");
    
    if( p_info[playerid][level] < 1 ) 
        return SendClientMessage(playerid, error, !"Информация: Команда доступна с 1-го уровня.");

    if( targetid == INVALID_PLAYER_ID ) 
        return SendClientMessage(playerid, error, !"Информация: Данный игрок не найден");

    if( 1 < money > 10000 ) 
        return SendClientMessage(playerid, error, !"Информация: Нельзя передать больше 10.000$");
    
    if( distance(playerid, targetid) > 5.0 ) 
        return SendClientMessage(playerid, error,!"Игрок далеко от Вас");

    if( p_info[playerid][cash] < money ) 
        return SendClientMessage(playerid, error, !"У вас нет столько денег");

    set_money(playerid, -money);
    set_money(targetid, money);
        
    new
        string[48 + MAX_PLAYER_NAME + 5];

    format(string, sizeof string, "[Информация] {FFFFFF}Вы передали %s деньги в размере %d$",
        get_name(targetid), money
    );
    SendClientMessage(playerid, COLOR_ORANGE, string);

    format(string, sizeof string, "[Информация] {FFFFFF}%s передал Вам деньги в размере %d$",
        get_name(playerid), money
    );
    SendClientMessage(targetid, COLOR_ORANGE, string);

    ApplyAnimation(playerid, !"DEALER", !"shop_pay", 4.1,  0, 1, 1, 0, 0, 1);
    //distance_chat(playerid,10.0,0xDE92FFFF,"Достал кошелёк");
    
    return true;
}

0

#4
Пользователь офлайн   yxen 

  • Пользователь
  • Вставить ник
  • Раскрыть информацию
if(1 < params[1] || params[1] > 10000) return SendClientMessage(playerid, error, "Информация: Нельзя передать больше 10.000$");

Ты по-моему знаки перепутал. У тебя если params больше 1 или params больше 10000
0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика