![]() |
Ответ: игра по мотивам ККИ "Берсерк"
Живые, то есть. Только вот с идеями плохо. В последнем классе для отрисовки используется отдельный поток, синхронизированный с классом Display, т.е. по идее лучше сделать уже нельзя. Единственное, что могу предположить, это что ты обновляешь экран чаще, чем в принципе может JVM Нокии. Попробуй ввести задержку побольше для тестов.
PS: на моторолах и сонериках все идет красиво. |
Re: игра по мотивам ККИ "Берсерк"
delay?
Ладно фиг с этой серией 40) Потом какнить. Щас вот другая проблема нашлась. Точнее пример мне нужен по работе с файлами ресурса. Задача такая: есть текстовый файл с бзой карт (да я хочу зделать именно так) с примерно таким содержанием: kolvo_card=3 //первая карта card_name='Карта 1' card_portret='card1.jpg' card_live=3 card_damage=5 //вторая карта card_name='Карта 2' card_portret='card2.jpg' card_live=4 card_damage=2 card_osob=1 //третья карта card_name='Карта 3' card_portret='card3.jpg' card_live=5 card_damage=3 card_regeneration=3 ... и т. д. а в программе хочется читать при старте программы параметры для карт из этого файла примерно какнить так var card_name:array .. of string; card_portret:array .. of image card_live,card_damage,card_osob,card_regeneration: array .. of integer for i:= 1 to количество карт указаное в файле do begin card_portret[i]:=loadimge(из файла) card_live[i]:=из файлаж card_damage[i]:=из файла card_regeneration[i]:= из файла есл оно упомянуто card_osob[i]:= из файла есл оно упомянуто end; Как првильно такое написать чтобы работало)) может есть какие нить примеры?? |
Re: игра по мотивам ККИ "Берсерк"
Поиск на форуме ничего не дал(( Примерно что то похожее накидал мож кому пригодится:
программа смотрит тестовый файл с таким содержанием: 40;300;500;600; и получает из файла 4 переменные, которые потом складывает. var res:resource; line,symbol:string; i,num,p1,p2,p3,p4,summa:integer; var_array:array [0..3] of string; begin res := OpenResource('/222.txt'); line:= ReadLine(res);//считываем строку с переменными из файла ресурса CloseResource(res); num:=0; repeat for i:= 0 to Length(line) do begin if (num<=3) then begin symbol:=getchar(line,i);//считываем посимвольно ранее считаную строку if (symbol<>';') then var_array[num]:=var_array[num]+symbol;//временная переменная складывается из текста строки DrawText(var_array[num],0,20*num);//выводим процесс обработки repaint; delay(100); if (symbol=';') then num:=num+1;//Если разделитель то переключаемся к следущей элементу массива временных переменных end; end; until num>3; //обрабатываем получая необходимые переменные из временноо массива переменных p1:=StringToInteger(var_array[0]); p2:=StringToInteger(var_array[1]); p3:=StringToInteger(var_array[2]); p4:=StringToInteger(var_array[3]); //считаем сумму вписаных в ресурс значений summa:=p1+p2+p3+p4; Setcolor(0,0,0); DrawText(IntegerToString(summa),0,100); repaint; Delay(1000); end. |
Re: игра по мотивам ККИ "Берсерк"
Теперь пытаюсь намутить каким образом определить сколько букв в 1 строчке влезет на экран мобилы. А то перенос текста у меня работает както кривовато-через подгоны. Что можно зделать????
|
Re: игра по мотивам ККИ "Берсерк"
Вложений: 1
Вот решил выложить последние исходники по "легендам Руси" на сегодняшний день. Глюкавый. Кривой. Но рабочий. Не знаю что с ними можно зделать. На данный момент я на основе этой "поделки" заново перелопачиваю весь код. И решил занятся реализацией первого сэта игры
|
Re: игра по мотивам ККИ "Берсерк"
Вложений: 1
не получается:(
давно не брался за код, за это время у меня родилась дочка) Совсем не до компа стало. Выкладываю последние наработки. Точно не помню что было сделано, из того что помню - был почищен код, добавлены летающие. База до сих пор берется из отдельного модуля-как сделать чтение базы вне мидлета я так и не понял. Потом произошло еще одно радостное событие-я переехал жить в линукс) решил занятся изучением СИ) и переписываю берсерк уже в линух, используя связки SDL+OpenGL. Начал с нуля - но уже готов полностью рабочий магазин. Как будет чтото цельное - выложу... |
Ответ: игра по мотивам ККИ "Берсерк"
aureli0, попробуй сделать версию без Lib_game, не в обиду Pilgrim'у, её проблематично использовать в более менее сложных играх.
А на счёт чтения базы могу посоветовать код из своего Сталкера, он конешно требует переделки, но всё же лучше, чем посимвольное чтение)) делал для чтения внутримидлетского xml-файла, но думаю переделать не сложно будет. Мой вариант считывает любой параметр с текущей строки txt ресурса Res (пример параметра CardName="Мразень", пример считывания name:=reads('CardName'); ), плюс любую строку можно интерпретировать в мидлете как условие или команду(но это надо писать самому). PHP код:
PHP код:
|
Ответ: игра по мотивам ККИ "Берсерк"
В принципе можно будет работать и с твоим примером базы, немного видоизмененным:
<set="Легенды Руси" kolvo_card="3"> //первая карта name="Карта 1" portret="card1.jpg" live="3" damage="5" type="simple" //вторая карта name="Карта 2" portret="card2.jpg" live="4" damage="2" type="rare" param="osob" value="1" </card> //третья карта name="Карта 3" portret="card3.jpg" live="5" damage="3" type="unique" param="regeneration" value="3" param="exp. in attack" value="1" param="dec dice" value="-1" </card> </set> То есть в строчке с именем карты можно будет хранить стандартные параметры(img карты, цена, hp, дамаг, кол-во шагов, ... и тип карты). Взависимости от типа карты можно будет подгружать особые параметры, которые хранятся по одному на строчку в формате имя_параметра="regeneration" значение_параметра="3". Строка </card> означает конец чтения особых параметров карты. |
Re: Ответ: игра по мотивам ККИ "Берсерк"
Цитата:
|
Часовой пояс GMT +4, время: 13:52. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot