|
Основной форум Сюда все проблемы связанные с программированием. |
28.12.2005, 23:39
|
#1
|
|
короче несколько вопросов-направлений для балагана
1) возможно ли нормальная, комерческая разработка проекта на Midletpascal'е ?
2)какие будут идеи по проекту
3)есть ли уже готовые проекты ?
|
|
|
29.12.2005, 00:32
|
#2
|
Администратор
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений (для 996 пользователей)
|
1. возможна... допустим карточные игры или чтонить подобное, постое...
2. идеи - самые простые... физику конечно реализовать не получится, но какие нить ребусы или ченить подобное...
3. пока еще нет, но мне тут один постучался в аську, грит нужен MidletPascal программист... дороворились мы с ним с нового года начать работать... посмотрим что из этого получится...
3.1. имхо лучше на MobileBasic, там уже поддержка тайловых карт есть... на MidletPascal движение по карте реализовать весьма проблематично, а че за игра если даже по карте перещаться нельзя...
__________________
Как минимум я помог многим (с)
|
(Offline)
|
|
29.12.2005, 07:29
|
#3
|
|
Видемо вы плохо знаете MidletPascal!
Карту как на MobileBasic написать очень легко!
Да и жанр игры может быть любой от гонок до аркады.
И необманывай есть игры на MidletPascal,пошарте по форумам найдёте,есть очень даже достойные.
|
|
|
29.12.2005, 18:56
|
#4
|
Администратор
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений (для 996 пользователей)
|
значит гришь карту реализовать как раз плюнуть... хотелось бы посмотреть как это можно сделать...
у меня даже есть небольшие наброски по такому поводу...
http://boolean.name/archive/temp/Tanks.zip
и мне чето никто ничего вразумительного не может сказать, как это усовершенствовать, чтоб это работало не 6 ФПС а больше
__________________
Как минимум я помог многим (с)
|
(Offline)
|
|
29.12.2005, 20:23
|
#5
|
|
Неазнаю у меня на X100 нетормозит!
|
|
|
29.12.2005, 22:57
|
#6
|
|
народ ! неправильно строим код !
смотреть на мой пример (крестики нолики без ai и пару недоработок)
+ я незделал то что midlet на паузу может уходить
program game1;
var
//midlet main varibales
run:boolean;
need_to_update:boolean;
Midlet_reboot:boolean;
//game variables
a:array[1..3,1..3] of integer;
buf1,buf2:integer;
winer:integer;
procedure Cls;
begin
setcolor(255,255,255);
fillRect(0, 0, 128, 128);
setcolor(0,0,0);
end;
procedure Midlet_update;
begin
if Midlet_reboot=true then
begin
for buf1:=1 to 3 do
for buf2:=1 to 3 do
a[buf1,buf2]:=0;
Midlet_reboot:=false;
need_to_update:=true;
end;
repaint;
need_to_update:=false;
end;
procedure Graphics;
begin
for buf1:=1 to 3 do
for buf2:=1 to 3 do
begin
drawline(buf1*10,buf2*10,(buf1+1)*10,buf2*10);
drawline(buf1*10,buf2*10,buf1*10,(buf2+1)*10);
if a[buf1,buf2]=1 then
begin
drawline(buf1*10,buf2*10,(buf1+1)*10,(buf2+1)*10);
drawline(buf1*10,(buf2+1)*10,(buf1+1)*10,buf2*10);
end;
if a[buf1,buf2]=2 then drawEllipse(buf1*10+1,buf2*10+1,10,10);
end;
drawline(40,10,40,40);
drawline(10,40,40,40);
end;
procedure Ai;
begin
//fuccckkkk
end;
procedure Keys;
begin
if getKeyPressed<>KE_NONE then
begin
if getKeyPressed=KE_KEY1 then if a[1,1]=0 then a[1,1]:=1;
if getKeyPressed=KE_KEY2 then if a[2,1]=0 then a[2,1]:=1;
if getKeyPressed=KE_KEY3 then if a[3,1]=0 then a[3,1]:=1;
if getKeyPressed=KE_KEY4 then if a[1,2]=0 then a[1,2]:=1;
if getKeyPressed=KE_KEY5 then if a[2,2]=0 then a[2,2]:=1;
if getKeyPressed=KE_KEY6 then if a[3,2]=0 then a[3,2]:=1;
if getKeyPressed=KE_KEY7 then if a[1,3]=0 then a[1,3]:=1;
if getKeyPressed=KE_KEY8 then if a[2,3]=0 then a[2,3]:=1;
if getKeyPressed=KE_KEY9 then if a[3,3]=0 then a[3,3]:=1;
if getKeyPressed=KE_KEY0 then run:=false;
if getKeyPressed=KE_STAR then Midlet_reboot:=true;
need_to_update:=true;
end;
end;
procedure Find_Winer;
begin
end;
procedure Update_Game;
begin
if need_to_update=true then
begin
Cls;
Graphics;
Midlet_update;
Ai;
Find_Winer;
end;
Keys;
end;
begin
//midlet start run
run:=true;
need_to_update:=true;
//main loop
while run=true do Update_Game;
end.
учитесь ! )
|
|
|
29.12.2005, 22:58
|
#7
|
|
так так... к минусам (ОГРОМНЫМ МИНУСАМ) я отношу то что нету в midletpascalе команды goto !
|
|
|
30.12.2005, 12:18
|
#8
|
|
Это точно!
|
|
|
30.12.2005, 13:14
|
#9
|
Администратор
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений (для 996 пользователей)
|
Originally posted by Red Ninja@Dec 29 2005, 07:23 PM
Неазнаю у меня на X100 нетормозит!
|
у меня на мотороллере Е398 - 6-8 ФПС... :'((
а на эмуле MidpX - 120
__________________
Как минимум я помог многим (с)
|
(Offline)
|
|
30.12.2005, 13:16
|
#10
|
Администратор
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений (для 996 пользователей)
|
Originally posted by jimon@Dec 29 2005, 09:58 PM
так так... к минусам (ОГРОМНЫМ МИНУСАМ) я отношу то что нету в midletpascalе команды goto !
|
ага... goto forever!!
__________________
Как минимум я помог многим (с)
|
(Offline)
|
|
30.12.2005, 14:28
|
#11
|
|
SubZer0
У тебя в Танке занов всю картинку ресиет,а надо чтобы поодельности!
Процедуру создай чтобы она определяла где камера(типо камера )находиться
и отрисовывала ту чать которую надо,а не ташило всю картику!
P.S Я Танчик толком непосмотрел,скинь ещё раз ссылку!
|
|
|
30.12.2005, 14:42
|
#12
|
|
ВОт этим воспользуйся:
SetClip(int x, int y, int width, int height);
width,height-Разрешения монитора
|
|
|
30.12.2005, 16:06
|
#14
|
Администратор
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений (для 996 пользователей)
|
Originally posted by Red Ninja@Dec 30 2005, 01:28 PM
SubZer0
У тебя в Танке занов всю картинку ресиет,а надо чтобы поодельности!
Процедуру создай чтобы она определяла где камера(типо камера )находиться
и отрисовывала ту чать которую надо,а не ташило всю картику!
P.S Я Танчик толком непосмотрел,скинь ещё раз ссылку!
|
ты наверное не доконца понял весь смысл проги...
это показ тайловой карты на экран...
это рассчет позиций: ((xc, yc) - позиция на карте по тайлам, (xc1,yc1) - позиция тайлов на экране (для плавности))
xc:=SXPos/16+i;
yc:=SYPos/16+j;
xc1:=i*16-(SXPos mod 16)-16;
yc1:=j*16-(SYPos mod 16)-16;
а это выводит картинки на экран: (плюс условия на предотвращения ошибок выхода за границу карты)
if (xc>=1) and (xc<=FieldW) and (yc>=1) and (yc<=FieldH) then begin
drawimage(MO[GameFF[xc,yc]],xc1,yc1);
end;
хз где ты там нашел что картинка рисуется вся...
тут я рассчитываю сколько тайлов влезет на экран:
ScreenW:=GetWidth/16+1;
ScreenH:=GetHeight/16+2;
и пускаю по этим значениям главный цикл:
for i:=1 to ScreenW do for j:=1 to ScreenH do begin ........................
__________________
Как минимум я помог многим (с)
|
(Offline)
|
|
30.12.2005, 16:22
|
#15
|
Администратор
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений (для 996 пользователей)
|
Originally posted by Red Ninja@Dec 30 2005, 01:47 PM
Но я это только нашёл так и непонел чё это!
|
SetClip это определение отображаемого участка экрана, и потом в его пределах можно рисовать, а за его пределами не получится
__________________
Как минимум я помог многим (с)
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Похожие темы
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
(MGC) Мой проект |
=MAK$= |
Проекты на Blitz3D |
36 |
06.07.2009 06:11 |
Проект мяч |
kailzloi |
Проекты на Blitz3D |
7 |
14.02.2009 22:26 |
Часовой пояс GMT +4, время: 14:57.
|