Arena RPG Maker
Olá, visitante!
Seja bem-vindo ao fórum Arena RPG Maker, caso queira aprender sobre criação de jogos, está no fórum certo. Esperamos que possa aprender tanto quanto possa nos ensinar aqui.

Atenciosamente,
Equipe Arena RPG Maker.
Arena RPG Maker

Estamos de volta o/ ... Ou não.Eu amo a -Dark
Doações para o fórum abertas, clique aqui e saiba mais.
Últimos assuntos
» Pokémon Genesis Online! (PGO)
Qua 05 Jul 2017, 17:08 por Lexar

» Tileset Converter to MV
Sex 12 Maio 2017, 13:07 por Douggi

» [Dúvida] Como tirar a porcentagem de esquiva
Ter 09 Maio 2017, 22:15 por Neil Flame Runner

» Pack Resources, Sprites e etc
Qua 23 Dez 2015, 09:30 por raydengv

» Download RPG Maker 2003 + RTP em português
Ter 22 Dez 2015, 08:14 por ::KimMax::

» Fantasy Art Online
Dom 18 Out 2015, 16:42 por daviih123

» Você vai ter medo do Nerve gear?
Sab 25 Jul 2015, 16:02 por Kirito-kun

» O Barato é louco
Sab 27 Jun 2015, 15:26 por Halt

» Download RPG Maker 2000 + RTP em português
Qui 21 Maio 2015, 19:28 por Wismael

» Divulgando meu grupo e página do Facebook
Ter 19 Maio 2015, 13:06 por Halt


Você não está conectado. Conecte-se ou registre-se

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 Criando jogos em BYOND - Capítulo 4 em Seg 12 Nov 2012, 15:46

Halt

avatar
Administrador
Administrador
Va. Login() e Logout() (Procs internas)

Quando um programa é ordenado a fazer um procedimento, o procedimento em questão é chamado. Login() é chamado automaticamente quando um player entra no jogo, e Logout() quando o player sai do jogo. Quando queremos modificar essas duas, nós colocamos o código no prototype para mobs. Aqui é código para mobs agora:

mob
+icon = 'pessoa.dmi'
+Login()
++icon_state = gender
++..()
+verb
++Falar(msg as text)
+++world << "[usr] diz:[msg]"


O comando ..() diz para ir chamar a atual proc interna Login(). Isto é muito, muito importante. A proc interna Login() é o que põe você no mapa. É chamada de procs pais.(Você nunca perguntou, “Mãe, como eu fui entregue?”)

O Login que NÓS codificamos é uma criança, e não sabe tudo o que seus pais sabem. “Então dizemos para ele perguntar para o seus pais o que fazer, com essa linha “..()”

Agora, compile e rode! Você será um boneco que pode dizer coisas E mover por pelo mapa através das teclas direcionais. Agora você tem um Bate-papo gráfico. A vida não é bela? Você deve agora salvar tudo ou compilar de novo.

VI. Mas eu não quero uma sala de Bate-papo!! (declarando variáveis)

As características de mobs e turfs que utilizamos como (icon e gender) são chamadas de variáveis internas. Uma variável é um lugar onde um tidbit de dados é guardado. É chamado de variável porque nós podemos modificar-la quando desejarmos, então a informação contida pode variar. A lista de referencias do DM já explica um pouco mais sobre variáveis internas.

Mas hoje nós queremos fazer uma variável guardar uma data sobre a vida do jogador, ou HP, não existem variáveis internas para isso, então temos que criar nossa própria variável. Coloque essas linhas:

+var
++HP = 30 //Declara uma nova variável chamada HP, com o valor 30

...dentro de mob, abaixo da linha “icon”.

Nós declaramos uma variável e assimilamos um valor para ela. Quando nós declaramos uma variável, nós deixamos o programa saber que nós fizemos uma nova que não é uma variável interna. Nós fazemos isso colocando abaixo de “var”. Quando assimilamos um valor, nós dizemos que dados nós desejamos que a variável carregue. Neste caso é o numero 30.

VIa. Matando coisas... (mais procs internas)

Se nós quisermos sair por ai atacando coisas, precisamos de um verb de ataque. Coloque isso abaixo de “verb” e antes de “Falar”:

+Atacar(mob/M as mob in oview(1)) //Atacar um mob a distancia de um tile
++usr<< “Você atacou [M]!” //manda essa mensagem para o usr
++oview()<<”[usr] atacou [M]!” //manda essa mensagem para os outros
++var/dano = rand(1,10) //Assimila um valor aleatório para variável
++world << “[dano] dano!” // diz ao mundo o dano sofrido
++M.HP -= dano //Tira o dano no HP de M


De uma olhada nas comentários e veja se você consegue descobrir algo por você mesmo. Não precisa ficar preocupado, Vou explicar tudo detalhadamente.


+Atacar(mob/M as mob in oview(1)) //Atacar um mob a distancia de um tile


Isto é muito similiar ao verb Falar. O player que esta fazendo o ataque tem que pegar um mob perto dele, que vai ser passado como M. De novo, especificamos que deve ser um mob.

Próximo, oview(1) é a distancia que ele pode atacar coisas. A parte “view(vista)” é auto-explicatoria; o “o” significa outside(fora) ou other(outro), ou possivelmente, Okefenonkee, isso faz com que o usr não mire em si mesmo. O usr só estará capaz de atingir os alvos com um tile de distancia dele.

++usr<< “Você atacou [M]!” //manda essa mensagem para o usr

Na linha de cima, nós fizemos uma mensagem de ataque para o usr.

++oview()<<”[usr] atacou [M]!” //manda essa mensagem para os outros

Nós não colocamos nenhum numero nos parênteses desse oview(), então a mensagem será enviada para todos que o usuário pode ver... exceto, é claro, o próprio usr.

++var/dano = rand(1,10) //Assimila um valor aleatório para variável

Nós declaramos uma nova variável acima, chamada dano.

Nós assimilamos um valor para nossa variável, mas não como fizemos com o HP. Em vez de assimilar um numero, nós chamamos a proc interna, rand(). Os argumentos que passamos dentro de rand() determinam a variação de números que podemos pegar. Neste caso, um inteiro entre 1 e 10 somente.

Toda vez que essa linha é alcançada no seu programa, rand() vai ser chamada, e ela passara o numero que será pego. Isto se chama retorno. Retornando o numero que requisitamos. O numero retornado será assimilado ao valor de dano.

++world << “[dano] dano!” // diz ao mundo o dano sofrido

Aqui mostramos o dano, como uma expressão embutida. Do mesmo jeito que já fizemos com usr, msg e M.

++M.HP -= dano //Tira o dano no HP de M

Aqui é onde realmente o dano é feito. M.HP significa “O HP de M”. O operador -= (o sinal de menos e de igual) significa que a coisa contida à esquerda é igual ela mesma MENOS o valor da outra coisa da direita. Então, o HP de M é igual como antes, menos o dano.

Créditos:
Blake pelo tutorial
-KiRa por postar aqui na ARM


__________________________________________
[Você precisa estar registrado e conectado para ver este link.]
Ei Convidado, sim você mesmo! Ajude o fórum à crescer postando coisas úteis, dê sugestões para melhorar-mos e divulgue o fórum.

Step inside, see the devil in I.

Gifts-
[Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.] - [Você precisa estar registrado e conectado para ver este link.]

Zerei a internet
Ver perfil do usuário http://arenarpgmaker.forumeiros.com

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum