List of usage examples for com.badlogic.gdx.physics.box2d Fixture getFilterData
public Filter getFilterData()
From source file:com.agateau.pixelwheels.racer.SpinningComponent.java
License:Open Source License
@Override public void beginContact(Contact contact, Fixture otherFixture) { if (!mActive) { return;/* w ww. j a v a 2 s . co m*/ } // If we hit something, stop spinning: we may not be able to do a full circle at all if we // are blocked by a wall if ((otherFixture.getFilterData().categoryBits & CollisionCategories.SOLID_BODIES) != 0) { stopSpinning(); } }
From source file:com.agateau.pixelwheels.utils.Box2DUtils.java
License:Open Source License
public static void setCollisionInfo(Body body, int categoryBits, int maskBits) { for (Fixture fixture : body.getFixtureList()) { Filter filter = fixture.getFilterData(); filter.categoryBits = (short) categoryBits; filter.maskBits = (short) maskBits; fixture.setFilterData(filter);//from w w w. j a v a 2 s. c o m } }
From source file:com.stercore.code.net.dermetfan.utils.libgdx.box2d.Box2DUtils.java
License:Apache License
/** @param fixture the fixture for which to setup a new {@link FixtureDef} * @return a new {@link FixtureDef} instance that can be used to clone the given fixture */ public static FixtureDef createDef(Fixture fixture) { FixtureDef fixtureDef = new FixtureDef(); fixtureDef.density = fixture.getDensity(); Filter filter = fixture.getFilterData(); fixtureDef.filter.categoryBits = filter.categoryBits; fixtureDef.filter.groupIndex = filter.groupIndex; fixtureDef.filter.maskBits = filter.maskBits; fixtureDef.friction = fixture.getFriction(); fixtureDef.isSensor = fixture.isSensor(); fixtureDef.restitution = fixture.getRestitution(); fixtureDef.shape = fixture.getShape(); return fixtureDef; }
From source file:DungeonCleanerGame.DungeonCollissions.java
@Override public void beginContact(Contact contact) { Fixture fixA = contact.getFixtureA(); Fixture fixB = contact.getFixtureB(); Body Player;//from ww w .j a va2 s. c o m Body Monster; if ((fixA.getFilterData().groupIndex == gPW && fixB.getFilterData().groupIndex == gM) || (fixA.getFilterData().groupIndex == gM && fixB.getFilterData().groupIndex == gPW)) { ++numPlyHits; eng.gameRender().addDebugString("PlayerHits = " + numPlyHits, 1); if (fixB.getFilterData().groupIndex == gM) { Monster = fixB.getBody(); Player = fixA.getBody(); } else { Monster = fixA.getBody(); Player = fixB.getBody(); } WorldManifold mani = contact.getWorldManifold(); combat.computeStrikeToMonster(Player, Monster, mani); } else if ((fixA.getFilterData().groupIndex == gP && fixB.getFilterData().groupIndex == gM) || (fixA.getFilterData().groupIndex == gM && fixB.getFilterData().groupIndex == gP)) { ++numMonHits; eng.gameRender().addDebugString("MonsterHits = " + numMonHits, 2); if (fixB.getFilterData().groupIndex == gP) { Player = fixB.getBody(); Monster = fixA.getBody(); } else { Player = fixA.getBody(); Monster = fixB.getBody(); } WorldManifold mani = contact.getWorldManifold(); combat.computeStrikeToPlayer(Monster, Player, mani); } else if ((fixA.getFilterData().groupIndex == gP && fixB.getFilterData().groupIndex == gMV) || (fixA.getFilterData().groupIndex == gMV && fixB.getFilterData().groupIndex == gP)) { ++numMonDetect; eng.gameRender().addDebugString("MonsterDetection = " + numMonDetect, 3); if (fixB.getFilterData().groupIndex == gP) { Player = fixB.getBody(); Monster = fixA.getBody(); } else { Player = fixA.getBody(); Monster = fixB.getBody(); } int monsterID = (Integer) Monster.getUserData(); gmap.getEnemy(monsterID).getIA().actAlert(Player); } else if ((fixA.getFilterData().groupIndex == gP && fixB.getFilterData().groupIndex == gB) || (fixA.getFilterData().groupIndex == gB && fixB.getFilterData().groupIndex == gP)) { if (fixB.getFilterData().groupIndex == gP) { Player = fixB.getBody(); Monster = fixA.getBody(); } else { Player = fixA.getBody(); Monster = fixB.getBody(); } WorldManifold mani = contact.getWorldManifold(); combat.computeStrikeToPlayer(Monster, Player, mani); //SE //eng.gamePhysics().getWorld(). } }
From source file:headmade.arttag.ArtTagContactListener.java
License:Apache License
private boolean isHint(Fixture fixOther) { return fixOther.getFilterData().categoryBits == ArtTag.CAT_HINT; }
From source file:headmade.arttag.ArtTagContactListener.java
License:Apache License
private boolean isArtTrigger(Fixture fixOther) { return fixOther.getFilterData().categoryBits == ArtTag.CAT_ARTTRIGGER; }
From source file:headmade.arttag.ArtTagContactListener.java
License:Apache License
private boolean isPlayer(Fixture fix) { return fix.getFilterData().categoryBits == ArtTag.CAT_PLAYER; }
From source file:headmade.arttag.ArtTagContactListener.java
License:Apache License
private boolean isPlayerLight(Fixture fix) { return fix.getFilterData().categoryBits == ArtTag.CAT_PLAYERLIGHT; }
From source file:headmade.arttag.ArtTagContactListener.java
License:Apache License
private boolean isGuardLight(Fixture fix) { return fix.getFilterData().categoryBits == ArtTag.CAT_GUARDLIGHT; }
From source file:headmade.arttag.ArtTagContactListener.java
License:Apache License
private boolean isGuard(Fixture fix) { return fix.getFilterData().categoryBits == ArtTag.CAT_GUARD; }