Вот вам пример.
Сделал инвентарь, и он функционировал на 70% (основные функции). Он работал в Flash плеере, но не в игре. Когда я прописал новое действие в игре, которое отображает инвентарь на экран, я стал тестировать его в игре. Практически ничего из того что я сделал, не работало! Я попытался отдебагить систему, добавил логи в самые важные функции. Одна из них оказалась ключевой. Она должна была проверять, находится ли клип в определённой области или нет. Если проверяемый клип находится в своей области, цикл переходит к следующему...
Лог из Flash:
(обратите внимание на строку IT MEANS THAT..., которая выводит сравниваемое значение с тем которое мы имеем)
|
Source code
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
GNFC type = 1
entered the loop and cur= 1
isCellFree| check index: 1 X: 103.6 Y: 232.25
isCellFree| slot1 movie.x = 103.6 movie.y = 232.25
isCellFree| i = 1 movie.x = 103.6 movie.y = 232.25
isCellFree| cell 1 is not empty
isCellFree| cell 1 result is false
entered the loop and cur= 2
isCellFree| check index: 2 X: 165.6 Y: 232.25
isCellFree| slot1 movie.x = 103.6 movie.y = 232.25
isCellFree| i = 1 movie.x = 103.6 movie.y = 232.25
isCellFree| cell 1 is FREE!!!
isCellFree| CELL index 2 is FREE!!!
IT MEANS THAT 165.6 isn't equal to 103.6 !!!!
isCellFree| cell 2 result is true
GNFC type = 1
entered the loop and cur= 1
isCellFree| check index: 1 X: 103.6 Y: 232.25
isCellFree| slot1 movie.x = 103.6 movie.y = 232.25
isCellFree| i = 1 movie.x = 103.6 movie.y = 232.25
isCellFree| cell 1 is not empty
isCellFree| cell 1 result is false
entered the loop and cur= 2
isCellFree| check index: 2 X: 165.6 Y: 232.25
isCellFree| slot1 movie.x = 103.6 movie.y = 232.25
isCellFree| i = 1 movie.x = 103.6 movie.y = 232.25
isCellFree| cell 1 is FREE!!!
isCellFree| CELL index 2 is FREE!!!
IT MEANS THAT 165.6 isn't equal to 103.6 !!!!
isCellFree| cell 2 result is true
New free cell is 2
New cell pos is X: 165.6 and Y: 232.25
|
А ниже лог уже из игры:
|
Source code
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
[Warning] Unknown command: --------------
<Flash> GNFC type = 1 [Libs/UI/Inventory_cs4.swf]
<Flash> entered the loop and cur= 1 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| check index: 1 X: 103.6 Y: 232.25 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| slot1 movie.x = 103.6 movie.y = 232.25 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| i = 1 movie.x = 103.6 movie.y = 232.25 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| cell 1 is FREE!!! [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| CELL index 1 is FREE!!! [Libs/UI/Inventory_cs4.swf]
<Flash> IT MEANS THAT 103.6 isn't equal to 103.6 !!!! [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| cell 1 result is true [Libs/UI/Inventory_cs4.swf]
<Flash> GNFC type = 1 [Libs/UI/Inventory_cs4.swf]
<Flash> entered the loop and cur= 1 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| check index: 1 X: 103.6 Y: 232.25 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| slot1 movie.x = 103.6 movie.y = 232.25 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| i = 1 movie.x = 103.6 movie.y = 232.25 [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| cell 1 is FREE!!! [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| CELL index 1 is FREE!!! [Libs/UI/Inventory_cs4.swf]
<Flash> IT MEANS THAT 103.6 isn't equal to 103.6 !!!! [Libs/UI/Inventory_cs4.swf]
<Flash> isCellFree| cell 1 result is true [Libs/UI/Inventory_cs4.swf]
<Flash> New free cell is 1 [Libs/UI/Inventory_cs4.swf]
<Flash> New cell pos is X: 103.6 and Y: 232.25 [Libs/UI/Inventory_cs4.swf]
....
|
ФАААК!!!!
Строчка 8 говорит мне, что 103.8 не равно 103.8 Я провёл битую пару дней выясняя это
ЧЁРТОВ ЗАБАГОВАННЫЙ СТАРЫЙ SCALEFORM!!!!!!!!!!!!!