Рекомендованные сообщения



Не найдено.

2 posts in this topic

- Зашел на сервер

- Выдал себе лидерку

- Вышел с сервера

- Зашел на сервер

- Лидерка не сохранилась

Вот собственно сам код команды и снизу еще скриншот консоли.

CMD:makeleader(playerid, params[])
{
	if(IsAdminPlayer(playerid, 10)) return true;
	if(AntiBan[playerid] >= 60)
	{
		SendClientMessageEx(playerid, COLOR_GRAY, "[Анти-перебан] Ваши адм действия заблокированы на 3 минуты.");
		AntiBan[playerid] = 180;
		return true;
	}
	//new year, month, day, hour, minuite, second;
	if(sscanf(params, "ud", params[0], params[1])) return SendClientMessageEx(playerid, COLOR_WHITE, "Введите: /makeleader [id игрока] [id фраки]");
	if((params[1] > 26) || (params[1] < 1) || (params[1] == 22) || (params[1] == 20) || (params[1] == 9)) return SendClientMessageEx(playerid, COLOR_GRAY, "Ошибка! Нельзя меньше 1 или больше 26!");
	if(!IsPlayerConnected(params[0])) return SendClientMessageEx(playerid, COLOR_GRAY, WarningConnect);
	if(IsPlayerNPC(params[0])) return SendClientMessageEx(playerid, COLOR_GRAY, WarningConnectBOT);
	if(PlayerInfo[playerid][pRespon] == 1)
	{
	    switch(params[1])
	    {
    	    case 1,2,3,4,7,8,10,11,19,21,25,26: { }
       	    default: return SendClientMessageEx(playerid, COLOR_GRAY, "Вам запрещено выдавать данную фракцию");
	    }
	}
	else if(PlayerInfo[playerid][pRespon] == 2)
	{
	    switch(params[1])
	    {
    	    case 12,13,15,17,18: { }
       	    default:  return SendClientMessageEx(playerid, COLOR_GRAY, "Вам запрещено выдавать данную фракцию");
	    }
	}
	else if(PlayerInfo[playerid][pRespon] == 3)
	{
	    switch(params[1])
	    {
    	    case 5,6,14: { }
       	    default:  return SendClientMessageEx(playerid, COLOR_GRAY, "Вам запрещено выдавать данную фракцию");
	    }
	}
	else if(PlayerInfo[playerid][pRespon] == 4)
	{
	    switch(params[1])
	    {
    	    case 16,23,24: { }
       	    default:  return SendClientMessageEx(playerid, COLOR_GRAY, "Вам запрещено выдавать данную фракцию");
	    }
	}
	else if(PlayerInfo[playerid][pRespon] == 0 || PlayerInfo[playerid][pRespon] > 4)
	{
	    if(IsAdminPlayer(playerid, 12)) return true;
	}
	if(PlayerInfo[params[0]][pWarns] >= 1) return SendClientMessageEx(playerid, COLOR_GRAD1, "Ошибка! У игрока варн");
	PlayerInfo[params[0]][pLeader] = params[1];
	PlayerInfo[params[0]][pMember] = params[1];
	PlayerInfo[params[0]][pJob] = 0;
	new stringer[128];
	format(stringer, sizeof(stringer), "Администратор: %s[%d] назначил вас контролировать данную организацию", PlayerInfo[playerid][pNames], playerid);
	SendClientMessageEx(params[0], COLOR_NEW, stringer);
	format(stringer, sizeof(stringer), "Admin %s[%d] makeleader: %s[%d] № %d", PlayerInfo[playerid][pNames], playerid, PlayerInfo[params[0]][pNames], params[0], params[1]);
	ABroadCast(COLOR_YELLOW, stringer, 1);
	format(stringer, sizeof(stringer), "Вы назначили %s[%d] контролировать организацию номер %d", PlayerInfo[params[0]][pNames], params[0], params[1]);
	SendClientMessageEx(playerid, COLOR_NEW, stringer);
	gOoc[playerid] = false, gFam[playerid] = false;
	switch (PlayerInfo[params[0]][pMember])
	{
		case 1:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 15;
			InviteSkin[params[0]]         = 288;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 2:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 10;
			InviteSkin[params[0]]         = 165;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 3, 19:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 15;
			InviteSkin[params[0]]         = 287;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
        case 4:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 10;
			InviteSkin[params[0]]         = 70;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 7:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 15;
			InviteSkin[params[0]]         = 57;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 10:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 15;
			InviteSkin[params[0]]         = 288;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
	    }
    	case 11:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 10;
			InviteSkin[params[0]]         = 59;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 16:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 10;
			InviteSkin[params[0]]         = 261;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 21:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 15;
			InviteSkin[params[0]]         = 288;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
	    case 25:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 10;
			InviteSkin[params[0]]         = 285;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 26:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank] = 15;
			InviteSkin[params[0]] = 295;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		case 8:
		{
			SendClientMessageEx(params[0], COLOR_NEW, "Рабочий день начат"), WorkingDay[params[0]] = true;
			PlayerInfo[params[0]][pRank]  = 5;
			InviteSkin[params[0]] = 147;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SpawnPlayer(params[0]);
		}
		default:
		{
			SendClientMessageEx(params[0], COLOR_SRED, "Используйте клавишу 'Быстрый бег' (пробел по умолчанию)");
			SendClientMessageEx(params[0], COLOR_SRED, "Используйте клавишу 'Вверх,вниз' (W,S по умолчанию)");
			OldSkin[playerid] = GetPlayerSkin(playerid);
			switch (params[1])
			{
		    	case 5: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]] = 223;
				case 6: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]] = 120;
				case 12: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]]  = 102;
				case 13: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]] = 108;
				case 14: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]] = 111;
				case 15: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]]  = 106;
			    case 17: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]] = 115;
		    	case 18: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]] = 174;
			    case 23: PlayerInfo[params[0]][pRank] = 12,	InviteSkin[params[0]] = 30;
			    case 24: PlayerInfo[params[0]][pRank] = 10, InviteSkin[params[0]] = 184;
		    	default: SendClientMessageEx(playerid, COLOR_WHITE, "Ошибка! Данная фракция была удалена");
			}
			if(PlayerInfo[playerid][pMember] == Command[0] || PlayerInfo[playerid][pMember] == Command[1])
       		{
           		TextDrawShowForPlayer(playerid,fon1);
           		TextDrawShowForPlayer(playerid,time1);
           		TextDrawShowForPlayer(playerid,vremya1);
           		TextDrawShowForPlayer(playerid,onecommand1);
           		TextDrawShowForPlayer(playerid,twocommand1);
           		TextDrawShowForPlayer(playerid,kolone1);
           		TextDrawShowForPlayer(playerid,koltwo1);
       		}
       		if(PlayerInfo[playerid][pMember] == Command[2] || PlayerInfo[playerid][pMember] == Command[3])
    		{
           		TextDrawShowForPlayer(playerid,fon2);
           		TextDrawShowForPlayer(playerid,time2);
           		TextDrawShowForPlayer(playerid,vremya2);
           		TextDrawShowForPlayer(playerid,onecommand2);
           		TextDrawShowForPlayer(playerid,twocommand2);
           		TextDrawShowForPlayer(playerid,kolone2);
           		TextDrawShowForPlayer(playerid,koltwo2);
       		}
			AntiBan[playerid] += 30;
			SetPlayerInterior(params[0], 10);
			PlayerInfo[params[0]][pInt] = 10;
			SetPlayerVirtualWorld(params[0], 1);
			ShowMenuForPlayer(ChoseSkin, params[0]);
			new rand = random(sizeof(gInviteSpawns));
            SetPlayerPosEx(params[0], gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]); // Warp the player
	        SetPlayerFacingAngle(params[0], gInviteSpawns[rand][3]);
	        SetPlayerCameraPos(params[0],225.705612, 117.049171, 1010.656372);
	        SetPlayerCameraLookAt(params[0],229.832000, 114.232849, 1010.453308);
			TogglePlayerControllable(params[0], 0);
			SelectCharID[params[0]] = PlayerInfo[params[0]][pMember];
			SelectCharPlace[params[0]]  = 1;
			PlayerInfo[params[0]][pModel] = InviteSkin[params[0]];
			SetPlayerArmourAC(params[0], 0);
			SetPlayerHealthAC(params[0], 100.0);
			SetPlayerSkin(params[0], InviteSkin[params[0]]);
		}
	}
	//getdate(year, month, day);
	//gettime(hour, minuite, second);
	//FixHour(hour);
	//hour = shifthour;
	//new data2[64];
	//format(data2, 16, "%02d.%02d.%d в %02d:%d", day, month, year, hour, minuite);
    //format(stringer, sizeof(stringer), "INSERT INTO `logs` (`Text`, `Date`) VALUES ('%s выдал лидерку %s фракции %d','%s')", PlayerInfo[playerid][pNames], PlayerInfo[params[0]][pNames], params[1], data2);
	mysql_function_query(connects, stringer, false, "", "");
	OnPlayerSaveSkrilax(params[0]);
	return true;
}

 

Screenshot_1.png

Share this post


Link to post
Share on other sites

Сохранение самой лидерки есть? В логах пишет что нет колонки "Message". А вообще лучше скинь логи и сюда и сток с сохранением или паблик.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • DRA GON
    • youngblaste
      By youngblaste
      Привет. Не нужно писать что команда заезженная - просто выйди с темы.
      И так, постараюсь объяснить как всё работает в этой команде
      Погнали, хлопци!:
      CMD:makeadmin(playerid, params[]){ /* Здесь начинается наша команда */ if(p_info[playerid][pAdmin] < 7) /* Идёт проверка на админку, если наш уровень администратора ниже 7 то ничего не произойдёт (можно сменить на свой уровень) */ return true; /* возвращаем 1 - или же не на ельфийском, то просто ничего не пройзойдёт и команда не продолжит работу */ new name[MAX_PLAYER_NAME], player[MAX_PLAYER_NAME], targetid, admlvl, string[250]; /* Создаем переменные для команды (targetid - кому выдавать будем админку, admlvl - это какой лвл админки будем выдавать), string - ну это стринг :D */ if(sscanf(params, "ud", targetid, admlvl)) /* Делаем проверку на правильное написание команды */ return SendClientMessage(playerid, -1, "{84cd5c}[Подсказка] {ffffff} Используйте команду: /makeadmin [id игрока] [lvl админ-прав]"); /* Если мы ввели не верно команду, то нам возвращает сообщение в чат с подсказкой как ввести команду */ GetPlayerName(playerid, name, MAX_PLAYER_NAME); /* Тут мы получаем наш ник */ GetPlayerName(targetid, player, MAX_PLAYER_NAME); /* А тут мы получаем ник игрока которому выдаем админку */ if(!IsPlayerConnected(targetid)) /* Делаем проверку на то находится ли игрок на сервере, вообще у меня в команде здесь есть проверка на Авторизован ли игрок и она вместе с проверкой на есть ли такой игрок на сервере, но увы, я убрал потому что скорее всего не у всех есть такая фича, это не очень важно но если ты хоть немного шаришь то и сам добавишь проверку */ return SendClientMessage(playerid, -1, "{c23838}[Ошибка] {ffffff} Игрок ещё не вступил в игру"); /* Возвращаем сообщение о том что игрок ещё не вступил в игру - ну вообще должно быть "Игрока с таким ID нету на сервере", но если ты решишь добавить проверку на авторизацию то это будет немного лучше */ if(admlvl < 0 || admlvl > 6) /* Делаем проверку на какой лвл мы хотим поставить игрока, то есть мы не можем выдать лвл адм ниже 0 или выше 6, меняйте на своё если так нужно))) */ return SendClientMessage(playerid, -1, "{c23838}[Ошибка] {ffffff} Увы, нельзя выдавать меньше 0 или выше 6 уровня администратора"); /* Возвращаем сообщение о том что мы не можем выдавать меньше 0 или выше 6 лвл адм */ p_info[targetid][pAdmin] = admlvl; /* И так... p_info у вас может быть разное: PlayerInfo, pInfo, PI, PlayerInformation, p_Info, P_I и т.п., pAdmin так же может быть другим, хотя обычно такое, например: Admin, PlayerAdmin, Player_Admin, Adminka и т.п. */ format(string, sizeof(string), "{b33d3d}{A} Администратор %s[%d] назначил администратором игрока %s[%d]", name, playerid, player, targetid); /* И так, тут мы форматируем string и после отпрам в админ чат))) */ AdmChat(-1, string); /* Ниже вы увидите сток с AdmChat, крч просто отправляем в адм чат */ format(string, sizeof(string), "{ffffff}Администратор %s[%d] назначил Вас администратором %d-го уровня.", name, playerid, admlvl); /* Форматируем опять стринг и потом игроку отправим */ SendClientMessage(targetid, -1, string); /* Устал описовать команду, ну да ладно... Теперь отправляем игроку string */ return true; /* Возвращаем 1, чтобы небыло еррора))) */ } /* Здесь заканчивается наша команда */ /* vk.com/youngblaste - люbлю сkpuптuнг */ А теперь сток AdmChat, добавьте возле своих стоков ну или под командой:
      stock AdmChat(color, const text[]) /* тут не буду много объяснять */ { foreach(new i: Player) if(p_info[i][pAdmin] > 0) SendClientMessage(i, color, text); /* Обычно используют для админ чата... Ну и как всегда... p_info у вас может быть разное: PlayerInfo, pInfo, PI, PlayerInformation, p_Info, P_I и т.п., pAdmin так же может быть другим, хотя обычно такое, например: Admin, PlayerAdmin, Player_Admin, Adminka и т.п. */ } Если Вы заметили какую-то ошибку, пожалуйста отпишите. Надеюсь Вам понравился этот мини-урок, ну а точнее команда /makeadmin.
      Удачи, юные скриптеры