Quando estamos criando aquele jogo a colisão é umas das partes mais complicada de fazer, então venho aqui facilitar a sua vida disponibilizando o código bem fácil de entender. Faça bom aproveito e compartilhem!
JavaScript
// craindo os objetos
var objeto1 = document.getElementById('inimigoGame'); // identificação do primeiro objeto
var objeto2 = document.getElementById('tiroGame'); // identificação do segundo objeto
//Criando as variáveis e atribuido o valor.
var objeto1x = objeto1.offsetLeft; //capturando a posição em x
var objeto1y = objeto1.offsetTop; //capturando a posição em y
var objeto1w = objeto1.offsetWidth; //capturando a largura
var objeto1h = objeto1.offsetHeight; //capturando a altura
var objeto2x = objeto2.offsetLeft; //capturando a posição em x
var objeto2y = objeto2.offsetTop; //capturando a posição em y
var objeto2w = objeto2.offsetWidth; //capturando a largura
var objeto2h = objeto2.offsetHeight; //capturando a altura
//parte logica da colisão
colisao1 = (objeto2x + objeto2w >= objeto1x) && (objeto1x + objeto1w >= objeto2x);
colisao2 = (objeto2y + objeto2h >= objeto1y) && (objeto1y + objeto1h >= objeto2y);
//caso houver colisão
if((colisao1 && colisao2)){
alert('colisão');
}
visual basic 6
‘Criando as variáveis
Dim ax, ay, aw, ah As Double
Dim bx, by, bw, bh As Double
Dim colisao1, colisao2 As Boolean
'Capturando informações sobre o primeiro objeto
ax = objeto1.Left 'capturando a posição em x
ay = objeto1.Top 'capturando a posição em y
aw = objeto1.Width 'capturando a largura
ah = objeto1.Height 'capturando a altura
'Capturando informações sobre o segundo objeto
bx = objeto2.Left 'capturando a posição em x
by = objeto2.Top 'capturando a posição em y
bw = objeto2.Width 'capturando a largura
bh = objeto2.Height 'capturando a altura
'parte logica da colisão
colisao1 = (bx + bw >= ax) And (ax + aw >= bx)
colisao2 = (by + bh >= ay) And (ay + ah >= by)
'caso houver colisão
If (colisao1 And colisao2) Then
MsgBox ("colisão")
End If
0 Comentários