package com.riiablo.map2;

import com.badlogic.gdx.utils.IntMap;

public final class IndexDefs {
  private IndexDefs() {}

  public static final int VIS_0_00 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 0, 0);
  public static final int VIS_0_01 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 0, 1);
  public static final int VIS_0_02 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 0, 17);
  public static final int VIS_0_03 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 0, 21);
  public static final int VIS_0_04 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 0, 23);
  public static final int VIS_0_05 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 0, 32);
  public static final int VIS_0_06 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 0, 0);
  public static final int VIS_0_07 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 0, 1);
  public static final int VIS_0_08 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 0, 2);
  public static final int VIS_0_09 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 0, 3);
  public static final int VIS_0_10 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 0, 4);
  public static final int VIS_1_11 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 1, 0);
  public static final int VIS_1_12 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 1, 1);
  public static final int VIS_1_13 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 1, 17);
  public static final int VIS_1_14 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 1, 18);
  public static final int VIS_1_15 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 1, 21);
  public static final int VIS_1_16 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 1, 22);
  public static final int VIS_1_17 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 1, 32);
  public static final int VIS_1_18 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 1, 0);
  public static final int VIS_1_19 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 1, 1);
  public static final int VIS_2_20 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 2, 0);
  public static final int VIS_2_21 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 2, 1);
  public static final int VIS_2_22 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 2, 2);
  public static final int VIS_2_23 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 2, 21);
  public static final int VIS_2_24 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 2, 23);
  public static final int VIS_2_25 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 2, 25);
  public static final int VIS_2_26 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 2, 0);
  public static final int VIS_2_27 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 2, 1);
  public static final int VIS_2_28 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 2, 2);
  public static final int VIS_2_29 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 2, 5);
  public static final int VIS_3_30 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 3, 0);
  public static final int VIS_3_31 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 3, 1);
  public static final int VIS_3_32 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 3, 5);
  public static final int VIS_3_33 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 3, 22);
  public static final int VIS_3_34 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 3, 24);
  public static final int VIS_3_35 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 3, 0);
  public static final int VIS_3_36 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 3, 1);
  public static final int VIS_4_37 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 4, 0);
  public static final int VIS_4_38 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 4, 4);
  public static final int VIS_4_39 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 4, 47);
  public static final int VIS_4_40 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 4, 0);
  public static final int VIS_4_41 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 4, 1);
  public static final int VIS_5_81 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 5, 0);
  public static final int VIS_5_42 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 5, 21);
  public static final int VIS_5_43 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 5, 0);
  public static final int VIS_6_44 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 6, 0);
  public static final int VIS_6_45 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 6, 24);
  public static final int VIS_6_82 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 6, 0);
  public static final int VIS_7_46 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 7, 0);
  public static final int VIS_7_83 = DT1.Tile.Index.create(Orientation.SPECIAL_11, 7, 0);
  public static final int _47 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 2);
  public static final int _48 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 7);
  public static final int _49 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 8);
  public static final int _50 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 12);
  public static final int _51 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 14);
  public static final int _52 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 16);
  public static final int _53 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 22);
  public static final int _54 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 23);
  public static final int _55 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 31);
  public static final int _56 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 40);
  public static final int _57 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 41);
  public static final int _58 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 42);
  public static final int _59 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 8, 46);
  public static final int _60 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 9, 23);
  public static final int _61 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 9, 40);
  public static final int _62 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 9, 46);
  public static final int _63 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 10, 23);
  public static final int _64 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 12, 13);
  public static final int _65 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 12, 14);
  public static final int _66 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 12, 23);
  public static final int _67 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 12, 24);
  public static final int _68 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 12, 41);
  public static final int _69 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 13, 13);
  public static final int _70 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 16, 25);
  public static final int _71 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 16, 40);
  public static final int _72 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 16, 41);
  public static final int _73 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 16, 42);
  public static final int _74 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 20, 23);
  public static final int _80 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 34, 0);

  public static final int MAP_ENTRY = DT1.Tile.Index.create(Orientation.SPECIAL_10, 30, 11);
  public static final int TOWN_ENTRY_1 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 30, 0);
  public static final int TOWN_ENTRY_2 = DT1.Tile.Index.create(Orientation.SPECIAL_10, 31, 0);
  public static final int CORPSE_LOCATION = DT1.Tile.Index.create(Orientation.SPECIAL_10, 32, 0);
  public static final int TP_LOCATION = DT1.Tile.Index.create(Orientation.SPECIAL_10, 33, 0);

  static final IntMap<String> ID_TO_NAME;
  static {
    ID_TO_NAME = new IntMap<>();
    ID_TO_NAME.put(MAP_ENTRY, "ID_MAP_ENTRY");
    ID_TO_NAME.put(TOWN_ENTRY_1, "ID_TOWN_ENTRY_1");
    ID_TO_NAME.put(TOWN_ENTRY_2, "ID_TOWN_ENTRY_2");
    ID_TO_NAME.put(CORPSE_LOCATION, "ID_CORPSE_LOCATION");
    ID_TO_NAME.put(TP_LOCATION, "ID_TP_LOCATION");
    ID_TO_NAME.put(VIS_0_00, "ID_VIS_0_00");
    ID_TO_NAME.put(VIS_0_01, "ID_VIS_0_01");
    ID_TO_NAME.put(VIS_0_02, "ID_VIS_0_02");
    ID_TO_NAME.put(VIS_0_03, "ID_VIS_0_03");
    ID_TO_NAME.put(VIS_0_04, "ID_VIS_0_04");
    ID_TO_NAME.put(VIS_0_05, "ID_VIS_0_05");
    ID_TO_NAME.put(VIS_0_06, "ID_VIS_0_06");
    ID_TO_NAME.put(VIS_0_07, "ID_VIS_0_07");
    ID_TO_NAME.put(VIS_0_08, "ID_VIS_0_08");
    ID_TO_NAME.put(VIS_0_09, "ID_VIS_0_09");
    ID_TO_NAME.put(VIS_0_10, "ID_VIS_0_10");
    ID_TO_NAME.put(VIS_1_11, "ID_VIS_1_11");
    ID_TO_NAME.put(VIS_1_12, "ID_VIS_1_12");
    ID_TO_NAME.put(VIS_1_13, "ID_VIS_1_13");
    ID_TO_NAME.put(VIS_1_14, "ID_VIS_1_14");
    ID_TO_NAME.put(VIS_1_15, "ID_VIS_1_15");
    ID_TO_NAME.put(VIS_1_16, "ID_VIS_1_16");
    ID_TO_NAME.put(VIS_1_17, "ID_VIS_1_17");
    ID_TO_NAME.put(VIS_1_18, "ID_VIS_1_18");
    ID_TO_NAME.put(VIS_1_19, "ID_VIS_1_19");
    ID_TO_NAME.put(VIS_2_20, "ID_VIS_2_20");
    ID_TO_NAME.put(VIS_2_21, "ID_VIS_2_21");
    ID_TO_NAME.put(VIS_2_22, "ID_VIS_2_22");
    ID_TO_NAME.put(VIS_2_23, "ID_VIS_2_23");
    ID_TO_NAME.put(VIS_2_24, "ID_VIS_2_24");
    ID_TO_NAME.put(VIS_2_25, "ID_VIS_2_25");
    ID_TO_NAME.put(VIS_2_26, "ID_VIS_2_26");
    ID_TO_NAME.put(VIS_2_27, "ID_VIS_2_27");
    ID_TO_NAME.put(VIS_2_28, "ID_VIS_2_28");
    ID_TO_NAME.put(VIS_2_29, "ID_VIS_2_29");
    ID_TO_NAME.put(VIS_3_30, "ID_VIS_3_30");
    ID_TO_NAME.put(VIS_3_31, "ID_VIS_3_31");
    ID_TO_NAME.put(VIS_3_32, "ID_VIS_3_32");
    ID_TO_NAME.put(VIS_3_33, "ID_VIS_3_33");
    ID_TO_NAME.put(VIS_3_34, "ID_VIS_3_34");
    ID_TO_NAME.put(VIS_3_35, "ID_VIS_3_35");
    ID_TO_NAME.put(VIS_3_36, "ID_VIS_3_36");
    ID_TO_NAME.put(VIS_4_37, "ID_VIS_4_37");
    ID_TO_NAME.put(VIS_4_38, "ID_VIS_4_38");
    ID_TO_NAME.put(VIS_4_39, "ID_VIS_4_39");
    ID_TO_NAME.put(VIS_4_40, "ID_VIS_4_40");
    ID_TO_NAME.put(VIS_4_41, "ID_VIS_4_41");
    ID_TO_NAME.put(VIS_5_81, "ID_VIS_5_81");
    ID_TO_NAME.put(VIS_5_42, "ID_VIS_5_42");
    ID_TO_NAME.put(VIS_5_43, "ID_VIS_5_43");
    ID_TO_NAME.put(VIS_6_44, "ID_VIS_6_44");
    ID_TO_NAME.put(VIS_6_45, "ID_VIS_6_45");
    ID_TO_NAME.put(VIS_6_82, "ID_VIS_6_82");
    ID_TO_NAME.put(VIS_7_46, "ID_VIS_7_46");
    ID_TO_NAME.put(VIS_7_83, "ID_VIS_7_83");
    ID_TO_NAME.put(_47, "ID_47");
    ID_TO_NAME.put(_48, "ID_48");
    ID_TO_NAME.put(_49, "ID_49_AREA_W2_W3");
    ID_TO_NAME.put(_50, "ID_50");
    ID_TO_NAME.put(_51, "ID_51_AREA_W2");
    ID_TO_NAME.put(_52, "ID_52");
    ID_TO_NAME.put(_53, "ID_53");
    ID_TO_NAME.put(_54, "ID_54");
    ID_TO_NAME.put(_55, "ID_55");
    ID_TO_NAME.put(_56, "ID_56");
    ID_TO_NAME.put(_57, "ID_57");
    ID_TO_NAME.put(_58, "ID_58");
    ID_TO_NAME.put(_59, "ID_59");
    ID_TO_NAME.put(_60, "ID_60");
    ID_TO_NAME.put(_61, "ID_61");
    ID_TO_NAME.put(_62, "ID_62");
    ID_TO_NAME.put(_63, "ID_63");
    ID_TO_NAME.put(_64, "ID_64");
    ID_TO_NAME.put(_65, "ID_65_AREA_W2");
    ID_TO_NAME.put(_66, "ID_66");
    ID_TO_NAME.put(_67, "ID_67");
    ID_TO_NAME.put(_68, "ID_68");
    ID_TO_NAME.put(_69, "ID_69_AREA_W2_W4");
    ID_TO_NAME.put(_70, "ID_70");
    ID_TO_NAME.put(_71, "ID_71");
    ID_TO_NAME.put(_72, "ID_72");
    ID_TO_NAME.put(_73, "ID_73");
    ID_TO_NAME.put(_74, "ID_74");
    ID_TO_NAME.put(_80, "ID_80");
  }

  public static String toString(int tileIndex) {
    return ID_TO_NAME.get(tileIndex, "null");
  }
}
