2017-03-03 26 views
3

我有Tiled2Unity插件。當我開始在Unity中構建我的遊戲版本時,無論是獨立版本還是其他任何內容,我都會收到以下錯誤:「編譯玩家錯誤,因爲腳本在編輯器中有編譯錯誤」構建項目時出錯:構建播放器時出錯,因爲腳本在編輯器中有編譯錯誤

然後它指向我class

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

using UnityEditor; 

namespace Tiled2Unity 
{ 
    public class CircleObject : TmxObject 
    { 
    } 
} 

有人能幫我弄清楚是什麼問題?

回答

5

您不能構建任何包含using UnityEditor;UnityEditor;命名空間的class/API的腳本。這就是爲什麼你應該把任何包含這些腳本的腳本放在名爲編輯器的文件夾中。

當Unity構建您的項目時,它會忽略放置在此文件夾中的任何腳本,因爲它將它們視爲編輯器腳本或插件。

你有三種選擇:

卸下襬臂從腳本using UnityEditor;

。將腳本放置在名爲的文件夾中編輯

。使用Unity的預處理器指令determie時不要與using UnityEditor;

編譯你可以做到這一點通過更換:

using UnityEditor; 

#if UNITY_EDITOR 
using UnityEditor; 
#endif 

我會去#2。爲任何編輯器創建一個不同的腳本,並將其放入編輯器文件夾中。請注意,在構建項目時,Unity不會編譯此文件夾中的任何腳本。此文件夾中的腳本只能在編輯器中運行。

+0

我該如何判斷我的代碼的其他部分是否包含該腳本?該特定腳本通過Tiled2Unity導入Unity。 – Letholor

+0

我不知道'Tiled2Unity'腳本是什麼,但總是嘗試編寫自己的代碼,而不是導入其他人編寫的腳本。你知道這是問題,當你可以**在編輯器中運行它**,但**不能**建立它。所以,你必須查看其他腳本並刪除它們。如果它建立良好,那麼他們都走了! – Programmer