07.01.2016, 03:44
Hello, in my script i have moveable doors and they havent been working, and ive been getting a debug from console,
here is my code with the error line marked from the debug.
Код:
[20:55:07] [debug] Run time error 4: "Array index out of bounds" [20:55:07] [debug] Accessing element at index 4071 past array upper bound 1199 [20:55:07] [debug] AMX backtrace: [20:55:07] [debug] #0 0016062c in public LoadMoveDoors () at C:\Users\Nick\Desktop\Ingenious!\gamemodes\test2.pwn:19625
Код:
public LoadMoveDoors()
{
new rows, fields;
new total = 0;
new object, id, model, faction, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, Float:openspeed, Float:movex, Float:movey, Float:movez, interior, world, name[256];
cache_get_data(rows, fields);
if(rows)
{
while(total < rows)
{
id = cache_get_row_int(total, 0),
model = cache_get_row_int(total, 1),
faction = cache_get_row_int(total, 2),
x = cache_get_row_float(total, 3),
y = cache_get_row_float(total, 4),
z = cache_get_row_float(total, 5),
rx = cache_get_row_float(total, 6),
ry = cache_get_row_float(total, 7),
rz = cache_get_row_float(total, 8),
interior = cache_get_row_int(total, 8),
world = cache_get_row_int(total, 10),
cache_get_row(total, 11, name, dbHandle, 128),
openspeed = cache_get_row_float(total, 12),
movex = cache_get_row_float(total, 13),
movey = cache_get_row_float(total, 14),
movez = cache_get_row_float(total, 15);
object = CreateDynamicObject(model, x, y, z, rx, ry, rz, world, -1, -1, 200.0);
Doors[object][doorID] = id;
Doors[object][doorModel] = model;
Doors[object][doorFaction] = faction;
Doors[object][doorPosX] = x;
Doors[object][doorPosY] = y;
Doors[object][doorPosZ] = z;
Doors[object][doorPosRX] = rx;
Doors[object][doorPosRY] = ry;
Doors[object][doorPosRZ] = rz;
Doors[object][doorOpenSpeed] = openspeed;
Doors[object][doorMoveX] = movex;
Doors[object][doorMoveY] = movey;
Doors[object][doorMoveZ] = movez;
Doors[object][doorInterior] = interior;
Doors[object][doorVirtualWorld] = world;
format(Doors[object][doorName], 256, "%s", name); - ERROR LINE
Doors[object][doorObjectOn] = 1;
Doors[object][doorObject] = object;
total++;
}
}
format(msg,sizeof(msg), "Loaded %d dynamic movable doors from MySQL.", total);
printf(msg);
return 1;
}

