Android Open Source - killingspree Collision Processor






From Project

Back to project page killingspree.

License

The source code is released under:

MIT License

If you think the Android project killingspree listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.sillygames.killingSpree.managers.physics;
// w w  w.  j  a v  a 2  s.com
import com.sillygames.killingSpree.categories.EnemyCategory;
import com.sillygames.killingSpree.categories.ExplodingWeaponCategory;
import com.sillygames.killingSpree.categories.LivingCategory;
import com.sillygames.killingSpree.categories.NonExplodingWeaponCategory;
import com.sillygames.killingSpree.managers.physics.Body.BodyType;
import com.sillygames.killingSpree.serverEntities.ServerPlayer;

public class CollisionProcessor {
    
    public static boolean jumpOn(Body body1, Body body2) {
        if (body1.getUserData() instanceof ServerPlayer) {
            if (body2.getUserData() instanceof LivingCategory) {
                body1.setLinearVelocity(body1.getLinearVelocity().x, 40);
                if (((LivingCategory)body2.getUserData()).kill())
                    body1.getUserData().addKill();
            }
        } else if (body1.getUserData() instanceof EnemyCategory) {
            if (body2.getUserData() instanceof ServerPlayer) {
                ((ServerPlayer)body2.getUserData()).kill();
            }
        } 
        processWeapons(body1, body2);
        processWeapons(body2, body1);
        return false;
    }

    public static boolean jumpedOn(Body body1, Body body2) {
        if (body1.getUserData() instanceof EnemyCategory) {
            if (body2.getUserData() instanceof ServerPlayer) {
                if (((LivingCategory)body1.getUserData()).kill())
                    body2.getUserData().addKill();
                body2.setLinearVelocity(body1.getLinearVelocity().x, 40);
            }
        } else if (body1.getUserData() instanceof ServerPlayer) {
            if (body2.getUserData() instanceof EnemyCategory) {
                ((ServerPlayer)body1.getUserData()).kill();
            } else if (body2.getUserData() instanceof ServerPlayer) {
                ((ServerPlayer)body1.getUserData()).kill();
                ((ServerPlayer)body2.getUserData()).addKill();
            }
        }
        processWeapons(body1, body2);
        processWeapons(body2, body1);
        return false;
        
    }

    public static boolean touchLeft(Body body1, Body body2) {
        if (body1.getUserData() instanceof EnemyCategory) {
            if (body2.getUserData() instanceof ServerPlayer) {
                ((ServerPlayer)body2.getUserData()).kill();
            }
        } else if (body1.getUserData() instanceof ServerPlayer) {
            if (body2.getUserData() instanceof EnemyCategory) {
                ((ServerPlayer)body1.getUserData()).kill();
            }
        }
        processWeapons(body1, body2);
        processWeapons(body2, body1);
        return false;
        
    }

    public static boolean touchRight(Body body1, Body body2) {
        if (body1.getUserData() instanceof EnemyCategory) {
            if (body2.getUserData() instanceof ServerPlayer) {
                ((ServerPlayer)body2.getUserData()).kill();
            }
        }
        else if (body1.getUserData() instanceof ServerPlayer) {
            if (body2.getUserData() instanceof EnemyCategory) {
                ((ServerPlayer)body1.getUserData()).kill();
            }
        }
        processWeapons(body1, body2);
        processWeapons(body2, body1);
        return false;
    }
    
    public static void processWeapons(Body body1, Body body2){
        if (body1.getUserData() instanceof ExplodingWeaponCategory) {
            if (body2.bodyType == BodyType.DynamicBody) {
                if (body1.toDestroy)
                    return;
                ((ExplodingWeaponCategory) body1.getUserData()).explode();
            }
        } else if (body1.getUserData() instanceof NonExplodingWeaponCategory) {
            if (body2.toDestroy)
                return;
            if (body2.getUserData() instanceof LivingCategory) {
                if (((LivingCategory)body2.getUserData()).kill()
                    && body2 != body1.getUserData().body) {
                    ((NonExplodingWeaponCategory) body1.getUserData()).
                    getShooter().addKill();
                }
            }
            body1.getUserData().dispose();
        }
    }

}




Java Source Code List

com.sillygames.killingSpree.AndroidLauncher.java
com.sillygames.killingSpree.KillingSpree.java
com.sillygames.killingSpree.PlatformServices.java
com.sillygames.killingSpree.categories.EnemyCategory.java
com.sillygames.killingSpree.categories.ExplodingWeaponCategory.java
com.sillygames.killingSpree.categories.LivingCategory.java
com.sillygames.killingSpree.categories.NonExplodingWeaponCategory.java
com.sillygames.killingSpree.clientEntities.ClientArrow.java
com.sillygames.killingSpree.clientEntities.ClientBlob.java
com.sillygames.killingSpree.clientEntities.ClientBomb.java
com.sillygames.killingSpree.clientEntities.ClientBullet.java
com.sillygames.killingSpree.clientEntities.ClientEntity.java
com.sillygames.killingSpree.clientEntities.ClientFly.java
com.sillygames.killingSpree.clientEntities.ClientFrog.java
com.sillygames.killingSpree.clientEntities.ClientPlayer.java
com.sillygames.killingSpree.clientEntities.ClientTestPlayer.java
com.sillygames.killingSpree.controls.InputController.java
com.sillygames.killingSpree.controls.onScreenControls.java
com.sillygames.killingSpree.desktop.DesktopLauncher.java
com.sillygames.killingSpree.desktop.DesktopServices.java
com.sillygames.killingSpree.helpers.EntityUtils.java
com.sillygames.killingSpree.helpers.Event.java
com.sillygames.killingSpree.helpers.MyButton.java
com.sillygames.killingSpree.helpers.MyConnection.java
com.sillygames.killingSpree.helpers.Utils.java
com.sillygames.killingSpree.managers.LevelLoader.java
com.sillygames.killingSpree.managers.WorldBodyUtils.java
com.sillygames.killingSpree.managers.WorldManager.java
com.sillygames.killingSpree.managers.WorldRenderer.java
com.sillygames.killingSpree.managers.physics.Body.java
com.sillygames.killingSpree.managers.physics.CollisionProcessor.java
com.sillygames.killingSpree.managers.physics.Ray.java
com.sillygames.killingSpree.managers.physics.WorldDebugRenderer.java
com.sillygames.killingSpree.managers.physics.World.java
com.sillygames.killingSpree.networking.ControlsSender.java
com.sillygames.killingSpree.networking.NetworkRegisterer.java
com.sillygames.killingSpree.networking.StateProcessor.java
com.sillygames.killingSpree.networking.messages.AudioMessage.java
com.sillygames.killingSpree.networking.messages.ClientDetailsMessage.java
com.sillygames.killingSpree.networking.messages.ConnectMessage.java
com.sillygames.killingSpree.networking.messages.ControlsMessage.java
com.sillygames.killingSpree.networking.messages.EntityState.java
com.sillygames.killingSpree.networking.messages.GameStateMessage.java
com.sillygames.killingSpree.networking.messages.PlayerNamesMessage.java
com.sillygames.killingSpree.networking.messages.ServerStatusMessage.java
com.sillygames.killingSpree.pool.AssetLoader.java
com.sillygames.killingSpree.pool.EntityPool.java
com.sillygames.killingSpree.pool.MessageObjectPool.java
com.sillygames.killingSpree.pool.Pool.java
com.sillygames.killingSpree.pool.Poolable.java
com.sillygames.killingSpree.renderers.HUDRenderer.java
com.sillygames.killingSpree.screens.AbstractScreen.java
com.sillygames.killingSpree.screens.ClientDiscoveryScreen.java
com.sillygames.killingSpree.screens.GameScreen.java
com.sillygames.killingSpree.screens.LobbyScreen.java
com.sillygames.killingSpree.screens.MainMenuScreen.java
com.sillygames.killingSpree.screens.OptionsScreen.java
com.sillygames.killingSpree.screens.SplashScreen.java
com.sillygames.killingSpree.screens.settings.Constants.java
com.sillygames.killingSpree.serverEntities.ServerArrow.java
com.sillygames.killingSpree.serverEntities.ServerBlob.java
com.sillygames.killingSpree.serverEntities.ServerBomb.java
com.sillygames.killingSpree.serverEntities.ServerBullet.java
com.sillygames.killingSpree.serverEntities.ServerEntity.java
com.sillygames.killingSpree.serverEntities.ServerFly.java
com.sillygames.killingSpree.serverEntities.ServerFrog.java
com.sillygames.killingSpree.serverEntities.ServerPlayer.java
com.sillygames.killingSpree.sound.SFXPlayer.java