desjogos(2bim) [modo de compatibilidade]2bim).pdf · totalimagem – número de imagens a ser...

137
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Desenvolvimento de Jogos Material II-Bimestre Métodos Básicos de Implementação de Jogos Digitais Jogos Digitais site : http://www1.univap.br/wagner Prof. Responsáveis Hélio Lourenço Esperidião Ferreira Wagner Santos C. de Jesus

Upload: others

Post on 23-Aug-2020

18 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Universidade do Vale do ParaíbaColégio Técnico Antônio Teixeira Fernandes

Disciplina Desenvolvimento de Jogos

Material II-BimestreMétodos Básicos de Implementação de

Jogos DigitaisJogos Digitais

site : http://www1.univap.br/wagner

Prof. ResponsáveisHélio Lourenço Esperidião Ferreira

Wagner Santos C. de Jesus

Page 2: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Introdução aos Fundamentos da Fundamentos da Linguagem (C++)

2

Page 3: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Os criadores da linguagem

Ken Thompson e Dennis Ritchie (da esquerda pra dire ita)

Page 4: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Linguagem usada no desenvolvimento das mais diversas ferramentas

• Microcontroladores;• Sistemas Operacionais(Linux, Windows, OS/2 e Unix);• Programas como Word, Excel, Microstation • Ambientes de redes de computadores;• Aplicações de Computação gráfica;• Aplicações de Computação gráfica;• Programas de Aplicações médicas;• Programas para controle de máquinas e equipamentos• Construção de linguagens de programação como Java,

PHP, ActionScript e outras.• Desenvolvimento de Jogos.

Page 5: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Características de um programa C.

• Integridade• Clareza•• Simplicidade• Eficiência• Modularidade

Page 6: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Estrutura de uma linguagem de programação.

Uma linguagem de programação, possui atarefa de ser uma ferramenta para odesenvolvimento de software e para issodeve respeitar três características básicas,deve respeitar três características básicas,que são:

1) Atribuição2) Condição3) Repetição

Page 7: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Tipos de dados da linguagem C.

A linguagem C tem comocaracterística ser fortementetipada ou seja os tipos de dadostipada ou seja os tipos de dadospara uma variável de memóriadevem ser rigorosamenterespeitados.

Page 8: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Tipos de dados

Page 9: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Operadores Aritméticos

+ - Soma- - Subtração* - Multiplicação* - Multiplicação/ - Divisão% - Resto da Divisão

Page 10: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Operadores Relacionais

>- Maior que < - Menor que= = - Igual a= = - Igual a!= - Diferente de>= - Maior ou Igual<= - Menor ou Igual

Page 11: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Operadores Lógicos

&& - And (E)| | - Or (Ou)! - Not (Não)? - Ternário

Page 12: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Estruturas de Controle

Atribuição : Vem a ser procedimento dearmazenar um valor em uma variável.Sintaxe :

<tipo> <Varm> = <valor> ;

Exemplo :

int a = 1; ou int a;

AnsiString b = "Abacaxi"; ou AnsiString b;

Page 13: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo de Operações de Atribuição.

a++; => a = a + 1;a--; => a = a - 1;a--; => a = a - 1;a+ = 2; => a = a + 2;a* = 2; => a = a * 2;

Page 14: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Incrementando e Atribuindo valores as Variáveis.

Exemplo :

int a = 3;int a = 3;int b = a++ ;

Nesse caso a variável seriaincrementada depois de atribuir o valora variável b, portanto o valor de a = 4 ede b = 3.

Page 15: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo - 2:

int a = 3;int b = ++a ;

Nesse caso a variável (a) seriaincrementada antes de atribuir o valorpara variável b, portanto o valor de a =4 e de b = 4.

Page 16: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Condição : Vem a ser o procedimento de tomar decisões em programa mediante uma dada condição.

E é representado pela instrução. if( )Sintaxe :

if( <condição ) { if(<condição>)if( <condição ) { if(<condição>)<Bloco de Instruções-1 >; <Instrução-1>;

} [ else ][else]{

<Instrução-2>;<Bloco de Instruções-2 >;

}

Page 17: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo :

int a = 1;

if(a == 3)if(a == 3)ShowMessage("O número esta Correto !!!");

elseShowMessage("O número não esta Correto

!!!");

Page 18: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo : e (&&)

int nota = 6;int freq = 80;if ( nota >= 6 && freq >= 75)

ShowMessage(“Aluno Aprovado..”);ShowMessage(“Aluno Aprovado..”);else

ShowMessage(“Aluno Reprovado”);

Page 19: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo : ou ( || )

boolean rg = true;boolean cpf = false;if( rg = = true || cpf = = true)

ShowMessage(“Abra conta na ShowMessage(“Abra conta na locadora”);else

ShowMessage(“Não pode Abrir conta”);

Page 20: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo : Não ( ! )

int idade = 18;if( !(idade = = 18) )

ShowMessage(“Não pode dirigir.”);else

ShowMessage(“Pode tirar carta. “);

Page 21: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

?: Operador ternário.

Sintaxe :

<Varm> = <Condição> ? <Verdadeiro> : <Falso>;

Page 22: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo de ? (Ternário)

int a = 5;int b = 2;

AnsiString x = a > b ? “A maior”:”B Maior”;

Page 23: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Repetição : Vem a ser o procedimento de criar ciclos para solução de

problemas.Estrutura de repetição condicional.

While()

Page 24: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo :

int a = 1;while(a <= 5 ) {

a++;}

..................

Page 25: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo - 2 :

do {a++;

} while(a <= 5);} while(a <= 5);

Obs : Neste caso em particular o comando while() deverá usar ;

Page 26: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome
Page 27: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Estrutura de repetição sequêncial. for()

Sintaxe :

for(<Inicialização> ;<Condição> ;<Incremento>) {

<Bloco de Instruções>}

Page 28: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo :

for(int i= 1;i<=5;i++)ShowMessage("As poderosas !!!

");

Page 29: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Obs : Sobre as { } só devemos usarchaves nas estruturas de controle decondição e repetição quando houvercondição e repetição quando houverem seu interior mais de umainstrução a ser processada .

Page 30: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome
Page 31: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Entrada e Saída de dados.

InputBox() - Uma entrada de dadospode ser feito com uma função ou caixade texto, Nesse caso o InputBox() Iráde texto, Nesse caso o InputBox() Iráretornar uma String contendo ainformação digitada na caixa de texto damesma.

Page 32: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Sinatxe :

AnsiString Itemdigitado = InputBox(<String1>,<String2>,<String3>);

Obs :

<String1> - Título da barra de título.<String2> - Título da caixa de texto.<String2> - Título da caixa de texto.<String3> - Informação de dentro da caixa de texto.

AnsiString Itemdigitado = InputBox("Progarama teste","Digite Algo","Nenhum");

Page 33: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Saída :

Page 34: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Criando uma entrada de dados com o objeto caixa de texto (Edit).

Page 35: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Para criar uma caixa de texto em uma aplicação use a palheta de objetos (Standard), em seguida você poderá usar as

propriedade da caixa de texto.

Page 36: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Usando uma caixa de texto para capturar um valor dado pelo usuário.

Exemplo :

AnsiString dado ;dado = Edit1->Text;

Obs : Em C++ o objeto é separado da propriedade como

símbolo de - > .

Page 37: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Criando uma saída de dados usando o objeto Label. Que serve para mandar mensagens em formulário.

Page 38: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo :

Label1->Caption = "Mensagem Para Usuário !!! ";

Saída :

Page 39: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

ShowMessage() - Exibe uma mensagem do String no video.

Sintaxe :ShowMessage(<String>);ShowMessage(<String>);

Exemplo :

ShowMessage("Dados Incorretos, Tente Novamente !!!");

Page 40: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Saída :

Page 41: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Para cria um objeto Botão de comandos, use a palheta :

O nome do objeto criado será Button que permite disparar um evento do tipo clique ao ser selecionado com o mouse.

Page 42: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo :

Button 1->Caption=Button 1->Caption="Ok" ;

Page 43: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

break, continue - São instruções que auxiliam no controle de uma repetição.

break - Abandona uma repetição antes que o

laço possa terminar.

Exemplo :

int a = 1;while(a <= 5) {

if(a == 3)break;

a++;}

ShowMessage("O valor é "+IntToStr(a)) ;

Page 44: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

continue - Volta a linha da repetição não executando as instruções que estão abaixo.

Exemplo :

int a = 1;while(a <= 5) {while(a <= 5) {

if(a == 3) {ShowMessage("ahahah !!!, Nunca mais vou parar

!!");continue;

}a++;

}

Page 45: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Estrutura de um Programa em Builder C++.

void __fastcall TForm1:: ObjetoEvento (TObject *Sender)

{{// Um comentário pode ser feito com as barras ou/* Comentário de trecho de programa */

<Bloco de Instruções>}

Page 46: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Objetos de Controle

Builder C++ conta com uma barra detarefas capaz de permitir a confecçãotarefas capaz de permitir a confecçãode rotinas mas sofisticadas com relaçãoa parte visual da aplicação.

Page 47: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Entrada e Saída (Jogos)Modelos dos principais objetos para aquisição de entradas e saídas

47

Page 48: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Paleta de Ferramentas Standard.

Padrão

Page 49: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Usando Objetos principais do C++(Builder).

Criando uma caixa de lista. (ListBox)

Page 50: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Atribuindo dados para caixa de lista.

Usando a propriedade Items.

Permite acrescentar em cada posição da caixa de lista um itemenviado pelo métodos Add() que adiciona criando uma novaposição na caixa de texto.

Exemplo :

ListBox1->Items->Add("Maria");ListBox1->Items->Add("José");ListBox1->Items->Add("Célia");

Page 51: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Saída :

Onde o primeiro item da caixa de lista é 0 e o terceiro 2 eassim por diante. Em caso nenhum item esteja seleciona ovalor será (-1).

Page 52: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Capturando o Item Selecionado por intermédio da propriedade ItemIndex.

Exemplo :

int x = ListBox 1->ItemIndex ;ShowMessage(x) ;ShowMessage(x) ;

Obs : No exemplo acima x será um númerode 0 a 2.

Page 53: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Capturando uma "String" da caixa de Lista. Método Strings[].

Exemplo :

int x = ListBox1->ItemIndex;AnsiString a = ListBox 1->Items ->Strings[x]) ;AnsiString a = ListBox 1->Items ->Strings[x]) ;

Obs : Irá retorna com a string selecionada nacaixa de Lista pelo usuário armazenando oconteúdo na variável (a).

Page 54: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Criando uma Caixa de Combinação. (ComboBox).

Page 55: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Atribuindo dados para uma caixa de combinação.

Exemplo :

ComboBox1->Items->Add("Item-1");ComboBox1->Items->Add("Item-1");ComboBox1->Items->Add("Item-2");ComboBox1->Items->Add("Item-3");ComboBox1->Items->Add("Item-4");

Page 56: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Saída :

Capturando dados de uma caixa de combinação.

AnsiString a = ComboBox1->Text;

Page 57: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Removendo dados de uma caixa de Combinação. Método Delete().

ComboBox1->Items->Add("Item-1"); ComboBox1->Items->Add("Item-2"); ComboBox1->Items->Add("Item-3"); ComboBox1->Items->Add("Item-4"); ComboBox1->Items->Add("Item-4"); ComboBox1->Items->Delete(3);

Obs : No exemplo acima o item eliminado será (Item-4). Poiscomo na caixa de lista a caixa de combinação também iniciana posição 0 (Zero).

Page 58: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Atenção : Todas as propriedades emétodos usados para a caixa de lista(ListBox) valem para a caixa de(ListBox) valem para a caixa decombinação (ComboBox 1).

Page 59: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Criando uma caixa de verificação. (CheckBox)

Exemplo :

CheckBox1->Checked = true;

Page 60: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Saida :

Obs : Marca a caixa de verificação quandorecebe verdadeiro e desmarca quando recebefalse, podendo ser usado também (0- nãoselecionado ou 1- Selecionado).

Page 61: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Criando botões de rádio. (RadioGroup)

Exemplo :

RadioGroup1->Items->Add("Masc.");RadioGroup1->Items->Add("Fem.");

Page 62: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Saída :

Page 63: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Capturando a informação selecionada no botão de rádio.

Exemplo :

int k = RadioGroup1->ItemIndex; if(k = = 0) ShowMessage("Masc. Foi Selecionado !!!"); else ShowMessage("Fem. Foi Selecionado !!!");

Page 64: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Criando uma Barra de Rolagem. (ScrollBar).

Page 65: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Capturando dados de uma Barra de Rolagem.

void __fastcall TForm1::ScrollBar1Change(TObject *Sender) { int y = ScrollBar1->Position; int y = ScrollBar1->Position; Label1->Caption = IntToStr(y); }

Obs : Uma Barra de Rolagem possui como propriedades principaisMax = 100 (determina o valor máximo que será atribuído para abarra e a propriedade Min = 0, o valor mínimo atribuído) e oPosition que retorna o valor selecionado.

Page 66: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Criando um Painel. (Panel).

Cria um painel para agrupamento de objetos,ou seja tudo o que acontecer em um objetoPanel acontecera também com os outrosvinculados ao mesmo painel.

Page 67: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo : (Panel)

No exemplo abaixo a programação irá desabilitaros dois botões usando apenas uma única linha semque seja preciso desabilitar cada botão.

Exemplo :

Panel1->Visible = 0;

Page 68: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de CenárioCenário

68

Page 69: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de Cenário

Cenário é o espaço real ou virtual,onde a história se passa, Pode ser oconjunto de elementos que decoram olocal das ações em execução do modeloapresentado.apresentado.

69

Page 70: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Técnica de cores

O cenário deverá conter a mesma com de contorno do personagem da cena.

70

Cena - 1

Cena - 2

Page 71: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Técnicas de cores pontos colineares

71

Page 72: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Representação em Escala

72

Page 73: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Tons de cores continuas

73

Page 74: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Objetos mantidos na cor do cenário

74

Page 75: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Cenário neutro

75

Page 76: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de SpritesSprites

76

Page 77: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de Sprite

Os sprites foram inventadosoriginalmente como um método rápidode animação de várias imagens agrupadasnuma tela, em jogos de computadorbidimensionais, usando hardware especial.

77

Page 78: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplos

Os sprites são usados para geraranimações em jogos. Sprites paramovimentação de um personagem.

78

Page 79: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo (2)

Seqüência de sprites para realizaranimação de um cachorro correndo.

79

Page 80: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceitos de AnimaçãoAnimação

Movimento

80

Page 81: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de animação

Animação significa dar vida a umobjeto estático.

81

Page 82: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Técnicas de animação

• Animação Stop-Motion;• Animação de Recortes;• Animação quadro à quadro;• Animação por Interpolação

82

Page 83: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

AtençãoImportante todos os métodosdemonstrados implementados apartirdeste momento devem ser guardadospelos alunos para que se possam serpelos alunos para que se possam serreutilizados em outros projetos.

83

Page 84: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de temporizadortemporizador

84

Page 85: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Definição

Um temporizador é umdispositivo capaz demedir o tempo.medir o tempo.

85

Page 86: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de Temporizador

Evento temporizado para processamentoem concorrência.

86

Paleta System

Page 87: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Funcionamento de um temporizador

• Com condição de parada.• Sem condição de parada.• Sem condição de parada.

87

Page 88: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Condição de parada

Processamento

88

contador

ContadorN

FIM

S

Page 89: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Sem condição de parada

Processamento

89

contador

Page 90: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Propriedades do Timer

Propriedades Estado

Enable True/False

Interval 1000

90

Interval 1000

Name Timer1

Page 91: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Aplicando animação em um Spriteem um Sprite

91

Page 92: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Evento temporizador

void __fastcall TForm1::Timer1Timer(TObject *Sender){// Chamada da função de animação de sprite // Chamada da função de animação de sprite }

92

Page 93: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Procedimento de Animação do Sprite

int contador_imagem = 0;void AnimaSprites(TImage *figura, int totalimagem,String caminho,String

imagem[],boolean parar){if(!parar){figura->Picture->LoadFromFile(caminho+imagem[contador_imagem]);contador_imagem++;if(contador_imagem >= totalimagem)

contador_imagem = 0;contador_imagem = 0;}

}

93

figura – Passa o nome do objeto que contem a figura.

totalimagem – Número de Imagens a ser animadas.

Caminho – Diretório onde encontram -se as imagens.

Vetor de Imagem – Nome do arquivo de imagem a ser ca rregado.

Parar – Booleano que indica se haverá ou não animaçã o.

Page 94: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Chamada do método AnimaSprites()

void __fastcall TForm1::Timer1Timer(TObject *Sender){

String figura[] = {"CA1.bmp","CA2.bmp","CA3.bmp","CA4.bmp"};AnimaSprites(4,"C:\\trabalhos\\aulas\\DesenJogos\\Imagens\\",figura,false);AnimaSprites(4,"C:\\trabalhos\\aulas\\DesenJogos\\Imagens\\",figura,false);

}

94

Page 95: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Transformações LinearesLineares

95

Page 96: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de Transformações lineares

Transformações lineares são usadaspara descrever vários tipos de mudançasgeométricas, como: rotação, homotetia,geométricas, como: rotação, homotetia,cisalhamento, reflexão, além de outrasdeformações no plano ou no espaço.

96

Page 97: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Propriedade da Transformação Geométrica

Transformação vem a ser oconceito de transladar, atribuiruma escala ou rotação de umauma escala ou rotação de umafigura.

97

Page 98: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de Translação

98

Page 99: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Translação

Quando ocorre a variação dascoordenadas (x,y) no plano cartesiano.

x’ = x ± txy’ = y ± ty

99

Page 100: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parâmetros de entrada para translação no eixo x

figura – Imagem passada comoparâmetro.tx - Valor de deslocamento horizontal notx - Valor de deslocamento horizontal noeixo x.booleano – Define se a figura irá sedeslocar para esquerda ou direita.

100

Page 101: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo prático de translação em no eixo x

void trans_x(TImage *figura, int tx, boolean direita){if(direita)

figura->Left += tx;else

figura->Left -= tx;}

101

Page 102: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parâmetros de entrada para translação no eixo y

figura – Imagem passada comoparâmetro.ty - Valor de deslocamento vertical noty - Valor de deslocamento vertical noeixo y.booleano – Define se a figura irá sedeslocar para cima ou para baixo.

102

Page 103: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo prático de translação em no eixo y

void trans_y(TImage *figura, int ty, boolean cima){if(cima)

figura->Top -= ty;elseelse

figura->Top += ty;}

103

Page 104: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de Escala

104

Page 105: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Escala

Quando ocorre a variação das direçõesdo objetos nas coordenadas (x,y) no planocartesiano.

x’ = xSx

y’ = ySy105

Page 106: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parâmetros de entrada para escala no eixo - x

figura – Determina a figura que sofreráescala.sx – Determina valor da escala no eixo x.sx – Determina valor da escala no eixo x.forma – Determina se haverá dilatação oucontração horizontal.

106

Page 107: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo prático de Escala na direção x

void escala_x(TImage *figura, int sx, boolean forma){if(forma)

figura->Width += sx;elseelse

figura->Width -= sx;}

107

Page 108: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parâmetros de entrada para escala no eixo - y

figura – Determina a figura que sofreráescala.sy – Determina valor da escala no eixo y.sy – Determina valor da escala no eixo y.forma – Determina se haverá dilatação oucontração vertical.

108

Page 109: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo Prático de Escala na direção y.

void escala_y(TImage *figura, int sy, boolean forma){if(forma)figura->Height += sy;

elseelsefigura->Height -= sy;

}

109

Page 110: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de RotaçãoRotação

110

Page 111: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Definição de transformaçãoMovimento de rotação , é omovimento circular de um objeto ao redorde um centro ou ponto de rotação.

111

Page 112: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceitos Trigonométricos

hipot

adjcate_cos =α

112

hipot

opostcateseno

_=α

Page 113: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceitos Trigonométricos

Distância = Raio

(Xc,Yc) – Ponto Central

x = Xc + R cos(θ)

113

(Xc,Yc )

x = Xc + R cos(θ)

y = Yc + R sen(θ)

Onde (θ), varia entre [0..360].

Page 114: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parâmetros de entrada para rotação

figura – Imagem a ser animada.xc – Coordenada x do ponto central.yc – Coordenada y do ponto central.yc – Coordenada y do ponto central.Dist – Distância correspondente ao raio do

circulo imaginárioangulo – Série de valores correspondentes

ao ângulo de rotação (+/-) sentido horárioou anti-horário.

114

Page 115: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo prático de rotação Sentido horário (360)

void rotacao(TImage *figura,int xc, int yc, int dist, int angulo){int x = xc + dist * cos(angulo*3.14/180);int y = yc + dist * sin(angulo*3.14/180);figura->Left = x;figura->Top = y;figura->Top = y;

}

115

Page 116: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Gerador de Números aleatóriosNúmeros aleatórios

116

Page 117: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de números aleatórios

Em estatística, um número aleatório éum número que pertence a uma sérienumérica e não pode ser previsto a partirdos membros anteriores da série. Odos membros anteriores da série. Oconceito de número aleatório é um conceitorelativo à série numérica a que o númeropertence.

117

Page 118: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conjunto de números aleatórios

V = {9,45,1,70,72,74}

Conjunto de números aleatórios no intervalo [1 – 80].

118

V = {9,45,1,70,72,74}

Page 119: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Exemplo

Para se gerar um número aleatório énecessário possuir uma semente e umintervalo.

119

A

Page 120: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parametrização dos métodos geradores de métodos geradores de

números aleatórios

120

Page 121: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

int numero_aletorio(int a, int b)

Gerador de números aleatórios.

int a: Determina o valor inferior dointervalo.intervalo.int b: Determina o valor superior dointervalo.

121

Page 122: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Método gerador de números aleatórios

int numero_aletorio(int a, int b) {int x = 0;if(a==b)

a = 0;a = 0;if(b > a)

x = random((b-a)+1)+a;else

x = random((a-b)+1)+b;return x;

} 122

Page 123: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Contador de PontosPontos

123

Page 124: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito contador

O contador de pontos realiza somatóriados pontos acumulados de umdeterminado jogador.

P(t) = total de pontos do

124

∑=

=n

iit xp

1

P(t) = total de pontos do jogador

Xi = acumulador de pontos do jogador.

i = Representa cada valor individual de x.

Page 125: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parâmetros de acumulo

a – Define o limite da extremidade esquerdado intervalo.

b – Define o limite da extremidade direita dointervalo.intervalo.

incremento – Define o valor incremental.cresc – Define se o incremento será realizado

de forma crescente o decrescente(Booleano).

125

Page 126: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Função de acumulo de pontos

int contador = 0;int acumula_pontos(int a, int b, int incremento, bo olean cresc) {

if(cresc) {if(a > 0 && contador==0)

contador = a;if(contador < b)

contador += incremento;contador += incremento;}else{

if(a > b && contador==0)contador = a;

if(contador > b)contador -= incremento;

}return contador;

}

126

Page 127: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Geradores de PosicionamentoPosicionamento

127

Page 128: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito PosicionamentoAto, processo ou efeito de posicionar(-se).

Posicionamento

Aleatório.

128

Page 129: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Parâmetros de posicionamento

figura – Determina a figura que será movimentada.x – Parâmetros de posicionamento da coluna.coluna.y - Parâmetros de posicionamento da linha.

129

Page 130: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Método para posicionamento de figuras

void posiciona(TImage *figura, int x, int y){figura->Left = x;figura->Top = y;figura->Top = y;

}

130

Page 131: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Captura de posicionamento

int getp_x (figura): Captura a coordenadareferente a coluna de uma determinadafigura. Retornando um inteiro.

int getp_y (figura): Captura a coordenadareferente a linha de uma determinadafigura. Retornando um inteiro.

131

Page 132: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Retorna posição da figura (Coluna)

int getp_x(TImage *figura){return figura->Left;return figura->Left;

}

132

Page 133: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Retorna posição da figura (linha)

int getp_y(TImage *figura){return figura->Top;return figura->Top;

}

133

Page 134: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Geradores de HanksHanks

134

Page 135: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Conceito de Hanks

Estatísticas paraavaliação deaproveitamento dejogadores pertinentesjogadores pertinentesa jogabilidade doprocesso.

135

Page 136: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Métodos para mostrar Hank

void hank(TListBox *lista, String jogador[],int pontos[], String delimita,int Indice){lista->Items->Clear();for(int i=0;i<=indice-1;i++)

lista->Items->Add(IntToStr(pontos[i])+delimita+jogador[i]);}

136

lista – Recebe dados do objeto lista

jogador – Nomes dos jogadores para serem organizados

pontos – Numero de pontos dos jogadores

delimita – Delimitador do nome e pontuação.

indice – Determina o número de elementos passados no Array.

Page 137: DesJogos(2Bim) [Modo de Compatibilidade]2Bim).pdf · totalimagem – Número de Imagens a ser animadas. Caminho – Diretório onde encontram -se as imagens. Vetor de Imagem – Nome

Método para classificar pontuaçãovoid sorte(TListBox *lista,String jogador[], int po ntos[],int indice){

boolean parar = false;int aux = 0;String jog_aux="";while (!parar) {

parar = true;for(int i=0;i<=indice-2;i++){

if(pontos[i] < pontos[i+1]){aux = pontos[i];pontos[i] = pontos[i+1];pontos[i] = pontos[i+1];pontos[i+1] = aux;jog_aux = jogador[i];jogador[i] = jogador[i+1];jogador[i+1] = jog_aux;parar = false;

}}

}hank(lista,jogador,pontos,"-",indice);

}

137