Втупляю

До чегоже я иногда туплю, прям страшно.

Половину воскресения и сегодня четыре часа сегодня втуплял в код на предмет ошибок.

Ну если в воскресенье еще простительно (ездили на свадьбу к родственникам - Марину и Лешу еще раз поздравляю)
и там я в субботу уверенно накачался водкой по самые уши, то сегодня - просто позор.

Во-первых была ошибка, которая приводила к 100% загрузке, в Flash-процедуре doServer выполнялись проверки
в idle даже при отсутствии заданий.
Я ее "решил" - а именно if (!_root.http_done) return; и стал думать почему перестали посылаться запросы вообще, к слову сказать тормоза исчезли,
потом понял, что посылает запросы все та же процедура doServer, и естественно ничего не выполняется ибо _root.http_done изначально = 0.
пофиксил if (!_root.http_done && _root.server_send.length==0) return;.

Вторая часть марлезонского балета это то карта не смещалась относительно героя и видно было только звездный фон, хотя данные отправлялись и удачно парсились.
Центровка выполнялась следующим кодом:
offX = (mapwidth - heroX)*square_size/2;
offY = (mapheight- heroY)*square_size/2;

Короче ступил я по страшному, пришлось ввести screenX = 12, screenY = 9.
И соотвественно, новый код -

offX=(heroX-screenX/2)*square_size;
offY=(heroY-screenY/2)*square_size;
, вынес в отдельную процедуру под названием centerHero()

Третий баг, нашел уже когда радостно писал этот пост.
А именно код, который определяет нужно ли запросить сервер на обновление - он запрашивает каждый раз.
for(i=heroX-SEE_RADIUS;i≤heroX+SEE_RADIUS;i++)
for(j=heroY-SEE_RADIUS;j≤heroY+SEE_RADIUS;j++)
if (i>=0&&j>=0&&i≤mapwidth&&j≤mapheight)
{
c = map[j*mapwidth+i];
if (c==-1)
{
need_getmap=true;
m=",x="+i+"y="+j;
}

}
Но тут уже не я тупой, а Flash - все переменные по умолчанию текстовые, а не числовые, поэтому
i=heroX+SEE_RADIUS, при heroX=20 получалось 203

Я уже говорил, что ненавижу ActionScript?