Need help with /gate command
#1

guys i have dynamic gate script in my gamemode means admins can create gates on any place and with /gate command it will open and close the gate the problem is when i am not near any gate its showing nothing like you must be near to any gate to use this command if i add any function for the message then i am near any gate it will open the gate with command but still showing you must be near to any gate so check this command give any solution

pawn Код:
CMD:gate(playerid, params[])
{
    new pass[24], Float: x, Float: y, Float: z, string[128];

    for(new i = 0; i < MAX_DOBJECTS; i++)
    {
        if(IsPlayerInRangeOfPoint(playerid, DynamicObjects[i][doObject_Range], DynamicObjects[i][doObject_PosX], DynamicObjects[i][doObject_PosY], DynamicObjects[i][doObject_PosZ]) || IsPlayerInRangeOfPoint(playerid, DynamicObjects[i][doObject_Range], DynamicObjects[i][doObject_PosXM], DynamicObjects[i][doObject_PosYM], DynamicObjects[i][doObject_PosZM]))
        {

            if(DynamicObjects[i][doObject_Movable] == 0) return 1;
            GetDynamicObjectPos(DynamicObjects[i][doObject_ID], x, y, z);
            if(strlen(DynamicObjects[i][doObject_Pass]) > 0)
            {
                if(sscanf(params, "s[24]", pass)) return SendClientMessage(playerid, COLOR_WHITE, "Usage: /gate [pass]");

                if(strcmp(pass, DynamicObjects[i][doObject_Pass], false) == 0)
                {
                    if(x == DynamicObjects[i][doObject_PosX] && y == DynamicObjects[i][doObject_PosY] && z == DynamicObjects[i][doObject_PosZ])
                    {
                        MoveDynamicObject(DynamicObjects[i][doObject_ID], DynamicObjects[i][doObject_PosXM], DynamicObjects[i][doObject_PosYM], DynamicObjects[i][doObject_PosZM], DynamicObjects[i][doObject_Speed], DynamicObjects[i][doObject_RotXM], DynamicObjects[i][doObject_RotYM], DynamicObjects[i][doObject_RotZM]);
                        if(DynamicObjects[i][doObject_AutoMove] == 1)
                        {
                            SetTimerEx("ReturnObject", DynamicObjects[i][doObject_ReturnInterval]*1000, false, "i", i);
                            format(string, sizeof(string), "This gate will return to it's normal position in %d second(s).", DynamicObjects[i][doObject_ReturnInterval]);
                            SendClientMessage(playerid, COLOR_YELLOW, string);
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_YELLOW, "Use /gate to return the gate back to it's normal position.");
                        }
                    }
                    else
                    {
                        MoveDynamicObject(DynamicObjects[i][doObject_ID], DynamicObjects[i][doObject_PosX], DynamicObjects[i][doObject_PosY], DynamicObjects[i][doObject_PosZ], DynamicObjects[i][doObject_Speed], DynamicObjects[i][doObject_RotX], DynamicObjects[i][doObject_RotY], DynamicObjects[i][doObject_RotZ]);
                    }
                }
            }
            else
            {
                if(x == DynamicObjects[i][doObject_PosX] && y == DynamicObjects[i][doObject_PosY] && z == DynamicObjects[i][doObject_PosZ])
                {
                    MoveDynamicObject(DynamicObjects[i][doObject_ID], DynamicObjects[i][doObject_PosXM], DynamicObjects[i][doObject_PosYM], DynamicObjects[i][doObject_PosZM], DynamicObjects[i][doObject_Speed], DynamicObjects[i][doObject_RotXM], DynamicObjects[i][doObject_RotYM], DynamicObjects[i][doObject_RotZM]);
                    if(DynamicObjects[i][doObject_AutoMove] == 1)
                    {
                        SetTimerEx("ReturnObject", DynamicObjects[i][doObject_ReturnInterval]*1000, false, "i", i);
                        format(string, sizeof(string), "This gate will return to it's normal position in %d second(s).", DynamicObjects[i][doObject_ReturnInterval]);
                        SendClientMessage(playerid, COLOR_YELLOW, string);
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_YELLOW, "Use /gate to return the object back to it's normal position.");
                    }
                }
                else
                {
                    MoveDynamicObject(DynamicObjects[i][doObject_ID], DynamicObjects[i][doObject_PosX], DynamicObjects[i][doObject_PosY], DynamicObjects[i][doObject_PosZ], DynamicObjects[i][doObject_Speed], DynamicObjects[i][doObject_RotX], DynamicObjects[i][doObject_RotY], DynamicObjects[i][doObject_RotZ]);
                }
            }
         }
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)