public boolean isPlaceEmpty(Vector2 pos, boolean considerPlanets) { Planet np = myPlanetManager.getNearestPlanet(pos); if (considerPlanets) { boolean inPlanet = np.getPos().dst(pos) < np.getFullHeight(); if (inPlanet) return false; } SolSystem ns = myPlanetManager.getNearestSystem(pos); if (ns.getPos().dst(pos) < SunSingleton.SUN_HOT_RAD) return false; List<SolObject> objs = myObjectManager.getObjs(); for (int i = 0, objsSize = objs.size(); i < objsSize; i++) { SolObject o = objs.get(i); if (!o.hasBody()) continue; if (pos.dst(o.getPos()) < myObjectManager.getRadius(o)) { return false; } } List<FarObjData> farObjs = myObjectManager.getFarObjs(); for (int i = 0, farObjsSize = farObjs.size(); i < farObjsSize; i++) { FarObjData fod = farObjs.get(i); FarObj o = fod.fo; if (!o.hasBody()) continue; if (pos.dst(o.getPos()) < o.getRadius()) { return false; } } return true; }
public void update() { myDraDebugger.update(this); if (myPaused) return; myTimeFactor = DebugOptions.GAME_SPEED_MULTIPLIER; if (myHero != null) { ShipAbility ability = myHero.getAbility(); if (ability instanceof SloMo) { float factor = ((SloMo) ability).getFactor(); myTimeFactor *= factor; } } myTimeStep = Const.REAL_TIME_STEP * myTimeFactor; myTime += myTimeStep; myPlanetManager.update(this); myCam.update(this); myChunkManager.update(this); myMountDetectDrawer.update(this); myObjectManager.update(this); myDraMan.update(this); myMapDrawer.update(this); mySoundManager.update(this); myBeaconHandler.update(this); myHero = null; myTranscendentHero = null; List<SolObject> objs = myObjectManager.getObjs(); for (int i = 0, objsSize = objs.size(); i < objsSize; i++) { SolObject obj = objs.get(i); if ((obj instanceof SolShip)) { SolShip ship = (SolShip) obj; Pilot prov = ship.getPilot(); if (prov.isPlayer()) { myHero = ship; break; } } if (obj instanceof StarPort.Transcendent) { StarPort.Transcendent trans = (StarPort.Transcendent) obj; FarShip ship = trans.getShip(); if (ship.getPilot().isPlayer()) { myTranscendentHero = trans; break; } } } if (myTutorialManager != null) myTutorialManager.update(); }