- 2,955
- 12
Тут я расскажу как использовать апи галактика. Собвственно делайте класс, implements IPlanet или IMoon (типо для путника другой планеты). А потом в главном файле пишите:
GalacticraftRegistry.registerCelestialBody(new ВашКлассИмплементIPlanet()); Все. теперь покажу пример паланеты.
SupertPlanet.java
SuperPlanetMapObject.java
Все. Поздравляю! У вас есть своя планета и вы можете на нее лететь.
Галактика делается также, создается класс Implements IGalaxy и там все настраивайте. А потом GalacticraftRegistry.registerGalaxy(new Класс())
GalacticraftRegistry.registerCelestialBody(new ВашКлассИмплементIPlanet()); Все. теперь покажу пример паланеты.
SupertPlanet.java
Код:
public class SuperPlanet implements IPlanet {
private final IMapObject planet = new SuperPlanetMapObject();
@Override
public String getName() //Имя планеты
{
return "Super Planet";
}
@Override
public boolean isReachable() //Можно ли её навестить. (полететь на неё)
{
return true;
}
@Override
public IMapObject getMapObject() //Это для рендера вашей планеты на галактической карте.
{
return this.planet;
}
@Override
public boolean autoRegister() //Регистрировать ли автоматом измерение вашей планеты.
{
return true;
}
@Override
public boolean addToList() //Добавить в лист планет на которые можно лететь?
{
return true;
}
@Override
public Class<? extends WorldProvider> getWorldProvider()
{
return SuperPlanetWorldProvider.class; //World Provider вашего мира. WARNING: MUST BE IMPLEMENTS IGalacticraftWorldProvider (как делать мир я не буду рассказывать)
}
@Override
public int getDimensionID() { //Айди измерения планеты
// TODO Auto-generated method stub
return 64;
}
@Override
public IGalaxy getParentGalaxy() { //Галактика в которой ваша планета
// TODO Auto-generated method stub
return GCAddon.galaxyT14; //Типо моя галактика
}
}
Код:
public class SuperPlanetMapObject implements IMapObject {
@Override
public float getPlanetSize() { //Размер планеты на карте
// TODO Auto-generated method stub
return 4.0F;
}
@Override
public float getDistanceFromCenter() { //Дистанция до центра
// TODO Auto-generated method stub
return 2.0F;
}
@Override
public float getPhaseShift() { //Как быстро движется
return 1440.0F;
}
@Override
public float getStretchValue() {
// TODO Auto-generated method stub
return 1.0F;
}
@Override
public ICelestialBodyRenderer getSlotRenderer() {
return new RenderSuperPlanetSlot();
}
@Override
public IGalaxy getParentGalaxy() {
return GregTechStuffs.galaxyT14; //Указываете ту же самую галактику
}
}
Галактика делается также, создается класс Implements IGalaxy и там все настраивайте. А потом GalacticraftRegistry.registerGalaxy(new Класс())