Skip to content

SquareCollider & squareCollision

DiabloiqueJS edited this page Jan 6, 2014 · 3 revisions

Les modules Squarecollider & squarecollision vous permettent de crée des colliders et de les activer pour les utilisé en collision "simple" ou en trigger. Ce sont des collisions par pixels. Il faut que votre objet possède une position en x et en y, ainsi qu'une width et une height.

Pour les faire fonctionner, suivre les étapes :

1. Les lier dans le define de votre jeu

    define([
    'event_bus',
    'modules/SquareCollider',
    'modules/squareCollision']
     function(eventBus){ 
         // VotreCode
     });

2. Création des Colliders et Initialisation des collisions

Voici les commandes à effectuer pour crée le collider sur votre objet

     { 
         /*Crée un colliders (à repeter autant de fois qu'il y a d'objets collidables)*/
         eventBus.emit('init square collider', VotreObjet, VotreTableauQuiContiendraLesObjetsCollidable);
         /*Initialise les collisions entre les objets où un collider a été crée*/
         eventBus.emit('init square collision', VotreObjet, VotreTableauQuiContientLesObjetsCollidable);
     }

3. L'Événement + exemple d'utilisation

('collision', params) : Renvoi l'objet qui a collisionné, ainsi que le cotés par lequel il collisionne, paramètres : object, wayOfCollision (reçoit : left, right, top, bottom).

Exemple d'utilisation du "eventBus.on"

Voici comment utiliser le ".on", si on veux que les objets collidables se repoussent de 1 pixel lors de la collision

eventBus.on('collision', function (object,wayOfCollision) {
        if(wayOfCollision == "left"){
           object.x ++
        }
        else if(wayOfCollision == "right"){
           object.x --
        }
        else if(wayOfCollision == "top"){
           object.y ++
        }
        else if(wayOfCollision == "bottom"){
           object.y --
        }
    });

Clone this wiki locally