Batalha
Ir à página 1, 2  Próximo
 
   3D Game Builder - Índice » Programação
Batalha
Autor Mensagem
t7Bruno
Novato
Novato


Registrado: 10/03/09
Mensagens: 38
Localização: Ourinhos

Batalha
Oi pessoal eu tava eu comecei a ver o tutorial aqui em casa mesmo dai eu comesai a fazer um batalha
so para ver Tipo eu crie um codico para o meu autor tem vida e guando ela chegar no 0 eli usa uma animasao
de morte mais ai qe ta o poblema eu temtei fazer o md2 atakaca o meu autor principal mais eli nao saiu certo
eu presisava saber como fazer um codico qe dese -1 ou mais da vida no caso o codico de vida qe eu criei


So quero uma ajuda com isso e eu acho e fazer um batalha vai ajuda muita jente novo a sim como eu
Desculpe qualquer erro de portugues Wink


Qui Mar 12, 2009 9:00 pm Exibir perfil de usuários
Mililo
Usuário
Usuário


Registrado: 05/12/08
Mensagens: 366
Localização: Santo Antônio de Pádua / RJ

Tenta melhorar esse português cara Confused , quanto mais entendermos sua dúvida melhor podemos te ajudar.

Mas você disse que já fez um código e não deu certo então acho que o melhor jeito de te ajudar é postando seu código aqui, daí eu posso tentar consertar para você, se o código for grande e não quiser posta-lo todo pode postar só a parte necessária(a que deu errado), fica melhor até para eu entender melhor o que você quer.
Obs: quando for postar o código usa [.code][./code] sem o ponto, claro.
Qui Mar 12, 2009 10:30 pm Exibir perfil de usuários
t7Bruno
Novato
Novato


Registrado: 10/03/09
Mensagens: 38
Localização: Ourinhos

Ok cara xD
Criando vida no meu autor
Em Mapa>Events>OnCreate
Código:
WriteGlobalVar('Health', 100);

Você tem que ter pelo menos um Objeto do tipo GUILayout>Label no mapa, como exemplo esse objeto se chamará 'Vida'
Em Mapa>Events>OnLoop
Código:
If ReadGlobalVar('Health') > 0 then
    SetLabelText('Vida', ReadGlobalVar('Health'));

If ReadGlobalVar('Health') = 0 then
    DisablePlayerMove;
    SetLabelText('Vida', 'Moreu');
    SetObjectAnimation('Player', 'death1']');
    SetObjectAnimationMode('Player', 'PlayOnce');

esse codico tem aqui no forun mesmo mais tem um erro nesse segundo codico tipo eu fis uma comtagen regresiva de 20 segundo para vida deli chega no 0 entao eli morre coreto
DEPOIS PASSO O DE ATAKE QE DEU UM ERRO TB
mais a animasao deli fica bugado tipo a sim eli guando eli morre a animasao e usada so qe nao compreta porqe a animasao e usada falias veses sem para da para andar e tudo mais com uma animasao de morte pela metade temta fazer ai para você da uma alhada
Qui Mar 12, 2009 11:22 pm Exibir perfil de usuários
Mililo
Usuário
Usuário


Registrado: 05/12/08
Mensagens: 366
Localização: Santo Antônio de Pádua / RJ

O principal erro no seu código é que o If tá sem begin e end, if's só não precisam de begin e end quando são executados em apenas uma linha(quando digo linha quero dizer a quantidade de código até encontrar o ;) como no primeiro caso:
Código:
If ReadGlobalVar('Health') > 0 then
    SetLabelText('Vida', ReadGlobalVar('Health'));

Se for mais de uma linha precisa de begin e end, como no segundo caso(em que você não colocou) mas esse não é o único erro, tem outros errinhos que consertei e código do Mainloop ficou assim:
Código:
If ReadGlobalVar('Health') <= 0 then
begin
    DisablePlayerMove;
    SetLabelText('Vida', 'Morreu');
    if GetObjectAnimation('MainActor')<>'death1' then
    SetObjectAnimation('MainActor', 'death1');
    SetObjectAnimationMode('MainActor', 'PlayOnce');
end;

Pronto, agora deve estar 100% funcional, se você olhar bem vai perceber os outros errinhos que consertei.

Obs: Pra testar, em vez de contagem regressiva pode usar também um iskeypress, eu testei assim:
Código:
if iskeypress(90) then //Tecla Z
writeglobalvar('Health', 0);

Sex Mar 13, 2009 7:37 pm Exibir perfil de usuários
t7Bruno
Novato
Novato


Registrado: 10/03/09
Mensagens: 38
Localização: Ourinhos

Oi cara brigado xD
Mais tipo a sim o label agora nao ta tipo aparecendo a vida no Obijeto Vida
ve se ta certo isso o
Mapa>Events>OnCreate
Código:
If ReadGlobalVar('Health') > 0 then
    SetLabelText('Vida', ReadGlobalVar('Health'));

so com isso no caso deveria aparecer a vida no obijeto nao é aqui nao ta cara
AAAA e brigado você ajudou muito aqui cara tipo na hoje do cara morer
Sex Mar 13, 2009 10:50 pm Exibir perfil de usuários
t7Bruno
Novato
Novato


Registrado: 10/03/09
Mensagens: 38
Localização: Ourinhos

Acho qe tem um erro aqui o

SetLabelText('Vida', ReadGlobalVar('Health'));


Sex Mar 13, 2009 10:54 pm Exibir perfil de usuários
Mililo
Usuário
Usuário


Registrado: 05/12/08
Mensagens: 366
Localização: Santo Antônio de Pádua / RJ

Não é no oncreate, é no mainloop que tem colocar.
E acho que não tem erro nenhum aí não, a não ser que o nome do seu objeto não seja 'Vida'.
Sex Mar 13, 2009 11:08 pm Exibir perfil de usuários
t7Bruno
Novato
Novato


Registrado: 10/03/09
Mensagens: 38
Localização: Ourinhos

oi cara tb nao deu nao


Sex Mar 13, 2009 11:12 pm Exibir perfil de usuários
   3D Game Builder - Índice » Programação Ir à página 1, 2  Próximo
Página 1 de 2