Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Баг и /ticket и /demote

Статус
В этой теме нельзя размещать новые ответы.

sdd19517

Компетентный
Суть в том что команду /ticket не кто не можешь юзать, даже копы. А команду /domote могут юзать все. Два часа провозился и все в пустую...
PHP:
else if(strcmp(cmd, "/ticket", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	        if(!IsACop(playerid) || !IsAFbi(playerid)) return   SendClientMessage(playerid, COLOR_GREY, "Вы не полицейский!");
	    	tmp = strtok(cmdtext, idx);
			if(!strlen(tmp)) return	SendClientMessage(playerid, COLOR_WHITE, "Введите: /ticket [id] [цена] [причина]");
			giveplayerid = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
			if(!strlen(tmp)) return	SendClientMessage(playerid, COLOR_WHITE, "Введите: /ticket [id] [цена] [причина]");
			moneys = strval(tmp);
			if(moneys < 1 || moneys > 10000) { SendClientMessage(playerid, COLOR_GREY, "Штраф не должен привышать 10000 и не должен быть меньше 0 вирт!"); return 1; }
			if(IsPlayerConnected(giveplayerid))
			{
			    if(giveplayerid != INVALID_PLAYER_ID)
			    {
			        if (ProxDetectorS(8.0, playerid, giveplayerid))
					{
					    if(GetSRVMoney(giveplayerid) < moneys) 	return 	SendClientMessage(playerid, COLOR_GRAD1, "У игрока  нет столько денег!");
       					if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "{DB7093} [Ошибка]: {D3D3D3} Вы указали свой ID"); return 1; }
					    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_WHITE, "Введите: /ticket [id] [цена] [причина]");
							return 1;
						}
						format(string, sizeof(string), "Вы выписали штраф в размере %d вирт %s. Причина: %s",moneys, giveplayer, (result));
						SendClientMessage(playerid, COLOR_BLUE, string);
						format(string, sizeof(string), "Офицер %s выписал вам штраф в размере %d вирт. Причина: %s", sendername, moneys, (result));
						SendClientMessage(giveplayerid, COLOR_BLUE, string);
						SendClientMessage(giveplayerid, COLOR_WHITE, "(( Введите: /accept ticket, чтобы оплатить штраф ))");
						TicketOffer[giveplayerid] = playerid;
						TicketMoney[giveplayerid] = moneys;
						return 1;
					}
					else
					{
						SendClientMessage(playerid, COLOR_GREY, "Этот Человек далеко от вас!");
						return 1;
					}
				}
			}
			else
			{
			    SendClientMessage(playerid, COLOR_GREY, "{DB7093} [Ошибка]: {D3D3D3} Человек не найден!");
			    return 1;
			}
		}
		return 1;
	}
PHP:
if(strcmp(cmd, "/demote", true) == 0)
    {
                new demotegiveplayer;
                GetPlayerName(playerid, sendername, sizeof(sendername));
        GetPlayerName(demotegiveplayer, giveplayer, sizeof(giveplayer));
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, " Используйте: /demote [id]");
                return 1;
            }
            if(!IsAFbi(playerid) && PlayerInfo[playerid][pRank] >= 8)
            {
                SendClientMessage(playerid, COLOR_GRAD2, "Вы не можите использывать команду");
                return 1;
            }
            demotegiveplayer = ReturnUser(tmp);
            if(IsPlayerConnected(demotegiveplayer))
            {
                if(demotegiveplayer != INVALID_PLAYER_ID)
                {
                    new demotefrakid[MAX_PLAYERS];
                    demotefrakid[demotegiveplayer] = PlayerInfo[demotegiveplayer][pMember];
                    if(demotefrakid[demotegiveplayer] == 1 || demotefrakid[demotegiveplayer] == 10 || demotefrakid[demotegiveplayer] == 21 || demotefrakid[demotegiveplayer] == 3 || demotefrakid[demotegiveplayer] == 19)
                    {
                            new grini;
                        PlayerInfo[demotegiveplayer][pRank] --;
                          grini = PlayerInfo[demotegiveplayer][pRank];
                        format(string,sizeof(string),"Вы понизили %s до %d ранга",giveplayerid,grini);
                        SendClientMessage(playerid,0x6AB1FFAA,string);
                        format(string, sizeof(string), "Агент ФБР %s понизил вас до %d ранга", sendername, grini);
                                            SendClientMessage(demotegiveplayer, 0x6AB1FFAA, string);
                        if(IsACop(demotegiveplayer) && PlayerInfo[demotegiveplayer][pRank] < 2)
                        {
                                  PlayerInfo[demotegiveplayer][pMember] = 19;
                        PlayerInfo[demotegiveplayer][pRank] = 4;
                        SetPlayerInterior(demotegiveplayer,5);
                        ShowMenuForPlayer(ChoseSkin,demotegiveplayer);
                        new rand = random(sizeof(gInviteSpawns));
                        SetPlayerPos(demotegiveplayer, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
                        SetPlayerFacingAngle(demotegiveplayer, gInviteSpawns[rand][3]);
                        SetPlayerCameraPos(demotegiveplayer,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
                        SetPlayerCameraLookAt(demotegiveplayer,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
                        TogglePlayerControllable(demotegiveplayer, 0);
                        SelectChar[demotegiveplayer] = 255;
                        SelectCharID[demotegiveplayer] = PlayerInfo[demotegiveplayer][pMember];
                        SelectCharPlace[demotegiveplayer] = 1;
                            PlayerInfo[demotegiveplayer][pModel] = ChosenSkin[demotegiveplayer];
                        SetPlayerVirtualWorld(demotegiveplayer,1);
                        OnPlayerUpdateRL(demotegiveplayer);
                                                format(string, sizeof(string), "Агент ФБР %s перевел вас обратно в армию", sendername);
                                            SendClientMessage(demotegiveplayer, 0x6AB1FFAA, string);
                                                SendClientMessage(demotegiveplayer, 0xBC2C2CAA, "Используйте клавишу 'Быстрый бег'(пробел по умолчанию)");
                        SendClientMessage(demotegiveplayer, 0xBC2C2CAA, "Используйте клавиши 'Вверх, вниз'( W, S по умолчанию)");
                                              format(string,sizeof(string),"Вы перевели %s обратно в армию",giveplayer);
                                              SendClientMessage(playerid,0x6AB1FFAA,string);
                        return 1;
                        }
                                                if(IsAArm(demotegiveplayer) && PlayerInfo[demotegiveplayer][pRank] < 2)
                                                {
                                                format(string, sizeof(string), "Агент ФБР %s уволил вас из армии", sendername);
                                                SendClientMessage(demotegiveplayer, 0x6AB1FFAA, string);
                                                format(string,sizeof(string),"Вы уволили %s из армии",giveplayer);
                                                SendClientMessage(playerid,0x6AB1FFAA,string);
                                                PlayerInfo[demotegiveplayer][pMember] = 0;
                                                PlayerInfo[demotegiveplayer][pLeader] = 0;
                                                PlayerInfo[demotegiveplayer][pRank] = 0;
                                                SetPlayerInterior(demotegiveplayer, 0);
                                                PlayerInfo[demotegiveplayer][pInt] = 0;
                                                SetPlayerArmourAC(demotegiveplayer,0);
                                                Delgun(demotegiveplayer);
                                                ResetPlayerWeapons(demotegiveplayer);
                                                SpawnPlayer(demotegiveplayer);
                                                return 1;
                                                }

                    }
                    else { SendClientMessage(playerid, COLOR_GRAD2, "Он не состоит в армии/полиции"); return 1; }
                }
            }
            else { SendClientMessage(playerid, COLOR_GRAD2, "Человек не найден");  return 1;}
        }
        return 1;
    }
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу