forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Основной форум (http://forum.boolean.name/forumdisplay.php?f=49)
-   -   Помогите разобраться с "uses" (http://forum.boolean.name/showthread.php?t=14647)

runforlife 28.04.2011 23:02

Помогите разобраться с "uses"
 
Хочу перенести одну игру с Delphi на MP. Структура программы следующая:

Главный модуль:
Код:

unit Main;

interface

uses
  LoadLevelFromFile, Kolobok_01, ObrabotkaPolya;
  Модули;

var
  Переменные;

implementation

end.

Из главного модуля вызываются процедуры из модулей объявленных в uses.

Сами же модули имеют структуру следующую:
Код:

unit Kolobok_01;

interface

implementation

uses
    Main;

end.

Модули пользуются переменными из главного модуля программы.

Когда я делаю такую же структуру как и delphi, MP выбивает ошибку:
Код:

Building main.mpproj
Started at 28.04.2011 20:50:07
Compiler Communication Method: Console Redirection (Win32.Common)
Detecting units of 'Kolobok_01.mpsrc'...
  using unit main
Detecting units of 'main.mpsrc'...
  using unit kolobok_01
Solving compilation order...
Circular unit dependencies between unit main and Kolobok_01.
ERROR: could not solve unit dependency

Помогите пожалуйста!

baton4ik 28.04.2011 23:05

Ответ: Помогите разобраться с "uses"
 
Даже не можешь перевести, что говорит компилятор!
У тебя в модуле "main" объявлен модуль "Kolobok_01", а в нём объявлен модуль "main"! Так нельзя.

runforlife 28.04.2011 23:31

Ответ: Помогите разобраться с "uses"
 
Цитата:

Сообщение от baton4ik (Сообщение 186955)
Даже не можешь перевести, что говорит компилятор!
У тебя в модуле "main" объявлен модуль "Kolobok_01", а в нём объявлен модуль "main"! Так нельзя.

В delphi такая структура работает.

Тогда встречный вопрос: как мне сделать так, что-бы процедуры модуля Kolobok_01, получили доступ к переменным main? При том, что сами процедуры Kolobok_01 вызываю в модуле main.

AVL 28.04.2011 23:41

Ответ: Помогите разобраться с "uses"
 
Я могу посоветовать разве что перенести процедуды из main в kolobok_01. Что мешает так сделать?

runforlife 29.04.2011 12:03

Ответ: Помогите разобраться с "uses"
 
С переменными разобрался.

Что-бы не флудить темами задам еще вопрос не по теме:

После компиляции проекта вылезла другая проблема. Размер jar файла на выходе 87 КБ, что на 27 КБ больше, чем может запустить моя старая нокия. Рисунки PNG я максимально оптимизировал. Подскажите пожалуйста, как мне еще больше можно сжать проект, не переписывая код?

DIMMON4IK 29.04.2011 20:23

Ответ: Помогите разобраться с "uses"
 
jar файл это по сути обычный zip архив, просто переархивируй его с большим параметром сжатия

PassCall 08.05.2011 16:46

Ответ: Помогите разобраться с "uses"
 
Цитата:

Сообщение от DIMMON4IK (Сообщение 187033)
jar файл это по сути обычный zip архив, просто переархивируй его с большим параметром сжатия

1.После этого телефон может не распознать архив.
2. Сжатие сильно не уменьшится

Igor 09.05.2011 01:28

Ответ: Помогите разобраться с "uses"
 
Может быть rar а не zip?
В файле .jad хранится информация о размере jarфайла с точностью до байта.
Моя нокиа обходится без jad-файлика, так что экспериментируй.
Использование floating-point немного увеличивает размер проекта.
Можно пройтись по программе, выкинуть всё лишнее и вставить некоторые маленькие функции в код (если от этого станет компактнее и понятнее).
Вариант на крайний случай-хранить картинку вдвое меньшего размера (в четыре раза меньше памяти), а при загрузке растягивать до нормального размера при помощи библиотеки (не помню название)

cherepets 09.05.2011 11:15

Ответ: Помогите разобраться с "uses"
 
Нет, zip. Passcall правильно сказал.
Библиотека для растягивания - Lib_canvas


Часовой пояс GMT +4, время: 09:11.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot