WARNING в лог файле

Тема в разделе "Newbie questions / Вопросы новичков", создана пользователем vasilachyk, 22 ноя 2017.

  1. vasilachyk

    vasilachyk Капля-Доверия
    Админы не рекомендуют.

    Регистрация:
    17 ноя 2017
    Сообщения:
    156
    Симпатии:
    11
    Skype:
    l2meganet.org.ua
    package net.sf.l2j.gameserver.datatables;

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.LineNumberReader;
    import java.util.Map;
    import java.util.StringTokenizer;
    import java.util.logging.Logger;

    import javolution.util.FastMap;
    import net.sf.l2j.Config;
    import net.sf.l2j.gameserver.idfactory.IdFactory;
    import net.sf.l2j.gameserver.instancemanager.ClanHallManager;
    import net.sf.l2j.gameserver.model.actor.instance.L2DoorInstance;
    import net.sf.l2j.gameserver.model.entity.ClanHall;
    import net.sf.l2j.gameserver.templates.L2CharTemplate;
    import net.sf.l2j.gameserver.templates.StatsSet;

    public class DoorTable
    {
    private static Logger _log = Logger.getLogger(DoorTable.class.getName());

    private Map<Integer,L2DoorInstance> _staticItems;

    private static DoorTable _instance;

    public static DoorTable getInstance()
    {
    if (_instance == null)
    _instance = new DoorTable();

    return _instance;
    }

    public DoorTable()
    {
    _staticItems = new FastMap<Integer,L2DoorInstance>();
    //parseData();
    }

    public void reloadAll()
    {
    respawn();
    }
    public void respawn()
    {
    // L2DoorInstance[] currentDoors = getDoors();
    _staticItems = null;
    _instance = null;
    _instance = new DoorTable();
    }

    public void parseData()
    {
    LineNumberReader lnr = null;
    try
    {
    File doorData = new File(Config.DATAPACK_ROOT, "data/door.csv");
    lnr = new LineNumberReader(new BufferedReader(new FileReader(doorData)));

    String line = null;
    _log.warning("Searching clan halls doors:");

    while ((line = lnr.readLine()) != null)
    {
    if (line.trim().length() == 0 || line.startsWith("#"))
    continue;

    L2DoorInstance door = parseList(line);
    _staticItems.put(door.getDoorId(), door);
    door.spawnMe(door.getX(), door.getY(),door.getZ());
    ClanHall clanhall = ClanHallManager.getInstance().getNearbyClanHall(door.getX(), door.getY(), 500);
    if (clanhall != null)
    {
    clanhall.getDoors().add(door);
    door.setClanHall(clanhall);
    if (Config.DEBUG)
    _log.warning("door "+door.getDoorName()+" attached to ch "+clanhall.getName());
    }
    }

    _log.config("DoorTable: Loaded " + _staticItems.size() + " Door Templates.");
    }
    catch (FileNotFoundException e)
    {
    _initialized = false;
    _log.warning("door.csv is missing in data folder");
    }
    catch (IOException e)
    {
    _initialized = false;
    _log.warning("error while creating door table " + e);
    }
    finally
    {
    try { lnr.close(); } catch (Exception e1) { /* ignore problems */ }
    }
    }

    public static L2DoorInstance parseList(String line)
    {
    StringTokenizer st = new StringTokenizer(line, ";");

    String name = st.nextToken();
    int id = Integer.parseInt(st.nextToken());
    int x = Integer.parseInt(st.nextToken());
    int y = Integer.parseInt(st.nextToken());
    int z = Integer.parseInt(st.nextToken());
    int rangeXMin = Integer.parseInt(st.nextToken());
    int rangeYMin = Integer.parseInt(st.nextToken());
    int rangeZMin = Integer.parseInt(st.nextToken());
    int rangeXMax = Integer.parseInt(st.nextToken());
    int rangeYMax = Integer.parseInt(st.nextToken());
    int rangeZMax = Integer.parseInt(st.nextToken());
    int hp = Integer.parseInt(st.nextToken());
    int pdef = Integer.parseInt(st.nextToken());
    int mdef = Integer.parseInt(st.nextToken());
    boolean unlockable = false;

    if (st.hasMoreTokens())
    unlockable = Boolean.parseBoolean(st.nextToken());

    if (rangeXMin > rangeXMax) _log.severe("Error in door data, ID:"+id);
    if (rangeYMin > rangeYMax) _log.severe("Error in door data, ID:"+id);
    if (rangeZMin > rangeZMax) _log.severe("Error in door data, ID:"+id);
    int collisionRadius; // (max) radius for movement checks
    if ((rangeXMax - rangeXMin) > (rangeYMax - rangeYMin))
    collisionRadius = rangeYMax - rangeYMin;
    else
    collisionRadius = rangeXMax - rangeXMin;

    StatsSet npcDat = new StatsSet();
    npcDat.set("npcId", id);
    npcDat.set("level", 0);
    npcDat.set("jClass", "door");

    npcDat.set("baseSTR", 0);
    npcDat.set("baseCON", 0);
    npcDat.set("baseDEX", 0);
    npcDat.set("baseINT", 0);
    npcDat.set("baseWIT", 0);
    npcDat.set("baseMEN", 0);

    npcDat.set("baseShldDef", 0);
    npcDat.set("baseShldRate", 0);
    npcDat.set("baseAccCombat", 38);
    npcDat.set("baseEvasRate", 38);
    npcDat.set("baseCritRate", 38);

    //npcDat.set("name", "");
    npcDat.set("collision_radius", collisionRadius);
    npcDat.set("collision_height", rangeZMax - rangeZMin);
    npcDat.set("sex", "male");
    npcDat.set("type", "");
    npcDat.set("baseAtkRange", 0);
    npcDat.set("baseMpMax", 0);
    npcDat.set("baseCpMax", 0);
    npcDat.set("rewardExp", 0);
    npcDat.set("rewardSp", 0);
    npcDat.set("basePAtk", 0);
    npcDat.set("baseMAtk", 0);
    npcDat.set("basePAtkSpd", 0);
    npcDat.set("aggroRange", 0);
    npcDat.set("baseMAtkSpd", 0);
    npcDat.set("rhand", 0);
    npcDat.set("lhand", 0);
    npcDat.set("armor", 0);
    npcDat.set("baseWalkSpd", 0);
    npcDat.set("baseRunSpd", 0);
    npcDat.set("name", name);
    npcDat.set("baseHpMax", hp);
    npcDat.set("baseHpReg", 3.e-3f);
    npcDat.set("baseMpReg", 3.e-3f);
    npcDat.set("basePDef", pdef);
    npcDat.set("baseMDef", mdef);

    L2CharTemplate template = new L2CharTemplate(npcDat);
    L2DoorInstance door = new L2DoorInstance(IdFactory.getInstance().getNextId(),template, id, name, unlockable);
    door.setRange(rangeXMin, rangeYMin, rangeZMin, rangeXMax, rangeYMax, rangeZMax);
    try
    {
    door.setMapRegion(MapRegionTable.getInstance().getMapRegion(x,y));
    }
    catch (Exception e)
    {
    _log.severe("Error in door data, ID:"+id);
    }
    door.setCurrentHpMp(door.getMaxHp(), door.getMaxMp());
    door.setOpen(false);
    door.setXYZInvisible(x,y,z);

    return door;
    }

    public boolean isInitialized()
    {
    return _initialized;
    }

    private boolean _initialized = true;

    public L2DoorInstance getDoor(Integer id)
    {
    return _staticItems.get(id);
    }

    public void putDoor(L2DoorInstance door)
    {
    _staticItems.put(door.getDoorId(), door);
    }

    public L2DoorInstance[] getDoors()
    {
    L2DoorInstance[] _allTemplates = _staticItems.values().toArray(new L2DoorInstance[_staticItems.size()]);
    return _allTemplates;
    }

    /**
    * Performs a check and sets up a scheduled task for
    * those doors that require auto opening/closing.
    */
    public void checkAutoOpen()
    {
    for (L2DoorInstance doorInst : getDoors())
    // Garden of Eva (every 7 minutes)
    if (doorInst.getDoorName().startsWith("goe"))
    doorInst.setAutoActionDelay(420000);

    // Tower of Insolence (every 5 minutes)
    else if (doorInst.getDoorName().startsWith("aden_tower"))
    doorInst.setAutoActionDelay(300000);
    }

    public boolean checkIfDoorsBetween(int x, int y, int z, int tx, int ty, int tz)
    {
    int region;
    try
    {
    region = MapRegionTable.getInstance().getMapRegion(x,y);
    }
    catch (Exception e)
    {
    return false;
    }

    for (L2DoorInstance doorInst : getDoors())
    {
    if (doorInst.getMapRegion() != region)
    continue;
    if (doorInst.getXMax() == 0)
    continue;

    // line segment goes through box
    // heavy approximation disabling some shooting angles especially near 2-piece doors
    // but most calculations should stop short
    // phase 1, x
    if (x <= doorInst.getXMax() && tx >= doorInst.getXMin() || tx <= doorInst.getXMax() && x >= doorInst.getXMin())
    {
    //phase 2, y
    if (y <= doorInst.getYMax() && ty >= doorInst.getYMin() || ty <= doorInst.getYMax() && y >= doorInst.getYMin())
    {
    // phase 3, z (there's a small problem when the other is above/under door level..)
    if (z >= doorInst.getZMin() && z <= doorInst.getZMax() && tz >= doorInst.getZMin() && tz <= doorInst.getZMax())
    {
    if (!(doorInst.getCurrentHp() <= 0 || doorInst.getOpen() == true))
    return true;
    }
    }
    }
    }
    return false;
    }
    }
    как ето понять как исправить
    Код:
    2017.11.22 22:34:36,581    WARNING    1    net.sf.l2j.gameserver.datatables.DoorTable    Searching clan halls doors:
     
    #1 vasilachyk, 22 ноя 2017
    Последнее редактирование: 22 ноя 2017
  2. Строка 581 не?
     
  3. Demoncool

    Demoncool Активный участник

    Регистрация:
    17 ноя 2017
    Сообщения:
    32
    Симпатии:
    6
    Никак, это не ошибка
    Можешь исправить
    _log.warning("Searching clan halls doors:");

    Лог варнинг на лог инфо
     
  4. vasilachyk

    vasilachyk Капля-Доверия
    Админы не рекомендуют.

    Регистрация:
    17 ноя 2017
    Сообщения:
    156
    Симпатии:
    11
    Skype:
    l2meganet.org.ua
    где ето вставить в ядре
     
  5. vasilachyk

    vasilachyk Капля-Доверия
    Админы не рекомендуют.

    Регистрация:
    17 ноя 2017
    Сообщения:
    156
    Симпатии:
    11
    Skype:
    l2meganet.org.ua
    все спс зделал
     
    #5 vasilachyk, 22 ноя 2017
    Последнее редактирование: 22 ноя 2017
  6. vasilachyk

    vasilachyk Капля-Доверия
    Админы не рекомендуют.

    Регистрация:
    17 ноя 2017
    Сообщения:
    156
    Симпатии:
    11
    Skype:
    l2meganet.org.ua
    нашол
     

Партнеры