2016-04-13 51 views
0

好了,所以我有一個名爲ScriptWorker一個主類,並命名爲Scriptworker$State的Java主類和子類 - Eclipse的

但是ScriptWorker沒有認識到Scriptworker$State

舉例子類,

if (Login.getLoginState().equals(Login.STATE.WELCOMESCREEN)) { 
    return ScriptWorker.State.ON_WELCOME_SCREEN; 
} 

if (Login.getLoginState().equals(Login.STATE.INGAME)) { 
    RSInterfaceMaster[] ints = Interfaces.getAll(); 
    for (RSInterfaceMaster i : ints) { 
    if ((i.getChild(0).getUID() == 24313856) || (i.getUID() == 35913742)) { 
     return ScriptWorker.State.TUTORIAL_ISLAND; 
    } 
    } 

錯誤讀取,

國家是問題的地方

狀態無法解析或不是字段。

編輯

enum State { 
    ON_WELCOME_SCREEN("ON_WELCOME_SCREEN", 1), 
    TUTORIAL_ISLAND("TUTORIAL_ISLAND", 8), 
    private State(final String s, final int n) { } 
} 
+7

你能顯示更多代碼嗎? – Stultuske

+0

完成希望有幫助,但問題在於STATE其自己..沒有其他 –

+0

嗯,我認爲它反對'Runescape's'的服務條款,爲它做一個腳本/機器人。還爲什麼你有'**國家**' – 3kings

回答

0

如枚舉必須是靜態的評論指出通過@ user902383像這樣訪問:

Login.STATE 

,除非這個IFS是在同一個包作爲腳本工作者,它也需要公開。

我希望它有幫助,如果你可以提供ScriptWorker類(至少是重要的部分),我可以更精確。