A comunidade brasileira de desenvolvimento e programação de jogos.
Bem-vindo: Qua Abr 14, 2021 11:46 am

Todos os horários são GMT - 3 horas




Criar novo tópico Responder  [ 3 mensagens ] 
Autor Mensagem
 Título: Tiles
MensagemEnviado: Sáb Mai 14, 2011 8:59 am 
Offline
Membro júnior

Registrado em: Ter Nov 11, 2008 4:33 pm
Mensagens: 22
Bom, eu estou querendo implantar tiles no meu jogo só que não sei desenha-los, quer dizer o programa gerado não desenha os tiles.
Não sei dizer se o problema é na leitura dos mapas ou no desenho destes.
Alguém aqui na comunidade saberia me responder?

Estou utilizando os seguintes códigos:
Para desenhar o mapa
Código:
procedure TForm1.DesenharMapa;
var
X, Y : Integer;
begin
for X:=0 to 15 do
begin
  for Y:=0 to 15 do
  begin
  case Area[X,Y] of
   0: with TPiso.Create(Form1.DXSpriteEngine1.Engine)do
    Begin
     Image:= Form1.DXImageList1.Items.Find('piso');
     Height:=Image.Height;
     Width:=Image.Width;
    end;
   1: with TMySprite.Create(Form1.DXSpriteEngine1.Engine)do
    begin
     Image:= Form1.DXImageList1.Items.Find('player');
     Height:=Image.Height;
     Width:=Image.Width;
    end;
   2: with TWall.Create(Form1.DXSpriteEngine1.Engine)do
    begin
     Image:=Form1.DXImageList1.Items.Find('parede');
     Height:=Image.Height;
     Width:=Image.Width;
    end;
   end;
  end;
end;
end;


Para Abrir o mapa:
Código:
procedure TForm1.FormCreate(Sender: TObject);
var
Arquivo : TextFile;
X,Y,S: Integer;
Temp: String;
begin
AssignFile(Arquivo,'c:\Documents and Settings\casa01\Meus Documentos\projeto-arcade\map01.med');
Reset(Arquivo);
for X:=0 TO 15 do
begin
  ReadLn(Arquivo,Temp);
  for Y:=0 to 15 do
  begin
   S := StrToInt(Copy(Temp,Y+1,1));
  case S of
  0: Area[X,Y]:=0;
  1: Area[X,Y]:=1;
  2: Area[X,Y]:=2;
  end;
end;
end;
CloseFile(Arquivo);
DesenharMapa;
end;


Obs: Estou usando uma array [0..15, 0..15] e mapa01.med é o arquivo de texto onde está o mapa
ex:
00012000
00000000
00000000


Voltar ao topo
 Perfil  
 
 Título:
MensagemEnviado: Sáb Mai 14, 2011 11:17 am 
Offline
Membro avançado

Registrado em: Seg Dez 24, 2007 2:09 am
Mensagens: 239
Localização: Em algum byte perdido na memória...
vai testando por partes, primeiro ve se os valores realmente estao na array "Area", se eles estiverem vc ja sabe que o problema esta na procedure DesenharMapa

outra coisa, eu nao entendo muito de delphix mas nessa parte do codigo onde voce cria os tiles:

Código:
0: with TPiso.Create(Form1.DXSpriteEngine1.Engine)do
    Begin
     Image:= Form1.DXImageList1.Items.Find('piso');
     Height:=Image.Height;
     Width:=Image.Width;
    end;


eu acho que voce precisa colocar o posicionamento do tile.


Voltar ao topo
 Perfil  
 
 Título: Re: Tiles
MensagemEnviado: Ter Jul 12, 2011 2:14 pm 
Offline
Membro intermediário
Avatar do usuário

Registrado em: Seg Mar 26, 2007 4:10 pm
Mensagens: 55
:) Tem que colocar a posição sim mas isso não é motivo de erro, porque por default ele coloca todos na posição 0 tem mais coisas para configurar ai. Qualquer coisa há uma pasta chamada Sample(Exemplo) dentro da pasta unDelphix da uma olhada na pasta Basic la tem dois exemplos que ajuda muito a desenhar e carregar Tiles de uma Matriz :)


Voltar ao topo
 Perfil  
 
Exibir mensagens anteriores:  Ordenar por  
Criar novo tópico Responder  [ 3 mensagens ] 

Todos os horários são GMT - 3 horas


Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante


Enviar mensagens: Proibido
Responder mensagens: Proibido
Editar mensagens: Proibido
Excluir mensagens: Proibido
Enviar anexos: Proibido

Ir para:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traduzido por: Suporte phpBB