Qual o nome considerado pela engine da Bullet
Ir à página 1, 2, 3, 4  Próximo
 
   3D Game Builder - Índice » Programação
Qual o nome considerado pela engine da Bullet
Autor Mensagem
kleiton157
Usuário
Usuário


Registrado: 06/05/11
Mensagens: 1170
Localização: Na cáducarai

Qual o nome considerado pela engine da Bullet
sabemos que tem o objeto chamado bullet, ele sai da arma, em formato circular, como uma bala...


mais se eu colocar qualquer comando para agir sobre a bullet, da erro, dizendo que ela não existe...


então qual seria o nome dela quando atiramos?



_________________
________________________________________
- É nescessário ver além do que os olhos mostram
Qua Fev 22, 2012 12:11 am Exibir perfil de usuários
Edirlei
Administrador
Administrador


Registrado: 15/03/08
Mensagens: 760

Elas são criadas e destruídas automaticamente quando atingem uma determinada distancia. O nome é incremental, o primeiro tiro terá o nome de Bullet1, o segundo Bullet2, Bullet3...

Se você quer verificar se elas atingiram algo, você deve usar o evento OnCollision do mapa e verificar se o objeto que esta colidindo tem a string "Bullet" no seu nome.
Qua Fev 22, 2012 4:22 pm Exibir perfil de usuários
kleiton157
Usuário
Usuário


Registrado: 06/05/11
Mensagens: 1170
Localização: Na cáducarai

pode me dizer como fazer isso?

_________________
________________________________________
- É nescessário ver além do que os olhos mostram
Qua Fev 22, 2012 9:32 pm Exibir perfil de usuários
Edirlei
Administrador
Administrador


Registrado: 15/03/08
Mensagens: 760

Código:
if Copy(GetCollidedObject1(), 0, 6) = 'Bullet' then
begin                                       
  if (GetCollidedObject2 <> 'Inimigo') then
  begin
    ...
  end;
end;
if Copy(GetCollidedObject2(), 0, 6) = 'Bullet' then
begin
  if (GetCollidedObject1 <> 'Inimigo') then
  begin
    ...
  end;
end;

Qua Fev 22, 2012 10:37 pm Exibir perfil de usuários
kleiton157
Usuário
Usuário


Registrado: 06/05/11
Mensagens: 1170
Localização: Na cáducarai

sim, até ai tudo ok, mais eu queria que na hora da colisão, um objeto tomasse sua posição, seria o furo da bala, então ficou assim

Citação:
if Copy(GetCollidedObject1(), 0, 6) = 'Bullet' then
begin
if (GetCollidedObject2 <> 'Inimigo') then
begin
setobjectposition('furo',GetobjectpositionX('Bullet'),GetobjectpositionY('Bullet'),GetobjectpositionZ('Bullet'))
end;
end;
if Copy(GetCollidedObject2(), 0, 6) = 'Bullet' then
begin
if (GetCollidedObject1 <> 'Inimigo') then
begin
setobjectposition('furo',GetobjectpositionX('Bullet'),GetobjectpositionY('Bullet'),GetobjectpositionZ('Bullet'))
end;
end;


mais fala que o Bullet não existe, o que eu deveria fazer nesse caso?

_________________
________________________________________
- É nescessário ver além do que os olhos mostram
Qua Fev 22, 2012 10:44 pm Exibir perfil de usuários
Edirlei
Administrador
Administrador


Registrado: 15/03/08
Mensagens: 760

kleiton157 escreveu:
mais fala que o Bullet não existe, o que eu deveria fazer nesse caso?


O "Bullet" não existe mesmo... Você tem que pegar o nome exato da bullet que colidiu. Algo assim:

Código:
if Copy(GetCollidedObject1(), 0, 6) = 'Bullet' then
begin
  if (GetCollidedObject2 <> 'Inimigo') then
  begin
    setobjectposition('furo',GetobjectpositionX(GetCollidedObject1()),GetobjectpositionY(GetCollidedObject1()),GetobjectpositionZ(GetCollidedObject1());
  end;
end;
if Copy(GetCollidedObject2(), 0, 6) = 'Bullet' then
begin
  if (GetCollidedObject1 <> 'Inimigo') then
  begin
    setobjectposition('furo',GetobjectpositionX(GetCollidedObject2()),GetobjectpositionY(GetCollidedObject2()),GetobjectpositionZ(GetCollidedObject2());
  end;
end;



Qua Fev 22, 2012 10:52 pm Exibir perfil de usuários
kleiton157
Usuário
Usuário


Registrado: 06/05/11
Mensagens: 1170
Localização: Na cáducarai

cara, muito bom, valeu, agora só para completar, teria como criar esses tais furos, porque só tem um no mapa...


tipo assim, quando colidir la, criar um cubo com a textura do furo da bala?

_________________
________________________________________
- É nescessário ver além do que os olhos mostram
Qua Fev 22, 2012 10:59 pm Exibir perfil de usuários
Edirlei
Administrador
Administrador


Registrado: 15/03/08
Mensagens: 760

Use o comando CreateCube:

CreateCube(Name : String; PositionX : Float; PositionY : Float; PositionZ : Float; ScaleX : Float; ScaleY : Float; ScaleZ : Float; RefObjectName : String = 'Scene');


Qua Fev 22, 2012 11:02 pm Exibir perfil de usuários
   3D Game Builder - Índice » Programação Ir à página 1, 2, 3, 4  Próximo
Página 1 de 4