Error with command
#1

This is the script:
stock givescore(playerid, ammount)
{
new currentscore;
currentscore = GetPlayerScore(playerid);
SetPlayerScore(playerid, GetPlayerScore(playerid)+ammount);
}

new bool:Milestone[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
Milestone[playerid] = false;
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/milestone1", cmdtext, true, 10) == 0)
if(GetPlayerMoney(playerid) >= 10000)
{
givescore(playerid, 10);
if(Milestone[playerid]) return SendClientMessage(playerid, -1, "Tu jau atsiemėi љį milestone.");
return 1;
}
return 0;
}


It should let player use this command only one time, but it shows that there is no such command and player can use it how much they want, and it always adds score. Any suggestions?
Reply
#2

i suggest you to use zcmd its more easy from strcmp

EDIT:

for strcmp try this

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
   
    if(!strcmp(cmdtext, "/milestone1", true))
    {
        if(GetPlayerMoney(playerid) >= 10000)
        {
        givescore(playerid, 10);
        if(Milestone[playerid]) return SendClientMessage(playerid, -1, "Tu jau atsiemei љi milestone.");
        return 1;
        }
    }
    return 0;
}
Reply
#3

Same problem.
Reply
#4

I'd suggest you to update your script to ZCMD... it's way easier (for me atleast)
Reply
#5

try this

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
   
    if(!strcmp(cmdtext, "/milestone1", true))
    {
        if(GetPlayerMoney(playerid) >= 10000)
        {
        givescore(playerid, 10);
        if(Milestone[playerid]) return SendClientMessage(playerid, -1, "Tu jau atsiemei љi milestone.");
        return 0;
        }
    }
    return 0;
}
Reply
#6

Ok, updated it to zcmd, here's the script:
#include <zcmd>
#include <a_samp>

#if defined FILTERSCRIPT

new bool:Milestones[MAX_PLAYERS];

public OnFilterScriptInit()
{
print("\n--------------------------------------");
print("Milestone Sistema");
print("--------------------------------------\n");
return 1;
}

public OnFilterScriptExit()
{
return 1;
}

#else

main()
{
print("\n----------------------------------");
print("Milestone Sistema");
print("----------------------------------\n");
}

#endif

stock givescore(playerid, ammount)
{
new currentscore;
currentscore = GetPlayerScore(playerid);
SetPlayerScore(playerid, GetPlayerScore(playerid)+ammount);
}

public OnPlayerConnect(playerid)
{
Milestones[playerid] = false;
return 1;
}

CMD:milestone1(playerid, params[])
{
if(GetPlayerMoney(playerid) >= 10000)
{
givescore(playerid, 10);
if(Milestones[playerid]) return SendClientMessage(playerid, -1, "Tu jau atsiemлi рб milestone.");
}
}
return 1;
}

But I get very strange errors:
D:\Documents and Settings\Administrator\Desktop\Sa-Mp Server\Drift Serveris\pawno\include\zcmd.inc(64) : error 017: undefined symbol "funcidx"
D:\Documents and Settings\Administrator\Desktop\Sa-Mp Server\Drift Serveris\pawno\include\zcmd.inc(64) : warning 215: expression has no effect
D:\Documents and Settings\Administrator\Desktop\Sa-Mp Server\Drift Serveris\pawno\include\zcmd.inc(64) : error 001: expected token: ";", but found ")"
D:\Documents and Settings\Administrator\Desktop\Sa-Mp Server\Drift Serveris\pawno\include\zcmd.inc(64) : error 029: invalid expression, assumed zero
D:\Documents and Settings\Administrator\Desktop\Sa-Mp Server\Drift Serveris\pawno\include\zcmd.inc(64) : fatal error 107: too many error messages on one line

I DO NOT EVEN HAVE LINE 64, WHAT THE HELL
Reply
#7

take this

pawn Код:
#include <zcmd>
#include <a_samp>

new bool:Milestones[MAX_PLAYERS];

public OnFilterScriptInit()
{
    print("\n--------------------------------------");
    print("Milestone Sistema");
    print("--------------------------------------\n");
    return 1;
}

public OnFilterScriptExit()
{
    return 1;
}

main()
{
    print("\n----------------------------------");
    print("Milestone Sistema");
    print("----------------------------------\n");
}


stock givescore(playerid, ammount)
{
    new currentscore;
    currentscore = GetPlayerScore(playerid);
    SetPlayerScore(playerid, GetPlayerScore(playerid)+ammount);
}

public OnPlayerConnect(playerid)
{
    Milestones[playerid] = false;
    return 1;
}

CMD:milestone1(playerid, params[])
{
    if(GetPlayerMoney(playerid) >= 10000)
    {
        givescore(playerid, 10);
        if(Milestones[playerid]) return SendClientMessage(playerid, -1, "Tu jau atsiemлi рб milestone.");
    }
    return 1;
}
Reply
#8

Same errors.
Reply
#9

change

pawn Код:
CMD:milestone1(playerid, params[])
{
    if(GetPlayerMoney(playerid) >= 10000)
    {
        givescore(playerid, 10);
        if(Milestones[playerid]) return SendClientMessage(playerid, -1, "Tu jau atsiemлi рб milestone.");
    }
    return 1;
}
to
pawn Код:
CMD:milestone1(playerid, params[])
{
    if(GetPlayerMoney(playerid) >= 10000)
    {
                if(Milestones[playerid] == true) return SendClientMessage(playerid, -1, "Tu jau atsiemлi рб milestone.");
        givescore(playerid, 10);
                Milestones[playerid] = true;       
    }
    return 1;
}
Reply
#10

didn't work, same error messages
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)