Jump to content
  • 0

am nevoie de ajutor


ToX1c

Question

1.Am o problema cu , comanda /ticket cum fac sa nu mai dea pe minus cand un cop ii da la un civil sau la oricine /ticket si acel playeri nu are bani respectivi sa nu mearga sa dea /accept ticket.

if(strcmp(cmd, "/ticket", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	        if(gTeam[playerid] != 2)
			{
			    SendClientMessage(playerid, COLOR_GREY, "   You are not a Cop!");
			    return 1;
			}
	        if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
			{
			    SendClientMessage(playerid, COLOR_GREY, "   You are not on Duty!");
			    return 1;
			}
	    	tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /ticket [playerid/PartOfName] [price] [reason]");
				return 1;
			}
			giveplayerid = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /ticket [playerid/PartOfName] [price] [reason]");
				return 1;
			}
			moneys = strval(tmp);
			if(moneys < 1 || moneys > 5) { SendClientMessage(playerid, COLOR_GREY, "   Ticket Money can't be below 1 or higher then 10 !"); return 1; }
			if(IsPlayerConnected(giveplayerid))
			{
							if(PlayerInfo[playerid][pCash] < 5)
						{
						  SendClientMessage(playerid,COLOR_LIGHTBLUE,"You can not affrod that.");
						  return 1;
						}
			    if(giveplayerid != INVALID_PLAYER_ID)
			    {
			        if (ProxDetectorS(8.0, playerid, giveplayerid))
					{
					    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
						GetPlayerName(playerid, sendername, sizeof(sendername));
						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, "USAGE: /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_GREY, "   That player is not near you !");
						return 1;
					}
				}
			}
			else
			{
			    SendClientMessage(playerid, COLOR_GREY, "   That player is Offline !");
			    return 1;
			}
		}
		return 1;
	}

2.Tot la fel si la comanda /heal pentru medici ca la 1.sa nu poata da pe minus.

3.care poate sa ma ajute si pe mine la comanda /givemats sa pot da /accept mats ca nu reusesc sa o fac.

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

1 si 2, foloseste GetPlayerMoney

if(GetPlayerMoney(playerid) <= 0) 
{
    //restul
}
else
{
    SendClientMessage(playerid, COLOR_RED, "Nu ai destui bani!");
}
3.Probleme Godfather, foloseste o noua variabila:
new Mats[MAX_PLAYERS];

Mats[matsplayer]=1; // matsplayer inlocuiesti cu chestia din comanda a jucatorului care a primit /give mats

if(strcmp(cmdtext,"/accept mats",true) == 0)
{ 
    if(Mats[matsplayer]==1)
    {
        //chestii pentru mats
    }
    else
    { 
         SendClientMessage(playerid,COLOR_RED,"Nu ti s-au oferit 'Mats');
    }
    return 1;
}

Nici nu stiu ce inseamna Mats :]], cred ca te-ai prins cum vine comanda.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.