-1
我試圖調用類Player,但它要求我將一些方法更改爲靜態,從而創建800個警告並破壞我的整個服務器。 唯一的解決方案是修復800個警告? (告訴我訪問該方法以靜態方式如何在不使靜態的情況下調用一個類
有幾件事情需要注意:? 我需要做的是沒有把Player播放器的方法,如: 公共無效方法名(Player播放器){ 並做到這一點不通過構造函數,因爲我已經不能適用於我想要做的代碼構造。
整個方法是這樣的
public static void main(String args[]) throws Exception {
//args = new String[] { "true", "false", "true" };
if (args.length != 3) {
System.err.println("USE: guimode(boolean) debug(boolean) hosted");
return;
}
Config.HOSTED = Boolean.parseBoolean(args[2]);
Config.DEBUG = Boolean.parseBoolean(args[1]);
long currentTime = System.currentTimeMillis();
Logger.log("Launcher", "Initiating Cache...");
Cache.init();
ItemEquipIds.init();
Huffman.init();
Logger.log("Launcher", "Initiating Data Files...");
IPBanL.init();
PkRank.init();
TeleportLocations.initTeleportLocations();
DTRank.init();
MapContainersXteas.init();
MapAreas.init();
ObjectSpawns.init();
NPCSpawns.init();
NPCCombatDefinitionsL.init();
NPCBonuses.init();
NPCDrops.init();
ItemExamines.init();
ItemBonuses.init();
ShopsHandler.init();
NPCDefinitions.getNPCDefinitions(20);
Logger.log("Launcher", "Initiating Fishing Spots...");
FishingSpotsHandler.init();
Logger.log("Launcher", "Initiating NPC Combat Scripts...");
CombatScriptsHandler.init();
Logger.log("Launcher", "Initiating Dialogues...");
DialogueHandler.init();
Logger.log("Launcher", "Initiating Controlers...");
ControlerHandler.init();
Logger.log("Launcher", "Initiating Cutscenes...");
CutscenesHandler.init();
Logger.log("Launcher", "Initiating Friend Chats Manager...");
FriendChatsManager.init();
Logger.log("Launcher", "Initiating Cores Manager...");
CoresManager.init();
Logger.log("Launcher", "Initiating World...");
World.init();
Logger.log("Launcher", "Initiating Region Builder...");
RegionBuilder.init();
Logger.log("Launcher", "Initiating Server Channel Handler...");
NPCSpawner.spawnNPCS();
try {
ServerChannelHandler.init();
} catch (ChannelException e) {
e.printStackTrace();
Logger.log("Launcher",
"Failed Initiating Server Channel Handler. Shutting down...");
System.exit(1);
return;
}
// Logger.log("Launcher", "Initiating Server Manager...");
// ServerManager.main(null);
System.err.println("Server took "
+ (System.currentTimeMillis() - currentTime)
+ " miliseconds to start up.");
addAccountsSavingTask();
addCleanMemoryTask();
for (;;)
{
try {
Thread.sleep(10000);
player.sendMessage("[Server Message]: Remember to vote!");
Thread.sleep(10000);
player.sendMessage("[<img=1>Server Message<img=1>]: Donate to Lubricant and ONLY Lubricant!");
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
另外請注意,我不能改變我的構造函數的球員,或有一個沒有任何啓動的新構造函數(IE公共播放器{}) 這裏是我的球員構造:
公共類播放器擴展實體{
public Player(String password) {
super(Config.START_PLAYER_LOCATION);
trampAmount = 1;
setHitpoints(100);
this.password = password;
appearence = new Appearence();
inventory = new Inventory();
equipment = new Equipment();
skills = new Skills();
combatDefinitions = new CombatDefinitions();
prayer = new Prayer();
bank = new Bank();
controlerManager = new ControlerManager();
musicsManager = new MusicsManager();
emotesManager = new EmotesManager();
friendsIgnores = new FriendsIgnores();
dominionTower = new DominionTower();
charges = new ChargesManager();
runEnergy = 100;
allowChatEffects = true;
mouseButtons = true;
pouches = new int[4];
killedBarrowBrothers = new boolean[6];
SkillCapeCustomizer.resetSkillCapes(this);
}
你究竟在哪裏使用Player player = new Player(「password」); ? – 2012-02-11 06:59:28
多個類。 – 2012-02-11 07:02:06
你打電話給班級玩家是什麼意思?你不能調用一個類,只能調用一個方法。你能給出更明確的代碼來說明問題嗎?上面的代碼包含了很多與實際問題沒有關係的代碼。還缺少像聲明和播放器初始化那樣的部分。 – Eelke 2012-02-11 07:21:10