shape1
shape2
shape3
shape4
shape7
shape8

Ошибки


Статус
Закрыто для дальнейших ответов.

Алексмаг

Новичок
Пользователь
17.03.2017
0
0
0
21
 
Код:
[debug] Run time error 4: "Array index out of bounds"
[debug]  Accessing element at index 11 past array upper bound 5
[debug] AMX backtrace:
[debug] #0 006304f8 in public admAuth (playerid=0, inputtext[]=@00611de0 "123456") at C:\Users\Максим\Desktop\Game RolePlay (1)\Game RolePlay\gamemodes\Profound.pwn:37069
Код:
        if(PI[playerid][pSex] == 1) format(string, sizeof(string), "[A] %s %s[%i] авторизовался [IP: %s | R-IP %s]", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid,  PI[playerid][pLastIP],PI[playerid][pRegIP]);
	else format(string, sizeof(string), "[A] %s %s[%i] авторизовалась [IP: %s | R-IP %s]", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid, ipplayer,PI[playerid][pIP]);
	SendAdminMessage(0x99CCFFFF, string);
	new day, month, year;
  	getdate(year, month, day);
	mysql_format(dbHandle, string, 144, "UPDATE "T_ADMIN" SET `last_connect` = '%d.%d.%d' WHERE `name` = '%s' LIMIT 1", day, month, year, GetName(playerid));
	mysql_tquery(dbHandle, string, "", "");
 

Aurum

Освоившийся
Пользователь
04.04.2017
2
21
0
Если не ошибаюсь это старый мод амазинга (attract?).

В павно, когда компилируешь ошибки есть?

 

JilkyZ

Освоившийся
Пользователь
22.03.2016
111
16
0
Попробуй вместо -1 поставить 0 или 1 в строке 37069

 

16Shadows

99% причин ошибок сидят в 50 сантиметрах от монито
Пользователь
15.03.2017
0
1
42
0
Предоставьте пару предыдущих строк, у компилятора идёт небольшой сдвиг.

 

Алексмаг

Новичок
Пользователь
17.03.2017
0
0
0
21
Код:
public admReg(playerid, name[])
{
	new rows, fields;
	cache_get_data(rows, fields);
	if(!rows) return 1;
	new inputtext[16], string[144], ipplayer[256];
	GetPVarString(playerid, "inputtext", inputtext, sizeof(inputtext));
	mysql_format(dbHandle, string, sizeof(string), "UPDATE "T_ADMIN" SET `password` = '%s' WHERE `name` = '%s' LIMIT 1", inputtext, GetName(playerid));
	mysql_tquery(dbHandle, string, "", "");
	PI[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
	GetPlayerIp(playerid,ipplayer,sizeof(ipplayer));
	MysqlUpdatePlayerInt(playerid, "admin", PI[playerid][pAdmin]);
	static const Admin_Names[6][32] = {"Хелпер","Мл. Администратор","Администратор","Зам. ГА","Гл. Администратор","Руководитель"};
	if(PI[playerid][pSex] == 1) format(string, sizeof(string), "[A] %s %s[%i] авторизовался [IP: %s | R-IP %s]", Admin_Names[PI[playerid][pAdmin] -1], GetName(playerid), playerid, PI[playerid][pLastIP],PI[playerid][pRegIP]);
	else format(string, sizeof(string), "[A] %s %s[%i] авторизовалась [IP: %s | R-IP %s]", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid, ipplayer,PI[playerid][pIP]);
	SendAdminMessage(0x99CCFFFF, string);
	AdminLogged[playerid] = true;
	new day, month, year;
	getdate(year, month, day);
	mysql_format(dbHandle, string, sizeof(string), "UPDATE "T_ADMIN" SET `last_connect` = '%d.%d.%d' WHERE `name` = '%s' LIMIT 1", day, month, year, GetName(playerid));
	mysql_tquery(dbHandle, string, "", "");
	return 1;
}
 

16Shadows

99% причин ошибок сидят в 50 сантиметрах от монито
Пользователь
15.03.2017
0
1
42
0
Проверьте уровень администратора игрока, на которого выдают такую ошибку. Если уровень выше 6, то в этом и состоит проблема.

 

Алексмаг

Новичок
Пользователь
17.03.2017
0
0
0
21
Можно пожалуйста пример, а то не могу найти?

 

Алексмаг

Новичок
Пользователь
17.03.2017
0
0
0
21
if(!level)
{
if(GetPlayerID(name) != INVALID_PLAYER_ID) PI[GetPlayerID(name)][pAdmin] = 0;
mysql_format(dbHandle, string, sizeof(string), "DELETE FROM "T_ADMIN" WHERE `name`='%s'", name);
mysql_tquery(dbHandle, string, "", "");
mysql_format(dbHandle, string, sizeof(string), "UPDATE "T_ACCOUNTS" SET `admin` = '0' WHERE `name` = '%s'", name);
mysql_tquery(dbHandle, string, "", "");
format(string, sizeof(string), "Вы сняли %s с должности администратора", name);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "%s снял %s с должности администратора", GetName(playerid), name);
SendLog("DeleteAdmin", string);
}
else
{
if(GetPlayerID(name) != INVALID_PLAYER_ID) PI[GetPlayerID(name)][pAdmin] = level;
mysql_format(dbHandle, string, sizeof(string), "UPDATE "T_ADMIN" SET `level` = '%d' WHERE `name` = '%s' LIMIT 1", level, name);
mysql_tquery(dbHandle, string, "", "");
format(string, sizeof(string), "Вы установили уровень администратора %s на %i", name, level);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "%s установил уровень администратора %s на %i", GetName(playerid), name, level);
SendLog("EditAdmin", string);
}
}
else
{
if(!level) return SendClientMessage(playerid, COLOR_GREY, "Игрок не администратор");
new data[15];
getdate(years, months, days);
format(data, sizeof(data), "%02d.%02d.%04d", days, months, years);
mysql_format(dbHandle, string, sizeof(string), "INSERT INTO "T_ADMIN" (`name`, `level`, `last_connect`, `put_admin`, `data`) VALUES ('%s', %d, '%s', '%s', '%s')", name, level, data, GetName(playerid), data);
mysql_tquery(dbHandle, string, "", "");
format(string, sizeof(string), "%s добавлен в список администрации. Уровень полномочий %i", name, level);
SendClientMessage(playerid, COLOR_GREEN, string);
format(string, sizeof(string), "%s добавил в список администрации %s (%i уровень)", GetName(playerid), name, level);
SendLog("SetAdmin", string);
if(GetPlayerID(name) != INVALID_PLAYER_ID)
{
format(string, sizeof(string), "%s назначил Вас администратором", GetName(playerid));
SendClientMessage(GetPlayerID(name), COLOR_YELLOW, string);
}
}

Вот наверно.

 

16Shadows

99% причин ошибок сидят в 50 сантиметрах от монито
Пользователь
15.03.2017
0
1
42
0
Найдите в базе данных аккаунт этого игрока и посмотрите его уровень администратора

 

16Shadows

99% причин ошибок сидят в 50 сантиметрах от монито
Пользователь
15.03.2017
0
1
42
0
У Вас массив Admin_Names подогнан под 6 уровеней (6 - максимальный), поэтому возникла ошибка. Или расширьте массив, или ограничьте макс. уровень администратора 6, или сделайте проверку по типу "Если уровень администратора меньше или равен 6, вывести сообщение."

 

Алексмаг

Новичок
Пользователь
17.03.2017
0
0
0
21
for

Код:
[debug] #0 0001bf18 in public Itter_OnPlayerDisconnect (playerid=0, reason=1) at C:\Users\Desktop\Profound RolePlay (1)\Profound RolePlay\gamemodes\Profound.pwn:3334
Код:
mat(string1, 128, "[A] %s[%d] отключился | IP: %s | Причина: %s.",PI[playerid][pName],playerid,PI[playerid][pIP],string1);
	SendAdminMessage(COLOR_DARKORANGE, string1);
    slotUsed{playerid} = false;
    PI[playerid][pOnline] = 0;
    KillTimer(player_timer[playerid]);
    if(PI[playerid][cModel] > 0) Delete3DTextLabel(VehicleLabel[PI[playerid][PlayerCarID]]);
	if(IsPlayerAttachedObjectSlotUsed(playerid, 0)) RemovePlayerAttachedObject(playerid, 0);
	if(IsPlayerAttachedObjectSlotUsed(playerid, 1)) RemovePlayerAttachedObject(playerid, 1);
	if(IsPlayerAttachedObjectSlotUsed(playerid, 2)) RemovePlayerAttachedObject(playerid, 2);
	if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
	if(IsPlayerAttachedObjectSlotUsed(playerid, 4)) RemovePlayerAttachedObject(playerid, 4);
	if(IsPlayerAttachedObjectSlotUsed(playerid, 5)) RemovePlayerAttachedObject(playerid, 5);
	new Query[128];
	format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET timemin='%d' WHERE name='%s' LIMIT 1", AdminInfo[playerid][admTimeMin], GetName(playerid));
	mysql_tquery(dbHandle, Query, "", "");
	if(GetPVarInt(playerid,"DrawFill") > 0) DeletePVar(playerid,"DrawFill");
	if(UseGPS[playerid])
Появилась ещё одна ошибка.

 
Статус
Закрыто для дальнейших ответов.