Аспект

345
25
94
Добавляю свой аспект. Весь вопрос в том, из-за чего он всегда стоит на первом месте в списке аспектов таумономикона? Как бы я не изменял параметры аспекта, то он всегда выходил на первое место.
 
7,099
324
1,510
Добавляй его в post init
 
345
25
94
Неа, так тоже не вышло, если добавляю его в FMLPostInitializationEvent , то он просто не добавляется. (С FMLInitializationEvent тоже не получилось)
 
60
6
31
Для Таумкрафта-4 есть собственные методы, которые могут сортировать коллекцию аспектов

AspectList.java:
    /**
     * @return an array of all the aspects in this collection sorted by name
     */
    public Aspect[] getAspectsSorted() {
        try {
            Aspect[] out = aspects.keySet().toArray(new Aspect[]{});
            boolean change=false;
            do {
                change=false;
                for(int a=0;a<out.length-1;a++) {
                    Aspect e1 = out[a];
                    Aspect e2 = out[a+1];
                    if (e1!=null && e2!=null && e1.getTag().compareTo(e2.getTag())>0) {
                        out[a] = e2;
                        out[a+1] = e1;
                        change = true;
                        break;
                    }
                }
            } while (change==true);
            return out;
        } catch (Exception e) {
            return this.getAspects();
        }
    }
    
    /**
     * @return an array of all the aspects in this collection sorted by amount
     */
    public Aspect[] getAspectsSortedAmount() {
        try {
            Aspect[] out = aspects.keySet().toArray(new Aspect[1]);
            boolean change=false;
            do {
                change=false;
                for(int a=0;a<out.length-1;a++) {
                    int e1 = getAmount(out[a]);
                    int e2 = getAmount(out[a+1]);
                    if (e1>0 && e2>0 && e2>e1) {
                        Aspect ea = out[a];
                        Aspect eb = out[a+1];
                        out[a] = eb;
                        out[a+1] = ea;
                        change = true;
                        break;
                    }
                }
            } while (change==true);
            return out;
        } catch (Exception e) {
            return this.getAspects();
        }
    }
 
Сверху