|
Результаты поиска
| |
| TimKruz | Дата: Суббота, 15 Декабря 2012, 23:16 | Сообщение # 2461 | Тема: Констурктор |
старожил
Сейчас нет на сайте
| Chemodan, вот тема про этот конструктор.
|
|
|
| |
| TimKruz | Дата: Воскресенье, 16 Декабря 2012, 20:02 | Сообщение # 2462 | Тема: Поведайте о Hostinger.ru |
старожил
Сейчас нет на сайте
| Quote (Romantik) Ребят, я не понимаю, какой смысл использовать бесплатный хостинг. Бесплатный хостинг - идеальный выход для тех, кто не хочет или не может вкладывать какие-либо деньги в свой веб-проект, потому что, например, только учатся веб-разработке, или их проект чисто некоммерческий и не принесёт дохода; однако требуется достойный хостинг с необходимыми конкретному веб-проекту функциями. Кроме того, бесплатный хостинг подойдёт для тестирования теоретически прибыльных проектов, если, конечно, функций бесплатного хватает для работы проекта.
aalla, для крупного и/или прибыльного проекта всё равно потребуется арендовать хостинг, потому что ограничения бесплатных сайтовых хостингов часто не позволяют развернуться нормальному проекту, к тому же, техподдержка стремится помочь именно заплатившим пользователям (а от помощи халявщикам пользы мало), так что все проблемы с работой проекта будут решаться быстрее.
|
|
|
| |
| TimKruz | Дата: Понедельник, 17 Декабря 2012, 19:28 | Сообщение # 2463 | Тема: Free Pascal: проеверка с 2-мя вариантами |
старожил
Сейчас нет на сайте
| Andrey_M, блин, что ты мучаешься?! Делай так: Code var i:byte; request:string; ... repeat readln(request); //считываем строку for i:=1 to length(request) do request[i]:=upcase(request[i]); //переводим все буквы в верхний регистр, //т.е. open=OpEn=opEN=...и так далее...=OPEN if request='OPEN' then ... else //если запрос "открыть" - открываем файл if request='CREATE' then ... else //если... то... if request='RENAME' then ... else if request='DELETE' then ... else //далее необходимое число блоков if request=<запрос> then <инструкции> else... if request='HELP' then writeln('blablabla') else //вывод справки, ага? if request='EXIT' then exit else //выходим из цикла writeln('Incorrect request!'); //сообщаем, что запрос неверный until false; ... end. uberchel, у него, похоже, полностью консольное приложение. Quote (Andrey_M) а то, он открывает окно открытия фалйа? Нет. MessageBox (это из WinAPI) отображает простое окно-сообщение с заголовком, картинкой, текстом и группой кнопок. Используются для вывода информации, предупреждений, сообщений об ошибках, сообщения-вопросы с возможностью выбора и так далее. Есть разные модификации, в некоторых используется просто тип (номер) окна (исходя из которого устанавливается картинка и кнопки), в некоторых вручную устанавливается каждый параметр. Quote (Andrey_M) И да, где можно узнать, какие ещё типы окон можно открыть таким образом? Можно покопаться в исходниках стандартных модулей для подключения библиотек WinAPI, там должен быть набор констант. Ну или в интернете таблицу значений найти... Quote (Andrey_M) строчку начала операторного блока begin? Конечно. Блок begin..end используется везде, где возможно использовать только один оператор. Т.е. блок begin..end объединяет список операторов и представляет их в виде одного оператора. Например, if <условие> then <оператор> else <оператор2>; обрабатывает только одну инструкцию после then и одну после else, а используя begin..end можно использовать бесконечное число инструкций... Quote (Andrey_M) Просто я физически не могу реализовать открытие файла и цикл чтения-записи одним оператором... Разве? Ведь можно описать процедуру или функцию типа openfile, createfile и тому подобное...
Сообщение отредактировал TimKruz - Понедельник, 17 Декабря 2012, 19:32 |
|
|
| |
| TimKruz | Дата: Понедельник, 17 Декабря 2012, 19:55 | Сообщение # 2464 | Тема: Запись hex-кода в файл |
старожил
Сейчас нет на сайте
| Quote (uberchel) Result:= ''; for I := 1 to length (S) do Result:= Result+IntToHex(ord(S[i]),2); Нельзя считать значение result, в него только записывать можно (потому что это не переменная). Да и вообще, зачем тут шестнадцатеричное представление чисел? Andrey_M хочет писать в файл помимо текста управляющую информацию.
Andrey_M, можно, например, в начале файла записывать нужные переменные (типа первый байт=N - длина названия, далее N байт названия и т.д.), которые будут считываться редактором, но не отображаться на экране. Или вставлять управляющие символы, или вообще тегами делать (получится типа xml, т.е. куча лишних байт, но читабельно, если открыть простым "блокнотом"). А для преобразования символов в "бинарный формат" можно использовать ord(x:char):byte, возвращающий код символа, и chr(x:byte):char, возвращающий символ по коду. Т.е. ord(' ')=32 (код пробела = 32) и chr(32)=' '. Открывать файлы можешь как текст, а можешь как нетипизированный файл (var f:file;). В нетипизированном файле read/ln и write/ln не работают, нужно использовать blockread/blockwrite. Ну или использовать типизированный файл (используются только read и write) байт или слов (2 байта), как тебе будет удобнее.
Quote (Andrey_M) Поэтому нужно записать данные не текстовоЮ, а бинарно, и потом прочитать их из файла. "Бинарный" файл можно открыть как "текстовый" и прочитать его содержимое как текст. И наоборот, "текстовый" - как "бинарный" и прочитать числа или структурированные данные. Все эти названия ("текстовый", "бинарный", "структурированный", "ещё какая-то фигня") условны и используются человеком только для определения типа содержимого конкретного файла. На диске файл хранится в виде последовательности байт. Буквы и вообще символы кодируются одним (или двумя в расширенных кодировках) байтом, т.е. каждый символ соответствует какому-то определённому числу, а текстовый редактор, открывая файл, отображает на экране символы, соответствующие числам-кодам в файле.
P.S. Скачай НОРМАЛЬНУЮ книгу-учебник по TurboPascal и прочитай внимательно от корки до корки, пробуя на практике каждую новую для тебя функцию. Тогда большинство твоих "нубских" вопросов отпадут.
|
|
|
| |
| TimKruz | Дата: Понедельник, 17 Декабря 2012, 20:10 | Сообщение # 2465 | Тема: Free Pascal: проеверка с 2-мя вариантами |
старожил
Сейчас нет на сайте
| Quote (Andrey_M) Разве? Я думал, это только в Object можно... Какой object? Я говорю про простую процедуру. Вот, например: Code program cool_text_editor; var s:string; procedure createfile(name:string); begin assign(output,name+'.txt'); rewrite(output); close(output); end; begin repeat read(s); if s='create' then createfile('test') else exit; until false; end. Кстати. Ты наверняка задашься вопросом, как реализовать обработку аргументов в строке. Примерный алгоритм: 1. Считать строку request. 2. С помощью find (или чего-то там, не помню) найти символы-пробелы, которые являются разделителями аргументов (простейший вариант). 3. Разрезать строку request на строку command (команда) и массив argument. 4. Поднять все буквы строки command в верхний регистр. 5. Пройтись по конструкциям if. 6. После входа в определённую конструкцию if, используются нужные аргументы, например: Code ... if (command='CREATEFILE') or (command='CREATE') then createfile(argument[0]) else ... Здесь после получения команды создать файл первый (нулевой, если считать с нуля) аргумент (имя создаваемого файла) передаётся в соответствующую функцию, остальные аргументы игнорируются.
P.S. Советую использовать именно процедуры вместо простых блоков begin..end, потому что тогда основной код программы (цикл repeat..until) будет выглядеть более компактно, а все функции программы будут сидеть в своих уютных процедурах.
*** Quote (Andrey_M) Надеюсь, во Free-версии это работает.ъ Это должно работать в любом диалекте Паскаля, потому что тут только основные функции языка используются.
Хватит в конце каждого предложения писать твёрдый знак. Раздражает.
Сообщение отредактировал TimKruz - Понедельник, 17 Декабря 2012, 20:13 |
|
|
| |
| TimKruz | Дата: Вторник, 18 Декабря 2012, 21:57 | Сообщение # 2466 | Тема: Запись hex-кода в файл |
старожил
Сейчас нет на сайте
| Quote (Andrey_M) Как я помню, разница всё же есть. Ты сначала внимательно изучи и освой на практике все основы Pascal, которые для TP и FP одни и те же, да и для Delphi с Lazarus, ну и вообще научись алгоритмы писать. А различия между FP и другими диалектами как-нибудь потом изучишь, если это тебе вообще понадобится...
|
|
|
| |
| TimKruz | Дата: Среда, 19 Декабря 2012, 17:38 | Сообщение # 2467 | Тема: Free Pascal: проеверка с 2-мя вариантами |
старожил
Сейчас нет на сайте
| Quote (Andrey_M) Он требует ещё один begin. Видимо, он не так меня понял... Ты напечатал только процедуру. А программа где? Должно быть так: Code program... //заголовок программы - необязателен const... label... type... var... //процедуры и функции procedure/function... //заголовок процедуры/функции - обязателен var... блаблабла begin //тело процедуры/функции - обязательно, если заголовок не имеет директивы forward (тогда тело с дополнительным заголовком будет ниже) end;
begin //тело программы end. Блок begin..end с точкой для основного кода программы должен быть всегда, даже если он пустой. В модулях (unit <имя>; вместо program <имя>;) точно так же, но заключительный begin..end исполняется во время инициализации модуля и может совсем отсутствовать, но заключительный end с точкой всё равно должен быть.
Правда ошибка у тебя немного другая. Ты напечатал только заголовок процедуры (procedure ...;), потом сразу тело программы, а тело процедуры - нет, поэтому компилятор принял тело программы за тело процедуры, а тело программы не обнаружил, отсюда невозможность компиляции.
Quote (Andrey_M) HELPTEXT:=('Текстовый редактор by Andrey_Mironenko. Создан при помощи Free Pascal. Среда разработки - Free Pascal IDE.Введите OPEN для открытия файла, HELP - для справки, EXIT - для выхода из программы.'); Зачем скобки? Неизменяемый во время исполнения программы делай строковой константой. Константа - это именованные данные, которые компилятор вставляет в нужных местах программы (по имени константы); присваивать что-либо константе, естественно, нельзя, если константа не имеет определённого типа (тогда это уже не константа, а переменная с предопределённым значением), например: Code const helpstr='справка'; //константа-строка optimal_fps=30; //константа-число, при чём целое v1:byte=99; //типизированная константа типа байт, фактически - переменная с заданным изначально значением var v2:byte=99; //переменная типа байт со стартовым значением 99 //v2 идентична v1
*** begin //Эти две инструкции одинаковы: writeln(helpstr); writeln('справка'); //Но вызывать статичную длинную строку из разных мест программы проще по короткому имени, //а чтобы изменить её, достаточно изменить константу в начале программы, и не бегать по коду. end.
Короче, вот немного исправленный код, разбирайся в нём: Code program CoolEditor; //на всякий случай, пусть имя программы будет задано //Константа с текстом, изменять её в коде программы нельзя, только вызывать: const HELPTEXT='Текстовый редактор by Andrey_Mironenko. Создан при помощи Free Pascal. Среда разработки - Free Pascal IDE.Введите OPEN для открытия файла, HELP - для справки, EXIT - для выхода из программы.';
var i:byte; request,s:string; //компактная запись //Переменным лучше давать говорящие названия, если это не счётчик какой-нибудь или ещё что-то временное
procedure createfile(name:string); begin //output - стандартная текстово-файловая переменная, допускает только вывод; //ещё есть input, только для ввода assign(output,name); rewrite(output); close(output); end;
procedure openfile(name:string); var N:string; //ведь эта переменная применяется только здесь begin write('Введите имя файла: '); //"имя" может включать в себя путь к файлу Readln(N); if N<>'' then begin Assign(input, N); //используем input, если записывать в файл ничего не нужно Reset(input); //Здесь хорошо бы сделать проверку ошибки ввода-вывода, //считав значение ioresult (равно 0, если ошибки нет, либо код ошибки); //ioresult хранит код последней ошибки и обнуляется после считывания while not Eof(input) do begin Readln(input,N); Writeln(N); end; Close(input); end; end;
begin repeat readln(request); for i:=1 to length(request) do request[i]:=upcase(request[i]); if request='OPEN' then openfile('') else if request='CREATE' then createfile('test.txt') else if request='HELP' then writeln(HELPTEXT) else if request='EXIT' then exit else writeln('Неправильная команда!'); until false; end. Я не уверен, что это всё будет нормально работать, но это как бы заготовка. Думай в этом направлении. Тут по-прежнему много чего нужно сделать.
P.S. Почитай какой-нибудь учебник по TurboPascal. По FreePascal вряд ли найдёшь, но FP поддерживает всё (ну или почти всё, но это тебе сейчас не должно быть важно) из TP.
|
|
|
| |
| TimKruz | Дата: Среда, 19 Декабря 2012, 17:46 | Сообщение # 2468 | Тема: Free Pascal: проеверка с 2-мя вариантами |
старожил
Сейчас нет на сайте
| Quote (Destroy) хм..странно все равно мне кажется сильных различий не должно быть Сильные отличия Delphi от Pascal есть (и много) - Delphi умнее, понимает пользователя лучше и умеет намного больше. Quote (Andrey_M) Может, выхов процедуры открытия файла создаёт сей баг? Ты нигде никакой "процедуры открытия файла" не вызывал. И это не баг, а твоё полное незнание языка. Почитай умные книжки, а? Поделаешь простых примерчиков из книжек, разберёшься в них и будешь лучше понимать то, что печатаешь в редакторе кода.
Прежде чем экспериментировать и тыкать куда попало begin и end - сначала разберись, что ты сделал (напечатал) и что думает о тебе твоя среда разработки...
*** Quote (Destroy) вот странно я полностью скопировал что у тебя было и поставил end; и все нормально А, ну точно. Delphi позволяет не писать begin (открывающий тело программы) перед заключительным end с точкой в программе, если он тебе не нужен (т.е. если у программы нет тела, только комплект процедур-функций). Правда, не совсем понятно, зачем это может понадобиться, ведь такая программа ничего не выполняет...
Сообщение отредактировал TimKruz - Среда, 19 Декабря 2012, 17:55 |
|
|
| |
| TimKruz | Дата: Среда, 19 Декабря 2012, 18:01 | Сообщение # 2469 | Тема: Free Pascal: проеверка с 2-мя вариантами |
старожил
Сейчас нет на сайте
| Quote (Andrey_M) Я так и сделал вроде. HELPTEXT - это переменная с заранее заданным значением. Нет, в твоём коде на первой странице этой темы ты объявляешь обычную переменную, а затем присваиваешь ей значение в коде программы. Присваивание занимает процессорное время (т.к. выполняется каждый раз, как ты запускаешь свою программу), а инициализирующее значение переменной записывается непосредственно по адресу (в готовом машинном коде программы), где будет расположена переменная, т.е. на этапе компиляции/компоновки программы. Ну в наше время быстрых ЭВМ это как-то уже не важно, но всё-таки лучше программировать красиво и оптимально...
Quote (Andrey_M) Я просто вместо q в переменной request часто пишу tab. Тренируйся печатать быстро и без опечаток... Есть множество программных тренажёров, в том числе онлайн...
|
|
|
| |
| TimKruz | Дата: Четверг, 20 Декабря 2012, 20:58 | Сообщение # 2470 | Тема: Как бороться с мерцанием изображения? |
старожил
Сейчас нет на сайте
| TheWickerMan, порча тем (слишком сильное изменение содержания первого и последующих сообщений) запрещена, можно в баню попасть. Новый вопрос нужно было задать в следующем сообщении (#3) или создать новую тему. А то теперь непонятно, что означают второе и третье сообщения. Удалить тему могут только модераторы (и старше), но только если тема слишком сильно правила нарушает или совершенно бесполезна; обычно темы чистят и помещают в раздел "корзина", а не удаляют совсем.
Quote (TheWickerMan) Подскажите пожалуйста, как еще можно избавится от мерцания изображения, кроме использования двойной буфферизации? Дело в том, что при его использовании мерцание становится гораздо меньше, но убирается не полностью. Если можно, подскажите пожалуйста решение для С++ С помощью чего делаешь вывод графики? Двойная буферизация спасает от мерцания в 99% случаев. Если, конечно, процедура вывода итоговой картинки выполняется достаточно быстро (доли миллисекунд), а компьютер и монитор достаточно современные. Так что, скорей всего, у тебя функция вывода картинки сильно тормозит, либо ты неправильно используешь буфер. Если пишешь для Windows, но не используешь DirectX/OpenGL - используй функцию BitBlt из WinAPI. А ещё, если выводишь прямо на канву формы - не помешает отключить её автообновление (и обновлять вручную), т.к. автообновление может затирать твою картинку и она будет мигать цветом формы.
|
|
|
| |
| TimKruz | Дата: Суббота, 22 Декабря 2012, 12:19 | Сообщение # 2471 | Тема: Ищу 2d движок для тетриса |
старожил
Сейчас нет на сайте
| Цитата (nik) Ищу 2D движок или конструктор, желательно движок С движком нужно общаться на определённом языке программирования. Какой язык знаешь или на каком языке хочешь найти движок? Или никакого не знаешь и будешь изучать параллельно движку? Лучше, конечно, сначала язык изучить, а потом движок искать и изучать. Цитата (nik) с примером тетриса, и возможность добавить туда множество нового, допустим спецэффекты, и секреты. Спецэффекты и секреты в примере тетриса? Или предполагается делать что-то сложнее головоломок типа тетриса?
*** Цитата (SEvg) Знаю пример 2d тетриса, на 3d движке... Какой смысл изучать и использовать мощности 3D-движка, когда требуется исключительно 2D? Это нерационально. Будешь таскать с собой всякие 3D_COOL_GRAPHICS.dll по 50 МБ каждая, чтобы выводить простую 2D-графику, потому что отдельных библиотек для 2D в этом движке не предусмотрено. Хотя, конечно, бывают 2D/3D движки, где используешь только то, что нужно для решения конкретных задач...
Сообщение отредактировал TimKruz - Суббота, 22 Декабря 2012, 12:22 |
|
|
| |
| TimKruz | Дата: Суббота, 22 Декабря 2012, 19:49 | Сообщение # 2472 | Тема: Ищу 2d движок для тетриса |
старожил
Сейчас нет на сайте
| Цитата (nik) я знаю (где-то на уровне новечка) с++ с# javascript и все подобное им в общем лучше если у движка был бы свой скриптовой язык а про спецэффекты, допустим когда блоки быстро опускать, при сталкновении тряска камеры и пыль от блоков, уничтожение блоков с эффектом взрыва и т.д. Ясно. Короче, само программирование тебе не интересно, нужно только найти почти готовый Тетрис и добавить спецэффектов. Ну тогда посмотри GameMaker и ScirraConstruct, оба они конструкторы, осваиваются легко и быстро, есть огромная куча примеров, несколько тематических форумов с кучей уроков и разрешённых вопросов, возможности достаточные и тетрисов на них было собрано масса.
|
|
|
| |
| TimKruz | Дата: Суббота, 22 Декабря 2012, 20:02 | Сообщение # 2473 | Тема: BadВayLE silent edition |
старожил
Сейчас нет на сайте
| Цитата (azaz32824) Ну, я заранее создал тему, что-бы люди знали, Цитата (azaz32824) ак что возможно не скоро будет готово Тогда нужно было создавать тему в разделе "Идеи для реализации". А раз уж создал в "Проекты в разработке" - оформи тему по правилам раздела.
А по теме комментировать нечего. Когда будут скриншоты или хотя бы более подробное описание - тогда будет что обсудить...
|
|
|
| |
| TimKruz | Дата: Воскресенье, 23 Декабря 2012, 20:49 | Сообщение # 2474 | Тема: Разработка космосима |
старожил
Сейчас нет на сайте
| Цитата (PlutDem) Вот я заметил, что во многих играх принято навешивать на истребители и турели сразу несколько маленьких пушек, а не логичнее установить одну, но зато большую? Так дальность и бронепробиваемость будет больше, да и наверное обслуживание будет проще. Дальность и пробиваемость больше, а вот скорострельность меньше. Какой-нибудь юркий и легко прячущийся броневелосипед может таскать на себе огромную пушку, чтобы из кустов один раз бабахнуть и спрятаться до перезарядки, а неподвижная турель или огромная самоходная крепость должна иметь возможность вести непрерывный огонь (ну или иметь защиту из десятка броневелосипедов с пулемётиками, которые катаются вокруг крепости поддерживают непрерывный огонь), иначе её во время перезарядки просто на запчасти растащат. Естественно, мелкие пушки слабее стреляют, но зато быстрее перезаряжаются и целиться не очень важно, если можешь устроить врагу дождь из множества небольших снарядов, тогда как большой пушкой приходится тщательнее целиться. Цитата (PlutDem) На башни реальных танков ведь никто не ставил 2 одинаковые пушки. Это верно, но, во-первых, танки не по одиночке на врага шли (т.е. пехота и другие, более быстрые танки и самолёты защищали большой и мощный танк или дальнобойную ракетную установку, например), а во-вторых, кроме основной башни у танка обычно есть несколько люков, т.е. можно стрелять из автоматов/пулемётов и бросать гранаты, если потребуется.
P.S. Если есть возможность, можно попробовать сделать в игре оба варианта (одна большая пушка или несколько маленьких) и протестировать в разных типах боя, а потом выбрать более подходящий...
|
|
|
| |
| TimKruz | Дата: Воскресенье, 23 Декабря 2012, 21:53 | Сообщение # 2475 | Тема: Вопрос по глубине объекта. |
старожил
Сейчас нет на сайте
| Цитата (Лисенок) нужно, чтобы глубина сундучка менялась, зависимо от положения героя Цитата (Qvant) у сундуков и игрока задавай По-моему, только у игрока нужно менять, а у сундуков и вообще объектов на карте глубина постоянная. Т.е. игрок при перемещении по вертикали на клетку меняет свою глубину на 1 (или сразу на 2: объекты карты имеют нечётные значения глубины, а игрок - только чётное значение глубины, которое на 1 меньше/больше значения глубины объектов на соответствующей строке карты).
|
|
|
| |
| TimKruz | Дата: Воскресенье, 23 Декабря 2012, 22:36 | Сообщение # 2476 | Тема: [2D] - 1x1 - [TDS] |
старожил
Сейчас нет на сайте
| Цитата (mef1sto) Враг/персонаж/интерфейс кривонарисованы лично мной в редакторе конструкта - поэтому просьба не плеваться А что, мне нравится. Только болид игрока что-то сильно мигает всеми лампочками. Да, и цвета, наверное, у врагов и игрока должны быть разные...
Мне не нравится то, что болид поворачивает только в движении. Это же не семейный автомобиль, а боевая машина, так что он должен уметь разворачиваться на месте (просто колёса в разные стороны вращаются, а не поворачиваются, как у обычных автомобилей).
Так. Баги. В первую очередь, окно открылось как-то странно. Правда, у меня разрешение экрана 1280x720. У окна нет заголовка, или оно ушло выше верхней границы экрана, но нижняя граница окна наоборот, не достаёт до нижней границы экрана. При этом нижняя панель вроде бы ушла слишком вниз, например, слово "пулемёт" срезается. Да и индикатора перегрева я не нашёл (видимо, он внизу). Лучше сделать режим "на весь экран" с подгонкой пропорций под размеры экрана...
Если упереться одной гусеницей в стенку (любое препятствие) и пытаться ехать - машинка будет медленно ползти в бок, как бы скользить. Если упереться одной гусеницей (кажется, только задом левой) в стенку и стрелять из пулемётов - один пулемёт не будет работать (в данном случае - левый). Один раз вроде бы даже отъехав от стенки второй пулемёт не включился (но при этом касание было передом то ли левой, то ли правой, не помню).
Если вплотную встать к турели, то анимация взрыва снаряда воспроизводится не на конце дула (которое оказывается в центре болида игрока), а на крае болида, т.е. как бы в начале дула. Дула всех пушек сделай осязаемыми и/или сделай создание летящего снаряда на конце дула, а не в точке его крепления...
Какой-то враг сильно неубиваемый... Мало урона ему наношу, а уворачиваться сложно... А, вот один раз только победил... Но экран конца игры такой же, как если бы проиграл...
Сразу после загрузки карты она пару раз тормозит (точнее, замирает) - было бы неплохо сделать загрузочный экран и загружать карту сразу, чтобы уже во время игры не было таких подтормаживаний...
P.S. Удачи. Может получиться интересная игра. И у неё есть потенциал, чтобы "выйти за пределы форума".
|
|
|
| |
| TimKruz | Дата: Вторник, 25 Декабря 2012, 20:08 | Сообщение # 2477 | Тема: Как установить игру на телефон с андроидом. |
старожил
Сейчас нет на сайте
| Цитата (Denisokdeeennn) У меня гиг памяти. На Яндекс.Маркете написано: "объем встроенной памяти - 2.90 Гб". Наверное, Android слишком много места занимает/резервирует, если доступно пользователю только 1 ГБ. Цитата (Denisokdeeennn) Еще неудачный вход был, залез в инет, тут же сняло куча рублей стало -90р.) Может быть, оператор автоматически подключил услугу "доступ в интернет" или что-то в этом роде. Либо ты на какой-нибудь баннер кликнул. Бывают такие - переходишь по с виду безобидной ссылке, а потом оказывается, что ты согласился на какую-то там услугу. Нужно найти какой-нибудь "мелкий шрифт" с описанием операции отключения (должна быть бесплатной). Цитата (TovTripleZ) а ты ззапустил этот апк, тем самым отправив смс При установке программ всегда нужно смотреть, какие права доступа они требуют (внизу окна с информацией перед установкой). Там может быть написано что-нибудь типа "отправлять СМС" - если авторы этого приложения не говорят ничего про его работу с СМС, то тут явно какой-нибудь обман. Ну и, естественно, устанавливать только из вполне приличных источников...
Сообщение отредактировал TimKruz - Вторник, 25 Декабря 2012, 20:09 |
|
|
| |
| TimKruz | Дата: Среда, 26 Декабря 2012, 20:26 | Сообщение # 2478 | Тема: Как установить игру на телефон с андроидом. |
старожил
Сейчас нет на сайте
| Цитата (Denisokdeeennn) У меня ВиФИ есть, он к нему подключается, но я боюсь в инет заходить через него!) Деньги не снимут? В настройках должно быть что-то типа настройки выхода в интернет - можно отключить 3G и подключаться только через Wi-Fi. Вообще, если часто в интернет выходишь, советую подключить у оператора безлимитный интернет с телефона - минимальный вариант будет стоить меньше 100 рублей в месяц (но за трафик не платишь). А ещё этот Android может сам вылазить (зависит от версии) в интернет в любой момент... Типа обновления или ещё что...
*** Цитата (Cre-game) Дабы не было проблем с исчезновением денег с телефона, установ антивирус dr. Web Light. Лучше avast! Правда, если руки кривые - никакой антивирус не спасёт.
Сообщение отредактировал TimKruz - Среда, 26 Декабря 2012, 20:36 |
|
|
| |
| TimKruz | Дата: Среда, 26 Декабря 2012, 23:47 | Сообщение # 2479 | Тема: [2D] Infinite world |
старожил
Сейчас нет на сайте
| Хм, странно... Или ты систему движения персонажа испортил, или она только у меня почему-то не работает... Персонаж постоянно застревает где не надо, прыгать вообще разучился - еле-еле научился прыгать до примерно 1/6~1/4 блока, но не выше. И падает медленно и равномерно, а должен падать равноускоренно как все нормальные люди. В readme.txt укажи про пробел-прыжок.
Цитата в режиме дебага: F2 - создать источник света в координатах мыши F5 - создать птицу ЛКМ - поставить дверь Ничего из этого сейчас не работает и раньше вроде как не работало. Если перейти в полноэкранный режим, при чём пропорции экрана отличаются от первоначального окна (16:9 вместо 4:3), перетащить какую-нибудь плоскую панель вниз и снова вернуться в режим окна - она остаётся за экраном. Сделай автоматическое притягивание панелей к границам окна, если они оказались за ними (и хорошо бы сделать точно так же, если они были уже приклеены к границам до перехода, а после перехода оказались на расстоянии от границ, чтобы вручную не таскать). А ещё исправь поворот панели быстрого доступа - она странно как-то поворачивается; теоретически, должна поворачиваться вокруг кружка, на который нужно нажимать для поворота... Однако, я бы посоветовал оставить все эти панели вообще неподвижными - мне кажется, настраиваемые панели - это лишнее... Игрок привыкнет и к неподвижным панелям, если, конечно, они не будут совсем уж уродскими. А вместо панелей работать над чем-нибудь более важным. Впрочем, это твоё дело...
Цитата Wed Dec 26 21:57:24 MSK 2012 INFO:OriginalDisplayMode: 1280 x 720 x 32 @60Hz Wed Dec 26 21:57:24 MSK 2012 INFO:TargetDisplayMode: 800 x 600 x 0 @0Hz Эээ, она хочет установить разрешение дисплея 800x600 с глубиной цвета 0 бит и частотой обновления 0 герц? Я её боюсь.
Пару раз ошибка была. Первый раз игра загрузилась, создал мир, хотел сменить разрешение, но забыл про F12 - нажал alt+enter, но окно закрылось, а ошибка в консоли возникла. А второй раз она же появилась после вроде бы нормального выхода с сохранением (были титры, потом я нажал что-то чтобы пропустить титры - окно закрылось, но ошибка возникла). Вот: Цитата Exception in thread "main" java.lang.NullPointerException at terra.ui.ItemCountWnd.apply(Unknown Source) at terra.ui.ItemCountWnd.keyPressed(Unknown Source) at org.newdawn.slick.Input.poll(Input.java:1172) at org.newdawn.slick.GameContainer.updateAndRender(GameContainer.java:635) at org.newdawn.slick.AppGameContainer.gameLoop(AppGameContainer.java:408) at org.newdawn.slick.AppGameContainer.start(AppGameContainer.java:318) at terra.Game.main(Unknown Source) Кстати, сделай выгрузку всех ненужных ресурсов программы после выкидывания в консоль ошибки. Просто она жрёт что-то около 150-200 МБ памяти и даже вроде бы грузит процессор, хотя кроме "мёртвой" консоли больше ничего не отображается. Ну или писать журнал ошибок в файл в папке игры и закрывать консоль.
|
|
|
| |
| TimKruz | Дата: Четверг, 27 Декабря 2012, 00:01 | Сообщение # 2480 | Тема: [2D] Infinite world |
старожил
Сейчас нет на сайте
| Цитата (Triplecool) P.S. Почему игрок светиться? Цитата (x-and1988) Об этом я еще не думал. Ну должен же игрок видеть хоть что-то Вот разгадка этой страшной тайны: Код Дело № <вырезано> <вырезано> Составлено <вырезано> Утверждено <вырезано> Дата <вырезано> [СОВЕРШЕННО СЕКРЕТНО] Игрок (точнее, персонаж игрока) - это прозрачный радиоактивный флуоресцирующий ярко светящийся прямоугольник с красной рамкой (далее - "Объект"), он вырвался из клетки №<вырезано> секретной лаборатории №<вырезано> города <вырезано> страны, и теперь гуляет в секретно разработанном <вырезано> мире из специальных квадратных кирпичей в виде кусков земли и камня, который должен был послужить <вырезано> <вырезано>. Вход в мир заблокирован, Объект находится под наблюдением извне, но об этом не знает. Объект содержит в себе синтетические зайчатки разума, которые позволяют ему рыть ходы в кирпичной земле и добывать вымышленные им же руды, строить подобия построек неизвестного назначения, собирать нелегальное оружие из нелегальных частей и убивать невинных искусственных животных. <вырезано> <вырезано> <вырезано>
Можно вместо яркого освещения вокруг персонажа сделать очень тусклое как бы свечение, т.е. чуть ярче почти абсолютной темноты дальше определённого предела. Ну типа в темноте на некотором расстоянии немного видит. Или сделать фонарик (каску с фонариком, например), но это как вещь будет. Или чтобы факел можно было в руках держать.
|
|
|
| |
|