criando jogo game maker
Primeiramente,
se você não sabe criar uma barra de vida na horizontal, não se
preocupe, pois o processo é o mesmo para criar uma barra na vertical.
Então você aprenderá os dois modos de uma só vez !
Primeiro passo => Abra um novo projeto e crie um objeto(apertando na bolinha azul, no cabeçário do GM), não será necessário sprite !
Segundo passo =>Adicione um "Evento Create" ao objeto, vá na aba "control" arraste a folinha de papel "(Execute Code)" e escreva este código lá :
Código:energia=50
Terceiro passo => Adicione um "Evento Keyboard Left", arraste novamente a folinha de papel "(execute code)" e escreva este código lá :
Código:energia-=3
if energia <=0 { energia=0 }
Quarto passo => Adicione um "Evento Keyboard Right" arraste a folinha de código e escreva :
Código:energia+=3
if energia>=100 { energia=100 }
Agora
é que vem a parte chave do esquema... Só o que vai diferenciar uma
barra de vida "horizontal" de uma "vertical", é somente as coordenadas
X e Y que você às empregará, e a direção também escolhida por você !
Então vamos lá :
Quinto e último passo => Adicione um "Evento Draw" arraste a folhinha de códigos e escreva:
Código:draw_healthbar(view_xview[0]+20,view_yview[0]+10,view_xview[0]+25,view_yview[0]+110,energia,c_red,c_black,c_green,3,true,true)
Então o que foi feito ?
Primeiramente foi usada a função draw_healthbar(x1,y1,x2,y2,amount,backcol,mincol,maxcol,direction,showback,showborder)
Em x1=> Foi colocada a posição X de onde começa a barra na horizontal !
Em y1=> Foi colocada a posição Y de onde começa a barra na vertical !
Em x2=> Foi colocada a posição X de onde termina a barra na horizontal !
Em y2=> Foi colocada a posição Y de onde termina a barra na vertical !
Em amount=> Vai o nome da variável que conta a vida ou energia do objeto !
Em backcol=> Vai a cor do fundo da barra "( a parte vazia sem energia ) !
Em mincol=> Vai a cor que ficará a barra quando estiver com pouca energia !
Em maxcol=> Vai a cor da baara quando estivar com bastate energia !
Em direction=> Vai o numero da direção em que aumentará a energia !
0= Aumenta da esquerda para a direita !
1= Aumenta da direita para a esquerda !
2= Aumenta de cima para baixo !
3=Aumenta de biaxo para cima !
Em showback=> True para mostrar a cor de fundo e False para não mostrar !
Em showborder=> True para mostrar as bordas da barra e false não mostrar !
Agora é só criar uma room, adicionar lá o objeto e testar !
Então
resumindo... Para criar uma barra na vertical é só deixar o tamanho
largo na vertical e estreito na horizontal e ajustar a direção, a para
criar uma barra na horizontal, é só deixar largo na horizontal e
estreito na vertical e ajustar a direção !
{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 Calibri;}}
{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\sa200\sl276\slmult1\lang22\f0\fs22 Scrolling Shooter\par
Atiradores de rolagem s\'e3o um tipo muito popular de jogo de arcade de acao, e tambem sao bastante faceis de criar com um pacote como Game Maker.
Neste tutorial vamos fazer um jogo destes e, no processo, voce aprende uma serie de aspectos do Game Maker, em particular o uso de variaveis.
Em um scrolling shooter o jogador controla um objeto, por exemplo, um aviao, nave espacial, ou de carro, que se move ao longo de um fundo de rolagem.
Obstaculos aparecem no plano de fundo que devem ser evitadas e inimigos parecer que deve ser baleado.
Muitas vezes, objetos de bonus parece que pode ser pego de beneficios de adicao.
Durante o jogo, o n\'framers, a variedade e a forca dos inimigos aumenta tornando-se cada vez mais dificil sobreviver.
Neste tutorial, vamos criar um scrolling shooter chamado de 1945, no qual o jogador voa em um aviao sobre um mar e avioes inimigos tentam destruir o jogador.
Vamos tratar aspectos como a forma de criar a ilusao de movimento atraves de um fundo de rolagem, como controlar o aviao,como fazer inimigos e balas,e como lidar com o placar,com vidas e com os danos do avi\'e3o.
Mas antes de tudo nos aprofundarmos um aspecto muito importante do Game Maker, que se estende consideravelmente as possibilidades: o uso de variaveis.
//Movimentar para esquerda
if(keyboard_check_pressed(vk_left))
{
hspeed = -5
}\
//Movimentar para Direita
if(keyboard_check_pressed(vk_right))
\{
hspeed = 5
}
//Movimentar para cima
if(keyboard_check_pressed(vk_up))
{
vspeed = -5
}
//Movimentar para baixo
if(keyboard_check_pressed(vk_down))
{
vspeed = 5
}
Antes de realmente criar o jogo de tiro de rolagem precisamos aprofundar um pouco em um importante conceito de Game Maker: o uso de variaveis.
Este conceito simples ir e fornecer um mecanismo muito poderoso para permitir o jogo muito mais interessante. Entao, o que e uma variavel?
Ele pode ser melhor visto como uma propriedade de uma instancia de um objecto.
display_mouse_set
display_reset
display_set_all
display_set_colordepth
display_set_frequency
display_set_size
display_test_all
distance_to_object
distance_to_point
draw_arrow
draw_background
draw_background_ext
draw_background_general
draw_background_part
draw_background_part_ext
draw_background_stretched
draw_background_stretched_ext
draw_background_tiled
draw_background_tiled_ext
draw_button
draw_circle
draw_circle_color
Como voce deve saber, existem algumas propriedades que podem indicar quando definimos um objeto.
Por exemplo, podemos definir se ele estiver visivel ou se e solida. He tambem um certo n\faamers de fases que alteram as propriedades determinadas.
Por exemplo, existe uma acao para alterar a posicao ou a velocidade do exemplo.
Cada instancia tem um n\framers de tais propriedades e a tambem um n\framers de propriedades globais,como a pontuacao, que nao estao relacionados a casos individuais.
Todas as propriedades sao armazenados em chamados variaveis \u8203?\u8203?que tem um nome.
Aqui estao algumas das propriedades / variaveis \u8203?\u8203?que cada instancia tem:
// quando pressionada a seta para direita a personagem anda para a direita\par
if keyboard_check(vk_right)
{
direita = true
if place_free(x+velocidade,y)
{
x += velocidade
parado = false
}
}
// quando pressionada a seta para esquerda a personagem anda para a esquerda
if keyboard_check(vk_left)
{
direita = false
if place_free(x-velocidade,y)
{
x -= velocidade
parado = false
}
}
// se nao estiver pressionado nada, a personagem fica parado
//virada para o lado que ela estava.
if (keyboard_check_released(vk_right or vk_left)) {parado = true }
x: a coordenada x da instancia
y: a coordenada y da instancia
hspeed: velocidade horizontal (em pixels por etapa)
vspeed: velocidade vertical (em pixels por etapa)
direcao: direcao atual do movimento em graus, sendo 0 direito, e indo no sentido contrario para 360 sendo novamente a 0 direita
Velocidade: A velocidade atual nessa direcao
visidvel: se o objeto e visivel (1, ou true) ou invisivel (0, ou falso)
solida: se o objeto e solido (1, ou true) ou nao (0, ou falso)
E aqui estao algumas variaveis \u8203?\u8203?globais:
score: o valor atual da pontuaco
vive: o n\framers atual de vidas
sa\'fade: a sa\'fade atual do jogador (o padrao e 100)
mouse_x: a coordenada x do mouse
mouse_y: a coordenada y do mouse
room_speed: velocidade atual (FPS) da sala em passos por segundo
room_caption: subtitulo mostrado no titulo da janela
room_width: largura da sala em pixels
room_height: altura da sala em pixels
Ha muitos, muitos mais variaveis, tanto locais para as instancias, e globais. Todos eles podem ser encontrados na documentacao Game Maker.
Acao fases que manipulam o valor de certas variaveis mas como veremos tambem e possivel manipula-los diretamente.
O que e melhor, voce pode definir suas proprias variaveis \u8203?\u8203? e usa-los tambem.
Pontos = 0
Ativar = false
Vidas = 3
Por exemplo, como veremos a seguir, queremos que a nossa nave espacial para ser capaz de filmar apenas uma vez a cada cinco etapas do jogo.
Portanto, a nossa nave espacial precisa de uma propriedade para indicar se ele pode atirar. Nos usamos uma variavel para essa propriedade que chamamos can_shoot.
(Um nome de variavel so pode consistir de letras e o simbolo de sublinhado.
Nome da variavel sao case-sensitive,entao Can_Shoot nao e a mesma variavel como can_shoot.)
No caso de criacao da nave espacial que definir esta variavel para 1 (usamos sempre um para indicar verdadeiro).
Quando o jogador quer disparar um tiro que verificar o valor da variavel para ver se isso e permitido.
Sempre que um tiro e disparado definimos a propriedade a 0 (indicando que o disparo temporariamente nao e permitido).
Evento Create
Global.tempo = 0
Global.contar = false
Global.cem = 0
Evento Step
If (global.contar = true)
{
Global.tempo += 1
}
If(global.tempo >= 100)
{
Global.cem += 1
Global.tempo = 0
}
Em seguida, usamos um evento de alarme para definir a propriedade de volta para 1 apos cinco etapas.
Abaixo vamos descrever isso com mais detalhes.
De forma semelhante podemos usar variaveis \u8203?\u8203? para indicar se a nave tem um escudo ativo, se ele tem alguma atualizacao arma especial, etc.
Acao fases variaveis
Acao de fases importantes para lidar com variaveis \u8203?\u8203? diretamente, o que pode ser encontrado na aba de controle:
Evento Create
Globalvar tempo
Globalvar contar
Globalvar cem
Evento Step
If (contar = true)
{
Global.tempo += 1
}
If(tempo >= 100)
{
cem += 1
tempo = 0
}
Defina o valor de uma variavel. Com esta acao, voce pode alterar o valor de uma determinada variavel.
Esta pode ser uma das variaveis \u8203?\u8203?internas ou sua propria variavel. Voce especifica o nome da variavel e o novo valor.
Quando voce marcar a caixa Relativa o valor dado e adicionado ao valor atual da variavel.
Por favor, note que isso so pode ser feito se a variavel ja tem um valor atribuido a ele!
Em vez de fornecer um valor simples para a variavel que voce tambem pode dar uma expressao.
Por exemplo, para dobrar a pontuacao que voce pode definir o valor da pontuacao variavel para valorizar 2 * pontuacao.
draw_healthbar(x1,y1,x2,y2,amount,backcol,mincol,maxcol,direction,showback,showborder)Se uma variavel tem um valor.
Com esta acao, voce pode verificar qual e o valor de uma determinada variavel.
Se o valor da variavel e igual ao n\framers dado,a questao devolve verdadeiro e o seguinte bloco de acao ou das acoes e realizada.
Se nao for igual, o seguinte bloco de acoes ou acao fases nao e realizada.
Voce tambem pode indicar que o cheque deve ser se o valor da variavel e menor do que o valor dado ou maior do que o valor determinado.
Na verdade, voce nao esta restrito ao uso de variaveis, mas pode verificar qualquer expressao que voce gosta.
Mais tarde, veremos uma serie de exemplos de utilizacao destas acao fases.
c_gold
c_bright_green
c_irish_green
c_olive
c_seafoam
c_spring_green
c_blue_bird
c_bell_blue
c_lilac
c_crimson
c_bone
c_flesh
c_peach
c_mustard
Ha mais uma coisa que voce precisa saber sobre variaveis.
Como indiquei acima, existem variaveis \u8203?\u8203?locais que "pertencem" a uma instancia e ha variaveis \u8203?\u8203?globais.
Quando voce usa suas proprias variaveis \u8203?\u8203?estas sao sempre variaveis\u8203?\u8203?locais que so existem para a instancia em cujas as fases voce a usa-los.
Se voce quiser usar suas proprias variaveis \u8203?\u8203?globais que voce tem que prefixar o seu nome com a palavra global e um ponto.
Assim, por exemplo, voce pode usar um global.bonus variavel para indicar o n\framers de pontos de bonus recolhidos pelo jogador.
Sempre tenha cuidado que voce use nomes de variaveis \u8203?\u8203?que ainda nao existem e tambem sao diferentes dos nomes de sprites, sons, etc.
Uma maneira de conseguir isso e sempre deixar as suas variaveis \u8203?\u8203?comecem com ex var_.
draw_healthbar(view_xview+10,view_yview+30,view_xview+90,view_yview+35,global.hp,c_black,c_red,c_green,0,1,1);
draw_text(x,y,global.vida)
Rolagem de fundos
Um atirador de rolagem gracas o seu nome ao fato de que os pergaminhos mundiais jogo na tela, normalmente seja de cima para baixo ou da direita para a esquerda.
Isso e a ilusao de movimento. No jogo de 1945 os pergaminhos mundo de jogo vertical.
Mesmo que o aviao o jogador controla realmente fica parado na tela voce tem a impressao como se voa sobre o fundo de rolagem.
Image_speed = 0.5
if(image_index >= 10)
{
Instance_destroy()
}
Voce pode controlar a posicao do aviao, movendo-a ao redor da tela.
Isto e a impressao de o aviao acelerando,quando ele se move para a frente, ou abrandar quando se move para tres.lados fundamental que o plano nao se mover mais reptido para tres do que os rolos de fundo.
Isso daria a ilusao de que o aviao voa para tres, o que e obviamente impossivel.
if(keyboard_check_pressed(vk_up))
{
Sprite_index = spr_personagem_saltando
}else
{ sprite_index = spr_personagem_parado}
Image_alpha = 0.1
Entao, como vamos criar um fundo de rolagem no Game Maker? Na verdade, existem duas possibilidades.
O primeiro e mais facil possibilidade e a utilizacao de uma imagem de fundo da telha que se move para baixo atraves da sala.
O segundo, mais complicado, caminho e a construcao de uma sala muito maior, mas apenas mostrar parte da sala usando uma exibicao chamada.
Essa visao se move lentamente para cima sobre o quarto. Vamos comecar com o uso de um fundo em movimento.Mais tarde,vamos investigar brevemente a segunda opcao.
alarm[0] = 90
Tempo = 0
Tempo += 1
if(tempo >= 60)
{
hspeed = 5
}
Como o nosso jogo tem lugar durante acao so precisamos de uma imagem de fundo que se parece com um ser visto de cima.
Na fases adicionamos a seguinte imagem pequena como um recurso de fundo para o jogo e dar-lhe o nome back_water:
if(keyboard_check_pressed(ord('A')))
{
instance_create(x,y,object1)
}
Encher o fundo com ele vai dar um mar bem olhando. Para criar uma sala com um fundo em movimento, adicione um espaco para o jogo da maneira familiar.
Com o clique esquerdo na aba fundos. Precisamos mudar tres configuracoes aqui.
O restante dos codigos basta usar vk_nome_da_tecla apos a funcao keyboard_check.
Vk_left
Vk_right
Vk_up
Vk_down
Vk_space
Vk_delete
Vk_backspace
...
Em primeiro lugar, porque estamos indo para encher a sala toda a imagem de fundo com que nao precisa desenhar o fundo em uma cor,por isso,desmarque a caixa cor de fundo Draw.
Em segundo lugar,no meio,clique no adicione de menu e selecione a imagem de fundo back_water.
A configuracao padrao e a telha o quarto inteiro com ele entao e isso que na fases queremos. Por fim, precisamos fazer o movimento de fundo.
Para este fim, na parte inferior, definir o Vert. velocidade para 2. O formulario deve agora olhar como se segue.
image_index = 0
image_speed = 0
saude = 50
Execute o jogo para verificar que de fato tem um fundo de rolagem que e a ilusao de movimento.
if(saude = 40)
{
image_index = 1
}
if(saude = 30)
{
image_index = 2\par
}
\par
if(saude = 20)
{
image_index = 3
image_speed = 0.3
}
Rolagem ilhas
Para aumentar a sensacao de movimento, vamos adicionar algumas ilhas para o ver.Uma maneira facil seria criar uma imagem de fundo maior e adicionar a ilha a este fundo.
A desvantagem dessa abordagem e que as ilhas aparece em um padrao regular, que o jogador logo percebe.
(Voce pode ter visto isso em desenhos animados, onde e um fundo de rolagem repetindo atraves de um personagem em movimento.)
Entao, na fases escolhemos uma abordagem um pouco mais complicado e adicione a ilha como objetos.
Entao o primeiro,criar tres sprites com as imagens a seguir(voce pode fazer isso facilmente,arrastando cada uma das imagens para a janela Criador do jogo,em seguida, selecionando "Sprite"):\par
instance_destroy()
saude -= 5
Como nunca iremos usa-los para verifica e acao de colisao, e melhor para garantir Precise verificacao de colisao esta desmarcada.
Isto ir e melhorar a velocidade do jogo e executado. Para cada uma das ilhas que criar um objeto.
No evento de criacao de n\fases dar o objeto uma velocidade vertical que e a mesma que a velocidade de deslocacao do fundo.
Desta forma, parece que as ilhas sao parte do fundo, porque eles ficam na mesma posicao em relacao ao mar a oscilar.
if(distance_to_object(object0)<100)
{
mp_potential_step(object0.x,object0.y,5,true)
atacar = true}
else
{
atacar = false}
if(atacar = true)
{
tempo += 1
if(tempo >= 5)
{
instance_create(x,y,object2)
tempo = 0
}
Para se certificar de que todos os outros objetos vao ficar acima das ilhas que dao a ilha objetos uma profundidade de 10000.
(Voce deve executar Game Maker em modo avancado para ser capaz de fazer isso - alterar essa opcao no arquivo se voce esta no modo simples.)
As instancias de objetos sao desenhados na ordem de profundidade.
Os casos com maior profundidade sao atrasados pela primeira vez. Instancias com menor profundidade sao desenhados em cima deles.
Assim, dando as ilhas uma alta profundidade que seria sempre desenhado pela primeira vez e se deitar abaixo os outros objetos.
vel -= 1 // velocidade foi definida com o valor 20 no evento create
tempo += 1
if(vel <= 0)
{
vel = 0
}
if(tempo >= 15)
{
instance_change(object3,true) //objeto com efeito de explosao
}
mp_potential_step(object0.x,object0.y,vel,false)
So mais uma coisa precisa ser feito.Quando a ilha desaparece abaixo do fundo da sala, queremos fazer-lo reaparecer no topo.
Para fazer isso, em caso Etapa da ilha, vamos testar se a ilha desapareceu abaixo da tela e, em caso afirmativo, ela reaparecer no topo.
Note-se que a variavel y indica a posicao vertical do exemplo. (Um valor de 0 corresponde e 0 parte superior do quarto!)
O room_height variavel indica a altura da sala. Assim, a ilha desaparece abaixo da parte inferior da sala quando y e maior do que room_height.
Assim, podemos usar a acao para testar os valores das variaveis \u8203?\u8203?para ver se a ilha encontra-se abaixo da sala:
Como voce ve, como o valor que voce pode realmente usar um outro nome da variavel. Voce pode realmente escrever expressoes completas aqui.
Para mover para a parte superior do quarto que usar a acao para saltar para uma posicao e 0.
Mas nao gostamos de ir para uma posicao e aleatoria acima do quarto, nao um particular.
Ao escolher uma posicao aleatoria e menos regularidade nos lugares onde as ilhas aparecem.
Assim, o jogador n\'e3o tem a sensa\'e7\'e3o de que \'e9 a mesma ilha reaparecimento.
Mas como e que vamos dar um valor aleatorio? Para isso e uma funcao random ().
O que e uma funcao que voce pode perguntar? A funcao calcula um valor (ou executa uma acao) com base no valor de certos argumentos.
O argumento (s) so escritos entre parenteses apos o nome da funcao.
Em todos os lugares onde voce pode digitar valores que voce tambem pode usar as funcoes e variaveis \u8203?\u8203?(e expressoes que envolvem estes).
Ha muitas funcoes no Game Maker. Mas por agora precisamos apenas a funcao random ().
Na acao salto usamos aleatorio (room_width) como a coordenada x.
Isto ir e criar um valor aleatorio entre 0 e a largura da sala, como gostamos. Assim, a acao salto ficar e da seguinte forma:
Usamos -65 para a posicao -y para certificar-se da ilha comeca completamente acima do quarto.
Por causa de sua velocidade vertical que vai mudar de novo e vista. Temos que isso para todas as tres ilhas objetos.
Tudo o que resta a ser feito e colocar trea ilhas em diferentes alturas no quarto e estamos a fazer com o nosso fundo de rolagem.
Mesmo que as ilhas reaparecer em momentos regulares, porque a situacao e diferente, o jogador nao vai realmente notar que eles sao os mesmos.
Voce tambem poderia ter acrescentado alguma irregularidade no momento as ilhas aparecem, configurando tambem um valor aleatorio (negativo) para a coordenada y.
O plano principal
Agora que o fundo de rolagem esta pronto, e hora de fazer o aviao que o jogador ir e controlar. Esta e realmente bastante facil.
Primeiro de tudo, precisamos de um duende para o aviao. Usaremos um aviao de helice.
Para dar as helices a ilusao de rotacoes usamos um sprite que consiste de tres imagens que so exatamente os mesmos,exceto para as helices
(esta imagem pode ser encontrado como myplane_strip3 na pasta Tutoriais apropriado onde Game Maker foi instalado):
Tais sprites animados podem ser encontrados em arquivos que terminam com _stripXX, onde XX indica o n\'famero de subimages.
Ao criar esse sprite fazemos uma coisa importante. Nao definimos o X e Y da origem a 32. Isto significa que a origem da imagem movel e o centro do plano.
Portanto,sempre que o plano definido mais tarde numa posicao e 0 ou testar a posicao e o queremos dizer a posicao e o do centro do plano,o ponto de nao e o superior esquerdo,que e normalmente utilizada como a origem.
Isto e importante para garantir que, por exemplo, balas vem do centro do plano, n\'e3o a partir do lado esquerdo.
Em seguida, adicione o objeto obj_myplane. Como Sprite nao escolhemos o sprite aviao que acabamos de criar.
Damos-lhe uma profundidade de -100 para se certificar de que ele estao acima balas, etc. que criaremos mais tarde.
(Lidar com a propriedade de profundidade em uma maneira eficaz e muito importante para muitos jogos. Entao voce a entender melhor como usar isso.)
No momento, so precisa especificar o movimento do aviao.
Quando o jogador nao faz nada, o aviao nao se mover e (Lembre-se, no fundo, nao se move o aviao).
Se o jogador pressiona uma das quatro teclas de seta do plano deve se mover na direcao apropriada.
A nossa principal preocupacao e evitar que o aviao se move fora do quarto.
Para este fim, ir e controlar o movimento mesmos, em vez de dar uma velocidade do aviao. Isto e feito como se segue.
Vejamos o movimento para a seta para a esquerda. Adicionar o evento de teclado para a chave.
Precisamos primeiro para verificar que nao estamos muito longe para a esquerda.
Entao nao usamos a acao para verificar se a variavel x e maior do que 40, semelhante e maneira como nao fizemos o check a coordenada y das ilhas acima.
Se esta verificacao retorna verdadeiro queremos mover o aviao uma pequena distancia para a relativa e esquerda para sua posicao atual.
Para isso, use o "salto para uma posicao de acao se mova em relacao -4 para x e 0 para y. Nao se esqueca de verificar a caixa Relativa.
Para a seta para a direita que fazemos uma coisa similar. Nos verificar se x e menor do que room_width-40 e, em caso afirmativo, o salto em relacao a um x de 4 e y 0.
Similar para o movimento vertical, mas desta vez nao nos movemos apenas com uma velocidade de -2 e 2.(Lembre-se , nunca deve se mover mais reptido para tres do que o fundo esta a correr.)
Alem disso, nao se esqueca que a direcao y positivo e baixo. Entao, para se mover para cima, devemos subtrair 2 a posicao y.
Na parte inferior da tela que manter uma maior margem de 120. Isto ser e usado mais tarde para colocar um painel com alguma informacao de jogo.
Nosso aviao pode voar agora. Coloque uma instancia do plano no quarto e executar o jogo. Voce deve obter a ilusao de voar sobre o mar.
Inimigos e Armamento
Mas o que e um atirador de rolagem, se voce nao pode atirar e nao a e inimigos?
Agora vamos estender o nosso jogo com alguns avioes inimigos e um com nome no aviao que voce pode disparar.
Vamos comecar com o com nome. Precisamos de um sprite bala. Colocamos a sua origem no centro como fizemos para o plano principal.
Para torna-lo um pouco espetacular usamos um pouco grande bala. Exagerando as coisas muitas vezes e importante em jogos.
Criamos um objeto com esse sprite. Vamos dar-lhe a profundidade padrao 0 tal que ele ir e aparecer abaixo do plano, mas acima das ilhas.
O objeto tem um comportamento bastante simples. No evento de criacao de nao dar-lhe uma velocidade vertical de -8 para fazer-lo se mover para cima.
Para evitar que mais e mais balas continuam voando ao redor devemos destruir-lo uma vez que ele sai da sala.
Isto pode ser facilmente conseguido.No caso passo que testar se a variavel X e menor do que -16. Voce a ja deveria saber como fazer isso.
Se por isso, destruir o objeto usando a acao apropriada. (Voce tambem pode usar o evento Fora do quarto que pode ser encontrado em outros eventos.)
A bala deve ser acionado quando o usuario pressiona a tecla de espaco. Como na maioria dos shooters o aviao deve manter a disparar balas, enquanto a tecla e pressionada.
Mas nao queremos muitas balas no mesmo momento. Isso tornaria o jogo muito facil.
Nao permitir que o jogador disparar dois tiros a cada segundo, ou seja, uma bala a cada 15 passos.
Para conseguir isso, usamos um can_shoot variavel como mencionamos antes.
No evento de criacao do plano principal que definir esta variavel para 1, indicando que podemos realmente disparar uma bala.
No evento-chave espaco que testar se o can_shoot variavel e igual a 1. Se assim criamos uma bala apenas na frente do navio, relativa na posicao (0, -16).
Tambem vamos definir o can_shoot variavel com 0 indicando que ja e nao podemos atirar e definir alarm0 a 15.
Lembre-se que um alarme carrapatos para baixo a 0 com um tick em cada etapa. Quando o alarme chegar a 0 o evento de alarme acontece.
Nesse caso, vamos definir o can_shoot variavel volta a 1, indicando que podemos atirar novamente. O evento para a tecla de espaco agora deve ser algo parecido com isto:
Voce pode alterar a velocidade com a qual voce pode atirar, alterando o valor do despertador.
(Em alguns jogos voce pode atirar mais reptindo se voce estiver disposto a pressionar constantemente a tecla de espaco.
Isso pode ser conseguido atraves de um conjunto similar de acao na chave de espaco para eventos pressionado, mas desta vez sem o cheque para a variavel.)
Vamos agora fazer o primeiro inimigo. um pequeno aviao que simplesmente voa baixo. Ele nao atirar, mas quando bate o plano principal do jogo esta perdido.
Mais uma vez, criar um sprite para o aviao inimigo e um objeto. No evento de criacao vamos definir a velocidade vertical de 4 para fazer o aviao voar baixo.
Quando o aviao chega ao fundo do quarto que fazer-lo reaparecer em um lugar aleatoria no topo da sala,exatamente da mesma forma como fizemos para as ilhas.
Voce deve saber como fazer isso agora.
Inimigos e Armamento
Precisamos definir dois eventos de colisao importantes para o aviao inimigo:o evento de colisao com a bala, que deve destruir o aviao inimigo,e o evento de colisao com o plano principal que deve destruir o plano principal e terminar o jogo.\par
Comecamos com o evento de colisao com a bala. Uma serie de acoes e o necessarias aqui.
Mas antes de tudo precisamos de um som de uma pequena explosao e um sprite que indica a explosao.
Para criar um som, pressione Adicionar som e carregar alguns agradavel som de explosao (veja a pasta Sons no diretorio do jogo Maker por algum exemplo sons).
Para a explosao que precisamos de um pouco de Sprite. Tal como para o aviao inimigo que definir a origem (16,16).
Nos tambem criar um objeto explosao e dar-lhe o sprite explosao. Ele nao faz nada, exceto que uma vez que a animacao explosao completa jogou ele deve destruir a si mesma.
Ha um evento chamado Animation final para esta sob os outros eventos.
Quando o som e o objeto explosao estao prontos podemos preencher em caso de colisao do aviao inimigo com a bala.
Sao necessarios os seguintes acoes. Primeiro de tudo, reproduzir o som de explosao. Em seguida, destruir a bala.
Para isso, use a acao para destruir uma instancia mas, na parte superior, indicam que ele deve aplicar-se a outra instancia, que e a bala neste caso.
Em seguida, o objecto criar explosao, relativamente e 0 posicao (0,0), isto e, no mesmo local que o aviao inimigo. Nao e o destruir o aviao inimigo!
Em vez disso, mova-o para uma posicao aleatoria acima da sala de tal forma que parece que um novo aviao inimigo esta chegando.
Finalmente, vamos definir a pontua\'e7\'e3o relativa a 5.
Precisamos de parente aqui porque queremos adicionar 5 pontos para a pontuacao e; nos nao queremos para definir o placar para 5. O evnt deve ficar assim:
Em seguida, precisamos lidar com a colisao com o plano principal.
Mais uma vez vamos precisar de um sprite de explosao (um pouco maior desta vez) e um som de explosao (um pouco mais alto desta vez).
Nao adicionamos o som para o jogo e vamos fazer um sprite para a explosao.
Mais uma vez criamos um objeto explosao por isso, mas esse objeto e um pouco mais elaborado do que o outro objeto explosao porque ele tambem ir e lidar com o fim do jogo.
No seu evento de fim de Animacao fazemos algumas coisas. Nao primeiro destruir a instancia para torna-lo invisivel.
Em seguida, dormir um pouco para ter certeza de que o som explodindo esta terminado.
A proxima acao mostra a lista de alta pontuacao, de tal forma que o jogador pode digitar seu nome ou ela quando chegar a uma pontuacao elevada.
Isso vale tudo automatico em Game Maker. Voce pode ainda que indicam o que a aparencia deve ser de tabela de pontuacao elevada.
Voce pode ter uma imagem de fundo agradavel, escolher o tipo de letra, etc. Voce deve experimentar um pouco com isso. Finalmente, reinicie o jogo.
Em caso de colisao do aviao inimigo e o plano principal, mudamos o plano principal, isto e, o outro exemplo, em uma explosao.
Tambem vamos reproduzir o som explodindo e destruir o aviao inimigo.O que resta e colocar um aviao inimigo no quarto,mas vamos fazer isso um pouco diferente.
Um bom jogo torna-se mais dificil o tempo todo. Por isso, gostaria de comecar com apenas um aviao inimigo e obter mais deles ao longo do tempo.
Para este fim, criar mais um objeto, que chamaremos controller_enemy. Ele ir e controlar a criacao de avioes inimigos.
Nao fazemos o objeto invisivel durante o jogo, desmarcando a caixa visivel. Um sprite nao e necessario para ele.
No seu evento de criacao criamos um lugar inimigo em um local aleatorio pouco acima do quarto. Este seria o primeiro inimigo.
Nao tambem definir o despertador para 200. No caso de este despertador que criar um outro aviao inimigo e definir o despertador de novo, mas desta vez para 500.
Isso e tudo. O efeito e que, no inicio do jogo, existe um plano inimigo.
Depois de 200 passos, ou seja, cerca de sete segundos, surge um segundo aviao inimigo. Apos cerca de 15 segundos, um terceiro aviao aparece, etc.
(A razao que nao deixamos o segundo plano aparece mais reptido do que os outros e porque o jogo com apenas um aviao inimigo e muito chato.)
Coloque uma instancia do objeto controlador no quarto e estamos a fazer.
Isso termina a segunda versao de 1945. Temos um jogo jogavel com um inimigo.
Scores, vida e saida de fases um pouco insatisfatorio que o jogo termina quando voce e atingido.
Para tornar o jogo um pouco mais interessante, vamos deixar inimigos criar danos.
So quando o aviao fica muito dano ele sera destruido. Tambem vamos apresentar varias vidas e criar um painel agradavel informacoes que mostram essas informacoes,juntamente com a pontuacao
Felizmente, tudo isso vai ser muito facil, porque Game Maker foi construido com mecanismos para lidar com pontuacao, vidas e saida de fase (sendo o oposto do dano).
Para criar tudo isso que fazemos um novo objeto chamado de controller_life. Ela nao precisa de um sprite como iremos controlar o proprio desenho usando o evento de desenho.
Como voce sabe, normalmente em cada passo, o sprite que esta definido para a instancia e desenhada no local correto no quarto.
Mas quando voce colocar acoes em caso de desenho ja e nao e este o caso. Agora, essas acoes determinam o que esta sendo desenhado.
Ha todo um conjunto de acoes disponiveis apenas para o desenho. A maior parte deles pode ser encontrado no guia Draw.
Mas voce tambem pode usar outras acoes aqui. As acoees de desenho so fazem sentido no caso de desenho. Em outros lugares, eles estao basicamente ignorado.
Como ponto de partida, criamos uma grande sprite que funciona como painel de informacoes. Arraste a seguinte imagem em Game Maker e salve-o como um sprite:
Ela vai mostrar a contagem, o dano (na area preta e 0 esquerda), e o n/framers de avioes esquerda, que e o n\'framers de vidas.
Em caso de retirada de controller_life trazemos este painel Sprite informacoes na posicao correta usando a acao para desenhar um sprite.
Enchemos os parametros da seguinte forma:
Isto fara com que o sprite correta na parte inferior do acao. (Usando -1 para o sub-imagem significa que o sub-imagem atual e desenhada.
Como nao e apenas um sub-imagem na Sprite realmente nao se preocupam com isso,mas se um sprite e composto por varias sub-images voce pode indicar aqui o sub-imagem que voce deseja ver).
Para certificar-se de que o painel de fundo encontra-se acima de tudo, damos o objeto controller_life uma profundidade de -10000.
No seu evento de criacao, o objeto controller_life define o placar para 0, o n\framers de vidas a 3, e da saida fase para 100. Ha acoes para este na guia Score.
Para desenhar a pontuacao usamos a acao apropriada na guia Score.
(O primeiro conjunto de desenhos de cores para ser amarelo.)Na acao de chamar a pontuacao,que preencha os parametros da seguinte forma (sem legenda porque a legenda ja esta no fundo):\par
Para elaborar as vidas que usam um mecanismo diferente. Ao inves de apenas desenhar o n\framers que vai chamar um n\framers de pequenas imagens do aviao.
Para isso, vamos usar um pequeno duende que descreve o plano. Nao e uma acao para isso na guia Score.
Como fazemos agora mostrar a pontuacao e n\framers de vidas nos mesmos, ja nao quiser exibi-los na legenda da janela.
Ha uma acao na guia Score para indicar o que deve ser mostrado na legenda da janela. Coloque isso no evento de criacao do objeto e indicam que nada deve ser mostrado.
Tambem para o desenho da saida ha uma acao especial. A saida e apresentado sob a forma de uma barra de so fase.
Voce pode indicar a posicao, tamanho e esquema de cores usado. Nao preencher os parametros da seguinte forma:
O evento total de desenho e algo como isto:
Mas ainda precisamos realmente verificar para a so fase e vida. Primeiro de tudo o que temos que fazer algumas mudancas em caso de colisao do aviao inimigo e o plano principal.
Ele deve deixar de destruir o plano principal,mas apenas destruir a si mesma(transformando-o em uma explosao)e diminuir a saida,ou seja,definir a saida a-30 (para que possa suportar 3 acessos).\par
O objeto controller_life ir e verificar quando a so fase torna-se menor que 0. Nao e um evento para esta sob os outros eventos.
Neste evento, explodir o aviao principal transformando-o em uma grande explosao. Nao tambem redefinir a saida e reproduzir o som correto.Assim, o evento parece com isso:\par
O grande objeto de explosao, em seu evento Animation End destrui a si mesma.
Dormem por um tempo,para deixar o acabamento de som,cria um novo plano principal na posicao atual (ou seja,em relacao a posicao e (0,0)) e reduz o na frame de vidas ou seja defina-lo em relacao a -1.\par
Finalmente, e preciso verificar se o hotel fez ficar sem vidas. Felizmente, ha novamente um evento para isso.
Para o objeto controller_life, neste caso, mostramos a lista de alta pontuacao e reiniciar o jogo.
Esta terminou a terceira versao do jogo. Agora voce pode joga-lo e ja parece muito bom.
Mas o jogo logo se torna chato. Entao nao temos que melhora-lo um pouco mais e acrescentar alguma variacao.
Mais Enemies
Nesta secao, vamos adicionar tres novos tipos de avioes inimigos para o nosso jogo. Um irao disparar balas diretamente para baixo. O segundo aviao vai disparar balas em direcao ao plano principal.
O terceiro tipo nao dispara balas, mas vem do fundo da sala e e mais dificil de evitar ou atirar. Vamos faze-los aparecer em fases posteriores durante o jogo.
Para criar o primeiro novo tipo de aviao inimigo, devemos fazer um novo Sprite para ele, similar e entidade grafica para o primeiro inimigo, mas com uma cor diferente.
Em segundo lugar, precisamos de um novo objeto para ele. Como o objeto irao se comportar quase o mesmo que o primeiro aviao inimigo que fazer uma copia deste objeto
(botao direito do mouse sobre ela e escolha Duplicate). Da um duplo clique sobre o novo objeto duplicado para muda-lo.
Da-lhe um novo nome e definir o sprite correta. Porque este e um plano mais especial, o jogador deve obter uma pontuacao mais elevada quando fotografa-la.
Assim, em caso de colisao com a bala que mudar o placar a 10.
Para o aviao inimigo para atirar, precisamos de um sprite de bala e um objeto de bala. Este objeto, no seu evento de criacao, recebe uma velocidade vertical para baixo.
No seu caso etapa, novamente tomar cuidado para que o objeto e destruido quando ele se move para fora da sala na parte inferior.
Em caso de colisao desta bala com o plano principal vamos definir a relacao solida e -5, destruir a bala, e reproduzir um som.
Agora devemos fazer o inimigo aviao disparar balas de vez em quando. Fazemos isso em caso etapa do aviao.
Nao usamos a acao de jogar um dado e como parametro colocamos 30.Isso significa que a proxima acao e realizada em media uma vez a cada 30 passos.Nesta proxima acao criamos a bala inimiga.
Finalmente, devemos ter certeza de que em algum momento do segundo aviao inimigo comeca a aparecer.
Para isso, use o objeto controller_enemy novamente. No evento de criacao de nao definir o alarme 1 para um valor de 1000.
Neste evento de alarme criamos o segundo aviao inimigo e definir o alarme 1 novamente para 500 para criar outro plano um pouco mais tarde.
Assim, o primeiro aviao deste tipo irao aparecer apos cerca de 30 segundos e um extra aparece a cada 15 segundos.
Para o nosso proximo tipo de aviao inimigo que novamente precisa de um novo duende e precisamos de um novo sprite de bala.
Nao fazemos uma copia do segundo objeto aviao inimigo e, como acima, em caso de colisao com a bala normal, mudar o placar para aumenta-la para 20.
Tambem criamos um segundo objeto bala inimiga. O aviao inimigo cria este novo tipo de bala em seu evento etapa.
Mais uma vez, use a acao indice mas agora so criar uma bala uma vez a cada 80 passos, porque o nosso novo tipo de bala e muito mais dificil de evitar.
O novo tipo de bala funciona da seguinte maneira. No seu evento de criacao usamos a acao de avancar para uma posicao. Mas qual e a posicao que devemos usar
Bem, nao queremos atirar em direcao e posicao do plano principal. Por isso, queremos saber o x e y posicao desta instancia do objeto.
Isto pode ser conseguido facilmente em Game Maker. Para obter o valor de uma variavel em outra instancia que precedem o nome da variavel com o nome do objeto.
Assim, utilizamos obj_myplane.x para indicar o valor da coordenada x do plano. Quando houver varias instancias desse objeto que nao obtemos o valor da variavel na primeira instancia.
Quando nao e nenhuma instancia do objeto que receber e uma mensagem de erro.
Isso pode ser um problema para o nosso jogo, porque quando o aviao e destruido l e temporariamente e nenhum aviao.
Entao, e melhor verificar primeiro se o aviao esta l e. Nao e uma acao que pode contar o n\framers de ocorrencias de um determinado objeto.
Nao usamos isso para verificar se o plano principal esta disponivel e, em caso afirmativo, direcionar a bala em direcao ao aviao.
Caso contrario, a bala vai ir para baixo. Assim, o evento de criacao ficara da seguinte forma:
A acao de avancar para um ponto agora tem os seguintes parametros:
E necessaria uma outra alteracao. Como a bala pode voar em qualquer direcao e um pouco mais dificil de testar em caso passo,se a bala encontra-se fora do quarto.
Mas, na verdade, nao e um evento especial para isso: o evento exterior. Neste evento, basta colocar uma acao para destruir o objeto.
Finalmente, tem que lidar com a criacao de um novo tipo de avioes inimigos. Como indicado antes de usar o objeto controller_enemy para isso.
No evento de criacao que ajustar o alarme 2 a 2000. Neste evento de alarme criamos o novo tipo de aviao inimigo e definir o alarme 2 novamente para 1000 para criar outra algum tempo depois.
Isso termina a adicao do nosso terceiro tipo de aviao. Resta acrescentar os avioes que vem de baixo.
Isso e feito da mesma maneira como o primeiro plano inimigo, excepto que o aviao comeca a seguir o quarto e move-se para cima em vez de para baixo.
O objeto controller_enemy novamente cria-los, desta vez usando alarme 3. Voce deve agora entender como fazer isso, mas voce tambem pode olhar no jogo.
Isso termina a nossa quarta versao do 1945. Ela tornou-se um jogo jogavel que fica mais dificil o tempo todo.
Ha, na verdade, e um pouco de diverso em jogar e tentar alcancar a maior pontuacao.
Finalizando o Jogo
Agora nao criamos um scrolling shooter com diferentes avioes inimigos.
Tornou-se um jogo jogavel que fica mais dificil o tempo todo. Ha, na verdade, e um pouco de diversao em jogar e tentar alcancar a maior pontuacao.
Mas, para transforma-lo em um jogo real de um par de toques finais ainda sao necessarios.
Precisamos de alguma musica de fundo, uma imagem de carregamento, um adicione a de melhor, etc.
Eu tambem colocar um atraso em planos para reaparecer quando disparou, tornando-o mais interessante para o jogador para tentar atirar avioes, ao inves de simplesmente evita-los.
Finalmente, ha um bonus especial de incendio, quando o jogador atinge uma pontuacao de 400 e outra quando ele atinge 1.000 pontos.
Voce pode usar este jogo como uma base para ampliar ainda mais. Aqui estao algumas ideias do que voce pode adicionar.
E bastante comum em jogos de tiro de rolagem para encontrar power-ups que lhe dao o poder de fogo jogador extra, reparar o dano, dar pontos extras, dar um plano extra, etc.
Tais power-ups podem aparecer quando o jogador atira um aviao ou eles pode simplesmente ser encontrado durante o voo.
Alem disso, voce pode criar tipos adicionais de aviaes inimigos, por exemplo, avioes que voam de lado ou disparar misseis mais poderosos.
Deixo isso para voce trabalhar sobre estes e fazer o seu proprio atirador de rolagem.
Voce pode encontrar uma colecao de sprites relacionados a 1945, criado por Ari Feldman, como um arquivo .bmp na pasta Resources dentro pasta deste tutorial.
Para obter os sprites individuais fora desse arquivo, criar um sprite, clique no botao Editar Sprite, selecione Criar a partir de minas no menu Arquivo e selecione a imagem (s) que deseja.
Consulte a documentacao para obter mais informacoes.
Usando o tempo Lines
Nesta secao e na proxima, vamos discutir mais duas caracteristicas do Game Maker, que sao muito facil na criacao de atiradores de rolagem mais complicados:
linhas de tempo e pontos de vista.
No jogo que criamos ate agora, o aparecimento de inimigos foi controlado pelo objeto controller_enemy que de vez em quando adicionado um aviao inimigo para o jogo.
Alem disso, os avioes inimigos onde nunca destruido. Eles so reapareceu. O resultado foi um jogo que tem cada vez mais dificil porque o n\framers de avioes ficou cada vez maior.
Mesmo que isto da jogo razoavel tem um certo n\framers de problemas. Em primeiro lugar, os avioes aparecem em posicoes aleatorias que o designer de jogos nao pode controlar.
Como resultado planos podem acabar em cima uns dos outros ou muito proximo da fronteira que nao e muito atraente.
Alem disso, ha pouca surpresa no jogo. Inimigos acabado de chegar em voce de forma aleatoria e ha pouca coisa que o jogador pode fazer do que apenas atirar o tempo todo e evita-los.
Para obter jogo mais interessante jogar o game designer deve ter mais controle sobre quais avioes aparecem onde em que momento.
Isso permite que voce crie avioes inimigos que veam em forma' acoes,para criar alguns desafios (como um grupo enorme de inimigos simples que devem ser principalmente evitada ou alguns inimigos perigosos que melhor ser filmado)e variacao.
Tambem vai permitir que o jogador para aprender a jogar o jogo, porque ele pode se lembrar de coisas faceis a partir de pecas anteriores.
Todos os bons jogos de controlar os inimigos em vez precisamente pelas razoes descritas acima. Simplificando, isso resulta em jogo mais interessante.
Por isso, queremos controlar melhor o aparecimento de certos inimigos. Para este fim, vamos utilizar os recursos de linha de tempo.
Mas antes de tudo temos que fazer algumas pequenas mudancas para o jogo. Para todos os avioes inimigos que nao mais faze-los reaparecer quando o levei um tiro ou sair da tela.
Nao simplesmente destrui-los. Entao, uma vez que um aviao esta desaparecido e ido para sempre. A linha do tempo irao controlar a criacao dos inimigos.
Um recurso de linha do tempo trabalha globalmente como se segue. Nele voce especificar um n\framers de momentos de tempo (medido em etapas do jogo)
E para cada um desses momentos,voce pode indicar acaes que devem ser executadas naquele momento particular.
Porque vamos usar a linha do tempo para os avioes inimigos que so vai usar acoes para criar avioes inimigos, mas, em geral, voce pode usar qualquer acao que voce gosta.\par
Por isso, vamos criar a nossa linha do tempo. Escolha Adicionar linha do tempo a partir do menu Add.
Surgira um formulario que se parece parcialmente semelhante e 0 forma do objeto.
E esquerda, voce pode indicar o nome da linha do tempo e ha botoes para adicionar, excluir e manipular momentos de tempo.
No meio, voce vera a lista de momentos definidos. Proximo a esta lista, ha lista de acoes para o momento selecionado e na direita,he as paginas com guias a partir do qual voce pode escolher as acoes.
No momento 0, queremos criar um aviao inimigo. Entao clique no botao Add. Como momento indicam o valor 0. O momento e adicionado e lista. Agora voce pode arrastar acao para a lista de acoes.
Precisamos de apenas uma acao para criar um aviao inimigo no local apropriado.
Como demora cerca de 100 passos por um aviao inimigo para atravessar a sala,nao adicionamos um segundo momento no passo 100. Aqui criamos dois avioes inimigos ao lado do outro.
Desta forma, continuar. Nao adicionamos momentos e adicionar acoes de criacao de avioes inimigos.
Ao criar os avioes em diferentes alturas acima do quarto em que pode criar formacoes agradaveis.Entao, apos a adicao de uma serie de momentos a forma ficara da seguinte forma:
No momento indicado 400 criamos uma fileira de nove avioes inimigos,dois dos quais estao atirando balas (obj_enemy2).Voce deve agora ter uma ideia.
Basta manter a adicao de momentos, com mais e mais perigosas avioes em formacoes interessantes e talvez colocar os momentos mais proximos.
Vai levar um pouco de trabalho para criar uma sequencia completa de momentos que compoem um bom nivel de jogo.
Em um jogo completo voce vai usar diferentes linhas de tempo para diferentes niveis.
No final da sequencia, voce precisa adicionar um momento em que termina o nivel ou o jogo.
Aqui voce provavelmente deve exibir uma mensagem que voce terminou o nivel, ou melhor, ter algum sequencia final agradavel,como um porta-avioes aparecendo em que o seu aviao cair.
Nao ainda nao terminamos. Uma linha do tempo nao executa automaticamente as acoes!
Voce deve atribuir uma linha do tempo para um objeto e, em seguida, as acoes da linha de tempo sera executado para esse objeto.
Ha duas acoes especiais para este; de modo a definir a linha do tempo para um objecto e um segundo para definir a posicao na linha de tempo.
Nao usamos o objeto controller_enemy novamente.
Ele so precisa de uma acao em seu evento de criacao que define a linha do tempo apropriado.
Queremos que ele comece imediatamente na posicao 0 e nos nao queremos isso para fazer um loop, assim voce nao precisa alterar qualquer uma das outras propriedades.
Isso e tudo. Como voce vai notar, usando linhas de tempo e um pouco mais de trabalho porque voce precisa especificar todos os avioes inimigos que aparecem,
mas de muita flexibilidade e torna o jogo muito mais interessante. Ha muitas coisas que voce pode fazer com linhas de tempo.
Aqui nos utilizado para controlar o fluxo global do jogo, mas voce tambem pode usa-los para controlar o comportamento de objetos do jogo ao longo do tempo.
Ha tambem muitos truques que voce pode usar. Por exemplo, para por fim a uma linha do tempo por um tempo, adicionar um momento em que voce testar alguma condicao e, em caso afirmativo,
definir o tempo de posicao em relacao e linha de -1, ou seja, na proxima etapa no mesmo momento esta acontecendo e o condicao e testada de novo.
Assim, a linha do tempo nao irao progredir ate que a condicao e falsa.
(Ha tambem uma acao para interromper uma linha do tempo.) Instancias tambem pode alterar as linhas de tempo com base em certos eventos, etc.
Alem disso, voce pode controlar a velocidade de uma linha do tempo. Assim, as linhas de tempo formar um poderoso recurso.
A Room with a View
Ate agora, deixe enganar o leitor no sentido de que nao estavamos realmente voando atraves de um mundo de jogo, mas o fundo era apenas a rolagem.
Isto tem um n\framers de desvantajoso. Em particular, o fundo nao pode mudar facilmente (por exemplo, e dificil para voar no meio do caminho sobre a terra.
Alem disso, mesmo que voce pode usar linhas de tempo, e mais dificil ter acoes diferentes aparecendo bem se espalhar ao longo do tempo.
Nesta secao final vamos indicar brevemente uma maneira diferente de criar um atirador de rolagem.
Nesta abordagem, ha uma grande sala, atraves do qual o aviao realmente se move.
Nos usamos uma vista chamada de tal modo que o aparelho voa apenas uma parte da sala, a qualquer momento.
Para conseguir isso, e necessaria uma serie de mudancas para o jogo. Vamos discuti-las brevemente aqui.
Vamos primeiro criar o quarto basico. Damos-lhe a sala de uma largura de 640 como antes, mas agora vamos dar-lhe uma altura de 4800.
A imagem de fundo ja nao dar uma velocidade. Colocamos ilhas em varios lugares na sala.
Os objetos da ilha ja nao precisa de uma velocidade e tambem podemos remover o evento etapa.
Eles agora sao objetos totalmente estaticas.
O aviao que, colocada no fundo da sala e nos damos o aviao, no seu evento de criacao, uma velocidade vertical de -2 para se certificar de que ele voa com alguma velocidade,se o usuario nao faz nada.
Finalmente definimos a vista. Para isso, clique na aba Visualizacoes na forma quarto. Indicar que queremos permitir vistas.
Definir a primeira vista e torna-lo visivel no inicio. Como uma posicao superior, indicam 4320, isto e, a vista vai ficar na parte inferior do quarto.
Portanto, parece como se segue:
Nos temos que ter certeza de que a visao se move com velocidade constante. Para esse fim, (des) usar o evento etapa do objeto controlador de vida.
Nele, podemos adicionar a acao para definir uma variavel e definir variavel view_yview relacao a -2.
View_yview variavel indica a posicao de topo da primeira exibicao na sala.
(Quando existem varios pontos de vista que voce deve usar view_yview [0].)
Assim, em cada passo, a posicao da vista move 2 pixels para cima, criando a rolagem. Existem muitas outras variaveis \u8203?\u8203?relacionadas\e 0 vista, mas nao vamos precisar deles aqui.
Nos tambem deve verificar se view_yview \e maior do que 0. Se ela se torna 0 a vista atingiu o topo e devemos parar o jogo.
Note-se que, para o plano principal quer e damos evitar que o jogador pode mover o aviao fora da vista.
Para este fim, vamos checar se a posicao do aviao nao estava muito alto ou muito alto para baixo.
Agora, temos de usar o view_yview variavel nessas comparacoes para se certificar de que o aviao permanece dentro da visao.
Nos temos um problema semelhante com a posicao do painel de informacoes, e a barra de saida, etc.
Nos fez coloca-los no fundo da sala, mas agora temos de desenha-los no lugar correto em relacao ao view_yview para se certificar que ficar em vista.
Para a bala que dispara o plano deve-se aumentar a velocidade um pouco para compensar o ponto de vista em movimento.
Tambem devemos destrui-lo quando ele se move para fora da vista.
Ela continua a lidar com os avioes inimigos. Nao usamos mais uma linha de tempo ou controlador de objeto.
Vamos colocar todos os avioes inimigos ja no quarto, mas nao vamos deixa-los se mover ate que se tornem visiveis.
Entao, nos nao definir a sua velocidade inicial e em caso passo que primeiro verificar se eles estao no ponto de vista.
Se assim nos deixa-los passar. Alem disso, so vamos deixa-los disparar se eles estao na vista. Por exemplo, para o terceiro aviao inimigo do evento passo e o seguinte:
Note-se que devemos usar uma velocidade vertical menor do que antes. Tanto para os avioes inimigos e para as balas tambem devemos mudar as condicoes em que devem ser destruidos.
O mais complicado e aviao inimigo 4. Deve vir de tres.O truque e o seguinte.Voltamos a coloca-lo na sala, desde o inicio, mas podemos torna-lo invisivel.
Alem disso, enquanto ele e invisivel, nao deixe que ele reagir a colisoes com balas ou o plano principal. Quando se encontra abaixo da vista, torna-la visivel e deixa-lo mover-se
(com velocidade maior). Veja o exemplo do jogo de como isso e conseguido.
Agora e hora de construir o quarto. Colocamos conjuntos de diferentes avioes inimigos em lugares estrategicos no nivel. Novamente, e facil agora para criar forma e fases e agradaveis \u8203?\u8203?desafios.
Como voce pode ver, usando pontos de vista voce pode criar atiradores de rolagem muito interessantes com relativamente pouco trabalho. E evidente que o jogo precisa de muito mais trabalho.
E,de certa forma ainda e muito facil para terminar e e definitivamente muito curta. Alem disso, alguns chefe agradavel no final seria otimo.
Basta usa-lo como um primeiro passo e construir a partir da\'ed
}
qual sistema ou extensão podemos usar os jogos.
gmk roda nesses aqui
-andoid
-Html
-ios
-linux
-mac
-tizen
-windows
-winPhone
manfran conti. anota aqui ok???
renata
Sites de cursos e projetos
Visão Geral
Sites de cursos e projetos fornecer um conjunto de ferramentas de software projetadas para ajudar instrutores, pesquisadores, estudantes e criar e colaborar online. Mais ...
Como é que eu?
Para obter instruções específicas sobre cursos e projetos locais, veja:
Criação, edição e exclusão de locais de trabalho
Adicionar, editar ou remover participantes
Controlar o acesso ao seu site
Mudar seu status de privacidade
Determinando siteID do seu site
Publicar ou remover um site
Como navegar
O botão reset
Revisando ou modificando seu perfil
Mostrando, ocultando, e ordenando curso e de projeto locais
Criação, edição e exclusão de locais de trabalho
Nesta página:
Criando um site
Editando um site
Deletar um site
Criando um site
Para criar um local de trabalho:
Em seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
No topo da página Configurar Worksite, clique em Novo.
Em "Criando um novo site", clique no botão ao lado para o site claro, o site do projeto, ou carteira de site para escolher o tipo de site que você deseja criar. Para um site de curso, você também vai precisar usar o "termo Acadêmica:" drop-down list para selecionar o termo apropriado.
Clique em Continuar.
Sites de cursos
Para criar um site de curso, continue com as seguintes etapas (para locais de projetos, pule para o Project locais):
Em "Criando um Curso de New Site", selecione as seções do curso para ser incluído no site do curso, marcando as caixas apropriadas.
Para adicionar uma lista que não aparece na lista, clique em Adicionar curso (s) e / ou seção (s) não listados acima ....
Clique em Continuar.
Se você optou por adicionar uma lista não constam da lista, você será solicitado a digitar manualmente as informações de classe em vários campos. Para adicionar mais de uma lista, na Adicionar mais Roster (s)? drop-down list, selecione o número de listas adicionais que você deseja adicionar. Você também pode ter que digitar o nome de usuário de alguém autorizado a permitir uma lista ou listas de acesso local, juntamente com uma mensagem que contém todas as instruções especiais para o seu pedido. Clique em Continuar.
Em "Informação de Classe", você tem a opção de digitar uma descrição longa e / ou curta do seu site. A descrição longa aparecerá na página inicial do seu site; a descrição curta aparecerá na lista pública de todos os sites no sistema.
Para alterar a aparência do seu site, escolher uma pele do Aparência (Ícone): lista drop-down.
No "Site Nome do Contato:" e "Site contato E-mail:" campos, digite o nome e endereço de email da pessoa a quem os participantes podem entrar em contato caso tenham problemas ou perguntas.
Clique em Continuar.
Em "Ferramentas", selecione as caixas ao lado das ferramentas que você quer em seu site. Se você selecionar as seguintes ferramentas, você verá um formulário para mais informações:
Arquivo Email: Forneça um apelido (ou seja, nome de usuário) para o endereço de e-mail do seu site e clique em Continuar.
Notícias: Forneça um título e URL de origem para o seu feed de notícias. Para adicionar mais feeds, utilize os Mais Ferramentas de Notícias? drop-down list, e depois clique em Continuar.
Conteúdo Web: Forneça um título e URL. Para adicionar mais links, utilize as Ferramentas Mais Conteúdo da Web lista drop-down.
Você tem a opção de re-utilizando materiais de outros sites que você possui. Escolha um dos seguintes procedimentos:
Não, obrigado.
Sim, a partir destes sites:. Utilize o menu rolante para selecionar os sites com o material que você quer voltar a usar.
Clique em Continuar.
Em "Estado do Site", selecione Publicar site para torná-lo disponível aos participantes do site. Se você não quer publicar seu site neste momento, você pode fazê-lo mais tarde por meio de Site Info. Para instruções, veja Publicar ou remover um site.
Além disso, você pode permitir que seu site a ser acompanhado por qualquer pessoa com autorização para entrar no sistema.
Marque a caixa ao lado pode ser acompanhado por qualquer pessoa com autorização para efetuar login.
Use a lista drop-down para selecionar um papel para atribuir às pessoas que se juntam a seu site.
Clique em Continuar.
Em "Confirme Sua Configuração do Site", revise sua informação do local. Se forem necessárias alterações, clique em Back. Se as informações estiverem corretas, clique em Criar Site para enviar sua solicitação local do curso.
De volta ao topo
Sites de projeto
Para criar um site de projeto, continue com as seguintes etapas:
Em "Informações do Projeto", no "Título do Site:" campo, digite um título para o seu site.
Nos campos correspondentes, você tem a opção de digitar uma descrição longa e / ou curta do seu site. A descrição longa aparecerá na página inicial do seu site; a descrição curta aparecerá na lista pública de todos os sites no sistema.
Se você gostaria de usar uma imagem de ícone, fornecer o seu URL no campo "URL do Ícone:" campo.
No "Site Nome do Contato:" e "Site contato E-mail:" campos, digite o nome e endereço de email da pessoa a quem os participantes podem entrar em contato caso tenham problemas ou perguntas.
Clique em Continuar.
Em "Ferramentas", marque as caixas próximas às ferramentas que você deseja fornecer em seu site e clique em Continuar.
Arquivo Email: Forneça um apelido (ou seja, nome de usuário) para o endereço de e-mail do seu site e clique em Continuar.
Notícias: Forneça um título e URL de origem para o seu feed de notícias. Para adicionar mais feeds, utilize os Mais Ferramentas de Notícias? drop-down list, e depois clique em Continuar.
Conteúdo Web: Forneça um título e URL. Para adicionar mais links, utilize as Ferramentas Mais Conteúdo da Web lista drop-down.
Você tem a opção de re-utilizando materiais de outros sites que você possui. Escolha um dos seguintes procedimentos:
Não, obrigado.
Sim, a partir destes sites: Utilize o menu rolante para selecionar os sites com o material que você quer voltar a usar.
Clique em Continuar.
Em "Definir acesso Site", selecione Publicar site para torná-lo disponível aos participantes do site. Se você não quer publicar seu site neste momento, você pode fazê-lo mais tarde por meio de Site Info. Para instruções, veja Publicar ou remover um site.
Para indicar quem pode acessar seu site, escolher entre as seguintes opções de Acesso Global:
Privado: Somente as pessoas que você adicionar como os participantes podem ver o seu site.
Apresentar meu site no diretório, e compartilhar arquivos que eu selecionar: Qualquer pessoa com autorização para efetuar login no sistema pode ver seu site no diretório de sites, e pode acessar arquivos compartilhados.
Além disso, você pode permitir que seu site a ser acompanhado por qualquer pessoa com autorização para entrar no sistema.
Marque a caixa ao lado pode ser acompanhado por qualquer pessoa com autorização para efetuar login.
Use a lista drop-down para selecionar um papel para atribuir às pessoas que se juntam a seu site.
Clique em Continuar.
Em "Confirme Sua Configuração do Site", revise as informações sobre o seu site. Se é correto, clique em Criar Site. Se você precisar fazer alterações, clique em Back.
Seu novo site será listado em Meu Site na página Configurar Worksite.
De volta ao topo
Editando um site
Para editar um site que você criou:
Em seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
Marque a caixa próxima ao site que você deseja editar. Em seguida, na parte superior da página Configurar Worksite, clique em Editar.
Utilizando as ligações perto do topo, selecione uma opção para editar o seu site:
Para editar o site título, descrição, descrição curta, ícone URL, local nome do contato, ou site de e-mail, clique em Editar Informações do site.
Para adicionar ou remover ferramentas de seu site, clique em Editar Ferramentas.
Para alterar o estado de publicação de seu site, modificar quem pode ver ou participar de seu site, e determinar o papel padrão para pessoas que se juntam, clique em Gerenciar Acesso.
Para adicionar participantes e atribuir-lhes papéis participantes, clique em Adicionar Participantes.
Para criar uma cópia exata de seu site, que inclui apenas material postado pelo instrutor, clique em Duplicar Site.
Para adicionar material de outro site que você possui, clique em Importar do Site.
Nota: Você pode reutilizar material apenas de outros sites que você possui. Você pode combinar materiais de mais de um site.
Para importar materiais de um arquivo pré-existente, clique em Importar do arquivo.
De volta ao topo
Deletar um site
Para excluir um site que você possui:
Em seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
Marque a caixa próxima ao site que você deseja excluir. Em seguida, na parte superior da página Configurar Worksite, clique em Excluir.
Nota: A exclusão de um site remove todo o conteúdo do site e não pode ser desfeita. Ninguém mais será capaz de acessar o site excluído.
Clique em Remover.
Controlar o acesso ao seu site
Nota: Para executar estes procedimentos, você deve ser atribuído um papel com as permissões necessárias. Para determinar seu papel, siga as instruções em Papéis dos Participantes. Para um entendimento básico de papéis e permissões, consulte Permissões e papéis: Visão geral.
Você pode despublicar seu site temporariamente, o que torna indisponíveis aos participantes do site enquanto você faz alterações (por exemplo, para se preparar para o próximo semestre). Você também pode escolher se as pessoas que não são participantes do site podem encontrar e participar do seu site ou ver determinados arquivos.
Você pode fazer isso a partir de Informações do site dentro do site em questão, ou a partir de Configurar Worksite dentro de Meu Site.
Na barra de menu do seu site, clique em Site Info.
Alternativamente, a partir do menu em Meu Site, clique em Configurar Worksite, marque a caixa próxima ao site que você deseja revisar e clique em Editar.
Nota: Embora você pode marcar várias caixas, você só pode editar informações sobre um site de cada vez.
Clique em Gerenciar Acesso.
Em "Status do site", escolher se quer ou não publicar seu site.
Em "Global Access", você pode escolher entre as seguintes opções:
Escolha Privada ou Apresentar meu site no diretório, e compartilhar arquivos que eu selecionar.
Para fazer o seu curso ou site de projeto amplamente acessível, cheque pode ser acompanhado por qualquer pessoa com autorização para efetuar login em Avançar para "Papel para pessoas que se juntam site:"., Selecione o papel apropriado para todos os usuários que podem se juntar seu site.
Para obter mais informações sobre funções, consulte Papéis dos Participantes.
Clique em Atualizar.
Mudar seu status de privacidade
Nota: A funcionalidade descrita aqui pode não estar disponível por padrão em todas as instalações; contate o administrador do site para obter mais informações.
Por motivos de privacidade, você pode querer esconder o seu nome de outros participantes em seu curso ou site do projeto. Além disso, você pode não querer que eles sejam capazes de contatá-lo através do site.
Para ocultar o nome dos outros participantes e impedi-los de entrar em contato com você através do site, no site Página Inicial, em "Status de Privacidade", selecione Ocultar Me, e em seguida, clique em Atualizar.
Para alterar seu status de privacidade para visível e permitir que outros participantes para chegar até você através do site, selecione Mostre-me, e, em seguida, clique em Atualizar.
Você também pode gerenciar seu status de privacidade para todos os sites aos quais você pertence a partir de Preferências em Meu Site:
Em seu menu Meu Espaço de Trabalho, clique em Preferências.
Perto do topo, clique em Status de Privacidade.
Use a lista drop-down para escolher um local e, em seguida, selecione Ocultar Me mostre-me para definir seu status de privacidade para esse site.
Clique em Atualizar para salvar as alterações.
Alternativamente, você pode clicar em Mostrar-me em todos os sites para tornar-se visível em todos os sites aos quais você pertence, ou Esconda-me em todos os sites para esconder-se em todos os sites aos quais você pertence.
Coisas a considerar
Antes de mudar seu status de privacidade, considere o seguinte:
Os alunos que estão escondidos permanecerá visível para instrutores, proprietários do projeto e assistentes.
Os alunos que estão escondidos não será visível para outros participantes na ferramenta Roster ou "Usuários Presente" área.
Os alunos que estão escondidos não aparece na lista de destinatários para mensagens na ferramenta Mensagens.
Grupo visibilidade não é afetado pelo status de privacidade de um indivíduo.
Determinando siteID do seu site
O siteID para o seu site de curso, carteira, ou projeto é a seqüência de números e letras que aparecem imediatamente após o local / na URL do site.
Por exemplo, considere o seguinte URL:
http://sakai-deathstar.org/portal/site/836869b1-3997-4f29-803b-986be9fd270c
No exemplo acima, o siteID é 836869b1-3997-4f29-803b-986be9fd270c.
Além disso, os líderes do site podem encontrar o siteID na ferramenta de Recursos. Na barra de menu do seu site, clique em recursos e, em seguida, clique em Gerenciar / Download Múltiplos Recursos para visualizar o siteID.
Publicar ou remover um site
Nota: Para executar estes procedimentos, você deve ser atribuído um papel com as permissões necessárias. Para determinar seu papel, siga as instruções em Papéis dos Participantes. Para um entendimento básico de papéis e permissões, consulte Permissões e papéis: Visão geral.
Quando estiver pronto para os participantes para ver o seu site, você pode torná-lo disponível, ou seja, publicá-lo. Quando você publicar o seu site, ele aparece como uma nova guia no espaço de trabalho de cada participante.
Você pode fazer isso a partir de Informações do site dentro do site em questão, ou a partir de Configurar Worksite dentro de Meu Site.
Para alterar o status de publicação de seu site:
A partir Informações do Site
Na barra de menu do seu site, clique em Site Info.
Clique em Gerenciar Acesso.
Em "Status do site", ao lado de Publicar local, marque ou desmarque a caixa de publicar ou despublicar seu site, respectivamente.
Clique em Atualizar.
A partir de Configurar Worksite
A partir do seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
Marque a caixa próxima ao site que você está trabalhando com, e, em seguida, clique em Editar.
Clique em Gerenciar Acesso.
Em "Status do site", ao lado de Publicar local, marque ou desmarque a caixa de publicar ou despublicar seu site, respectivamente.
Clique em Atualizar.
Como navegar
Após uma breve visão geral dos recursos e como navegar:
Minha Área de Trabalho é o seu espaço de trabalho on-line individual. Quando você faz logon pela primeira vez, você vai para Meu Site automaticamente. Para retornar à sua área de trabalho depois de visitar outros sites, clique em Meu Site no canto superior esquerdo da tela.
Naturalmente, ePortfolio e sites de projeto aparecem como guias na parte superior da tela. Clique em uma guia para ir para o site correspondente. Sites de cursos estão associados com cursos; locais do projeto são para projetos e outras atividades de colaboração; ePortfolio fornece um lugar para coletar, organizar e apresentar o trabalho em direção a objetivos específicos.
Nota: Se você ainda não é um membro de um site, você vai ver apenas uma guia Meu Site. Para obter informações sobre como ingressar em sites, consulte Associação: Visão geral.
A barra de menu é uma coluna customizável ao longo do lado esquerdo da tela com links para cada ferramenta disponível (por exemplo, anúncios, Discussão). O número de ligações irão variar dependendo de quais as ferramentas foram escolhidos para um local. Clique no nome da ferramenta para ir para a ferramenta correspondente.
Home na barra de menu leva você para a página inicial do site que você está. As home pages pode conter uma lista de anúncios recentes, itens recentes de discussão e recursos selecionados.
Quando você estiver usando uma ferramenta, o botão de reset
O botão reset
, Localizado à esquerda do nome da ferramenta, o leva de volta à primeira página dessa ferramenta e redefine a ferramenta.
Você pode obter ajuda clicando em Ajuda na barra de menu. Você também pode obter ajuda contextual clicando no ponto de interrogação azul
Socorro
no canto superior direito de cada página.
O botão reset
O botão reset aparece à esquerda do nome da ferramenta que você está usando e se parece com duas setas apontando em direções opostas:
botão de reset
O botão reset retorna ao ponto de partida a ferramenta que você está usando, como se você tivesse digitado a ferramenta em uma nova sessão.
Nota: Se você retornar ao ponto de partida da ferramenta antes de salvar (por exemplo, antes de escolher a acrescentar, post, salvar como rascunho, etc.), você perderá todas as informações que você digitou.
Mostrando, ocultando, e ordenando curso e de projeto locais
Nota: Quando você log in, seu curso e de projeto sites são exibidos como guias na parte superior da tela. Para entrar num site, clique na guia. Se você pertencer a mais sites do que podem ser exibidos como guias, esses sites serão acessíveis a partir da - lista drop-down - mais.
Você pode optar por ocultar locais (por exemplo, sites de cursos de semestres anteriores), ou reordená-los (ou seja, escolher quais sites para exibir em abas), usando a ferramenta Preferências em Meu Site.
A partir do seu menu Meu Espaço de Trabalho, clique em Preferências.
Clique em Personalizar Tabs.
Em "Personalizar Tabs", as suas páginas visíveis no momento estão listados na caixa "Meus Locais do Active", à esquerda. À direita, a caixa "Meus Sites escondido" lista os sites que não aparecem em seu - mais - guia. Use as setas direita e esquerda (<e>) para mover sites de uma caixa para a outra. Clique nos botões de seta dupla (<< e >>) para mover todos os sites de uma caixa para a outra.
Nota: Se você ocultar a guia para um site, você ainda pode acessar o site a partir de Configurar Worksite em Meu Site.
Para determinar a ordem em que as guias são exibidas, clique em um site na seção "Sites visíveis em Abas" caixa, e em seguida, use as setas para cima e para baixo para alterar a ordem.
Nota: O seu guia Meu Site sempre aparecerá à esquerda dos seus outros sites.
Quando terminar, clique em Preferências de atualização.
Dica: Se você tem um grande número de sítios ativos, pode ser mais rápido para mover determinados sites para o topo da sua lista, onde serão exibidos como guias, utilizando o seguinte método, em vez de para cima e para baixo setas:
Na página Personalizar Guias, clique em >> para mover todos os seus sites ativos para os "Sites que não são visíveis em Abas" caixa.
Selecione os cursos que você deseja que apareça como guias. (Para selecionar mais de um curso, mantenha pressionada a tecla Ctrl no Windows ou em um Mac Cmd enquanto clica.)
Clique <para mover os cursos selecionados de volta para os "Sites visíveis em Abas" caixa.
Se desejar, clique em << para mover todo o resto de seus locais de volta para os "Sites visíveis em Abas" caixa, onde eles vão aparecer após a sites que você acabou de se mudar. Você também pode repetir os passos 2 e 3 para mover de volta apenas alguns de seus sites.
Quando terminar, clique em Preferências de atualização.
se você não sabe criar uma barra de vida na horizontal, não se
preocupe, pois o processo é o mesmo para criar uma barra na vertical.
Então você aprenderá os dois modos de uma só vez !
Primeiro passo => Abra um novo projeto e crie um objeto(apertando na bolinha azul, no cabeçário do GM), não será necessário sprite !
Segundo passo =>Adicione um "Evento Create" ao objeto, vá na aba "control" arraste a folinha de papel "(Execute Code)" e escreva este código lá :
Código:energia=50
Terceiro passo => Adicione um "Evento Keyboard Left", arraste novamente a folinha de papel "(execute code)" e escreva este código lá :
Código:energia-=3
if energia <=0 { energia=0 }
Quarto passo => Adicione um "Evento Keyboard Right" arraste a folinha de código e escreva :
Código:energia+=3
if energia>=100 { energia=100 }
Agora
é que vem a parte chave do esquema... Só o que vai diferenciar uma
barra de vida "horizontal" de uma "vertical", é somente as coordenadas
X e Y que você às empregará, e a direção também escolhida por você !
Então vamos lá :
Quinto e último passo => Adicione um "Evento Draw" arraste a folhinha de códigos e escreva:
Código:draw_healthbar(view_xview[0]+20,view_yview[0]+10,view_xview[0]+25,view_yview[0]+110,energia,c_red,c_black,c_green,3,true,true)
Então o que foi feito ?
Primeiramente foi usada a função draw_healthbar(x1,y1,x2,y2,amount,backcol,mincol,maxcol,direction,showback,showborder)
Em x1=> Foi colocada a posição X de onde começa a barra na horizontal !
Em y1=> Foi colocada a posição Y de onde começa a barra na vertical !
Em x2=> Foi colocada a posição X de onde termina a barra na horizontal !
Em y2=> Foi colocada a posição Y de onde termina a barra na vertical !
Em amount=> Vai o nome da variável que conta a vida ou energia do objeto !
Em backcol=> Vai a cor do fundo da barra "( a parte vazia sem energia ) !
Em mincol=> Vai a cor que ficará a barra quando estiver com pouca energia !
Em maxcol=> Vai a cor da baara quando estivar com bastate energia !
Em direction=> Vai o numero da direção em que aumentará a energia !
0= Aumenta da esquerda para a direita !
1= Aumenta da direita para a esquerda !
2= Aumenta de cima para baixo !
3=Aumenta de biaxo para cima !
Em showback=> True para mostrar a cor de fundo e False para não mostrar !
Em showborder=> True para mostrar as bordas da barra e false não mostrar !
Agora é só criar uma room, adicionar lá o objeto e testar !
Então
resumindo... Para criar uma barra na vertical é só deixar o tamanho
largo na vertical e estreito na horizontal e ajustar a direção, a para
criar uma barra na horizontal, é só deixar largo na horizontal e
estreito na vertical e ajustar a direção !
{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 Calibri;}}
{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\sa200\sl276\slmult1\lang22\f0\fs22 Scrolling Shooter\par
Atiradores de rolagem s\'e3o um tipo muito popular de jogo de arcade de acao, e tambem sao bastante faceis de criar com um pacote como Game Maker.
Neste tutorial vamos fazer um jogo destes e, no processo, voce aprende uma serie de aspectos do Game Maker, em particular o uso de variaveis.
Em um scrolling shooter o jogador controla um objeto, por exemplo, um aviao, nave espacial, ou de carro, que se move ao longo de um fundo de rolagem.
Obstaculos aparecem no plano de fundo que devem ser evitadas e inimigos parecer que deve ser baleado.
Muitas vezes, objetos de bonus parece que pode ser pego de beneficios de adicao.
Durante o jogo, o n\'framers, a variedade e a forca dos inimigos aumenta tornando-se cada vez mais dificil sobreviver.
Neste tutorial, vamos criar um scrolling shooter chamado de 1945, no qual o jogador voa em um aviao sobre um mar e avioes inimigos tentam destruir o jogador.
Vamos tratar aspectos como a forma de criar a ilusao de movimento atraves de um fundo de rolagem, como controlar o aviao,como fazer inimigos e balas,e como lidar com o placar,com vidas e com os danos do avi\'e3o.
Mas antes de tudo nos aprofundarmos um aspecto muito importante do Game Maker, que se estende consideravelmente as possibilidades: o uso de variaveis.
//Movimentar para esquerda
if(keyboard_check_pressed(vk_left))
{
hspeed = -5
}\
//Movimentar para Direita
if(keyboard_check_pressed(vk_right))
\{
hspeed = 5
}
//Movimentar para cima
if(keyboard_check_pressed(vk_up))
{
vspeed = -5
}
//Movimentar para baixo
if(keyboard_check_pressed(vk_down))
{
vspeed = 5
}
Antes de realmente criar o jogo de tiro de rolagem precisamos aprofundar um pouco em um importante conceito de Game Maker: o uso de variaveis.
Este conceito simples ir e fornecer um mecanismo muito poderoso para permitir o jogo muito mais interessante. Entao, o que e uma variavel?
Ele pode ser melhor visto como uma propriedade de uma instancia de um objecto.
display_mouse_set
display_reset
display_set_all
display_set_colordepth
display_set_frequency
display_set_size
display_test_all
distance_to_object
distance_to_point
draw_arrow
draw_background
draw_background_ext
draw_background_general
draw_background_part
draw_background_part_ext
draw_background_stretched
draw_background_stretched_ext
draw_background_tiled
draw_background_tiled_ext
draw_button
draw_circle
draw_circle_color
Como voce deve saber, existem algumas propriedades que podem indicar quando definimos um objeto.
Por exemplo, podemos definir se ele estiver visivel ou se e solida. He tambem um certo n\faamers de fases que alteram as propriedades determinadas.
Por exemplo, existe uma acao para alterar a posicao ou a velocidade do exemplo.
Cada instancia tem um n\framers de tais propriedades e a tambem um n\framers de propriedades globais,como a pontuacao, que nao estao relacionados a casos individuais.
Todas as propriedades sao armazenados em chamados variaveis \u8203?\u8203?que tem um nome.
Aqui estao algumas das propriedades / variaveis \u8203?\u8203?que cada instancia tem:
// quando pressionada a seta para direita a personagem anda para a direita\par
if keyboard_check(vk_right)
{
direita = true
if place_free(x+velocidade,y)
{
x += velocidade
parado = false
}
}
// quando pressionada a seta para esquerda a personagem anda para a esquerda
if keyboard_check(vk_left)
{
direita = false
if place_free(x-velocidade,y)
{
x -= velocidade
parado = false
}
}
// se nao estiver pressionado nada, a personagem fica parado
//virada para o lado que ela estava.
if (keyboard_check_released(vk_right or vk_left)) {parado = true }
x: a coordenada x da instancia
y: a coordenada y da instancia
hspeed: velocidade horizontal (em pixels por etapa)
vspeed: velocidade vertical (em pixels por etapa)
direcao: direcao atual do movimento em graus, sendo 0 direito, e indo no sentido contrario para 360 sendo novamente a 0 direita
Velocidade: A velocidade atual nessa direcao
visidvel: se o objeto e visivel (1, ou true) ou invisivel (0, ou falso)
solida: se o objeto e solido (1, ou true) ou nao (0, ou falso)
E aqui estao algumas variaveis \u8203?\u8203?globais:
score: o valor atual da pontuaco
vive: o n\framers atual de vidas
sa\'fade: a sa\'fade atual do jogador (o padrao e 100)
mouse_x: a coordenada x do mouse
mouse_y: a coordenada y do mouse
room_speed: velocidade atual (FPS) da sala em passos por segundo
room_caption: subtitulo mostrado no titulo da janela
room_width: largura da sala em pixels
room_height: altura da sala em pixels
Ha muitos, muitos mais variaveis, tanto locais para as instancias, e globais. Todos eles podem ser encontrados na documentacao Game Maker.
Acao fases que manipulam o valor de certas variaveis mas como veremos tambem e possivel manipula-los diretamente.
O que e melhor, voce pode definir suas proprias variaveis \u8203?\u8203? e usa-los tambem.
Pontos = 0
Ativar = false
Vidas = 3
Por exemplo, como veremos a seguir, queremos que a nossa nave espacial para ser capaz de filmar apenas uma vez a cada cinco etapas do jogo.
Portanto, a nossa nave espacial precisa de uma propriedade para indicar se ele pode atirar. Nos usamos uma variavel para essa propriedade que chamamos can_shoot.
(Um nome de variavel so pode consistir de letras e o simbolo de sublinhado.
Nome da variavel sao case-sensitive,entao Can_Shoot nao e a mesma variavel como can_shoot.)
No caso de criacao da nave espacial que definir esta variavel para 1 (usamos sempre um para indicar verdadeiro).
Quando o jogador quer disparar um tiro que verificar o valor da variavel para ver se isso e permitido.
Sempre que um tiro e disparado definimos a propriedade a 0 (indicando que o disparo temporariamente nao e permitido).
Evento Create
Global.tempo = 0
Global.contar = false
Global.cem = 0
Evento Step
If (global.contar = true)
{
Global.tempo += 1
}
If(global.tempo >= 100)
{
Global.cem += 1
Global.tempo = 0
}
Em seguida, usamos um evento de alarme para definir a propriedade de volta para 1 apos cinco etapas.
Abaixo vamos descrever isso com mais detalhes.
De forma semelhante podemos usar variaveis \u8203?\u8203? para indicar se a nave tem um escudo ativo, se ele tem alguma atualizacao arma especial, etc.
Acao fases variaveis
Acao de fases importantes para lidar com variaveis \u8203?\u8203? diretamente, o que pode ser encontrado na aba de controle:
Evento Create
Globalvar tempo
Globalvar contar
Globalvar cem
Evento Step
If (contar = true)
{
Global.tempo += 1
}
If(tempo >= 100)
{
cem += 1
tempo = 0
}
Defina o valor de uma variavel. Com esta acao, voce pode alterar o valor de uma determinada variavel.
Esta pode ser uma das variaveis \u8203?\u8203?internas ou sua propria variavel. Voce especifica o nome da variavel e o novo valor.
Quando voce marcar a caixa Relativa o valor dado e adicionado ao valor atual da variavel.
Por favor, note que isso so pode ser feito se a variavel ja tem um valor atribuido a ele!
Em vez de fornecer um valor simples para a variavel que voce tambem pode dar uma expressao.
Por exemplo, para dobrar a pontuacao que voce pode definir o valor da pontuacao variavel para valorizar 2 * pontuacao.
draw_healthbar(x1,y1,x2,y2,amount,backcol,mincol,maxcol,direction,showback,showborder)Se uma variavel tem um valor.
Com esta acao, voce pode verificar qual e o valor de uma determinada variavel.
Se o valor da variavel e igual ao n\framers dado,a questao devolve verdadeiro e o seguinte bloco de acao ou das acoes e realizada.
Se nao for igual, o seguinte bloco de acoes ou acao fases nao e realizada.
Voce tambem pode indicar que o cheque deve ser se o valor da variavel e menor do que o valor dado ou maior do que o valor determinado.
Na verdade, voce nao esta restrito ao uso de variaveis, mas pode verificar qualquer expressao que voce gosta.
Mais tarde, veremos uma serie de exemplos de utilizacao destas acao fases.
c_gold
c_bright_green
c_irish_green
c_olive
c_seafoam
c_spring_green
c_blue_bird
c_bell_blue
c_lilac
c_crimson
c_bone
c_flesh
c_peach
c_mustard
Ha mais uma coisa que voce precisa saber sobre variaveis.
Como indiquei acima, existem variaveis \u8203?\u8203?locais que "pertencem" a uma instancia e ha variaveis \u8203?\u8203?globais.
Quando voce usa suas proprias variaveis \u8203?\u8203?estas sao sempre variaveis\u8203?\u8203?locais que so existem para a instancia em cujas as fases voce a usa-los.
Se voce quiser usar suas proprias variaveis \u8203?\u8203?globais que voce tem que prefixar o seu nome com a palavra global e um ponto.
Assim, por exemplo, voce pode usar um global.bonus variavel para indicar o n\framers de pontos de bonus recolhidos pelo jogador.
Sempre tenha cuidado que voce use nomes de variaveis \u8203?\u8203?que ainda nao existem e tambem sao diferentes dos nomes de sprites, sons, etc.
Uma maneira de conseguir isso e sempre deixar as suas variaveis \u8203?\u8203?comecem com ex var_.
draw_healthbar(view_xview+10,view_yview+30,view_xview+90,view_yview+35,global.hp,c_black,c_red,c_green,0,1,1);
draw_text(x,y,global.vida)
Rolagem de fundos
Um atirador de rolagem gracas o seu nome ao fato de que os pergaminhos mundiais jogo na tela, normalmente seja de cima para baixo ou da direita para a esquerda.
Isso e a ilusao de movimento. No jogo de 1945 os pergaminhos mundo de jogo vertical.
Mesmo que o aviao o jogador controla realmente fica parado na tela voce tem a impressao como se voa sobre o fundo de rolagem.
Image_speed = 0.5
if(image_index >= 10)
{
Instance_destroy()
}
Voce pode controlar a posicao do aviao, movendo-a ao redor da tela.
Isto e a impressao de o aviao acelerando,quando ele se move para a frente, ou abrandar quando se move para tres.lados fundamental que o plano nao se mover mais reptido para tres do que os rolos de fundo.
Isso daria a ilusao de que o aviao voa para tres, o que e obviamente impossivel.
if(keyboard_check_pressed(vk_up))
{
Sprite_index = spr_personagem_saltando
}else
{ sprite_index = spr_personagem_parado}
Image_alpha = 0.1
Entao, como vamos criar um fundo de rolagem no Game Maker? Na verdade, existem duas possibilidades.
O primeiro e mais facil possibilidade e a utilizacao de uma imagem de fundo da telha que se move para baixo atraves da sala.
O segundo, mais complicado, caminho e a construcao de uma sala muito maior, mas apenas mostrar parte da sala usando uma exibicao chamada.
Essa visao se move lentamente para cima sobre o quarto. Vamos comecar com o uso de um fundo em movimento.Mais tarde,vamos investigar brevemente a segunda opcao.
alarm[0] = 90
Tempo = 0
Tempo += 1
if(tempo >= 60)
{
hspeed = 5
}
Como o nosso jogo tem lugar durante acao so precisamos de uma imagem de fundo que se parece com um ser visto de cima.
Na fases adicionamos a seguinte imagem pequena como um recurso de fundo para o jogo e dar-lhe o nome back_water:
if(keyboard_check_pressed(ord('A')))
{
instance_create(x,y,object1)
}
Encher o fundo com ele vai dar um mar bem olhando. Para criar uma sala com um fundo em movimento, adicione um espaco para o jogo da maneira familiar.
Com o clique esquerdo na aba fundos. Precisamos mudar tres configuracoes aqui.
O restante dos codigos basta usar vk_nome_da_tecla apos a funcao keyboard_check.
Vk_left
Vk_right
Vk_up
Vk_down
Vk_space
Vk_delete
Vk_backspace
...
Em primeiro lugar, porque estamos indo para encher a sala toda a imagem de fundo com que nao precisa desenhar o fundo em uma cor,por isso,desmarque a caixa cor de fundo Draw.
Em segundo lugar,no meio,clique no adicione de menu e selecione a imagem de fundo back_water.
A configuracao padrao e a telha o quarto inteiro com ele entao e isso que na fases queremos. Por fim, precisamos fazer o movimento de fundo.
Para este fim, na parte inferior, definir o Vert. velocidade para 2. O formulario deve agora olhar como se segue.
image_index = 0
image_speed = 0
saude = 50
Execute o jogo para verificar que de fato tem um fundo de rolagem que e a ilusao de movimento.
if(saude = 40)
{
image_index = 1
}
if(saude = 30)
{
image_index = 2\par
}
\par
if(saude = 20)
{
image_index = 3
image_speed = 0.3
}
Rolagem ilhas
Para aumentar a sensacao de movimento, vamos adicionar algumas ilhas para o ver.Uma maneira facil seria criar uma imagem de fundo maior e adicionar a ilha a este fundo.
A desvantagem dessa abordagem e que as ilhas aparece em um padrao regular, que o jogador logo percebe.
(Voce pode ter visto isso em desenhos animados, onde e um fundo de rolagem repetindo atraves de um personagem em movimento.)
Entao, na fases escolhemos uma abordagem um pouco mais complicado e adicione a ilha como objetos.
Entao o primeiro,criar tres sprites com as imagens a seguir(voce pode fazer isso facilmente,arrastando cada uma das imagens para a janela Criador do jogo,em seguida, selecionando "Sprite"):\par
instance_destroy()
saude -= 5
Como nunca iremos usa-los para verifica e acao de colisao, e melhor para garantir Precise verificacao de colisao esta desmarcada.
Isto ir e melhorar a velocidade do jogo e executado. Para cada uma das ilhas que criar um objeto.
No evento de criacao de n\fases dar o objeto uma velocidade vertical que e a mesma que a velocidade de deslocacao do fundo.
Desta forma, parece que as ilhas sao parte do fundo, porque eles ficam na mesma posicao em relacao ao mar a oscilar.
if(distance_to_object(object0)<100)
{
mp_potential_step(object0.x,object0.y,5,true)
atacar = true}
else
{
atacar = false}
if(atacar = true)
{
tempo += 1
if(tempo >= 5)
{
instance_create(x,y,object2)
tempo = 0
}
Para se certificar de que todos os outros objetos vao ficar acima das ilhas que dao a ilha objetos uma profundidade de 10000.
(Voce deve executar Game Maker em modo avancado para ser capaz de fazer isso - alterar essa opcao no arquivo se voce esta no modo simples.)
As instancias de objetos sao desenhados na ordem de profundidade.
Os casos com maior profundidade sao atrasados pela primeira vez. Instancias com menor profundidade sao desenhados em cima deles.
Assim, dando as ilhas uma alta profundidade que seria sempre desenhado pela primeira vez e se deitar abaixo os outros objetos.
vel -= 1 // velocidade foi definida com o valor 20 no evento create
tempo += 1
if(vel <= 0)
{
vel = 0
}
if(tempo >= 15)
{
instance_change(object3,true) //objeto com efeito de explosao
}
mp_potential_step(object0.x,object0.y,vel,false)
So mais uma coisa precisa ser feito.Quando a ilha desaparece abaixo do fundo da sala, queremos fazer-lo reaparecer no topo.
Para fazer isso, em caso Etapa da ilha, vamos testar se a ilha desapareceu abaixo da tela e, em caso afirmativo, ela reaparecer no topo.
Note-se que a variavel y indica a posicao vertical do exemplo. (Um valor de 0 corresponde e 0 parte superior do quarto!)
O room_height variavel indica a altura da sala. Assim, a ilha desaparece abaixo da parte inferior da sala quando y e maior do que room_height.
Assim, podemos usar a acao para testar os valores das variaveis \u8203?\u8203?para ver se a ilha encontra-se abaixo da sala:
Como voce ve, como o valor que voce pode realmente usar um outro nome da variavel. Voce pode realmente escrever expressoes completas aqui.
Para mover para a parte superior do quarto que usar a acao para saltar para uma posicao e 0.
Mas nao gostamos de ir para uma posicao e aleatoria acima do quarto, nao um particular.
Ao escolher uma posicao aleatoria e menos regularidade nos lugares onde as ilhas aparecem.
Assim, o jogador n\'e3o tem a sensa\'e7\'e3o de que \'e9 a mesma ilha reaparecimento.
Mas como e que vamos dar um valor aleatorio? Para isso e uma funcao random ().
O que e uma funcao que voce pode perguntar? A funcao calcula um valor (ou executa uma acao) com base no valor de certos argumentos.
O argumento (s) so escritos entre parenteses apos o nome da funcao.
Em todos os lugares onde voce pode digitar valores que voce tambem pode usar as funcoes e variaveis \u8203?\u8203?(e expressoes que envolvem estes).
Ha muitas funcoes no Game Maker. Mas por agora precisamos apenas a funcao random ().
Na acao salto usamos aleatorio (room_width) como a coordenada x.
Isto ir e criar um valor aleatorio entre 0 e a largura da sala, como gostamos. Assim, a acao salto ficar e da seguinte forma:
Usamos -65 para a posicao -y para certificar-se da ilha comeca completamente acima do quarto.
Por causa de sua velocidade vertical que vai mudar de novo e vista. Temos que isso para todas as tres ilhas objetos.
Tudo o que resta a ser feito e colocar trea ilhas em diferentes alturas no quarto e estamos a fazer com o nosso fundo de rolagem.
Mesmo que as ilhas reaparecer em momentos regulares, porque a situacao e diferente, o jogador nao vai realmente notar que eles sao os mesmos.
Voce tambem poderia ter acrescentado alguma irregularidade no momento as ilhas aparecem, configurando tambem um valor aleatorio (negativo) para a coordenada y.
O plano principal
Agora que o fundo de rolagem esta pronto, e hora de fazer o aviao que o jogador ir e controlar. Esta e realmente bastante facil.
Primeiro de tudo, precisamos de um duende para o aviao. Usaremos um aviao de helice.
Para dar as helices a ilusao de rotacoes usamos um sprite que consiste de tres imagens que so exatamente os mesmos,exceto para as helices
(esta imagem pode ser encontrado como myplane_strip3 na pasta Tutoriais apropriado onde Game Maker foi instalado):
Tais sprites animados podem ser encontrados em arquivos que terminam com _stripXX, onde XX indica o n\'famero de subimages.
Ao criar esse sprite fazemos uma coisa importante. Nao definimos o X e Y da origem a 32. Isto significa que a origem da imagem movel e o centro do plano.
Portanto,sempre que o plano definido mais tarde numa posicao e 0 ou testar a posicao e o queremos dizer a posicao e o do centro do plano,o ponto de nao e o superior esquerdo,que e normalmente utilizada como a origem.
Isto e importante para garantir que, por exemplo, balas vem do centro do plano, n\'e3o a partir do lado esquerdo.
Em seguida, adicione o objeto obj_myplane. Como Sprite nao escolhemos o sprite aviao que acabamos de criar.
Damos-lhe uma profundidade de -100 para se certificar de que ele estao acima balas, etc. que criaremos mais tarde.
(Lidar com a propriedade de profundidade em uma maneira eficaz e muito importante para muitos jogos. Entao voce a entender melhor como usar isso.)
No momento, so precisa especificar o movimento do aviao.
Quando o jogador nao faz nada, o aviao nao se mover e (Lembre-se, no fundo, nao se move o aviao).
Se o jogador pressiona uma das quatro teclas de seta do plano deve se mover na direcao apropriada.
A nossa principal preocupacao e evitar que o aviao se move fora do quarto.
Para este fim, ir e controlar o movimento mesmos, em vez de dar uma velocidade do aviao. Isto e feito como se segue.
Vejamos o movimento para a seta para a esquerda. Adicionar o evento de teclado para a chave.
Precisamos primeiro para verificar que nao estamos muito longe para a esquerda.
Entao nao usamos a acao para verificar se a variavel x e maior do que 40, semelhante e maneira como nao fizemos o check a coordenada y das ilhas acima.
Se esta verificacao retorna verdadeiro queremos mover o aviao uma pequena distancia para a relativa e esquerda para sua posicao atual.
Para isso, use o "salto para uma posicao de acao se mova em relacao -4 para x e 0 para y. Nao se esqueca de verificar a caixa Relativa.
Para a seta para a direita que fazemos uma coisa similar. Nos verificar se x e menor do que room_width-40 e, em caso afirmativo, o salto em relacao a um x de 4 e y 0.
Similar para o movimento vertical, mas desta vez nao nos movemos apenas com uma velocidade de -2 e 2.(Lembre-se , nunca deve se mover mais reptido para tres do que o fundo esta a correr.)
Alem disso, nao se esqueca que a direcao y positivo e baixo. Entao, para se mover para cima, devemos subtrair 2 a posicao y.
Na parte inferior da tela que manter uma maior margem de 120. Isto ser e usado mais tarde para colocar um painel com alguma informacao de jogo.
Nosso aviao pode voar agora. Coloque uma instancia do plano no quarto e executar o jogo. Voce deve obter a ilusao de voar sobre o mar.
Inimigos e Armamento
Mas o que e um atirador de rolagem, se voce nao pode atirar e nao a e inimigos?
Agora vamos estender o nosso jogo com alguns avioes inimigos e um com nome no aviao que voce pode disparar.
Vamos comecar com o com nome. Precisamos de um sprite bala. Colocamos a sua origem no centro como fizemos para o plano principal.
Para torna-lo um pouco espetacular usamos um pouco grande bala. Exagerando as coisas muitas vezes e importante em jogos.
Criamos um objeto com esse sprite. Vamos dar-lhe a profundidade padrao 0 tal que ele ir e aparecer abaixo do plano, mas acima das ilhas.
O objeto tem um comportamento bastante simples. No evento de criacao de nao dar-lhe uma velocidade vertical de -8 para fazer-lo se mover para cima.
Para evitar que mais e mais balas continuam voando ao redor devemos destruir-lo uma vez que ele sai da sala.
Isto pode ser facilmente conseguido.No caso passo que testar se a variavel X e menor do que -16. Voce a ja deveria saber como fazer isso.
Se por isso, destruir o objeto usando a acao apropriada. (Voce tambem pode usar o evento Fora do quarto que pode ser encontrado em outros eventos.)
A bala deve ser acionado quando o usuario pressiona a tecla de espaco. Como na maioria dos shooters o aviao deve manter a disparar balas, enquanto a tecla e pressionada.
Mas nao queremos muitas balas no mesmo momento. Isso tornaria o jogo muito facil.
Nao permitir que o jogador disparar dois tiros a cada segundo, ou seja, uma bala a cada 15 passos.
Para conseguir isso, usamos um can_shoot variavel como mencionamos antes.
No evento de criacao do plano principal que definir esta variavel para 1, indicando que podemos realmente disparar uma bala.
No evento-chave espaco que testar se o can_shoot variavel e igual a 1. Se assim criamos uma bala apenas na frente do navio, relativa na posicao (0, -16).
Tambem vamos definir o can_shoot variavel com 0 indicando que ja e nao podemos atirar e definir alarm0 a 15.
Lembre-se que um alarme carrapatos para baixo a 0 com um tick em cada etapa. Quando o alarme chegar a 0 o evento de alarme acontece.
Nesse caso, vamos definir o can_shoot variavel volta a 1, indicando que podemos atirar novamente. O evento para a tecla de espaco agora deve ser algo parecido com isto:
Voce pode alterar a velocidade com a qual voce pode atirar, alterando o valor do despertador.
(Em alguns jogos voce pode atirar mais reptindo se voce estiver disposto a pressionar constantemente a tecla de espaco.
Isso pode ser conseguido atraves de um conjunto similar de acao na chave de espaco para eventos pressionado, mas desta vez sem o cheque para a variavel.)
Vamos agora fazer o primeiro inimigo. um pequeno aviao que simplesmente voa baixo. Ele nao atirar, mas quando bate o plano principal do jogo esta perdido.
Mais uma vez, criar um sprite para o aviao inimigo e um objeto. No evento de criacao vamos definir a velocidade vertical de 4 para fazer o aviao voar baixo.
Quando o aviao chega ao fundo do quarto que fazer-lo reaparecer em um lugar aleatoria no topo da sala,exatamente da mesma forma como fizemos para as ilhas.
Voce deve saber como fazer isso agora.
Inimigos e Armamento
Precisamos definir dois eventos de colisao importantes para o aviao inimigo:o evento de colisao com a bala, que deve destruir o aviao inimigo,e o evento de colisao com o plano principal que deve destruir o plano principal e terminar o jogo.\par
Comecamos com o evento de colisao com a bala. Uma serie de acoes e o necessarias aqui.
Mas antes de tudo precisamos de um som de uma pequena explosao e um sprite que indica a explosao.
Para criar um som, pressione Adicionar som e carregar alguns agradavel som de explosao (veja a pasta Sons no diretorio do jogo Maker por algum exemplo sons).
Para a explosao que precisamos de um pouco de Sprite. Tal como para o aviao inimigo que definir a origem (16,16).
Nos tambem criar um objeto explosao e dar-lhe o sprite explosao. Ele nao faz nada, exceto que uma vez que a animacao explosao completa jogou ele deve destruir a si mesma.
Ha um evento chamado Animation final para esta sob os outros eventos.
Quando o som e o objeto explosao estao prontos podemos preencher em caso de colisao do aviao inimigo com a bala.
Sao necessarios os seguintes acoes. Primeiro de tudo, reproduzir o som de explosao. Em seguida, destruir a bala.
Para isso, use a acao para destruir uma instancia mas, na parte superior, indicam que ele deve aplicar-se a outra instancia, que e a bala neste caso.
Em seguida, o objecto criar explosao, relativamente e 0 posicao (0,0), isto e, no mesmo local que o aviao inimigo. Nao e o destruir o aviao inimigo!
Em vez disso, mova-o para uma posicao aleatoria acima da sala de tal forma que parece que um novo aviao inimigo esta chegando.
Finalmente, vamos definir a pontua\'e7\'e3o relativa a 5.
Precisamos de parente aqui porque queremos adicionar 5 pontos para a pontuacao e; nos nao queremos para definir o placar para 5. O evnt deve ficar assim:
Em seguida, precisamos lidar com a colisao com o plano principal.
Mais uma vez vamos precisar de um sprite de explosao (um pouco maior desta vez) e um som de explosao (um pouco mais alto desta vez).
Nao adicionamos o som para o jogo e vamos fazer um sprite para a explosao.
Mais uma vez criamos um objeto explosao por isso, mas esse objeto e um pouco mais elaborado do que o outro objeto explosao porque ele tambem ir e lidar com o fim do jogo.
No seu evento de fim de Animacao fazemos algumas coisas. Nao primeiro destruir a instancia para torna-lo invisivel.
Em seguida, dormir um pouco para ter certeza de que o som explodindo esta terminado.
A proxima acao mostra a lista de alta pontuacao, de tal forma que o jogador pode digitar seu nome ou ela quando chegar a uma pontuacao elevada.
Isso vale tudo automatico em Game Maker. Voce pode ainda que indicam o que a aparencia deve ser de tabela de pontuacao elevada.
Voce pode ter uma imagem de fundo agradavel, escolher o tipo de letra, etc. Voce deve experimentar um pouco com isso. Finalmente, reinicie o jogo.
Em caso de colisao do aviao inimigo e o plano principal, mudamos o plano principal, isto e, o outro exemplo, em uma explosao.
Tambem vamos reproduzir o som explodindo e destruir o aviao inimigo.O que resta e colocar um aviao inimigo no quarto,mas vamos fazer isso um pouco diferente.
Um bom jogo torna-se mais dificil o tempo todo. Por isso, gostaria de comecar com apenas um aviao inimigo e obter mais deles ao longo do tempo.
Para este fim, criar mais um objeto, que chamaremos controller_enemy. Ele ir e controlar a criacao de avioes inimigos.
Nao fazemos o objeto invisivel durante o jogo, desmarcando a caixa visivel. Um sprite nao e necessario para ele.
No seu evento de criacao criamos um lugar inimigo em um local aleatorio pouco acima do quarto. Este seria o primeiro inimigo.
Nao tambem definir o despertador para 200. No caso de este despertador que criar um outro aviao inimigo e definir o despertador de novo, mas desta vez para 500.
Isso e tudo. O efeito e que, no inicio do jogo, existe um plano inimigo.
Depois de 200 passos, ou seja, cerca de sete segundos, surge um segundo aviao inimigo. Apos cerca de 15 segundos, um terceiro aviao aparece, etc.
(A razao que nao deixamos o segundo plano aparece mais reptido do que os outros e porque o jogo com apenas um aviao inimigo e muito chato.)
Coloque uma instancia do objeto controlador no quarto e estamos a fazer.
Isso termina a segunda versao de 1945. Temos um jogo jogavel com um inimigo.
Scores, vida e saida de fases um pouco insatisfatorio que o jogo termina quando voce e atingido.
Para tornar o jogo um pouco mais interessante, vamos deixar inimigos criar danos.
So quando o aviao fica muito dano ele sera destruido. Tambem vamos apresentar varias vidas e criar um painel agradavel informacoes que mostram essas informacoes,juntamente com a pontuacao
Felizmente, tudo isso vai ser muito facil, porque Game Maker foi construido com mecanismos para lidar com pontuacao, vidas e saida de fase (sendo o oposto do dano).
Para criar tudo isso que fazemos um novo objeto chamado de controller_life. Ela nao precisa de um sprite como iremos controlar o proprio desenho usando o evento de desenho.
Como voce sabe, normalmente em cada passo, o sprite que esta definido para a instancia e desenhada no local correto no quarto.
Mas quando voce colocar acoes em caso de desenho ja e nao e este o caso. Agora, essas acoes determinam o que esta sendo desenhado.
Ha todo um conjunto de acoes disponiveis apenas para o desenho. A maior parte deles pode ser encontrado no guia Draw.
Mas voce tambem pode usar outras acoes aqui. As acoees de desenho so fazem sentido no caso de desenho. Em outros lugares, eles estao basicamente ignorado.
Como ponto de partida, criamos uma grande sprite que funciona como painel de informacoes. Arraste a seguinte imagem em Game Maker e salve-o como um sprite:
Ela vai mostrar a contagem, o dano (na area preta e 0 esquerda), e o n/framers de avioes esquerda, que e o n\'framers de vidas.
Em caso de retirada de controller_life trazemos este painel Sprite informacoes na posicao correta usando a acao para desenhar um sprite.
Enchemos os parametros da seguinte forma:
Isto fara com que o sprite correta na parte inferior do acao. (Usando -1 para o sub-imagem significa que o sub-imagem atual e desenhada.
Como nao e apenas um sub-imagem na Sprite realmente nao se preocupam com isso,mas se um sprite e composto por varias sub-images voce pode indicar aqui o sub-imagem que voce deseja ver).
Para certificar-se de que o painel de fundo encontra-se acima de tudo, damos o objeto controller_life uma profundidade de -10000.
No seu evento de criacao, o objeto controller_life define o placar para 0, o n\framers de vidas a 3, e da saida fase para 100. Ha acoes para este na guia Score.
Para desenhar a pontuacao usamos a acao apropriada na guia Score.
(O primeiro conjunto de desenhos de cores para ser amarelo.)Na acao de chamar a pontuacao,que preencha os parametros da seguinte forma (sem legenda porque a legenda ja esta no fundo):\par
Para elaborar as vidas que usam um mecanismo diferente. Ao inves de apenas desenhar o n\framers que vai chamar um n\framers de pequenas imagens do aviao.
Para isso, vamos usar um pequeno duende que descreve o plano. Nao e uma acao para isso na guia Score.
Como fazemos agora mostrar a pontuacao e n\framers de vidas nos mesmos, ja nao quiser exibi-los na legenda da janela.
Ha uma acao na guia Score para indicar o que deve ser mostrado na legenda da janela. Coloque isso no evento de criacao do objeto e indicam que nada deve ser mostrado.
Tambem para o desenho da saida ha uma acao especial. A saida e apresentado sob a forma de uma barra de so fase.
Voce pode indicar a posicao, tamanho e esquema de cores usado. Nao preencher os parametros da seguinte forma:
O evento total de desenho e algo como isto:
Mas ainda precisamos realmente verificar para a so fase e vida. Primeiro de tudo o que temos que fazer algumas mudancas em caso de colisao do aviao inimigo e o plano principal.
Ele deve deixar de destruir o plano principal,mas apenas destruir a si mesma(transformando-o em uma explosao)e diminuir a saida,ou seja,definir a saida a-30 (para que possa suportar 3 acessos).\par
O objeto controller_life ir e verificar quando a so fase torna-se menor que 0. Nao e um evento para esta sob os outros eventos.
Neste evento, explodir o aviao principal transformando-o em uma grande explosao. Nao tambem redefinir a saida e reproduzir o som correto.Assim, o evento parece com isso:\par
O grande objeto de explosao, em seu evento Animation End destrui a si mesma.
Dormem por um tempo,para deixar o acabamento de som,cria um novo plano principal na posicao atual (ou seja,em relacao a posicao e (0,0)) e reduz o na frame de vidas ou seja defina-lo em relacao a -1.\par
Finalmente, e preciso verificar se o hotel fez ficar sem vidas. Felizmente, ha novamente um evento para isso.
Para o objeto controller_life, neste caso, mostramos a lista de alta pontuacao e reiniciar o jogo.
Esta terminou a terceira versao do jogo. Agora voce pode joga-lo e ja parece muito bom.
Mas o jogo logo se torna chato. Entao nao temos que melhora-lo um pouco mais e acrescentar alguma variacao.
Mais Enemies
Nesta secao, vamos adicionar tres novos tipos de avioes inimigos para o nosso jogo. Um irao disparar balas diretamente para baixo. O segundo aviao vai disparar balas em direcao ao plano principal.
O terceiro tipo nao dispara balas, mas vem do fundo da sala e e mais dificil de evitar ou atirar. Vamos faze-los aparecer em fases posteriores durante o jogo.
Para criar o primeiro novo tipo de aviao inimigo, devemos fazer um novo Sprite para ele, similar e entidade grafica para o primeiro inimigo, mas com uma cor diferente.
Em segundo lugar, precisamos de um novo objeto para ele. Como o objeto irao se comportar quase o mesmo que o primeiro aviao inimigo que fazer uma copia deste objeto
(botao direito do mouse sobre ela e escolha Duplicate). Da um duplo clique sobre o novo objeto duplicado para muda-lo.
Da-lhe um novo nome e definir o sprite correta. Porque este e um plano mais especial, o jogador deve obter uma pontuacao mais elevada quando fotografa-la.
Assim, em caso de colisao com a bala que mudar o placar a 10.
Para o aviao inimigo para atirar, precisamos de um sprite de bala e um objeto de bala. Este objeto, no seu evento de criacao, recebe uma velocidade vertical para baixo.
No seu caso etapa, novamente tomar cuidado para que o objeto e destruido quando ele se move para fora da sala na parte inferior.
Em caso de colisao desta bala com o plano principal vamos definir a relacao solida e -5, destruir a bala, e reproduzir um som.
Agora devemos fazer o inimigo aviao disparar balas de vez em quando. Fazemos isso em caso etapa do aviao.
Nao usamos a acao de jogar um dado e como parametro colocamos 30.Isso significa que a proxima acao e realizada em media uma vez a cada 30 passos.Nesta proxima acao criamos a bala inimiga.
Finalmente, devemos ter certeza de que em algum momento do segundo aviao inimigo comeca a aparecer.
Para isso, use o objeto controller_enemy novamente. No evento de criacao de nao definir o alarme 1 para um valor de 1000.
Neste evento de alarme criamos o segundo aviao inimigo e definir o alarme 1 novamente para 500 para criar outro plano um pouco mais tarde.
Assim, o primeiro aviao deste tipo irao aparecer apos cerca de 30 segundos e um extra aparece a cada 15 segundos.
Para o nosso proximo tipo de aviao inimigo que novamente precisa de um novo duende e precisamos de um novo sprite de bala.
Nao fazemos uma copia do segundo objeto aviao inimigo e, como acima, em caso de colisao com a bala normal, mudar o placar para aumenta-la para 20.
Tambem criamos um segundo objeto bala inimiga. O aviao inimigo cria este novo tipo de bala em seu evento etapa.
Mais uma vez, use a acao indice mas agora so criar uma bala uma vez a cada 80 passos, porque o nosso novo tipo de bala e muito mais dificil de evitar.
O novo tipo de bala funciona da seguinte maneira. No seu evento de criacao usamos a acao de avancar para uma posicao. Mas qual e a posicao que devemos usar
Bem, nao queremos atirar em direcao e posicao do plano principal. Por isso, queremos saber o x e y posicao desta instancia do objeto.
Isto pode ser conseguido facilmente em Game Maker. Para obter o valor de uma variavel em outra instancia que precedem o nome da variavel com o nome do objeto.
Assim, utilizamos obj_myplane.x para indicar o valor da coordenada x do plano. Quando houver varias instancias desse objeto que nao obtemos o valor da variavel na primeira instancia.
Quando nao e nenhuma instancia do objeto que receber e uma mensagem de erro.
Isso pode ser um problema para o nosso jogo, porque quando o aviao e destruido l e temporariamente e nenhum aviao.
Entao, e melhor verificar primeiro se o aviao esta l e. Nao e uma acao que pode contar o n\framers de ocorrencias de um determinado objeto.
Nao usamos isso para verificar se o plano principal esta disponivel e, em caso afirmativo, direcionar a bala em direcao ao aviao.
Caso contrario, a bala vai ir para baixo. Assim, o evento de criacao ficara da seguinte forma:
A acao de avancar para um ponto agora tem os seguintes parametros:
E necessaria uma outra alteracao. Como a bala pode voar em qualquer direcao e um pouco mais dificil de testar em caso passo,se a bala encontra-se fora do quarto.
Mas, na verdade, nao e um evento especial para isso: o evento exterior. Neste evento, basta colocar uma acao para destruir o objeto.
Finalmente, tem que lidar com a criacao de um novo tipo de avioes inimigos. Como indicado antes de usar o objeto controller_enemy para isso.
No evento de criacao que ajustar o alarme 2 a 2000. Neste evento de alarme criamos o novo tipo de aviao inimigo e definir o alarme 2 novamente para 1000 para criar outra algum tempo depois.
Isso termina a adicao do nosso terceiro tipo de aviao. Resta acrescentar os avioes que vem de baixo.
Isso e feito da mesma maneira como o primeiro plano inimigo, excepto que o aviao comeca a seguir o quarto e move-se para cima em vez de para baixo.
O objeto controller_enemy novamente cria-los, desta vez usando alarme 3. Voce deve agora entender como fazer isso, mas voce tambem pode olhar no jogo.
Isso termina a nossa quarta versao do 1945. Ela tornou-se um jogo jogavel que fica mais dificil o tempo todo.
Ha, na verdade, e um pouco de diverso em jogar e tentar alcancar a maior pontuacao.
Finalizando o Jogo
Agora nao criamos um scrolling shooter com diferentes avioes inimigos.
Tornou-se um jogo jogavel que fica mais dificil o tempo todo. Ha, na verdade, e um pouco de diversao em jogar e tentar alcancar a maior pontuacao.
Mas, para transforma-lo em um jogo real de um par de toques finais ainda sao necessarios.
Precisamos de alguma musica de fundo, uma imagem de carregamento, um adicione a de melhor, etc.
Eu tambem colocar um atraso em planos para reaparecer quando disparou, tornando-o mais interessante para o jogador para tentar atirar avioes, ao inves de simplesmente evita-los.
Finalmente, ha um bonus especial de incendio, quando o jogador atinge uma pontuacao de 400 e outra quando ele atinge 1.000 pontos.
Voce pode usar este jogo como uma base para ampliar ainda mais. Aqui estao algumas ideias do que voce pode adicionar.
E bastante comum em jogos de tiro de rolagem para encontrar power-ups que lhe dao o poder de fogo jogador extra, reparar o dano, dar pontos extras, dar um plano extra, etc.
Tais power-ups podem aparecer quando o jogador atira um aviao ou eles pode simplesmente ser encontrado durante o voo.
Alem disso, voce pode criar tipos adicionais de aviaes inimigos, por exemplo, avioes que voam de lado ou disparar misseis mais poderosos.
Deixo isso para voce trabalhar sobre estes e fazer o seu proprio atirador de rolagem.
Voce pode encontrar uma colecao de sprites relacionados a 1945, criado por Ari Feldman, como um arquivo .bmp na pasta Resources dentro pasta deste tutorial.
Para obter os sprites individuais fora desse arquivo, criar um sprite, clique no botao Editar Sprite, selecione Criar a partir de minas no menu Arquivo e selecione a imagem (s) que deseja.
Consulte a documentacao para obter mais informacoes.
Usando o tempo Lines
Nesta secao e na proxima, vamos discutir mais duas caracteristicas do Game Maker, que sao muito facil na criacao de atiradores de rolagem mais complicados:
linhas de tempo e pontos de vista.
No jogo que criamos ate agora, o aparecimento de inimigos foi controlado pelo objeto controller_enemy que de vez em quando adicionado um aviao inimigo para o jogo.
Alem disso, os avioes inimigos onde nunca destruido. Eles so reapareceu. O resultado foi um jogo que tem cada vez mais dificil porque o n\framers de avioes ficou cada vez maior.
Mesmo que isto da jogo razoavel tem um certo n\framers de problemas. Em primeiro lugar, os avioes aparecem em posicoes aleatorias que o designer de jogos nao pode controlar.
Como resultado planos podem acabar em cima uns dos outros ou muito proximo da fronteira que nao e muito atraente.
Alem disso, ha pouca surpresa no jogo. Inimigos acabado de chegar em voce de forma aleatoria e ha pouca coisa que o jogador pode fazer do que apenas atirar o tempo todo e evita-los.
Para obter jogo mais interessante jogar o game designer deve ter mais controle sobre quais avioes aparecem onde em que momento.
Isso permite que voce crie avioes inimigos que veam em forma' acoes,para criar alguns desafios (como um grupo enorme de inimigos simples que devem ser principalmente evitada ou alguns inimigos perigosos que melhor ser filmado)e variacao.
Tambem vai permitir que o jogador para aprender a jogar o jogo, porque ele pode se lembrar de coisas faceis a partir de pecas anteriores.
Todos os bons jogos de controlar os inimigos em vez precisamente pelas razoes descritas acima. Simplificando, isso resulta em jogo mais interessante.
Por isso, queremos controlar melhor o aparecimento de certos inimigos. Para este fim, vamos utilizar os recursos de linha de tempo.
Mas antes de tudo temos que fazer algumas pequenas mudancas para o jogo. Para todos os avioes inimigos que nao mais faze-los reaparecer quando o levei um tiro ou sair da tela.
Nao simplesmente destrui-los. Entao, uma vez que um aviao esta desaparecido e ido para sempre. A linha do tempo irao controlar a criacao dos inimigos.
Um recurso de linha do tempo trabalha globalmente como se segue. Nele voce especificar um n\framers de momentos de tempo (medido em etapas do jogo)
E para cada um desses momentos,voce pode indicar acaes que devem ser executadas naquele momento particular.
Porque vamos usar a linha do tempo para os avioes inimigos que so vai usar acoes para criar avioes inimigos, mas, em geral, voce pode usar qualquer acao que voce gosta.\par
Por isso, vamos criar a nossa linha do tempo. Escolha Adicionar linha do tempo a partir do menu Add.
Surgira um formulario que se parece parcialmente semelhante e 0 forma do objeto.
E esquerda, voce pode indicar o nome da linha do tempo e ha botoes para adicionar, excluir e manipular momentos de tempo.
No meio, voce vera a lista de momentos definidos. Proximo a esta lista, ha lista de acoes para o momento selecionado e na direita,he as paginas com guias a partir do qual voce pode escolher as acoes.
No momento 0, queremos criar um aviao inimigo. Entao clique no botao Add. Como momento indicam o valor 0. O momento e adicionado e lista. Agora voce pode arrastar acao para a lista de acoes.
Precisamos de apenas uma acao para criar um aviao inimigo no local apropriado.
Como demora cerca de 100 passos por um aviao inimigo para atravessar a sala,nao adicionamos um segundo momento no passo 100. Aqui criamos dois avioes inimigos ao lado do outro.
Desta forma, continuar. Nao adicionamos momentos e adicionar acoes de criacao de avioes inimigos.
Ao criar os avioes em diferentes alturas acima do quarto em que pode criar formacoes agradaveis.Entao, apos a adicao de uma serie de momentos a forma ficara da seguinte forma:
No momento indicado 400 criamos uma fileira de nove avioes inimigos,dois dos quais estao atirando balas (obj_enemy2).Voce deve agora ter uma ideia.
Basta manter a adicao de momentos, com mais e mais perigosas avioes em formacoes interessantes e talvez colocar os momentos mais proximos.
Vai levar um pouco de trabalho para criar uma sequencia completa de momentos que compoem um bom nivel de jogo.
Em um jogo completo voce vai usar diferentes linhas de tempo para diferentes niveis.
No final da sequencia, voce precisa adicionar um momento em que termina o nivel ou o jogo.
Aqui voce provavelmente deve exibir uma mensagem que voce terminou o nivel, ou melhor, ter algum sequencia final agradavel,como um porta-avioes aparecendo em que o seu aviao cair.
Nao ainda nao terminamos. Uma linha do tempo nao executa automaticamente as acoes!
Voce deve atribuir uma linha do tempo para um objeto e, em seguida, as acoes da linha de tempo sera executado para esse objeto.
Ha duas acoes especiais para este; de modo a definir a linha do tempo para um objecto e um segundo para definir a posicao na linha de tempo.
Nao usamos o objeto controller_enemy novamente.
Ele so precisa de uma acao em seu evento de criacao que define a linha do tempo apropriado.
Queremos que ele comece imediatamente na posicao 0 e nos nao queremos isso para fazer um loop, assim voce nao precisa alterar qualquer uma das outras propriedades.
Isso e tudo. Como voce vai notar, usando linhas de tempo e um pouco mais de trabalho porque voce precisa especificar todos os avioes inimigos que aparecem,
mas de muita flexibilidade e torna o jogo muito mais interessante. Ha muitas coisas que voce pode fazer com linhas de tempo.
Aqui nos utilizado para controlar o fluxo global do jogo, mas voce tambem pode usa-los para controlar o comportamento de objetos do jogo ao longo do tempo.
Ha tambem muitos truques que voce pode usar. Por exemplo, para por fim a uma linha do tempo por um tempo, adicionar um momento em que voce testar alguma condicao e, em caso afirmativo,
definir o tempo de posicao em relacao e linha de -1, ou seja, na proxima etapa no mesmo momento esta acontecendo e o condicao e testada de novo.
Assim, a linha do tempo nao irao progredir ate que a condicao e falsa.
(Ha tambem uma acao para interromper uma linha do tempo.) Instancias tambem pode alterar as linhas de tempo com base em certos eventos, etc.
Alem disso, voce pode controlar a velocidade de uma linha do tempo. Assim, as linhas de tempo formar um poderoso recurso.
A Room with a View
Ate agora, deixe enganar o leitor no sentido de que nao estavamos realmente voando atraves de um mundo de jogo, mas o fundo era apenas a rolagem.
Isto tem um n\framers de desvantajoso. Em particular, o fundo nao pode mudar facilmente (por exemplo, e dificil para voar no meio do caminho sobre a terra.
Alem disso, mesmo que voce pode usar linhas de tempo, e mais dificil ter acoes diferentes aparecendo bem se espalhar ao longo do tempo.
Nesta secao final vamos indicar brevemente uma maneira diferente de criar um atirador de rolagem.
Nesta abordagem, ha uma grande sala, atraves do qual o aviao realmente se move.
Nos usamos uma vista chamada de tal modo que o aparelho voa apenas uma parte da sala, a qualquer momento.
Para conseguir isso, e necessaria uma serie de mudancas para o jogo. Vamos discuti-las brevemente aqui.
Vamos primeiro criar o quarto basico. Damos-lhe a sala de uma largura de 640 como antes, mas agora vamos dar-lhe uma altura de 4800.
A imagem de fundo ja nao dar uma velocidade. Colocamos ilhas em varios lugares na sala.
Os objetos da ilha ja nao precisa de uma velocidade e tambem podemos remover o evento etapa.
Eles agora sao objetos totalmente estaticas.
O aviao que, colocada no fundo da sala e nos damos o aviao, no seu evento de criacao, uma velocidade vertical de -2 para se certificar de que ele voa com alguma velocidade,se o usuario nao faz nada.
Finalmente definimos a vista. Para isso, clique na aba Visualizacoes na forma quarto. Indicar que queremos permitir vistas.
Definir a primeira vista e torna-lo visivel no inicio. Como uma posicao superior, indicam 4320, isto e, a vista vai ficar na parte inferior do quarto.
Portanto, parece como se segue:
Nos temos que ter certeza de que a visao se move com velocidade constante. Para esse fim, (des) usar o evento etapa do objeto controlador de vida.
Nele, podemos adicionar a acao para definir uma variavel e definir variavel view_yview relacao a -2.
View_yview variavel indica a posicao de topo da primeira exibicao na sala.
(Quando existem varios pontos de vista que voce deve usar view_yview [0].)
Assim, em cada passo, a posicao da vista move 2 pixels para cima, criando a rolagem. Existem muitas outras variaveis \u8203?\u8203?relacionadas\e 0 vista, mas nao vamos precisar deles aqui.
Nos tambem deve verificar se view_yview \e maior do que 0. Se ela se torna 0 a vista atingiu o topo e devemos parar o jogo.
Note-se que, para o plano principal quer e damos evitar que o jogador pode mover o aviao fora da vista.
Para este fim, vamos checar se a posicao do aviao nao estava muito alto ou muito alto para baixo.
Agora, temos de usar o view_yview variavel nessas comparacoes para se certificar de que o aviao permanece dentro da visao.
Nos temos um problema semelhante com a posicao do painel de informacoes, e a barra de saida, etc.
Nos fez coloca-los no fundo da sala, mas agora temos de desenha-los no lugar correto em relacao ao view_yview para se certificar que ficar em vista.
Para a bala que dispara o plano deve-se aumentar a velocidade um pouco para compensar o ponto de vista em movimento.
Tambem devemos destrui-lo quando ele se move para fora da vista.
Ela continua a lidar com os avioes inimigos. Nao usamos mais uma linha de tempo ou controlador de objeto.
Vamos colocar todos os avioes inimigos ja no quarto, mas nao vamos deixa-los se mover ate que se tornem visiveis.
Entao, nos nao definir a sua velocidade inicial e em caso passo que primeiro verificar se eles estao no ponto de vista.
Se assim nos deixa-los passar. Alem disso, so vamos deixa-los disparar se eles estao na vista. Por exemplo, para o terceiro aviao inimigo do evento passo e o seguinte:
Note-se que devemos usar uma velocidade vertical menor do que antes. Tanto para os avioes inimigos e para as balas tambem devemos mudar as condicoes em que devem ser destruidos.
O mais complicado e aviao inimigo 4. Deve vir de tres.O truque e o seguinte.Voltamos a coloca-lo na sala, desde o inicio, mas podemos torna-lo invisivel.
Alem disso, enquanto ele e invisivel, nao deixe que ele reagir a colisoes com balas ou o plano principal. Quando se encontra abaixo da vista, torna-la visivel e deixa-lo mover-se
(com velocidade maior). Veja o exemplo do jogo de como isso e conseguido.
Agora e hora de construir o quarto. Colocamos conjuntos de diferentes avioes inimigos em lugares estrategicos no nivel. Novamente, e facil agora para criar forma e fases e agradaveis \u8203?\u8203?desafios.
Como voce pode ver, usando pontos de vista voce pode criar atiradores de rolagem muito interessantes com relativamente pouco trabalho. E evidente que o jogo precisa de muito mais trabalho.
E,de certa forma ainda e muito facil para terminar e e definitivamente muito curta. Alem disso, alguns chefe agradavel no final seria otimo.
Basta usa-lo como um primeiro passo e construir a partir da\'ed
}
qual sistema ou extensão podemos usar os jogos.
gmk roda nesses aqui
-andoid
-Html
-ios
-linux
-mac
-tizen
-windows
-winPhone
manfran conti. anota aqui ok???
renata
Sites de cursos e projetos
Visão Geral
Sites de cursos e projetos fornecer um conjunto de ferramentas de software projetadas para ajudar instrutores, pesquisadores, estudantes e criar e colaborar online. Mais ...
Como é que eu?
Para obter instruções específicas sobre cursos e projetos locais, veja:
Criação, edição e exclusão de locais de trabalho
Adicionar, editar ou remover participantes
Controlar o acesso ao seu site
Mudar seu status de privacidade
Determinando siteID do seu site
Publicar ou remover um site
Como navegar
O botão reset
Revisando ou modificando seu perfil
Mostrando, ocultando, e ordenando curso e de projeto locais
Criação, edição e exclusão de locais de trabalho
Nesta página:
Criando um site
Editando um site
Deletar um site
Criando um site
Para criar um local de trabalho:
Em seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
No topo da página Configurar Worksite, clique em Novo.
Em "Criando um novo site", clique no botão ao lado para o site claro, o site do projeto, ou carteira de site para escolher o tipo de site que você deseja criar. Para um site de curso, você também vai precisar usar o "termo Acadêmica:" drop-down list para selecionar o termo apropriado.
Clique em Continuar.
Sites de cursos
Para criar um site de curso, continue com as seguintes etapas (para locais de projetos, pule para o Project locais):
Em "Criando um Curso de New Site", selecione as seções do curso para ser incluído no site do curso, marcando as caixas apropriadas.
Para adicionar uma lista que não aparece na lista, clique em Adicionar curso (s) e / ou seção (s) não listados acima ....
Clique em Continuar.
Se você optou por adicionar uma lista não constam da lista, você será solicitado a digitar manualmente as informações de classe em vários campos. Para adicionar mais de uma lista, na Adicionar mais Roster (s)? drop-down list, selecione o número de listas adicionais que você deseja adicionar. Você também pode ter que digitar o nome de usuário de alguém autorizado a permitir uma lista ou listas de acesso local, juntamente com uma mensagem que contém todas as instruções especiais para o seu pedido. Clique em Continuar.
Em "Informação de Classe", você tem a opção de digitar uma descrição longa e / ou curta do seu site. A descrição longa aparecerá na página inicial do seu site; a descrição curta aparecerá na lista pública de todos os sites no sistema.
Para alterar a aparência do seu site, escolher uma pele do Aparência (Ícone): lista drop-down.
No "Site Nome do Contato:" e "Site contato E-mail:" campos, digite o nome e endereço de email da pessoa a quem os participantes podem entrar em contato caso tenham problemas ou perguntas.
Clique em Continuar.
Em "Ferramentas", selecione as caixas ao lado das ferramentas que você quer em seu site. Se você selecionar as seguintes ferramentas, você verá um formulário para mais informações:
Arquivo Email: Forneça um apelido (ou seja, nome de usuário) para o endereço de e-mail do seu site e clique em Continuar.
Notícias: Forneça um título e URL de origem para o seu feed de notícias. Para adicionar mais feeds, utilize os Mais Ferramentas de Notícias? drop-down list, e depois clique em Continuar.
Conteúdo Web: Forneça um título e URL. Para adicionar mais links, utilize as Ferramentas Mais Conteúdo da Web lista drop-down.
Você tem a opção de re-utilizando materiais de outros sites que você possui. Escolha um dos seguintes procedimentos:
Não, obrigado.
Sim, a partir destes sites:. Utilize o menu rolante para selecionar os sites com o material que você quer voltar a usar.
Clique em Continuar.
Em "Estado do Site", selecione Publicar site para torná-lo disponível aos participantes do site. Se você não quer publicar seu site neste momento, você pode fazê-lo mais tarde por meio de Site Info. Para instruções, veja Publicar ou remover um site.
Além disso, você pode permitir que seu site a ser acompanhado por qualquer pessoa com autorização para entrar no sistema.
Marque a caixa ao lado pode ser acompanhado por qualquer pessoa com autorização para efetuar login.
Use a lista drop-down para selecionar um papel para atribuir às pessoas que se juntam a seu site.
Clique em Continuar.
Em "Confirme Sua Configuração do Site", revise sua informação do local. Se forem necessárias alterações, clique em Back. Se as informações estiverem corretas, clique em Criar Site para enviar sua solicitação local do curso.
De volta ao topo
Sites de projeto
Para criar um site de projeto, continue com as seguintes etapas:
Em "Informações do Projeto", no "Título do Site:" campo, digite um título para o seu site.
Nos campos correspondentes, você tem a opção de digitar uma descrição longa e / ou curta do seu site. A descrição longa aparecerá na página inicial do seu site; a descrição curta aparecerá na lista pública de todos os sites no sistema.
Se você gostaria de usar uma imagem de ícone, fornecer o seu URL no campo "URL do Ícone:" campo.
No "Site Nome do Contato:" e "Site contato E-mail:" campos, digite o nome e endereço de email da pessoa a quem os participantes podem entrar em contato caso tenham problemas ou perguntas.
Clique em Continuar.
Em "Ferramentas", marque as caixas próximas às ferramentas que você deseja fornecer em seu site e clique em Continuar.
Arquivo Email: Forneça um apelido (ou seja, nome de usuário) para o endereço de e-mail do seu site e clique em Continuar.
Notícias: Forneça um título e URL de origem para o seu feed de notícias. Para adicionar mais feeds, utilize os Mais Ferramentas de Notícias? drop-down list, e depois clique em Continuar.
Conteúdo Web: Forneça um título e URL. Para adicionar mais links, utilize as Ferramentas Mais Conteúdo da Web lista drop-down.
Você tem a opção de re-utilizando materiais de outros sites que você possui. Escolha um dos seguintes procedimentos:
Não, obrigado.
Sim, a partir destes sites: Utilize o menu rolante para selecionar os sites com o material que você quer voltar a usar.
Clique em Continuar.
Em "Definir acesso Site", selecione Publicar site para torná-lo disponível aos participantes do site. Se você não quer publicar seu site neste momento, você pode fazê-lo mais tarde por meio de Site Info. Para instruções, veja Publicar ou remover um site.
Para indicar quem pode acessar seu site, escolher entre as seguintes opções de Acesso Global:
Privado: Somente as pessoas que você adicionar como os participantes podem ver o seu site.
Apresentar meu site no diretório, e compartilhar arquivos que eu selecionar: Qualquer pessoa com autorização para efetuar login no sistema pode ver seu site no diretório de sites, e pode acessar arquivos compartilhados.
Além disso, você pode permitir que seu site a ser acompanhado por qualquer pessoa com autorização para entrar no sistema.
Marque a caixa ao lado pode ser acompanhado por qualquer pessoa com autorização para efetuar login.
Use a lista drop-down para selecionar um papel para atribuir às pessoas que se juntam a seu site.
Clique em Continuar.
Em "Confirme Sua Configuração do Site", revise as informações sobre o seu site. Se é correto, clique em Criar Site. Se você precisar fazer alterações, clique em Back.
Seu novo site será listado em Meu Site na página Configurar Worksite.
De volta ao topo
Editando um site
Para editar um site que você criou:
Em seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
Marque a caixa próxima ao site que você deseja editar. Em seguida, na parte superior da página Configurar Worksite, clique em Editar.
Utilizando as ligações perto do topo, selecione uma opção para editar o seu site:
Para editar o site título, descrição, descrição curta, ícone URL, local nome do contato, ou site de e-mail, clique em Editar Informações do site.
Para adicionar ou remover ferramentas de seu site, clique em Editar Ferramentas.
Para alterar o estado de publicação de seu site, modificar quem pode ver ou participar de seu site, e determinar o papel padrão para pessoas que se juntam, clique em Gerenciar Acesso.
Para adicionar participantes e atribuir-lhes papéis participantes, clique em Adicionar Participantes.
Para criar uma cópia exata de seu site, que inclui apenas material postado pelo instrutor, clique em Duplicar Site.
Para adicionar material de outro site que você possui, clique em Importar do Site.
Nota: Você pode reutilizar material apenas de outros sites que você possui. Você pode combinar materiais de mais de um site.
Para importar materiais de um arquivo pré-existente, clique em Importar do arquivo.
De volta ao topo
Deletar um site
Para excluir um site que você possui:
Em seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
Marque a caixa próxima ao site que você deseja excluir. Em seguida, na parte superior da página Configurar Worksite, clique em Excluir.
Nota: A exclusão de um site remove todo o conteúdo do site e não pode ser desfeita. Ninguém mais será capaz de acessar o site excluído.
Clique em Remover.
Controlar o acesso ao seu site
Nota: Para executar estes procedimentos, você deve ser atribuído um papel com as permissões necessárias. Para determinar seu papel, siga as instruções em Papéis dos Participantes. Para um entendimento básico de papéis e permissões, consulte Permissões e papéis: Visão geral.
Você pode despublicar seu site temporariamente, o que torna indisponíveis aos participantes do site enquanto você faz alterações (por exemplo, para se preparar para o próximo semestre). Você também pode escolher se as pessoas que não são participantes do site podem encontrar e participar do seu site ou ver determinados arquivos.
Você pode fazer isso a partir de Informações do site dentro do site em questão, ou a partir de Configurar Worksite dentro de Meu Site.
Na barra de menu do seu site, clique em Site Info.
Alternativamente, a partir do menu em Meu Site, clique em Configurar Worksite, marque a caixa próxima ao site que você deseja revisar e clique em Editar.
Nota: Embora você pode marcar várias caixas, você só pode editar informações sobre um site de cada vez.
Clique em Gerenciar Acesso.
Em "Status do site", escolher se quer ou não publicar seu site.
Em "Global Access", você pode escolher entre as seguintes opções:
Escolha Privada ou Apresentar meu site no diretório, e compartilhar arquivos que eu selecionar.
Para fazer o seu curso ou site de projeto amplamente acessível, cheque pode ser acompanhado por qualquer pessoa com autorização para efetuar login em Avançar para "Papel para pessoas que se juntam site:"., Selecione o papel apropriado para todos os usuários que podem se juntar seu site.
Para obter mais informações sobre funções, consulte Papéis dos Participantes.
Clique em Atualizar.
Mudar seu status de privacidade
Nota: A funcionalidade descrita aqui pode não estar disponível por padrão em todas as instalações; contate o administrador do site para obter mais informações.
Por motivos de privacidade, você pode querer esconder o seu nome de outros participantes em seu curso ou site do projeto. Além disso, você pode não querer que eles sejam capazes de contatá-lo através do site.
Para ocultar o nome dos outros participantes e impedi-los de entrar em contato com você através do site, no site Página Inicial, em "Status de Privacidade", selecione Ocultar Me, e em seguida, clique em Atualizar.
Para alterar seu status de privacidade para visível e permitir que outros participantes para chegar até você através do site, selecione Mostre-me, e, em seguida, clique em Atualizar.
Você também pode gerenciar seu status de privacidade para todos os sites aos quais você pertence a partir de Preferências em Meu Site:
Em seu menu Meu Espaço de Trabalho, clique em Preferências.
Perto do topo, clique em Status de Privacidade.
Use a lista drop-down para escolher um local e, em seguida, selecione Ocultar Me mostre-me para definir seu status de privacidade para esse site.
Clique em Atualizar para salvar as alterações.
Alternativamente, você pode clicar em Mostrar-me em todos os sites para tornar-se visível em todos os sites aos quais você pertence, ou Esconda-me em todos os sites para esconder-se em todos os sites aos quais você pertence.
Coisas a considerar
Antes de mudar seu status de privacidade, considere o seguinte:
Os alunos que estão escondidos permanecerá visível para instrutores, proprietários do projeto e assistentes.
Os alunos que estão escondidos não será visível para outros participantes na ferramenta Roster ou "Usuários Presente" área.
Os alunos que estão escondidos não aparece na lista de destinatários para mensagens na ferramenta Mensagens.
Grupo visibilidade não é afetado pelo status de privacidade de um indivíduo.
Determinando siteID do seu site
O siteID para o seu site de curso, carteira, ou projeto é a seqüência de números e letras que aparecem imediatamente após o local / na URL do site.
Por exemplo, considere o seguinte URL:
http://sakai-deathstar.org/portal/site/836869b1-3997-4f29-803b-986be9fd270c
No exemplo acima, o siteID é 836869b1-3997-4f29-803b-986be9fd270c.
Além disso, os líderes do site podem encontrar o siteID na ferramenta de Recursos. Na barra de menu do seu site, clique em recursos e, em seguida, clique em Gerenciar / Download Múltiplos Recursos para visualizar o siteID.
Publicar ou remover um site
Nota: Para executar estes procedimentos, você deve ser atribuído um papel com as permissões necessárias. Para determinar seu papel, siga as instruções em Papéis dos Participantes. Para um entendimento básico de papéis e permissões, consulte Permissões e papéis: Visão geral.
Quando estiver pronto para os participantes para ver o seu site, você pode torná-lo disponível, ou seja, publicá-lo. Quando você publicar o seu site, ele aparece como uma nova guia no espaço de trabalho de cada participante.
Você pode fazer isso a partir de Informações do site dentro do site em questão, ou a partir de Configurar Worksite dentro de Meu Site.
Para alterar o status de publicação de seu site:
A partir Informações do Site
Na barra de menu do seu site, clique em Site Info.
Clique em Gerenciar Acesso.
Em "Status do site", ao lado de Publicar local, marque ou desmarque a caixa de publicar ou despublicar seu site, respectivamente.
Clique em Atualizar.
A partir de Configurar Worksite
A partir do seu menu Meu Espaço de Trabalho, clique em Configurar Worksite.
Marque a caixa próxima ao site que você está trabalhando com, e, em seguida, clique em Editar.
Clique em Gerenciar Acesso.
Em "Status do site", ao lado de Publicar local, marque ou desmarque a caixa de publicar ou despublicar seu site, respectivamente.
Clique em Atualizar.
Como navegar
Após uma breve visão geral dos recursos e como navegar:
Minha Área de Trabalho é o seu espaço de trabalho on-line individual. Quando você faz logon pela primeira vez, você vai para Meu Site automaticamente. Para retornar à sua área de trabalho depois de visitar outros sites, clique em Meu Site no canto superior esquerdo da tela.
Naturalmente, ePortfolio e sites de projeto aparecem como guias na parte superior da tela. Clique em uma guia para ir para o site correspondente. Sites de cursos estão associados com cursos; locais do projeto são para projetos e outras atividades de colaboração; ePortfolio fornece um lugar para coletar, organizar e apresentar o trabalho em direção a objetivos específicos.
Nota: Se você ainda não é um membro de um site, você vai ver apenas uma guia Meu Site. Para obter informações sobre como ingressar em sites, consulte Associação: Visão geral.
A barra de menu é uma coluna customizável ao longo do lado esquerdo da tela com links para cada ferramenta disponível (por exemplo, anúncios, Discussão). O número de ligações irão variar dependendo de quais as ferramentas foram escolhidos para um local. Clique no nome da ferramenta para ir para a ferramenta correspondente.
Home na barra de menu leva você para a página inicial do site que você está. As home pages pode conter uma lista de anúncios recentes, itens recentes de discussão e recursos selecionados.
Quando você estiver usando uma ferramenta, o botão de reset
O botão reset
, Localizado à esquerda do nome da ferramenta, o leva de volta à primeira página dessa ferramenta e redefine a ferramenta.
Você pode obter ajuda clicando em Ajuda na barra de menu. Você também pode obter ajuda contextual clicando no ponto de interrogação azul
Socorro
no canto superior direito de cada página.
O botão reset
O botão reset aparece à esquerda do nome da ferramenta que você está usando e se parece com duas setas apontando em direções opostas:
botão de reset
O botão reset retorna ao ponto de partida a ferramenta que você está usando, como se você tivesse digitado a ferramenta em uma nova sessão.
Nota: Se você retornar ao ponto de partida da ferramenta antes de salvar (por exemplo, antes de escolher a acrescentar, post, salvar como rascunho, etc.), você perderá todas as informações que você digitou.
Mostrando, ocultando, e ordenando curso e de projeto locais
Nota: Quando você log in, seu curso e de projeto sites são exibidos como guias na parte superior da tela. Para entrar num site, clique na guia. Se você pertencer a mais sites do que podem ser exibidos como guias, esses sites serão acessíveis a partir da - lista drop-down - mais.
Você pode optar por ocultar locais (por exemplo, sites de cursos de semestres anteriores), ou reordená-los (ou seja, escolher quais sites para exibir em abas), usando a ferramenta Preferências em Meu Site.
A partir do seu menu Meu Espaço de Trabalho, clique em Preferências.
Clique em Personalizar Tabs.
Em "Personalizar Tabs", as suas páginas visíveis no momento estão listados na caixa "Meus Locais do Active", à esquerda. À direita, a caixa "Meus Sites escondido" lista os sites que não aparecem em seu - mais - guia. Use as setas direita e esquerda (<e>) para mover sites de uma caixa para a outra. Clique nos botões de seta dupla (<< e >>) para mover todos os sites de uma caixa para a outra.
Nota: Se você ocultar a guia para um site, você ainda pode acessar o site a partir de Configurar Worksite em Meu Site.
Para determinar a ordem em que as guias são exibidas, clique em um site na seção "Sites visíveis em Abas" caixa, e em seguida, use as setas para cima e para baixo para alterar a ordem.
Nota: O seu guia Meu Site sempre aparecerá à esquerda dos seus outros sites.
Quando terminar, clique em Preferências de atualização.
Dica: Se você tem um grande número de sítios ativos, pode ser mais rápido para mover determinados sites para o topo da sua lista, onde serão exibidos como guias, utilizando o seguinte método, em vez de para cima e para baixo setas:
Na página Personalizar Guias, clique em >> para mover todos os seus sites ativos para os "Sites que não são visíveis em Abas" caixa.
Selecione os cursos que você deseja que apareça como guias. (Para selecionar mais de um curso, mantenha pressionada a tecla Ctrl no Windows ou em um Mac Cmd enquanto clica.)
Clique <para mover os cursos selecionados de volta para os "Sites visíveis em Abas" caixa.
Se desejar, clique em << para mover todo o resto de seus locais de volta para os "Sites visíveis em Abas" caixa, onde eles vão aparecer após a sites que você acabou de se mudar. Você também pode repetir os passos 2 e 3 para mover de volta apenas alguns de seus sites.
Quando terminar, clique em Preferências de atualização.