Files
dsrc/sku.0/sys.server/compiled/game/script/library/regions.java
T

383 lines
13 KiB
Java

package script.library;
import script.*;
import script.base_class.*;
import script.combat_engine.*;
import java.util.Arrays;
import java.util.Hashtable;
import java.util.Vector;
import script.base_script;
import script.library.gcw;
public class regions extends script.base_script
{
public regions()
{
}
public static final int GEO_DESERT = 0;
public static final int GEO_FOREST = 1;
public static final int GEO_JUNGLE = 2;
public static final int GEO_PLATEAU = 3;
public static final int GEO_OASIS = 4;
public static final int GEO_CANYON = 5;
public static final int GEO_LAKE = 6;
public static final int GEO_LAKESHORE = 7;
public static final int GEO_BEACH = 8;
public static final int GEO_OCEAN = 9;
public static final int GEO_UNDERWATER = 10;
public static final int GEO_RIVER = 11;
public static final int GEO_VOLCANO = 12;
public static final int GEO_SWAMP = 13;
public static final int GEO_PLAINS = 14;
public static final int GEO_PRAIRIE = 15;
public static final int GEO_MOUNTAINS = 16;
public static final int GEO_HILLS = 17;
public static final int GEO_GRASSLAND = 18;
public static final int GEO_WASTELAND = 19;
public static final int GEO_CITY = 20;
public static final int GEO_FICTIONAL = 21;
public static final int GEO_PATHFIND = 22;
public static final int GEO_DEFAULT = 23;
public static final int GEO_THEATER = 24;
public static final int GEO_OVERLOAD = 25;
public static final int GEO_MAX = 26;
public static final int MISSION_NONE = 0;
public static final int MISSION_DESTROY = 1;
public static final int MISSION_OTHER = 2;
public static final int MISSION_TATOOINE_ANCHORHEAD = 3;
public static final int MISSION_TATOOINE_BESTINE = 4;
public static final int MISSION_TATOOINE_MOS_EISLEY = 5;
public static final int MISSION_TATOOINE_MOS_ENTHA = 6;
public static final int MISSION_TATOOINE_MOS_ESPA = 7;
public static final int MISSION_TATOOINE_MOS_TAIKE = 8;
public static final int MISSION_TATOOINE_WAYFAR = 9;
public static final int MISSION_NABOO_THEED = 10;
public static final int MISSION_NABOO_DEEJA_PEAK = 11;
public static final int MISSION_NABOO_KAADARA = 12;
public static final int MISSION_NABOO_MOENIA = 13;
public static final int MISSION_NABOO_KEREN = 14;
public static final int MISSION_TATOOINE_BIB_1 = 15;
public static final int MISSION_CORELLIA_CORONET = 16;
public static final int MISSION_CORELLIA_TYRENA = 17;
public static final int MISSION_CORELLIA_BELA_VISTAL = 18;
public static final int MISSION_CORELLIA_VRENI_ISLAND = 19;
public static final int MISSION_CORELLIA_KOR_VELLA = 20;
public static final int MISSION_CORELLIA_DAOBA_GUERFEL = 21;
public static final int MISSION_RORI_NARMLE = 22;
public static final int MISSION_RORI_RESTUSS = 23;
public static final int MISSION_TALUS_DEARIC = 24;
public static final int MISSION_TALUS_NASHAL = 25;
public static final int MISSION_YAVIN4_LABOR_OUTPOST = 26;
public static final int MISSION_YAVIN4_MINING_OUTPOST = 27;
public static final int MISSION_ENDOR_NEUTRAL_OUTPOST = 28;
public static final int MISSION_DANTOOINE_MINING_OUTPOST = 29;
public static final int MISSION_DANTOOINE_PIRATE_OUTPOST = 30;
public static final int MISSION_DATHOMIR_TRADE_OUTPOST = 31;
public static final int MISSION_DATHOMIR_SURVEY_OUTPOST = 32;
public static final int MISSION_LOK_NYMS_STRONGHOLD = 33;
public static final int MISSION_MAX = 34;
public static final int RD_NEWBIE = 0;
public static final int RD_EASY = 1;
public static final int RD_NORMAL = 2;
public static final int RD_MEDIUM = 3;
public static final int RD_HARD = 4;
public static final int RD_EXTREME = 5;
public static final int RD_MAX = 6;
public static final int PVP_REGION_TYPE_NORMAL = 0;
public static final int PVP_REGION_TYPE_TRUCE = 1;
public static final int PVP_REGION_TYPE_BATTLEFIELD_PVP = 2;
public static final int PVP_REGION_TYPE_BATTLEFIELD_PVE = 3;
public static final int PVP_REGION_TYPE_ADVANCED = 4;
public static final int PVP_REGION_TYPE_MAX = 5;
public static final int BUILD_FALSE = 0;
public static final int BUILD_TRUE = 1;
public static final int BUILD_MAX = 2;
public static final int MUNI_FALSE = 0;
public static final int MUNI_TRUE = 1;
public static final int MUNI_MAX = 2;
public static final int SPAWN_FALSE = 0;
public static final int SPAWN_TRUE = 1;
public static final int SPAWN_MISSION = 2;
public static final int SPAWN_DEFAULT = 3;
public static final int SPAWN_MAX = 4;
public static final int SPAWN_DIFFICULTY = 5;
public static final int BIT_PVP = 0;
public static final int BIT_BUILD = 1;
public static final int BIT_MUNICIPAL = 2;
public static final int BIT_SPAWNABLE = 3;
public static final int BIT_MISSION = 4;
public static String translateGeoToString(int geo) throws InterruptedException
{
if ((geo >= GEO_MAX) || (geo < 0))
{
return null;
}
switch (geo)
{
case GEO_DESERT:
return "desert";
case GEO_FOREST:
return "forest";
case GEO_JUNGLE:
return "jungle";
case GEO_PLATEAU:
return "plateau";
case GEO_OASIS:
return "oasis";
case GEO_CANYON:
return "canyon";
case GEO_LAKE:
return "lake";
case GEO_LAKESHORE:
return "lakeshore";
case GEO_BEACH:
return "beach";
case GEO_OCEAN:
return "ocean";
case GEO_UNDERWATER:
return "underwater";
case GEO_RIVER:
return "river";
case GEO_VOLCANO:
return "volcano";
case GEO_SWAMP:
return "swamp";
case GEO_PLAINS:
return "plains";
case GEO_PRAIRIE:
return "prairie";
case GEO_MOUNTAINS:
return "mountains";
case GEO_HILLS:
return "hills";
case GEO_GRASSLAND:
return "grassland";
case GEO_WASTELAND:
return "wasteland";
case GEO_CITY:
return "city";
case GEO_FICTIONAL:
return "fictional";
case GEO_OVERLOAD:
return "overload";
case GEO_DEFAULT:
return "default";
case GEO_THEATER:
return "theater";
}
return null;
}
public static int getDeliverMissionRegionType(String strRegionName) throws InterruptedException
{
if (strRegionName.equals("anchorhead"))
{
return MISSION_TATOOINE_ANCHORHEAD;
}
else if (strRegionName.equals("bestine"))
{
return MISSION_TATOOINE_BESTINE;
}
else if (strRegionName.equals("mos_eisley"))
{
return MISSION_TATOOINE_MOS_EISLEY;
}
else if (strRegionName.equals("mos_entha"))
{
return MISSION_TATOOINE_MOS_ENTHA;
}
else if (strRegionName.equals("mos_espa"))
{
return MISSION_TATOOINE_MOS_ESPA;
}
else if (strRegionName.equals("mos_taike"))
{
return MISSION_TATOOINE_MOS_TAIKE;
}
else if (strRegionName.equals("wayfar"))
{
return MISSION_TATOOINE_WAYFAR;
}
else if (strRegionName.equals("deeja_peak"))
{
return MISSION_NABOO_DEEJA_PEAK;
}
else if (strRegionName.equals("theed"))
{
return MISSION_NABOO_THEED;
}
else if (strRegionName.equals("keren"))
{
return MISSION_NABOO_KEREN;
}
else if (strRegionName.equals("kaadara"))
{
return MISSION_NABOO_KAADARA;
}
else if (strRegionName.equals("moenia"))
{
return MISSION_NABOO_MOENIA;
}
else if (strRegionName.equals("coronet"))
{
return MISSION_CORELLIA_CORONET;
}
else if (strRegionName.equals("tyrena"))
{
return MISSION_CORELLIA_TYRENA;
}
else if (strRegionName.equals("bela_vistal"))
{
return MISSION_CORELLIA_BELA_VISTAL;
}
else if (strRegionName.equals("vreni_island"))
{
return MISSION_CORELLIA_VRENI_ISLAND;
}
else if (strRegionName.equals("kor_vella"))
{
return MISSION_CORELLIA_KOR_VELLA;
}
else if (strRegionName.equals("daoba_guerfel"))
{
return MISSION_CORELLIA_DAOBA_GUERFEL;
}
else if (strRegionName.equals("doaba_guerfel"))
{
return MISSION_CORELLIA_DAOBA_GUERFEL;
}
else if (strRegionName.equals("narmle"))
{
return MISSION_RORI_NARMLE;
}
else if (strRegionName.equals("restuss"))
{
return MISSION_RORI_RESTUSS;
}
else if (strRegionName.equals("dearic"))
{
return MISSION_TALUS_DEARIC;
}
else if (strRegionName.equals("nashal"))
{
return MISSION_TALUS_NASHAL;
}
else if (strRegionName.equals("yavin4_labor_outpost"))
{
return MISSION_YAVIN4_LABOR_OUTPOST;
}
else if (strRegionName.equals("yavin4_mining_outpost"))
{
return MISSION_YAVIN4_MINING_OUTPOST;
}
else if (strRegionName.equals("endor_neutral_outpost"))
{
return MISSION_ENDOR_NEUTRAL_OUTPOST;
}
else if (strRegionName.equals("dantooine_mining_outpost"))
{
return MISSION_DANTOOINE_MINING_OUTPOST;
}
else if (strRegionName.equals("dantooine_pirate_outpost"))
{
return MISSION_DANTOOINE_PIRATE_OUTPOST;
}
else if (strRegionName.equals("dathomir_trade_outpost"))
{
return MISSION_DATHOMIR_TRADE_OUTPOST;
}
else if (strRegionName.equals("dathomir_survey_outpost"))
{
return MISSION_DATHOMIR_SURVEY_OUTPOST;
}
else if (strRegionName.equals("lok_nyms_stronghold"))
{
return MISSION_LOK_NYMS_STRONGHOLD;
}
return 0;
}
public static String getPlanetNameByObjId(obj_id objPlanet) throws InterruptedException
{
LOG("regions_spam", "objPlanet is " + objPlanet);
obj_id objNamedPlanet = getPlanetByName("naboo");
LOG("regions_spam", "naboo is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "naboo";
}
objNamedPlanet = getPlanetByName("tatooine");
LOG("regions_spam", "tatooine is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "tatooine";
}
objNamedPlanet = getPlanetByName("dathomir");
LOG("regions_spam", "dathomir is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "dathomir";
}
objNamedPlanet = getPlanetByName("corellia");
LOG("regions_spam", "corellia is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "corellia";
}
objNamedPlanet = getPlanetByName("endor");
LOG("regions_spam", "endor is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "endor";
}
objNamedPlanet = getPlanetByName("yavin");
LOG("regions_spam", "yavin is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "yavin";
}
objNamedPlanet = getPlanetByName("lok");
LOG("regions_spam", "lok is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "lok";
}
objNamedPlanet = getPlanetByName("tanaab");
LOG("regions_spam", "tanaab is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "tanaab";
}
objNamedPlanet = getPlanetByName("talus");
LOG("regions_spam", "talus is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "talus";
}
objNamedPlanet = getPlanetByName("rori");
LOG("regions_spam", "rori is " + objNamedPlanet);
if (objNamedPlanet == objPlanet)
{
return "rori";
}
return null;
}
public static boolean isInPvPRegion(obj_id object) throws InterruptedException
{
location loc = getLocation(object);
region[] regions = getRegionsAtPoint(loc);
if (regions == null || regions.length == 0)
{
return false;
}
for (int i = 0; i < regions.length; i++)
{
String regionName = regions[i].getName();
if (isIdValid(gcw.getPvpRegionControllerIdByName(object, regionName)))
{
return true;
}
}
return false;
}
}