Если Вы нашли ответ на вопрос, пожалуйста, пометьте необходимый ответ лучшим (галочка сбоку от сообщения) и поблагодарите автора этого ответа поднятием репутации (плюс в нижней правой части сообщения). Спасибо.
Подробнее:
FAQ по форуму
Как пометить ответ лучшим

Вопросы

Помогите исправить баг, суть в том что у VIP написано над головой "Разработчик", как это исправить?

 

Спойлер

cr-mp-029.pngcr-mp-030.png

 

Поделиться сообщением


Ссылка на сообщение

14 ответов на этот вопрос

  • 0

@Daniil Roslyakov скидывай код этого ранга над головой

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST 

Спойлер

forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
    new rows, fields;
    cache_get_data(rows, fields);
    if(!rows)
    {
        SCM(playerid, COLOR_GREY, "[Ошибка] Неверный пароль");
        SetPVarInt(playerid, "attempt_pass", GetPVarInt(playerid, "attempt_pass") + 1);
        if(GetPVarInt(playerid, "attempt_pass") > 1)
        {
            DeletePVar(playerid, "attempt_pass");
            return SKick(playerid, 2112);
        }
    }
    else
    {
        AdminLogged[playerid] = true;
        PI[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
        AdminInfo[playerid][admGoto] = cache_get_row_int(0, 6, dbHandle);
        AdminInfo[playerid][admGethere] = cache_get_row_int(0, 7, dbHandle);
        AdminInfo[playerid][admSpectate] = cache_get_row_int(0, 8, dbHandle);
        AdminInfo[playerid][admKicked] = cache_get_row_int(0, 16, dbHandle);
        cache_get_row(0, 17, AdminInfo[playerid][admKickedReason], dbHandle, 32);
        AdminInfo[playerid][admSKicked] = cache_get_row_int(0, 18, dbHandle);
        AdminInfo[playerid][admWarned] = cache_get_row_int(0, 19, dbHandle);
        cache_get_row(0, 20, AdminInfo[playerid][admWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admOffWarned] = cache_get_row_int(0, 21, dbHandle);
        cache_get_row(0, 22, AdminInfo[playerid][admOffWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admBaned] = cache_get_row_int(0, 23, dbHandle);
        cache_get_row(0, 24, AdminInfo[playerid][admBanedReason], dbHandle, 32);
        AdminInfo[playerid][admOffBaned] = cache_get_row_int(0, 25, dbHandle);
        cache_get_row(0, 26, AdminInfo[playerid][admOffBanedReason], dbHandle, 32);
        AdminInfo[playerid][admMuted] = cache_get_row_int(0, 27, dbHandle);
        cache_get_row(0, 28, AdminInfo[playerid][admMutedReason], dbHandle, 32);
        AdminInfo[playerid][admAnsed] = cache_get_row_int(0, 29, dbHandle);
        cache_get_row(0, 30, AdminInfo[playerid][admAnsedText], dbHandle, 64);
        AdminInfo[playerid][admWarns] = cache_get_row_int(0, 31, dbHandle);
        AdminInfo[playerid][admPlayOnline] = cache_get_row_int(0, 32, dbHandle);
        /*new who_load[64];
         format(who_load, sizeof(who_load), "online_%s", getDay());
           cache_get_field_content(0, who_load, AdminInfo[playerid][admPlayOnline]);*/
        new string[256];
        static const Admin_Names[8][32] = {"{33FF33}Мл.Модератор","{33FF33}Модератор","{33FF33}Ст.Модератор","{6666CC}Мл.Администратор","{6666CC}Администратор","{6666CC}Ст.Администратор","{FFFF00}Заместитель","{FF0000}Разработчик"};
        if(PI[playerid][pSex] == 1 && PI[playerid][pAdmin] != 8) format(string, sizeof(string), "[A] %s %s[%i] вошёл в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
        else if(PI[playerid][pSex] == 2 && PI[playerid][pAdmin] != 8)  format(string, sizeof(string), "[A] %s {FFFFFF}%s[%i] вошла в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
          new str[33];
          format(str, sizeof(str), "%s", Admin_Names[PI[playerid][pAdmin]-1]);
          AdminRang[playerid] = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0);
           Attach3DTextLabelToPlayer(AdminRang[playerid], playerid, 0.0, 0.0, 0.3);
           
           new Query[156];
        format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET `last_connect` = CURDATE() WHERE `name` = '%s' LIMIT 1",GetName(playerid));
        mysql_tquery(dbHandle, Query, "", "");
        MysqlUpdatePlayerInt(playerid, "admin", PI[playerid][pAdmin]);
        return 1;
          
        if(AdminInfo[playerid][admWarns] >= 3 && PI[playerid][pAdmin] < 8)
        {
          PI[playerid][pAdmin] --,AdminInfo[playerid][admWarns] = 0;
          new string[128];
          switch(PI[playerid][pAdmin])
          {
        case 0,1:
        {
          f(string,"[A] Администратор %s[%d] был снят. Причина: 3 выговора");
          SCM(playerid,COLOR_WHITE,"Вы были сняты по причине 3-ёх выговоров.");
          RemoveAdmin(playerid, GetName(playerid));
          }
        default:
          {
          f(string,"[A] Администратор %s[%d] был понижен до %d-ого уровня. Причина: 3 выговора",PI[playerid][pName],playerid,PI[playerid][pAdmin]);
          SCM(playerid,COLOR_WHITE,"Вы были понижены по причине 3-ёх выговоров! Больше не нарушайте админ.правил!");
          }
          }
          SendAdminMessage(COLOR_GREY, string);
        }
    }
    return 1;
}

 

Админ ранги - AdminRang
Идет после званий адм, скинул весь паблик 

Поделиться сообщением


Ссылка на сообщение
  • 0

Тебе нужно убрать это или что? 

Поищи еще так: 

if(PlayerInfo[playerid][pVIP] == 1(> 0 и т.д.)
AdminRang - это переменная? - скинь все, что с ней связано.

 

Поделиться сообщением


Ссылка на сообщение
  • 0
2 часа назад, Daniil Roslyakov сказал:

@SCRIPTMAN в 1 и во 2 сообщение все написано, в 1 сообщение есть скрины!

Так можно же сделать проверку, на выдачу текста к примеру, если ты заходишь в афк ты удаляешь разработчик и у тебя пишет афк, если же ты вышел из афк то опять появляется у тебя текст Разработчик ! 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Pikachu не в этом суть, суть  том что у випа над головой написано разработчик, а проверки на вип там нету

Поделиться сообщением


Ссылка на сообщение
  • 0
4 минуты назад, Daniil Roslyakov сказал:

@Pikachu не в этом суть, суть  том что у випа над головой написано разработчик, а проверки на вип там нету

Сорри чуть спутал по пробуй с проверкай на администратора

forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
	new rows, fields;
	cache_get_data(rows, fields);
	if(!rows)
	{
		SCM(playerid, COLOR_GREY, "[Ошибка] Неверный пароль");
		SetPVarInt(playerid, "attempt_pass", GetPVarInt(playerid, "attempt_pass") + 1);
		if(GetPVarInt(playerid, "attempt_pass") > 1)
		{
			DeletePVar(playerid, "attempt_pass");
			return SKick(playerid, 2112);
		}
	}
	else
	{
		AdminLogged[playerid] = true;
		PI[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
		AdminInfo[playerid][admGoto] = cache_get_row_int(0, 6, dbHandle);
		AdminInfo[playerid][admGethere] = cache_get_row_int(0, 7, dbHandle);
		AdminInfo[playerid][admSpectate] = cache_get_row_int(0, 8, dbHandle);
		AdminInfo[playerid][admKicked] = cache_get_row_int(0, 16, dbHandle);
		cache_get_row(0, 17, AdminInfo[playerid][admKickedReason], dbHandle, 32);
		AdminInfo[playerid][admSKicked] = cache_get_row_int(0, 18, dbHandle);
		AdminInfo[playerid][admWarned] = cache_get_row_int(0, 19, dbHandle);
		cache_get_row(0, 20, AdminInfo[playerid][admWarnedReason], dbHandle, 32);
		AdminInfo[playerid][admOffWarned] = cache_get_row_int(0, 21, dbHandle);
		cache_get_row(0, 22, AdminInfo[playerid][admOffWarnedReason], dbHandle, 32);
		AdminInfo[playerid][admBaned] = cache_get_row_int(0, 23, dbHandle);
		cache_get_row(0, 24, AdminInfo[playerid][admBanedReason], dbHandle, 32);
		AdminInfo[playerid][admOffBaned] = cache_get_row_int(0, 25, dbHandle);
		cache_get_row(0, 26, AdminInfo[playerid][admOffBanedReason], dbHandle, 32);
		AdminInfo[playerid][admMuted] = cache_get_row_int(0, 27, dbHandle);
		cache_get_row(0, 28, AdminInfo[playerid][admMutedReason], dbHandle, 32);
		AdminInfo[playerid][admAnsed] = cache_get_row_int(0, 29, dbHandle);
		cache_get_row(0, 30, AdminInfo[playerid][admAnsedText], dbHandle, 64);
		AdminInfo[playerid][admWarns] = cache_get_row_int(0, 31, dbHandle);
		AdminInfo[playerid][admPlayOnline] = cache_get_row_int(0, 32, dbHandle);
		/*new who_load[64];
		format(who_load, sizeof(who_load), "online_%s", getDay());
		cache_get_field_content(0, who_load, AdminInfo[playerid][admPlayOnline]);*/
		new string[256];
		if(PlayerInfo[playerid][pAdmin] > 0)
		{
			static const Admin_Names[8][32] = {"{33FF33}Мл.Модератор","{33FF33}Модератор","{33FF33}Ст.Модератор","{6666CC}Мл.Администратор","{6666CC}Администратор","{6666CC}Ст.Администратор","{FFFF00}Заместитель","{FF0000}Разработчик"};
			if(PI[playerid][pSex] == 1 && PI[playerid][pAdmin] != 8) format(string, sizeof(string), "[A] %s %s[%i] вошёл в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
			else if(PI[playerid][pSex] == 2 && PI[playerid][pAdmin] != 8)  format(string, sizeof(string), "[A] %s {FFFFFF}%s[%i] вошла в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
			new str[33];
			format(str, sizeof(str), "%s", Admin_Names[PI[playerid][pAdmin]-1]);
			AdminRang[playerid] = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0);
			Attach3DTextLabelToPlayer(AdminRang[playerid], playerid, 0.0, 0.0, 0.3);
		}
		new Query[156];
		format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET `last_connect` = CURDATE() WHERE `name` = '%s' LIMIT 1",GetName(playerid));
		mysql_tquery(dbHandle, Query, "", "");
		MysqlUpdatePlayerInt(playerid, "admin", PI[playerid][pAdmin]);
		return 1;

		if(AdminInfo[playerid][admWarns] >= 3 && PI[playerid][pAdmin] < 8)
		{
			PI[playerid][pAdmin] --,AdminInfo[playerid][admWarns] = 0;
			new string[128];
			switch(PI[playerid][pAdmin])
			{
				case 0,1:
				{
					f(string,"[A] Администратор %s[%d] был снят. Причина: 3 выговора");
					SCM(playerid,COLOR_WHITE,"Вы были сняты по причине 3-ёх выговоров.");
					RemoveAdmin(playerid, GetName(playerid));
				}
				default:
				{
					f(string,"[A] Администратор %s[%d] был понижен до %d-ого уровня. Причина: 3 выговора",PI[playerid][pName],playerid,PI[playerid][pAdmin]);
					SCM(playerid,COLOR_WHITE,"Вы были понижены по причине 3-ёх выговоров! Больше не нарушайте админ.правил!");
				}
			}
			SendAdminMessage(COLOR_GREY, string);
		}
	}
	return 1;
}

 

Заметка от RASTAMAN , создано

попробуй так----https://pawno-rus.ru/osnova.html/faq/kak-polzovatsya-spoylerom-r5/

Поделиться сообщением


Ссылка на сообщение
  • 0
1 минуту назад, Daniil Roslyakov сказал:

@Pikachu пробовал ошибка

Какая ошибка, или же не работает если ошибка кидай сюда

Отредактировано пользователем Pikachu

Поделиться сообщением


Ссылка на сообщение
  • 0

@Pikachu ошибка в том что там переменные кое какие не используются, могу конечно все взять под "{}", но не уверен что заработает так

Поделиться сообщением


Ссылка на сообщение
  • 0

@Daniil Roslyakov значит, вип авторизовывался под админку, или просто он зашел под IDшник игрока, который раньше авторизовывался под админкой. В OnPlayerDisconnect попробуй добавить и проверь: 

Destroy3DTextLabel(AdminRang[playerid]); 

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST 

Спойлер

D:åðâåð TimePlay RolePlayîä ñåðâåðà\gamemodes\timeplay.pwn(4353) : error 017: undefined symbol "Destroy3DTextLabel"
D:åðâåð TimePlay RolePlayîä ñåðâåðà\gamemodes\timeplay.pwn(4353) : warning 215: expression has no effect
D:åðâåð TimePlay RolePlayîä ñåðâåðà\gamemodes\timeplay.pwn(4353) : error 001: expected token: ";", but found "]"
D:åðâåð TimePlay RolePlayîä ñåðâåðà\gamemodes\timeplay.pwn(4353) : error 029: invalid expression, assumed zero
D:åðâåð TimePlay RolePlayîä ñåðâåðà\gamemodes\timeplay.pwn(4353) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.10.20150531	 	 	Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Daniil Roslyakov Destroy3DTextLabel замени на Delete3DTextLabel

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Узбек
      От Узбек
      Всем добрый вечер ребят! 
      Я начинающий, сегодня я вам сливаю команду 2(шт) на технические работы
      Ловите 
       
    • nazpol9
      От nazpol9
      Привет всем.

      У меня имеется мод для самп сервера и VPS с Ubuntu, на котором я пытаюсь его запустить.

      В чем суть проблемы: при запуске samp03svr, сервер запускается, но на версии 0.3.DL R-1. Когда я пытаюсь запустить этот же мод локально на Windows, сервер работает на версии 0.3.7 и я могу зайти на него без клиента 0.3.DL.

      Для решения этой проблемы я уже пробовал заменять инклуды и исполнительные файлы теми, что есть в архивах на официальном сайте сампа, перекомпилировал мод, и ничего не изменилось.
       
      #include <a_samp> #include <a_mysql> #include <foreach> #include <Pawn.RakNet> #include <streamer> #include <sscanf2> #include <float2> #include <crashdetect> #include <fmt> #include <a_http> #include <Pawn.CMD> #include <Pawn.Regex> #include <requests> #include <callbacks> #include <MD5> #include <mxdate> #include <TOTP> #include <gvar> #include <md-sort> #include <nex-ac> #include <weapon-config> #include <discord-connector> #include <3DTryg> #include <textdraw-streamer>  
      plugins crashdetect.so streamer.so textdraw-streamer.so sscanf.so pawnraknet.so pawncmd.so mysql.so requests.so profiler.so pawnregex.so TOTP.so gvar.so discord-connector.so

      Если у кого-то будут какие-либо догадки, прошу ими поделиться, если понадобится больше информации - я постараюсь её предоставить.