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

Question

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

 

Спойлер

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

 

Share this post


Link to post

14 answers to this question

  • 0

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

Share this post


Link to post
  • 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
Идет после званий адм, скинул весь паблик 

Share this post


Link to post
  • 0

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

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

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

 

Share this post


Link to post
  • 0
2 часа назад, Daniil Roslyakov сказал:

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

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

Share this post


Link to post
  • 0

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

Share this post


Link to post
  • 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/

Share this post


Link to post
  • 0
1 минуту назад, Daniil Roslyakov сказал:

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

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

Edited by Pikachu

Share this post


Link to post
  • 0

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

Share this post


Link to post
  • 0

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

Destroy3DTextLabel(AdminRang[playerid]); 

 

Share this post


Link to post
  • 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.

 

 

Share this post


Link to post
  • 0

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

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Ruman
      By Ruman
      Приветствую! У меня вопрос, связанный с загрузкой игрового аккаунта, просто я делаю регистрацию свою по уроку но в этом уроке функции MySQL из версии R39. Естественно при нажатии F5 выдаёт это:
      D:\Users\Ruman\Desktop\Time RP\gamemodes\project.pwn(1373) : error 017: undefined symbol "cache_get_field_content_int" D:\Users\Ruman\Desktop\Time RP\gamemodes\project.pwn(1374) : error 017: undefined symbol "cache_get_field_content_int" Код:
      forward LoadAcc(playerid); public LoadAcc(playerid) {     player_info[playerid][ID] = cache_get_field_content_int(0, "id", dbHandle);     player_info[playerid][LEVEL] = cache_get_field_content_int(0, "level", dbHandle); } Просто мне нужна другая версия данной функции под R40.
       
      Спасибо тем, что всегда рад помочь! 
       
      P.S Просто с MySQL я вообще в целом не знаком, поэтому так много вопросов.