Помогите нубу

26
7
Помогите нубу

Можно ли это в 1.7.10

Java:
    private static class Ticker{

        private List<Task> queue = new ArrayList<Task>();
        private List<Task> scheduledNow = new ArrayList<Task>();

        private Side side;

        private Ticker(Side tickerSide){
            side = tickerSide;
        }

        @SubscribeEvent
        public void tick(TickEvent e){
            if(e.side == side && e.type == (side == Side.SERVER ? Type.SERVER : Type.CLIENT) && e.phase == Phase.START){
                synchronized(queue){
                    int idx = queue.size();
                    while(--idx >= 0){
                        Task task = queue.get(idx);
                        if(--task.ticks == 0){
                            queue.remove(idx);
                            scheduledNow.add(task);
                        }
                    }
                }

                int idx = scheduledNow.size();
                while(--idx >= 0){
                    scheduledNow.remove(idx).runnable.run();
                }
            }
        }
    }


Заменить на это в 1.6.4

Java:
    public static class Ticker
    {
        private static List<Task> queue = new ArrayList<Task>();
        private static List<Task> scheduledNow = new ArrayList<Task>();

        private Side side;

        private Ticker(Side tickerSide){
            side = tickerSide;
        }

        public static ITickHandler tickHandler = new ITickHandler()
        {
            @Override
            public void tickStart(EnumSet<TickType> type, Object... tickData)
            {
                Log.print("Nibba");
                synchronized (queue)
                {
                    int idx = queue.size();
                    while (--idx >= 0)
                    {
                        Task task = queue.get(idx);
                        if (--task.ticks == 0)
                        {
                            queue.remove(idx);
                            scheduledNow.add(task);
                        }
                    }
                }

                int idx = scheduledNow.size();
                while (--idx >= 0)
                {
                    scheduledNow.remove(idx).runnable.run();
                }
            }

            @Override
            public void tickEnd(EnumSet<TickType> type, Object... tickData)
            {
            }

            @Override
            public EnumSet<TickType> ticks() {
                return EnumSet.of(TickType.CLIENT);
            }

            @Override
            public String getLabel() {
                return "GPUMemorySchedulerTickHandler";
            }
        };

    }
 
Сверху