Help to make cmd /ticket to pay fine in cash
#1

This is cmd: if(strcmp(cmd, "/ticket", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLider] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLider] == 2 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLider] == 3)
{
if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "You are not on Duty!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "{DC0C0C}Scrie:{FFFFFF} /ticket [playerid/PartOfName] [price] [reason]");
return 1;
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "{DC0C0C}Scrie:{FFFFFF} /ticket [playerid/PartOfName] [price] [reason]");
return 1;
}
moneys = strval(tmp);
if(moneys < 1 || moneys > 20000)
{
SendClientMessage(playerid, COLOR_WHITE, "Ticket Money can't be below 1 or higher then 20000 !");
return 1;
}
if(TicketOffer[giveplayerid] == 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "Player has already a ticket to pay ");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(8.0, playerid, giveplayerid))
{
new giveplayermoney = GetPlayerMoney(giveplayerid);
if( moneys > giveplayermoney )
{
SendClientMessage(playerid ,COLOR_GRAD2 , "That player doesn't have the cash to pay the ticket");
}
else
{
new ticketer [MAX_PLAYER_NAME] ;
GetPlayerName(giveplayerid, ticketer, sizeof(ticketer));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s wrote an ticket to %s .", sendername, ticketer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPL E,COLOR_PURPLE);
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "{DC0C0C}Scrie:{FFFFFF} /ticket [playerid/PartOfName] [price] [reason]");
return 1;
}
format(string, sizeof(string), "* You gave %s a Ticket costing $%d, reason: %s", giveplayer, moneys, (result));
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Officer %s has given you a Ticket costing $%d, reason: %s", sendername, moneys, (result));
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, "* Type /accept ticket, to accept it.");
TicketOffer[giveplayerid] = playerid;
TicketMoney[giveplayerid] = moneys;
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Ne pare rau, dar acest jucator nu este langa tine!!");
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Ne pare rau, dar acest jucator nu este {007502}Online{FFFFFF}.");
return 1;
}
}
}
return 1;
}


pls help me to make this cmd to pay money in cash not in paycheck
Reply
#2

1. use sscanf
2. put this in pawn tags
Reply
#3

you say to put this in gm: #include sscanf ?
Reply
#4

download sscanf include

and put
Код:
#include <sscanf>
after a_samp include

and if you want to adjust the ticket payment adjust this:
Код:
if(moneys < 1 || moneys > 20000)
Reply
#5

man i want to ajust this comand to money go in cash not in paycheck.I'll try you say
Reply
#6

i Solved
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)