Сообщение от Sfonsper
И как это сделать ?
|
Такие вещи, как
castle3a=FindChild(castle,"door1a")
и т.д. лучше прописать в txt-файлик и читать пр истарте программы название объекта и того, что с ним нужно сделать. Так убиваются два зайца: когда надо что-то добавить - не надо лезть в код, + уменьшается время компиляции за счёт уменьшения кода.
Однотипные объекты типа кнопок можно сделать экземплярами типов, это упростит в конечном итоге добавление новых таких объектов.
В конечном итоге надо стремиться, чтоб создание нового объекта сводилось чему-то такому:
B.Button = CreateButton()
ButtonSetID(B, "Кнопка1")
ButtonSetPosition(B, 10,10,20)
ButtonSetRotation(B, 0,90,0)
ButtonSetText(B, "Открыть дверь")
ButtonSetAction(B, "Дверь1", OPEN_DOOR)
Т.е. по сути это стремление к С++шному ООП.
По оформлению кода: настоятельно советую табуляциями отделять условия, циклы и т.д., т.е. вместо:
If ko=1
If dist2>10
ko=0
EndIf
EndIf
If dist < 10
If KeyHit (18) :FlushKeys
ko=1
EndIf
EndIf
Делать конструкцию типа такой:
If ko=1
If dist2>10
ko=0
EndIf
EndIf
If dist < 10
If KeyHit (18) :FlushKeys
ko=1
EndIf
EndIf
Тут сразу же видно, где какое условие начинается, где вложенные условия и т.д., это улучшит читаемость кода и поиск ошибки, особенно незакрытых условий/циклов/функций.
Вообще спасибо за демку, побегал, даже пару загадок разгадал
Зря наезжаете, я считаю, что рабочая демка (пусть в ней пока почти ничего нет) - главный показатель.