mirror of
https://github.com/ProjectSWGCore/Holocore.git
synced 2026-10-17 07:02:54 -04:00
Merged Engine into the Core! Woooo open source
This commit is contained in:
@@ -0,0 +1,155 @@
|
||||
package resources;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
import resources.common.CRC;
|
||||
|
||||
|
||||
public enum Terrain {
|
||||
ADVENTURE1 ("terrain/adventure1.trn"),
|
||||
ADVENTURE2 ("terrain/adventure2.trn"),
|
||||
CHARACTER_FARM ("terrain/character_farm.trn"),
|
||||
CINCO_CITY_TEST_M5 ("terrain/cinco_city_test_m5.trn"),
|
||||
CORELLIA ("terrain/corellia.trn"),
|
||||
CREATURE_TEST ("terrain/creature_test.trn"),
|
||||
DANTOOINE ("terrain/dantooine.trn"),
|
||||
DATHOMIR ("terrain/dathomir.trn"),
|
||||
DUNGEON1 ("terrain/dungeon1.trn"),
|
||||
ENDOR_ASOMMERS ("terrain/endor_asommers.trn"),
|
||||
ENDOR ("terrain/endor.trn"),
|
||||
FLORATEST ("terrain/floratest.trn"),
|
||||
GODCLIENT_TEST ("terrain/godclient_test.trn"),
|
||||
KASHYYYK_DEAD_FOREST ("terrain/kashyyyk_dead_forest.trn"),
|
||||
KASHYYYK_HUNTING ("terrain/kashyyyk_hunting.trn"),
|
||||
KASHYYYK_MAIN ("terrain/kashyyyk_main.trn"),
|
||||
KASHYYYK_NORTH_DUNGEONS ("terrain/kashyyyk_north_dungeons.trn"),
|
||||
KASHYYYK_POB_DUNGEONS ("terrain/kashyyyk_pob_dungeons.trn"),
|
||||
KASHYYYK_RRYATT_TRAIL ("terrain/kashyyyk_rryatt_trail.trn"),
|
||||
KASHYYYK_SOUTH_DUNGEONS ("terrain/kashyyyk_south_dungeons.trn"),
|
||||
KASHYYYK ("terrain/kashyyyk.trn"),
|
||||
LOK ("terrain/lok.trn"),
|
||||
MUSTAFAR ("terrain/mustafar.trn"),
|
||||
NABOO ("terrain/naboo.trn"),
|
||||
OTOH_GUNGA ("terrain/otoh_gunga.trn"),
|
||||
RIVERTEST ("terrain/rivertest.trn"),
|
||||
RORI ("terrain/rori.trn"),
|
||||
RUNTIMERULES ("terrain/runtimerules.trn"),
|
||||
SIMPLE ("terrain/simple.trn"),
|
||||
SPACE_CORELLIA_2 ("terrain/space_corellia_2.trn"),
|
||||
SPACE_CORELLIA ("terrain/space_corellia.trn"),
|
||||
SPACE_DANTOOINE ("terrain/space_dantooine.trn"),
|
||||
SPACE_DATHOMIR ("terrain/space_dathomir.trn"),
|
||||
SPACE_ENDOR ("terrain/space_endor.trn"),
|
||||
SPACE_ENV ("terrain/space_env.trn"),
|
||||
SPACE_HALOS ("terrain/space_halos.trn"),
|
||||
SPACE_HEAVY1 ("terrain/space_heavy1.trn"),
|
||||
SPACE_KASHYYYK ("terrain/space_kashyyyk.trn"),
|
||||
SPACE_LIGHT1 ("terrain/space_light1.trn"),
|
||||
SPACE_LOK ("terrain/space_lok.trn"),
|
||||
SPACE_NABOO_2 ("terrain/space_naboo_2.trn"),
|
||||
SPACE_NABOO ("terrain/space_naboo.trn"),
|
||||
SPACE_NOVA_ORION ("terrain/space_nova_orion.trn"),
|
||||
SPACE_NPE_FALCON_2 ("terrain/space_npe_falcon_2.trn"),
|
||||
SPACE_NPE_FALCON_3 ("terrain/space_npe_falcon_3.trn"),
|
||||
SPACE_NPE_FALCON ("terrain/space_npe_falcon.trn"),
|
||||
SPACE_ORD_MANTELL_2 ("terrain/space_ord_mantell_2.trn"),
|
||||
SPACE_ORD_MANTELL_3 ("terrain/space_ord_mantell_3.trn"),
|
||||
SPACE_ORD_MANTELL_4 ("terrain/space_ord_mantell_4.trn"),
|
||||
SPACE_ORD_MANTELL_5 ("terrain/space_ord_mantell_5.trn"),
|
||||
SPACE_ORD_MANTELL_6 ("terrain/space_ord_mantell_6.trn"),
|
||||
SPACE_ORD_MANTELL ("terrain/space_ord_mantell.trn"),
|
||||
SPACE_TATOOINE_2 ("terrain/space_tatooine_2.trn"),
|
||||
SPACE_TATOOINE ("terrain/space_tatooine.trn"),
|
||||
SPACE_YAVIN4 ("terrain/space_yavin4.trn"),
|
||||
TAANAB ("terrain/taanab.trn"),
|
||||
TALUS ("terrain/talus.trn"),
|
||||
TATOOINE ("terrain/tatooine.trn"),
|
||||
TERRAIN_TEST ("terrain/terrain_test.trn"),
|
||||
TEST_WEARABLES ("terrain/test_wearables.trn"),
|
||||
TUSKAN_RAID_ENCOUNTER ("terrain/tuskan_raid_encounter.trn"),
|
||||
TUTORIAL ("terrain/tutorial.trn"),
|
||||
UMBRA ("terrain/umbra.trn"),
|
||||
WATERTABLETEST ("terrain/watertabletest.trn"),
|
||||
YAVIN4 ("terrain/yavin4.trn");
|
||||
|
||||
private static final Map <Integer, String> CRC_TO_NAME = new ConcurrentHashMap<Integer, String>();
|
||||
private static final Map <String, Integer> NAME_TO_CRC = new ConcurrentHashMap<String, Integer>();
|
||||
private static final Map <String, Terrain> NAME_TO_TERRAIN = new ConcurrentHashMap<String, Terrain>();
|
||||
private static final Map <Integer, Terrain> CRC_TO_TERRAIN = new ConcurrentHashMap<Integer, Terrain>();
|
||||
|
||||
private String file;
|
||||
private String name;
|
||||
private int crc;
|
||||
|
||||
static {
|
||||
for (Terrain p : values()) {
|
||||
CRC_TO_TERRAIN.put(p.getCrc(), p);
|
||||
CRC_TO_NAME.put(p.getCrc(), p.name());
|
||||
NAME_TO_CRC.put(p.name().toLowerCase(), p.getCrc());
|
||||
NAME_TO_CRC.put(p.name().toLowerCase(), p.getCrc());
|
||||
NAME_TO_TERRAIN.put(p.name().toLowerCase(), p);
|
||||
}
|
||||
}
|
||||
|
||||
Terrain(String file) {
|
||||
this.file = file;
|
||||
this.crc = CRC.getCrc(file);
|
||||
this.name = file.substring(8, file.length() - 4);
|
||||
}
|
||||
|
||||
public String getFile() { return file; }
|
||||
public String getName() { return name; }
|
||||
public int getCrc() { return crc; }
|
||||
|
||||
public Location getStartLocation() {
|
||||
Location l = new Location();
|
||||
Random r = new Random();
|
||||
if (this == TATOOINE) {
|
||||
l.setOrientationX(0);
|
||||
l.setOrientationY(0);
|
||||
l.setOrientationZ(0);
|
||||
l.setOrientationW(1);
|
||||
l.setX(3828 + r.nextInt(100) / 10 - 5);
|
||||
l.setY(4);
|
||||
l.setZ(-4804 + r.nextInt(100) / 10 - 5);
|
||||
}
|
||||
return l;
|
||||
}
|
||||
|
||||
public static final String getNameFromCrc(int crc) {
|
||||
String name = CRC_TO_NAME.get(crc);
|
||||
if (name == null)
|
||||
return "";
|
||||
return name;
|
||||
}
|
||||
|
||||
public static final int getCrcFromName(String name) {
|
||||
Integer crc = NAME_TO_CRC.get(name);
|
||||
if (crc == null)
|
||||
return 0;
|
||||
return crc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Note: Defaults to TATOOINE
|
||||
*/
|
||||
public static final Terrain getTerrainFromCrc(int crc) {
|
||||
Terrain p = CRC_TO_TERRAIN.get(crc);
|
||||
if (p == null)
|
||||
return TATOOINE;
|
||||
return p;
|
||||
}
|
||||
|
||||
/**
|
||||
* Note: Defaults to TATOOINE
|
||||
*/
|
||||
public static final Terrain getTerrainFromName(String name) {
|
||||
Terrain p = NAME_TO_TERRAIN.get(name);
|
||||
if (p == null)
|
||||
return TATOOINE;
|
||||
return p;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user