public void tickOnTrack(int trackX, int trackY, int trackZ) {
            if (type == Type.USER && charge < capacity && clock % DRAW_INTERVAL == 0) {
                IElectricGrid track = RailTools.getTrackObjectAt(minecart.worldObj, trackX, trackY, trackZ, IElectricGrid.class);
                if (track != null) {
                    double drawnFromTrack = track.getChargeHandler().removeCharge(capacity - charge);
                    if (drawnFromTrack > 0.0)
                        drewFromTrack = DRAW_INTERVAL * 4;
                    charge += drawnFromTrack;
                }
            }
        }