コード例 #1
0
    public void Awake()
    {
        if (_instance != null && _instance != this)
        {
            // if obj is a duplicate, destroy it
            Destroy(gameObject);
            return;
        }
        else
        {
            _instance = this;
            DontDestroyOnLoad(gameObject);
        }

        // init save data manager
        SaveDataHandler.instance.Initialize();

        Debug.Log("platform manager awake");

        if (platformData == null)
        {
            platformData = AssetBundleManager.LoadObjectFromBundle <PlatformDataScriptObj>("pc_platform/prefabs", "scriptobj_platform_pc", false);
        }

        if (SceneManager.GetActiveScene().name != "_Intro_Scene")
        {
            Init();
        }
    }
コード例 #2
0
    public void Init()
    {
        if (isInitialized)
        {
            return;
        }

        // load correct platform data for game

        AssetBundleManager.UnloadAssetBundle("pc_platform/prefabs", true);
        platformData = AssetBundleManager.LoadObjectFromBundle <PlatformDataScriptObj>("pc_platform/prefabs", "scriptobj_platform_pc");

        if (platformData == null)
        {
            Debug.LogError("Platform data bundle was not loaded!");
            return;
        }

        // load default action images into dicionary
        foreach (var categoryData in platformData.categoryActionImages)
        {
            Dictionary <int, Sprite> actionImages = new Dictionary <int, Sprite>();
            foreach (var actionImg in categoryData.actionImages)
            {
                if (!actionImages.ContainsKey(actionImg.actionID))
                {
                    actionImages[actionImg.actionID] = actionImg.actionSprite;
                }
            }
            if (!categoryActionImages.ContainsKey(categoryData.categoryID))
            {
                categoryActionImages[categoryData.categoryID] = actionImages;
            }
        }

        isInitialized = true;
    }