Jump to content

Question

Posted

Problema intalnita (descriere): Am un bug la comanda /dice ,deci poti sa dai dice si cand nu mai ai bani si iti da banu pe minus,si vreau sa ii fac ceva cand nu mai am bani sa imi dea un mesaj cu nu mai ai bani
Ero(area / rile) / warning-(ul / urile): -
Liniile de cod / sursa / script-ul(obligatoriu):

------------------------------------------------------------------------------------------------------------------------------------

CMD:dice(playerid, params[])
{
    new price, id;
    if(sscanf(params, "ui", id, price)) return SendClientMessage(playerid, COLOR_GREY, "/dice [playerid] [price]");
    if(playerVariables[playerid][pLevel] >= 1)
    {
        if(GetPlayerVirtualWorld(playerid)-BUSINESS_VIRTUAL_WORLD >= 1)
        {

            new businessID = GetPlayerVirtualWorld(playerid)-BUSINESS_VIRTUAL_WORLD;
            if(businessVariables[businessID][bType] == 10)
            {
                if(playerVariables[playerid][pMoney] >= price)
                {
                    if(IsPlayerInRangeOfPlayer(playerid, id, 4.0))
                    {
                        SetPVarInt(id, "bID", playerid);
                        SetPVarInt(id, "bPrice", price);

                        format(szMessage, sizeof(szMessage), "%s requested you to play a dice for $%d. Type /accept dice to accept!", playerVariables[playerid][pNormalName], price);
                        SCM(id, COLOR_TEAL, szMessage);

                        SCM(playerid, -1, "Request sent!");
                    }
                    else
                    {
                        SCM(playerid, -1, "This player is not below you!");
                    }
                }
                else
                {
                    SCM(playerid, -1, "You don't have enough money!");
                }
            }
        }
    }

    return 1;
}

------------------------------------------------------------------------------------------------------------------------------------


Imagini / Video (optional): -
Ati incercat sa rezolvati singur?: Da,am incercat sa ii pun o limita,dar tot nu merge

7 answers to this question

Recommended Posts

  • 0
Posted (edited)

Incearca asta:

 

CMD:dice(playerid, params[])
{
    new price, id;
    if(sscanf(params, "ui", id, price)) return SendClientMessage(playerid, COLOR_GREY, "/dice [playerid] [price]");
    if(playerVariables[playerid][pLevel] >= 1)
    {
        if(GetPlayerVirtualWorld(playerid)-BUSINESS_VIRTUAL_WORLD >= 1)
        {

            new businessID = GetPlayerVirtualWorld(playerid)-BUSINESS_VIRTUAL_WORLD;
            if(businessVariables[businessID][bType] == 10)
            {
                if(playerVariables[playerid][pMoney] >= price)
                {
					if(playerVariables[id][pMoney] >= price)
					{
						if(IsPlayerInRangeOfPlayer(playerid, id, 4.0))
						{
							SetPVarInt(id, "bID", playerid);
							SetPVarInt(id, "bPrice", price);

							format(szMessage, sizeof(szMessage), "%s requested you to play a dice for $%d. Type /accept dice to accept!", playerVariables[playerid][pNormalName], price);
							SCM(id, COLOR_TEAL, szMessage);

							SCM(playerid, -1, "Request sent!");
						}
						else
						{
							SCM(playerid, -1, "This player is not below you!");
						}
					}
					else
					{
						SCM(playerid, -1, "Acel jucator nu are destui bani!")
					}
                }
                else
                {
                    SCM(playerid, -1, "You don't have enough money!");
                }
            }
        }
    }

    return 1;
}

 

Edited by Rappy
  • 0
Posted

Ai acolo if(playerVariables[playerid][pMoney] >= price), unde verifici daca cel care a tastat /dice are suficienti bani. Analog, poti testa daca jucatorul 'id' are bani. Poti testa in acelasi if, si ar veni if(playerVariables[playerid][pMoney] >= price && playerVariables[id][pMoney] >= price) sau separat. Daca pui separat poti pune mesaje diferite pentru fiecare conditie.

Nu mai deschideti in pu*a mea servere de SA:MP !

Jucati-va pe cele care sunt !   Sunt suficiente !

Reguli de bun simt:

1. Nu faceti reclama unde nu trebuie !

2. Nu injurati ca la usa cortului !

3. Daca esti analfabeti, taci din gura !

4. Nu abuza de 'scuze', 'din greseala' !

 

My work ::: http://pastebin.com/VRNRcaAs

  • 0
Posted

Ai acolo if(playerVariables[playerid][pMoney] >= price), unde verifici daca cel care a tastat /dice are suficienti bani. Analog, poti testa daca jucatorul 'id' are bani. Poti testa in acelasi if, si ar veni if(playerVariables[playerid][pMoney] >= price && playerVariables[id][pMoney] >= price) sau separat. Daca pui separat poti pune mesaje diferite pentru fiecare conditie.

@Punct. ,am incercat sa fac cum mi-ai zis,dar mi-a dat o eroare la compile,poti sa imi faci tu te rog comanda?

  • 0
Posted

Incearca codul pe care ti l-am pus mai sus, este exact cum a zis si Punct, ar trebui sa mearga.

  • 0
Posted

@Punct. ,am incercat sa fac cum mi-ai zis,dar mi-a dat o eroare la compile,poti sa imi faci tu te rog comanda?

Posteaza ce ai facut, eroarea si linia de la care provine eroarea.

Nu mai deschideti in pu*a mea servere de SA:MP !

Jucati-va pe cele care sunt !   Sunt suficiente !

Reguli de bun simt:

1. Nu faceti reclama unde nu trebuie !

2. Nu injurati ca la usa cortului !

3. Daca esti analfabeti, taci din gura !

4. Nu abuza de 'scuze', 'din greseala' !

 

My work ::: http://pastebin.com/VRNRcaAs

  • 0
Posted (edited)

Adauga la inceputul comenzii, undeva dupa ce ai definit ce face variabila price urmatoarea linie : 

if(PlayerInfo[playerid][pMoney] < price) return SCM(playerid, -1, "Nu ai banii necesari pentru aceasta actiune ."
Edited by NoNamed
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.