|
|
|
Autor |
Mensagem |
kleiton157
Usuário
Registrado: 06/05/11 Mensagens: 1170 Localização: Na cáducarai |
|
Tutorial - Como dirigir um carro no 3D Game Builder |
|
Aqui vai um tutorial pra que dizia que não tem como fazer um GTA no 3D Game Builder:
Parte 1:
Usaremos 3 objetos, um par de rodas traseiras que chamaremos de "rodat"
um par de rodas dianteiras que chamaremos de "rodad"
uma carroceria de um carro que chamaremos de carroceria...
Agora retiraremos a colisão de todos os objetos...
para fazer um game mais evoluído, como abrir portas e Capo você pode criar mais objetos e seguir esse mesmo conceito
Parte 2:
no oncreate coloque isso:
writeglobalvar('aceleracao',0);
Parte 3:
agora use essa script no onloop para juntar as partes no 3D Game Builder;
setobjecthierarchicalparent('rodat','Player');
setobjecthierarchicalparent('rodad','Player');
setobjecthierarchicalparent('carroceria','Player');
setobjectposition('carroceria',0,0,0);
setobjectposition('rodat',0,-0.3,0.6);
setobjectposition('rodad',0,-0.3,-0.6);
rode o jogo para ter certeza que esta tudo bem,
se estiver continue o tutorial...
agora aqui esta o grande truque:
cole isso na ultima linha do onloop:
if iskeypress(3 then
begin
writeglobalvar('aceleracao',readglobalvar('aceleracao')-0.2);
SetObjectPitchAngle('rodad', GetObjectPitchAngle('rodad')+3);
SetObjectPitchAngle('rodat', GetObjectPitchAngle('rodat')+3);
end;
if iskeypress(40) then
begin
writeglobalvar('aceleracao',readglobalvar('aceleracao')+0.3);
SetObjectPitchAngle('rodat', GetObjectPitchAngle('rodat')-1);
SetObjectPitchAngle('rodad', GetObjectPitchAngle('rodad')-1);
end;
if readglobalvar('aceleracao') < 0 then
begin
if (iskeypress(3=false) then
begin
writeglobalvar('aceleracao',readglobalvar('aceleracao')+1);
end
end;
applyforce('Player',0,0,0+readglobalvar('aceleracao'));
if getobjectturnangle('rodad') < 20 then
begin
if iskeypress(37) then
begin
SetObjectPitchAngle('rodad',0);
SetObjectturnAngle('rodad', GetObjectturnAngle('rodad')+1);
end;
end;
if getobjectturnangle('rodad') > -20 then
begin
if iskeypress(39) then
begin
SetObjectPitchAngle('rodad',0);
SetObjectturnAngle('rodad', GetObjectturnAngle('rodad')-1);
end
end;
if readglobalvar('aceleracao') < 0 then
begin
if iskeypress(37) then
begin
SetObjectturnAngle('Player', GetObjectturnAngle('Player')+0.5);
end
end;
if readglobalvar('aceleracao') < 0 then
begin
if iskeypress(39) then
begin
SetObjectturnAngle('Player', GetObjectturnAngle('Player')-0.5);
end
end;
Aqui em cima esta toda a parte que faz os movimentos do carro, você pode basear-se nisso para fazer abrir portas...
By Kleiton Diones
FIM
é isso ae galera, ta tudo ae, pode copiar em outro lugar mais não tire os creditos
_________________ ________________________________________
- É nescessário ver além do que os olhos mostram |
|
Qua Fev 15, 2012 3:02 pm |
|
|
StenioAguiar
Usuário
Registrado: 09/06/10 Mensagens: 88
|
|
|
|
Obrigado pelo tutorial.
obs: pessoal do forum onde tiver " " vocês colocam "8 )" sem o espaço entre o 8 e o parenteses
Abraço a todos
|
|
Qui Fev 16, 2012 1:38 am |
|
|
welgomes
Usuário
Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital |
|
|
|
Sugiro quando for postar algum código, selecione-o e depois aperte o botão "Code"
Ficaria assim:
| | if iskeypress(38) then |
Percebam que desta forma os caracteres não viram gif de emoções.
|
|
Qui Fev 16, 2012 10:57 am |
|
|
kleiton157
Usuário
Registrado: 06/05/11 Mensagens: 1170 Localização: Na cáducarai |
|
|
|
há....
brigado pela dica, eu nem sabia disso kkk'
_________________ ________________________________________
- É nescessário ver além do que os olhos mostram |
|
Qui Fev 16, 2012 3:00 pm |
|
|
|
|
|
|
|
|