Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
tem como criar um jogo onde o controle e o joystick???
+3
Spadan_RTicou
Joton
jvcguerreiro
7 participantes
Página 1 de 1
tem como criar um jogo onde o controle e o joystick???
Olá galera,bom,hoje queria saber se tem como criar um jogo aonde o controle e o joystick do playstation 2.
TEM COMO???
se tiver,me enssinem!!!!!
espero uma resposta!!!
jvcguerreiro
TEM COMO???
se tiver,me enssinem!!!!!
espero uma resposta!!!
jvcguerreiro
jvcguerreiro- Data de inscrição : 09/09/2010
Reputação : 1
Número de Mensagens : 91
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: tem como criar um jogo onde o controle e o joystick???
Cara sei uma forma onde se emula o teclado no controle de playstation, você precisa de um adaptador como esse:
E usar o "JoytoKey" esse tutorial do alexFc pode te ajudar te tu quer fazer isso:
https://gmbr.forumeiros.com/t2700-emulando-teclado-no-joystick?highlight=jogar+com+joystick
Esse é o modo mais fácil de jogar jogos feitos em Game maker, o modo mais difícil e criar um sistema embutido que aceite controle no teu jogo, e isso ainda não sei fazer.
E usar o "JoytoKey" esse tutorial do alexFc pode te ajudar te tu quer fazer isso:
https://gmbr.forumeiros.com/t2700-emulando-teclado-no-joystick?highlight=jogar+com+joystick
Esse é o modo mais fácil de jogar jogos feitos em Game maker, o modo mais difícil e criar um sistema embutido que aceite controle no teu jogo, e isso ainda não sei fazer.
Última edição por Joton em Sáb 03 Set 2011, 14:08, editado 1 vez(es) (Motivo da edição : malditas letras ninjas ¬¬)
Re: tem como criar um jogo onde o controle e o joystick???
sim tem como mais não sei quais são os scripts
Spadan_RTicou- Data de inscrição : 13/11/2010
Reputação : 1
Número de Mensagens : 71
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: tem como criar um jogo onde o controle e o joystick???
Só se houver alguma dll. O game maker, puro e simples, não faz isso.
É o que dá responder sem ler o manual... Olha, parece que existem algumas funções pra isso sim, mas nunca tentei usar nada do tipo, então não tenho como responder com certeza, mas pelo número de eixos, ele DEVE aceitar dois direcionais.
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Re: tem como criar um jogo onde o controle e o joystick???
Eu já testei as funções do GM para joystick, funcionam direitinho. As funções joystick_...pos() retornam a posição dos analógicos como um valor entre -1 e 1 (com casas decimais), ou seja, captam se eles estão sendo mais ou menos empurrados. Você tem que testar para descobrir qual função está ligada a qual eixo de qual analógico e qual é o número de cada botão.
Leia, no help do gm, a seção "The Joystick" para conhecer as funções.
Leia, no help do gm, a seção "The Joystick" para conhecer as funções.
Igor KinGamer- Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: tem como criar um jogo onde o controle e o joystick???
Se você não tiver um controle como o Joton falou...
...pode comprar um desse...
.
Um como esse aqui em cima me custou R$35,00. Ele é próprio pra PC e Playstation.
Dái você pode desenvolver seus próprios códigos ou usar o gml do Jiraya...
Valeu?
...pode comprar um desse...
.
Um como esse aqui em cima me custou R$35,00. Ele é próprio pra PC e Playstation.
Dái você pode desenvolver seus próprios códigos ou usar o gml do Jiraya...
- Código:
#define init_keys
// >> Sistema de controle por teclado e joystick << //
// init_keys()
globalvar joy,tkey,skey,akey,ajoy,key,pkey,rkey,_pjoy_;
for (i = 0; i <= 13; i += 1) _pjoy_[i] = false;
skey = true; // ativar teclas e joystick
// Definir teclas
tkey = true; // controle por teclado ativado
var n;
n = 4; // número mínimo de botões que o joystick deve ter
akey[up] = ini_read_real('KEYS',string(up),ord('W'));
akey[down] = ini_read_real('KEYS',string(down),ord('S'));
akey[left] = ini_read_real('KEYS',string(left),ord('A'));
akey[right] = ini_read_real('KEYS',string(right),ord('D'));
akey[acao1] = ini_read_real('KEYS',string(acao1),ord('N'));
akey[acao2] = ini_read_real('KEYS',string(acao2),ord('M'));
akey[acao3] = ini_read_real('KEYS',string(acao3),ord('K'));
akey[acao4] = ini_read_real('KEYS',string(acao4),ord('J'));
akey[enter] = ini_read_real('KEYS',string(enter),vk_enter);
akey[select] = ini_read_real('KEYS',string(select),vk_space);
akey[l1] = ini_read_real('KEYS',string(l1),ord('Q'));
akey[r1] = ini_read_real('KEYS',string(r1),ord('E'));
akey[l2] = ini_read_real('KEYS',string(l2),ord('Z'));
akey[r2] = ini_read_real('KEYS',string(r2),ord('X'));
// Definir joystick
joy = (joystick_exists(1) && joystick_buttons(1) >= n);
ajoy[up] = ini_read_real('JOYSTICK',string(up),-4);
ajoy[down] = ini_read_real('JOYSTICK',string(down),-3);
ajoy[left] = ini_read_real('JOYSTICK',string(left),-2);
ajoy[right] = ini_read_real('JOYSTICK',string(right),-1);
ajoy[acao1] = ini_read_real('JOYSTICK',string(acao1),4);
ajoy[acao2] = ini_read_real('JOYSTICK',string(acao2),3);
ajoy[acao3] = ini_read_real('JOYSTICK',string(acao3),2);
ajoy[acao4] = ini_read_real('JOYSTICK',string(acao4),1);
ajoy[enter] = ini_read_real('JOYSTICK',string(enter),10);
ajoy[select] = ini_read_real('JOYSTICK',string(select),9);
ajoy[l1] = ini_read_real('JOYSTICK',string(l1),5);
ajoy[r1] = ini_read_real('JOYSTICK',string(r1),6);
ajoy[l2] = ini_read_real('JOYSTICK',string(l2),7);
ajoy[r2] = ini_read_real('JOYSTICK',string(r2),8);
key[up] = false;
key[down] = false;
key[left] = false;
key[right] = false;
key[acao1] = false;
key[acao2] = false;
key[acao3] = false;
key[acao4] = false;
key[enter] = false;
key[select] = false;
key[l1] = false;
key[r1] = false;
key[l2] = false;
key[r2] = false;
pkey[up] = false;
pkey[down] = false;
pkey[left] = false;
pkey[right] = false;
pkey[acao1] = false;
pkey[acao2] = false;
pkey[acao3] = false;
pkey[acao4] = false;
pkey[enter] = false;
pkey[select] = false;
pkey[l1] = false;
pkey[r1] = false;
pkey[l2] = false;
pkey[r2] = false;
rkey[up] = false;
rkey[down] = false;
rkey[left] = false;
rkey[right] = false;
rkey[acao1] = false;
rkey[acao2] = false;
rkey[acao3] = false;
rkey[acao4] = false;
rkey[enter] = false;
rkey[select] = false;
rkey[l1] = false;
rkey[r1] = false;
rkey[l2] = false;
rkey[r2] = false;
#define check_keys
// Checar teclas
// check_keys();
if skey
{
for (i = 0; i <= 13; i += 1)
{
key[i] = (keyboard_check(akey[i]) && tkey) || (key_check_dir(akey[i]) && tkey) || joystick_check(1,i);
pkey[i] = (keyboard_check_pressed(akey[i]) && tkey) || (key_check_dir_press(akey[i]) && tkey) || joystick_check_press(1,i);
rkey[i] = (keyboard_check_released(akey[i]) && tkey);
}
}
#define joystick_get
// Retorna botão pressionado no joystick
// joystick_get(id)
if joy
{
var i;
for (i = 1; i <= joystick_buttons(argument0); i += 1)
{
if joystick_check_button(argument0,i) return i;
}
}
return false;
#define joystick_check
// Retorna se o botão especificado foi pressionado
// joystick_check(id,botao)
if (joy)
{
if argument1 != up && argument1 != down && argument1 != left && argument1 != right
{
return joystick_check_button(argument0,ajoy[argument1]);
}
else
{
return joystick_check_dir(1,argument1);
}
}
return false;
#define joystick_check_press
// Retorna se o botão especificado foi pressionado pela primeira vez
// joystick_check_press(id,botao)
if (joy)
{
var g;
if argument1 >= 4
{
g = joystick_check_button(argument0,ajoy[argument1]);
if !g _pjoy_[argument1] = false;
if g && _pjoy_[argument1] g = false;
if g && !_pjoy_[argument1] _pjoy_[argument1] = true;
return g;
}
else
{
g = joystick_check_dir(argument0,argument1);
if !g _pjoy_[argument1] = false;
if g && _pjoy_[argument1] g = false;
if g && !_pjoy_[argument1] _pjoy_[argument1] = true;
return g;
}
}
return false;
#define joystick_check_dir
// Checar anologico e direcionais como um só
// joystick_check_dir(id,direcao)
if joy
{
/*if argument1 = ajoy[up] argument1 = up;
if argument1 = ajoy[down] argument1 = down;
if argument1 = ajoy[left] argument1 = left;
if argument1 = ajoy[right] argument1 = right;*/
switch (argument1)
{
case up:
if joystick_direction(argument0) = vk_numpad8 || joystick_direction(argument0) = vk_numpad7 || joystick_direction(argument0) = vk_numpad9 || joystick_ypos(1) = -1
{
//keyboard_key_press(vk_up);
return true;
}
break;
case down:
if joystick_direction(argument0) = vk_numpad2 || joystick_direction(argument0) = vk_numpad1 || joystick_direction(argument0) = vk_numpad3 || joystick_ypos(1) = 1
{
//keyboard_key_press(vk_down);
return true;
}
break;
case left:
if joystick_direction(argument0) = vk_numpad4 || joystick_direction(argument0) = vk_numpad7 || joystick_direction(argument0) = vk_numpad1 || joystick_xpos(1) = -1
{
//keyboard_key_press(vk_left);
return true;
}
break;
case right:
if joystick_direction(argument0) = vk_numpad6 || joystick_direction(argument0) = vk_numpad9 || joystick_direction(argument0) = vk_numpad3 || joystick_xpos(1) = 1
{
//keyboard_key_press(vk_right);
return true;
}
break;
}
}
return false;
#define key_check_dir
// Checar teclas direcionais
// key_check_dir(dir)
switch (argument0)
{
case akey[up]:
return keyboard_check(vk_up)
break;
case akey[down]:
return keyboard_check(vk_down)
break;
case akey[left]:
return keyboard_check(vk_left)
break;
case akey[right]:
return keyboard_check(vk_right)
break;
}
return false;
#define key_check_dir_press
// Checar teclas direcionais precionadas pela primeira vez
// key_check_dir_press(dir)
switch (argument0)
{
case akey[up]:
return keyboard_check_pressed(vk_up)
break;
case akey[down]:
return keyboard_check_pressed(vk_down)
break;
case akey[left]:
return keyboard_check_pressed(vk_left)
break;
case akey[right]:
return keyboard_check_pressed(vk_right)
break;
}
return false;
#define draw_key_debug
// draw_key_debug(x,y)
draw_set_halign(fa_right);
t = view_xview+view_wview-argument0;
ty = view_yview+argument1;
draw_text(t,ty+20*0,'pkey[up]: '+string(pkey[up]));
draw_text(t,ty+20*1,'pkey[down]: '+string(pkey[down]));
draw_text(t,ty+20*2,'pkey[left]: '+string(pkey[left]));
draw_text(t,ty+20*3,'pkey[right]: '+string(pkey[right]));
draw_text(t,ty+20*4,'pkey[acao1]: '+string(pkey[acao1]));
draw_text(t,ty+20*5,'pkey[acao2]: '+string(pkey[acao2]));
draw_text(t,ty+20*6,'pkey[acao3]: '+string(pkey[acao3]));
draw_text(t,ty+20*7,'pkey[acao4]: '+string(pkey[acao4]));
draw_text(t,ty+20*8,'pkey[l1]: '+string(pkey[l1]));
draw_text(t,ty+20*9,'pkey[r1]: '+string(pkey[r1]));
draw_text(t,ty+20*10,'pkey[l2]: '+string(pkey[l2]));
draw_text(t,ty+20*11,'pkey[r2]: '+string(pkey[r2]));
draw_text(t,ty+20*12,'pkey[enter]: '+string(pkey[enter]));
draw_text(t,ty+20*13,'pkey[select]: '+string(pkey[select]));
draw_set_halign(fa_left);
t = view_xview+argument0;
draw_text(t,ty+20*0,'key[up]: '+string(key[up]));
draw_text(t,ty+20*1,'key[down]: '+string(key[down]));
draw_text(t,ty+20*2,'key[left]: '+string(key[left]));
draw_text(t,ty+20*3,'key[right]: '+string(key[right]));
draw_text(t,ty+20*4,'key[acao1]: '+string(key[acao1]));
draw_text(t,ty+20*5,'key[acao2]: '+string(key[acao2]));
draw_text(t,ty+20*6,'key[acao3]: '+string(key[acao3]));
draw_text(t,ty+20*7,'key[acao4]: '+string(key[acao4]));
draw_text(t,ty+20*8,'key[l1]: '+string(key[l1]));
draw_text(t,ty+20*9,'key[r1]: '+string(key[r1]));
draw_text(t,ty+20*10,'key[l2]: '+string(key[l2]));
draw_text(t,ty+20*11,'key[r2]: '+string(key[r2]));
draw_text(t,ty+20*12,'key[enter]: '+string(key[enter]));
draw_text(t,ty+20*13,'key[select]: '+string(key[select]));
#define key_save
ini_write_real('KEYS',string(up),akey[up]);
ini_write_real('KEYS',string(down),akey[down]);
ini_write_real('KEYS',string(left),akey[left]);
ini_write_real('KEYS',string(right),akey[right]);
ini_write_real('KEYS',string(acao1),akey[acao1]);
ini_write_real('KEYS',string(acao2),akey[acao2]);
ini_write_real('KEYS',string(acao3),akey[acao3]);
ini_write_real('KEYS',string(acao4),akey[acao4]);
ini_write_real('KEYS',string(enter),akey[enter]);
ini_write_real('KEYS',string(select),akey[select]);
ini_write_real('KEYS',string(l1),akey[l1]);
ini_write_real('KEYS',string(r1),akey[r1]);
ini_write_real('KEYS',string(l2),akey[l2]);
ini_write_real('KEYS',string(r2),akey[r2]);
// Definir joystick
/*ini_write_real('JOYSTICK',string(up),-4);
ini_write_real('JOYSTICK',string(down),-3);
ini_write_real('JOYSTICK',string(left),-2);
ini_write_real('JOYSTICK',string(right),-1);*/
ini_write_real('JOYSTICK',string(acao1),ajoy[acao1]);
ini_write_real('JOYSTICK',string(acao2),ajoy[acao2]);
ini_write_real('JOYSTICK',string(acao3),ajoy[acao3]);
ini_write_real('JOYSTICK',string(acao4),ajoy[acao4]);
ini_write_real('JOYSTICK',string(enter),ajoy[enter]);
ini_write_real('JOYSTICK',string(select),ajoy[select]);
ini_write_real('JOYSTICK',string(l1),ajoy[l1]);
ini_write_real('JOYSTICK',string(r1),ajoy[r1]);
ini_write_real('JOYSTICK',string(l2),ajoy[l2]);
ini_write_real('JOYSTICK',string(r2),ajoy[r2]);
Valeu?
Super Maker- Data de inscrição : 09/07/2011
Reputação : 6
Número de Mensagens : 646
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: tem como criar um jogo onde o controle e o joystick???
Cole no evento Step . Depois plugue qualquer controle USB e use.
Obs: Foi testado em um controle de PS3 original com o cabo usb.
Super simples e fácil de usar.
Talvez em breve faça um tutorial mais explicado.
Obs: Foi testado em um controle de PS3 original com o cabo usb.
Super simples e fácil de usar.
Talvez em breve faça um tutorial mais explicado.
- Código:
if joystick_check_button(1,1) {} //select
if joystick_check_button(1,2) {} //L3
if joystick_check_button(1,3) {} //R3
if joystick_check_button(1,4) {} //START
if joystick_check_button(1,5) {} //UP
if joystick_check_button(1,6) {} //LEFT
if joystick_check_button(1,7) {} //DOWN
if joystick_check_button(1,8) {} //LEFT
if joystick_check_button(1,9) {} //L2
if joystick_check_button(1,10) {} //R2
if joystick_check_button(1,11) {} //L1
if joystick_check_button(1,12) {} //R1
if joystick_check_button(1,13) {} //TRIANGLE
if joystick_check_button(1,14) {} //O
if joystick_check_button(1,15) {} //X
if joystick_check_button(1,16) {} //CUBE
if joystick_check_button(1,17) {} //PS3 BUTTON
Vikintor- Games Ranking :
Notas recebidas : B
Data de inscrição : 28/03/2010
Reputação : 17
Número de Mensagens : 901
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos