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

Question

Над всеми игроками в какое то время начинается писаться Заместитель/Разроботчик, а они только зарегистрировались, как исправить?

 

Share this post


Link to post

21 answers to this question

  • 0

@Daniil Roslyakov в первом случае код лесенкой выравняйте, во втором удалите строку под номером 31423

Share this post


Link to post
  • 0

@Daniil Roslyakov, В OnPlayerDisconnect:

Delete3DTextLabel(AdminRang[playerid]); 

Там, где объявляется переменная AdminRang; 

new Text3D: AdminRang;

удалите оттуда и в начало мода:

new Text3D: AdminRang[MAX_PLAYERS]; 

Ну и везде замените AdminRang на AdminRang[playerid]. 

Будут ошибки / баги, пишите. 

 

Edited by stibs

Share this post


Link to post
  • 0

@stibs 

Спойлер

J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4213) : warning 217: loose indentation
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4221) : error 017: undefined symbol "AdminRang"
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4221) : warning 215: expression has no effect
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4221) : error 001: expected token: ";", but found "]"
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4221) : error 029: invalid expression, assumed zero
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4221) : 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.



4213:      new str[15];
4221:      Delete3DTextLabel(AdminRang[playerid]);

 

Share this post


Link to post
  • 0

@stibs

Спойлер

J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4215) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4224) : warning 213: tag mismatch
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4226) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31413) : warning 219: local variable "AdminRang" shadows a variable at a preceding level
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31414) : error 028: invalid subscript (not an array or too many subscripts): "AdminRang"
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31414) : warning 215: expression has no effect
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31414) : error 001: expected token: ";", but found "]"
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31414) : error 029: invalid expression, assumed zero
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31414) : 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.


4215:      new str[15];
4224:       Delete3DTextLabel(AdminRang[playerid]);
4226:    slotUsed{playerid} = false;

31413:          new Text3D: AdminRang;
31414:          AdminRang[playerid] = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0);


Так токо хуже

Share this post


Link to post
  • 0

@Daniil Roslyakov внимательно пост надо читать и ошибок никаких не будет

4 часа назад, stibs сказал:

Там, где объявляется переменная AdminRang; 


new Text3D: AdminRang;

удалите оттуда и в начало мода:

удалить строку 31413 нужно

Share this post


Link to post
  • 0

@stibs 

Спойлер

J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4215) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4224) : error 028: invalid subscript (not an array or too many subscripts): "AdminRang"
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4224) : warning 215: expression has no effect
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4224) : error 001: expected token: ";", but found "]"
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4224) : error 029: invalid expression, assumed zero
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(4224) : 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.
 


 

4215:      new str[15];
4224:      Delete3DTextLabel(AdminRang[playerid]);

 

Share this post


Link to post
  • 0

@Daniil Roslyakov значит вы что-то сделали не так. Я выложил полностью готовый вариант. В каком паблике находится строка 4224? 

Edited by stibs

Share this post


Link to post
  • 0

@stibs все нормально вставлена, и сейчас ошибка только в 

Delete3DTextLabel(AdminRang[playerid]);

 

Share this post


Link to post
  • 0

@Daniil Roslyakov если все нормально, то и ошибок нет, вам приснилось наверное. 

Скидывайте паблик с авторизацией, как там все вставлено. 

Share this post


Link to post
  • 0

@stibs 

Спойлер

      new str[15];
      format(str, sizeof(str), "online_%s", getDay());
      new Query[256];
      format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET %s='%d',`onlineday` = '%d' WHERE `name` ='%s'", str, AdminInfo[playerid][admPlayOnline], AdminInfo[playerid][admPlayOnline], GetName(playerid));
      mysql_tquery(dbHandle, Query, "", "");
      AdminInfo[playerid][admOnline] = 0;
      printf("%d - adminfo | %d - timeday", AdminInfo[playerid][admPlayOnline], PI[playerid][pTimeDay]);
      printf("%s - query", Query);
      Delete3DTextLabel(AdminRang[playerid]);


 

Спойлер

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;
}

 

Share this post


Link to post
  • 0

@Daniil Roslyakov Покажите все, что связано с AdminRang (CTRL + F и вводим туда "AdminRang" - без кавычек).  

Share this post


Link to post
  • 0

@stibs 

Спойлер

new Text3D: AdminRang;


Delete3DTextLabel(AdminRang[playerid]);



          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);

 

Share this post


Link to post
  • 0

@Daniil Roslyakov ну вот ваша невнимательность. Я же писал добавить 

new Text3D: AdminRang[MAX_PLAYERS]; 

А вы добавили

new Text3D: AdminRang; 

Отличия на лицо. 

Share this post


Link to post
  • 0

@stibs 

Спойлер

J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4225) : warning 217: loose indentation
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(31421) : warning 225: unreachable code
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(31424) : warning 219: local variable "string" shadows a variable at a preceding level
Pawn compiler 3.10.20150531              Copyright (c) 1997-2006, ITB CompuPhase

Header size:          17012 bytes
Code size:          8145036 bytes
Data size:          2645252 bytes
Stack/heap size:      16384 bytes; estimated max. usage=6682 cells (26728 bytes)
Total requirements:10823684 bytes

3 Warnings.

4225:     slotUsed{playerid} = false;
31421:         if(AdminInfo[playerid][admWarns] >= 3 && PI[playerid][pAdmin] < 8)
31424:          new string[128];

 

Share this post


Link to post
  • 0

@stibs 

Спойлер

          
     


   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-ёх выговоров.");

 

 

Edited by stibs

Share this post


Link to post
  • 0

@Daniil Roslyakov что-то мне подсказывает, что эти ошибки не связаны с системой текстдравов. Скиньте полностью паблик, в котором находятся эти ошибки. 

Share this post


Link to post
  • 0

@stibs 

Спойлер

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;
}

 

Share this post


Link to post
  • 0
Спойлер

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

 

Я бы советовал вам не импровизировать в коде, был лишний return 1; 

Share this post


Link to post
  • 0

@stibs 

Спойлер

J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(4225) : warning 217: loose indentation
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(31423) : warning 219: local variable "string" shadows a variable at a preceding level
Pawn compiler 3.10.20150531              Copyright (c) 1997-2006, ITB CompuPhase

Header size:          17012 bytes
Code size:          8145012 bytes
Data size:          2645252 bytes
Stack/heap size:      16384 bytes; estimated max. usage=6682 cells (26728 bytes)
Total requirements:10823660 bytes

2 Warnings.
 




4225:     slotUsed{playerid} = false;
31423:          new string[128];

 

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

    • Chopick
      By Chopick
      Всем здравствуйте! Делаю систему домов/бизнесов по туториалу knox know с плагином GoodArea. Есть проблема, если заходишь в интерьер бизнеса, то когда выходишь спавнит почему-то на пикап дома.

      Вот енумы:
       
      #define MAX_HOUSES 1000 #define MAX_BIZS 1000 enum house {         hID,         STREAMER_TAG_PICKUP:hPICKUP,         STREAMER_TAG_AREA:hAREA,         hOWNER[MAX_PLAYER_NAME],         STREAMER_TAG_3D_TEXT_LABEL:hTEXT[256],         STREAMER_TAG_MAP_ICON:hICON,         hPRICE,         hCLASS,         hINTERIOR,         Float:hX,         Float:hY,         Float:hZ,         Float:hA,         hCONDITION // Закрыт/Открыт } new House[MAX_HOUSES][house]; new Houses; new HouseGroup; enum biz {         bID,         STREAMER_TAG_PICKUP:bPICKUP,         STREAMER_TAG_AREA:bAREA,         bOWNER[MAX_PLAYER_NAME],         STREAMER_TAG_3D_TEXT_LABEL:bTEXT[256],         STREAMER_TAG_MAP_ICON:bICON,         bNAME[25],         bPRICE,         bTYPE,         bINTERIOR,         Float:bX,         Float:bY,         Float:bZ,         Float:bA } new Biz[MAX_BIZS][biz]; new Bizs; new BizGroup; enum interior_info {         intID,         intNAME[41],         intINTERIOR,         Float:intX,         Float:intY,         Float:intZ,         Float:intA,         STREAMER_TAG_AREA:intAREA } new Interior[MAX_INTERIORS][interior_info]; new Interiors; new InteriorGroup; Вот что у меня в OnGameModeInit:
      HouseGroup = CreateGroupGoodAreas(GoodArea:HouseEnter); InteriorGroup = CreateGroupGoodAreas(GoodArea:InteriorExit); BizGroup = CreateGroupGoodAreas(GoodArea:BizArea);  
      Вот стоки:
      GAResponse:HouseEnter(playerid, response, key, index) {         switch(response)         {             case GA_RESPONSE_PRESS_KEY:             {                 if(key & KEY_WALK)                 {                 if(House[index][hCONDITION] > 0 && House[index][hOWNER] == player_info[playerid][NAME] || House[index][hCONDITION] == 0)                 {                                         GoToInterior(playerid, House[index][hINTERIOR]);                                         SetPlayerVirtualWorld(playerid, index);                                 }                                 else if(House[index][hCONDITION] > 0 && House[index][hOWNER] != player_info[playerid][NAME]) return SCM(playerid, COLOR_RED, "[Ошибка]{ffffff}Этот дом закрыт на ключ!");                         }                 }                 case GA_RESPONSE_ENTER:                 {                     if(House[index][hOWNER] == 0)                     {                         CreateNoOwnerHouseTD(playerid);                         for(new i = 0; i < sizeof NoOwnerTextDraw_PTD[]; i++)                         {                             PlayerTextDrawShow(playerid, NoOwnerTextDraw_PTD[playerid][i]);                                 }                                 new price[8];                                 format(price, sizeof(price), "%d$", House[index][hPRICE]);                                 PlayerTextDrawSetString(playerid, NoOwnerTextDraw_PTD[playerid][2], price);                                 new id[9];                                 format(id, sizeof(id), "%d", House[index][hID]);                                 PlayerTextDrawSetString(playerid, NoOwnerTextDraw_PTD[playerid][0], id);                                 switch(House[index][hCLASS])                                 {                                     case 1: PlayerTextDrawSetString(playerid, NoOwnerTextDraw_PTD[playerid][1], "A");                                     case 2: PlayerTextDrawSetString(playerid, NoOwnerTextDraw_PTD[playerid][1], "B");                                     case 3: PlayerTextDrawSetString(playerid, NoOwnerTextDraw_PTD[playerid][1], "C");                                 }                                 for(new i = 0; i < sizeof NoOwnerTextDraw_TD; i++)                         {                             TextDrawShowForPlayer(playerid, NoOwnerTextDraw_TD[i]);                                 }                         }                 }                 case GA_RESPONSE_LEAVE:                 {                 for(new i = 0; i < sizeof NoOwnerTextDraw_PTD[]; i++)                 {                     PlayerTextDrawHide(playerid, NoOwnerTextDraw_PTD[playerid][i]);                         }                         for(new i = 0; i < sizeof NoOwnerTextDraw_TD; i++)                 {                     TextDrawHideForPlayer(playerid, NoOwnerTextDraw_TD[i]);                         }                 }         }         return 1; } GAResponse:BizArea(playerid, response, key, index) {         switch(response)         {             case GA_RESPONSE_PRESS_KEY:             {                 if(key & KEY_WALK)                 {                     GoToInteriorBiz(playerid, Biz[index][bINTERIOR]);                                 SetPlayerVirtualWorld(playerid, index);                 }                 }         }         return 1; } GAResponse:InteriorExit(playerid, response, key, index) {         switch(response)         {             case GA_RESPONSE_PRESS_KEY:             {                 new world = GetPlayerVirtualWorld(playerid);                 if(key & KEY_WALK)                 {                     if(world < MAX_HOUSES)                     {                         SetPlayerInterior(playerid, 0);                             SetPlayerVirtualWorld(playerid, 0);                             SetPlayerPos(playerid, House[world][hX], House[world][hY], House[world][hZ]);                             SetPlayerFacingAngle(playerid, House[world][hA]);                                 }                                 else if(world < MAX_HOUSES + MAX_BIZS)                     {                         world -= MAX_HOUSES;                                         printf("%d index world", world);                         SetPlayerInterior(playerid, 0);                             SetPlayerVirtualWorld(playerid, 0);                             SetPlayerPos(playerid, Biz[world][bX], Biz[world][bY], Biz[world][bZ]);                             SetPlayerFacingAngle(playerid, Biz[world][bA]);                                 }                         }                         if(key & KEY_CTRL_BACK)                         {                             if(player_info[playerid][HOUSE] != House[world][hID]) return SCM(playerid, COLOR_RED, "[Ошибка]{ffffff}Вы не владелец данного дома!");                             new dialog[256];                                 format(dialog, sizeof(dialog),                                         "{ffd900}[1]{ffffff}Информация о доме\n\                                         {ffd900}[2]{ffffff}%s дом",                                 (House[world][hCONDITION] == 1) ? ("{00ff00}Открыть") : ("{ff0000}Закрыть"));                             SPD(playerid, DLG_HMENU, DIALOG_STYLE_LIST, "{ffd900}Меню дома", dialog, "Выбрать", "Закрыть");                             return 1;                         }                 }         }         return 1; } stock GoToInterior(playerid, interior) {     for(new i = 0; i < Interiors; i++)         {             if(Interior[i][intID] != interior) continue;             SetPlayerInterior(playerid, Interior[i][intINTERIOR]);             SetPlayerPos(playerid, Interior[i][intX], Interior[i][intY], Interior[i][intZ]);             SetPlayerFacingAngle(playerid, Interior[i][intA]);             SetPlayerCheckpoint(playerid, Interior[i][intX], Interior[i][intY], Interior[i][intZ], 1.0);             new str[128];             format(str, sizeof(str),                         "Нажмите \"ALT\" для выхода\n\                         Нажмите \"H\", чтобы открыть меню дома");             Create3DTextLabel(str, -1, Interior[i][intX], Interior[i][intY], Interior[i][intZ], 15.0, 0, 1);             return 1;         }         return 0; } stock GoToInteriorBiz(playerid, interior) {     for(new i = 0; i < Interiors; i++)         {             if(Interior[i][intID] != interior) continue;             SetPlayerInterior(playerid, Interior[i][intINTERIOR]);             SetPlayerPos(playerid, Interior[i][intX], Interior[i][intY], Interior[i][intZ]);             SetPlayerFacingAngle(playerid, Interior[i][intA]);             SetPlayerCheckpoint(playerid, Interior[i][intX], Interior[i][intY], Interior[i][intZ], 1.0);             new str[128];             format(str, sizeof(str),                         "Нажмите \"ALT\" для выхода");             Create3DTextLabel(str, -1, Interior[i][intX], Interior[i][intY], Interior[i][intZ], 15.0, 0, 1);             return 1;         }         return 0; }  
       
      Что мне делать, подскажите пожалуйста?