public void checkObjectCollision(LLESprite playerCharacter, LLEPlayerData playerData, KeyboardState keyboardState, KeyboardState prevKeyboardState) { mPlayerCharacter = playerCharacter; for (int i = 0; i < mapObjects.Count; i++) { if (mapObjects[i] != null && mapObjects[i].getSprite() != null && mapObjects[i].getSprite().isVisible()) { LLESprite target = mapObjects[i].getSprite(); if (mapObjects[i].isColliding() == true && playerCharacter.isCollidingMap(new Vector4(target.getX(), target.getY(), target.getHeight(), target.getWidth()), new Vector2(cameraX, cameraY), true, true, 4) == true) { if ((playerCharacter.getDirection() == LLESprite.DIRECTION_UP || playerCharacter.getDirection() == LLESprite.DIRECTION_LEFT_UP || playerCharacter.getDirection() == LLESprite.DIRECTION_RIGHT_UP) && keyboardState.IsKeyDown(Keys.Z) == true && prevKeyboardState.IsKeyDown(Keys.Z) == false) { if (mapObjects[i].getScriptName().Replace("NONE", "" ).Replace(" ", "") != "") { playerCharacter.setAttacking(false); scriptProcessor.extractObjectVariables(mapObjects[i]); scriptProcessor.executeScript(msgManager, playerData); } break; } } } } }