Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Java (https://forum.zone-game.info/forumdisplay.php?f=126)
-   -   non-static method (https://forum.zone-game.info/showthread.php?t=15685)

KFan 27.08.2011 23:49

non-static method
 
Код:

        private int zone_id = L2ZoneType.getId();
данный код выдает ошибку при компиляции

Код:

    [javac] F:\SVN\L2jFrozen\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2PcInstance.java:6516: non-static method getId() cannot be referenced from a static context
    [javac]        private int zone_id = L2ZoneType.getId();

делал его и статическим, и заносил в статический класс, ефект 1 и тот же
прошу помощи у знающих людей

Суть в том что мне нужна проверка в какой зоне находиться перс

if(zone_id == Config.MY_PVP_ZONE_ID)

ну и естественно потом идет то что нужно сделать вдаваться в подробности не буду

Aquanox 28.08.2011 16:06

Re: non-static method
 
Пояснение ошибки: метод L2ZoneType#getId() не статический, его можно применять только к объектам класса L2ZoneType а не самому классу.

Покажи больше кода и информации - сейчас же все идет как угадывание неизвестного слова из 10 букв с по двум известным.

Насколько я помню (уже давно не слежу за l2j) все объекты зон содержатся в L2ZoneManager а у L2Player есть метод getZone(), тогда

if (player.getZone().getId() == Config.MY_PVP_ZONE_ID) { ... }
Code: Java

KFan 28.08.2011 17:58

Re: non-static method
 
я не профессионал в яве, как вызвать метод player?
или он изначально есть в L2PcInstance?

Добавлено через 16 часов 23 минуты
На правах апа


Текущее время: 04:34. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot