Ejemplo n.º 1
0
    private IEnumerator DoLoadHelm(EquipItemTable.EquipItemData data)
    {
        EquipModelTable.Data model_data = data.GetModelData(sexID);
        LoadObject           lo_head    = loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.PLAYER_HEAD, ResourceName.GetPlayerHead(data.GetModelID(sexID)));
        LoadObject           lo_face    = null;

        if (model_data.needFace)
        {
            lo_face = loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.PLAYER_FACE, ResourceName.GetPlayerFace(faceModelID));
        }
        yield return((object)loadingQueue.Wait());

        Transform head = lo_head.Realizes(_transform, _transform.get_gameObject().get_layer());

        head.set_localPosition(Vector3.get_zero());
        head.set_localRotation(Quaternion.get_identity());
        PlayerLoader.SetEquipColor(head, NGUIMath.IntToColor(data.modelColor0));
        nodeMain = head;
        yield return((object)this.StartCoroutine(InitRoopEffect(loadingQueue, head, SHADER_TYPE.NORMAL)));

        if (lo_face != null)
        {
            Transform face = lo_face.Realizes(head, _transform.get_gameObject().get_layer());
            _SetMannequinMaterial(face);
        }
        displayInfo = MonoBehaviourSingleton <GlobalSettingsManager> .I.uiModelRendering.helmDisplayInfo;
        OnLoadFinished();
    }
Ejemplo n.º 2
0
    private IEnumerator DoLoadSkillItem(SkillItemTable.SkillItemData data)
    {
        LoadObject lo = loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.ITEM_MODEL, ResourceName.GetSkillItemModel(data.modelID));

        yield return((object)loadingQueue.Wait());

        Transform item = lo.Realizes(_transform, _transform.get_gameObject().get_layer());

        item.set_localPosition(Vector3.get_zero());
        item.set_localRotation(Quaternion.get_identity());
        PlayerLoader.SetEquipColor(item, data.modelColor.ToColor());
        nodeMain    = item;
        displayInfo = MonoBehaviourSingleton <GlobalSettingsManager> .I.uiModelRendering.itemDisplayInfo;
        OnLoadFinished();
    }
    private IEnumerator DoInitialize()
    {
        SkillItemInfo skillItemInfo = resultData.itemData as SkillItemInfo;

        magiLoader = new GameObject("magimodel").AddComponent <ItemLoader>();
        int wait3 = 1;

        magiLoader.LoadSkillItem(skillItemInfo.tableID, magiLoader.get_transform(), magiLoader.get_gameObject().get_layer(), delegate
        {
            //IL_0010: Unknown result type (might be due to invalid IL or missing references)
            ((_003CDoInitialize_003Ec__Iterator135) /*Error near IL_009c: stateMachine*/)._003C_003Ef__this.magiLoader.nodeMain.get_gameObject().SetActive(false);
            ((_003CDoInitialize_003Ec__Iterator135) /*Error near IL_009c: stateMachine*/)._003Cwait_003E__1--;
        });
        wait3++;
        magiSymbolLoader = new GameObject("magisymbol").AddComponent <ItemLoader>();
        magiSymbolLoader.LoadSkillItemSymbol(skillItemInfo.tableID, magiSymbolLoader.get_transform(), magiSymbolLoader.get_gameObject().get_layer(), delegate
        {
            //IL_0010: Unknown result type (might be due to invalid IL or missing references)
            ((_003CDoInitialize_003Ec__Iterator135) /*Error near IL_0110: stateMachine*/)._003C_003Ef__this.magiSymbolLoader.nodeMain.get_gameObject().SetActive(false);
            ((_003CDoInitialize_003Ec__Iterator135) /*Error near IL_0110: stateMachine*/)._003Cwait_003E__1--;
        });
        LoadingQueue loadingQueue = new LoadingQueue(this);
        LoadObject   lo_direction = loadingQueue.Load(RESOURCE_CATEGORY.UI, "GrowSkillDirection", false);

        LoadObject[] materialLoadObjects = new LoadObject[materials.Length];
        for (int j = 0; j < materials.Length; j++)
        {
            SkillItemTable.SkillItemData data = Singleton <SkillItemTable> .I.GetSkillItemData(materials[j].tableID);

            materialLoadObjects[j] = loadingQueue.Load(RESOURCE_CATEGORY.ITEM_MODEL, ResourceName.GetSkillItemModel(data.modelID), false);
        }
        wait3++;
        NPCTable.NPCData npcData = Singleton <NPCTable> .I.GetNPCData(3);

        GameObject npcRoot = new GameObject("NPC");

        npcData.LoadModel(npcRoot, false, true, delegate
        {
            ((_003CDoInitialize_003Ec__Iterator135) /*Error near IL_0224: stateMachine*/)._003Cwait_003E__1--;
        }, false);
        CacheAudio(loadingQueue);
        yield return((object)loadingQueue.Wait());

        while (wait3 > 0)
        {
            yield return((object)null);
        }
        Object    directionObject    = lo_direction.loadedObject;
        Transform directionTransform = ResourceUtility.Realizes(directionObject, MonoBehaviourSingleton <StageManager> .I.stageObject, -1);

        GameObject[] materialObjects = (GameObject[])new GameObject[materials.Length];
        for (int i = 0; i < materials.Length; i++)
        {
            SkillItemTable.SkillItemData data2 = Singleton <SkillItemTable> .I.GetSkillItemData(materials[i].tableID);

            Transform item = ResourceUtility.Realizes(materialLoadObjects[i].loadedObject, -1);
            PlayerLoader.SetEquipColor(item, data2.modelColor.ToColor());
            materialObjects[i] = item.get_gameObject();
        }
        magiLoader.nodeMain.get_gameObject().SetActive(true);
        magiSymbolLoader.nodeMain.get_gameObject().SetActive(true);
        SkillGrowDirector d = directionTransform.GetComponent <SkillGrowDirector>();

        d.Init();
        d.SetNPC(npcRoot);
        d.SetMagiModel(magiLoader.get_gameObject(), magiSymbolLoader.get_gameObject(), materialObjects);
        d.SetMaterials(materials);
        director = d;
        base.Initialize();
    }
Ejemplo n.º 4
0
    private IEnumerator DoLoadFullBody(EquipItemTable.EquipItemData data)
    {
        EquipModelTable.Data model_data = data.GetModelData(sexID);
        bool       is_bdy          = data.type == EQUIPMENT_TYPE.ARMOR || data.type == EQUIPMENT_TYPE.VISUAL_ARMOR;
        bool       is_arm          = data.type == EQUIPMENT_TYPE.ARM || data.type == EQUIPMENT_TYPE.VISUAL_ARM;
        bool       is_leg          = data.type == EQUIPMENT_TYPE.LEG || data.type == EQUIPMENT_TYPE.VISUAL_LEG;
        int        sex_id          = sexID;
        int        face_id         = faceModelID;
        int        hair_id         = -1;
        int        body_id         = (!is_bdy) ? MonoBehaviourSingleton <GlobalSettingsManager> .I.playerVisual.mannequinBodyIDs[sex_id] : data.GetModelID(sex_id);
        int        arm_id          = (!is_arm) ? (-1) : data.GetModelID(sex_id);
        int        leg_id          = (!is_leg) ? MonoBehaviourSingleton <GlobalSettingsManager> .I.playerVisual.mannequinLegIDs[sex_id] : data.GetModelID(sex_id);
        Color      mannequin_color = MonoBehaviourSingleton <GlobalSettingsManager> .I.playerVisual.mannequinSkinColor;
        Color      skin_color      = mannequin_color;
        Color      hair_color      = mannequin_color;
        Color      equip_color     = NGUIMath.IntToColor(data.modelColor0);
        LoadObject lo_face         = (!model_data.needFace) ? null : loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.PLAYER_FACE, ResourceName.GetPlayerFace(face_id));
        LoadObject lo_hair         = (hair_id <= -1) ? null : loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.PLAYER_HEAD, ResourceName.GetPlayerHead(hair_id));
        LoadObject lo_body         = loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.PLAYER_BDY, ResourceName.GetPlayerBody(body_id));
        LoadObject lo_arm          = (!model_data.needArm || arm_id <= -1) ? null : loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.PLAYER_ARM, ResourceName.GetPlayerArm(arm_id));
        LoadObject lo_leg          = (!model_data.needLeg || leg_id <= -1) ? null : loadingQueue.LoadAndInstantiate(RESOURCE_CATEGORY.PLAYER_LEG, ResourceName.GetPlayerLeg(leg_id));

        yield return((object)loadingQueue.Wait());

        Transform body = lo_body.Realizes(_transform, _transform.get_gameObject().get_layer());

        body.set_localPosition(Vector3.get_zero());
        body.set_localRotation(Quaternion.get_identity());
        PlayerLoader.SetSkinAndEquipColor(body, skin_color, (!is_bdy) ? mannequin_color : equip_color, 0f);
        if (!is_bdy)
        {
            _SetMannequinMaterial(body);
        }
        else
        {
            yield return((object)this.StartCoroutine(InitRoopEffect(loadingQueue, body, SHADER_TYPE.NORMAL)));
        }
        nodeMain = body;
        SkinnedMeshRenderer body_skin  = body.GetComponentInChildren <SkinnedMeshRenderer>();
        Transform           head_node  = Utility.Find(body, "Head");
        Transform           L_Upperarm = Utility.Find(body, "L_Upperarm");
        Transform           R_Upperarm = Utility.Find(body, "R_Upperarm");

        if (L_Upperarm != null && R_Upperarm != null)
        {
            Vector3 angle = L_Upperarm.get_localEulerAngles();
            angle.y = -40f;
            L_Upperarm.set_localEulerAngles(angle);
            angle   = R_Upperarm.get_localEulerAngles();
            angle.y = -40f;
            R_Upperarm.set_localEulerAngles(angle);
        }
        if (lo_face != null)
        {
            Transform face = lo_face.Realizes(head_node, _transform.get_gameObject().get_layer());
            PlayerLoader.SetSkinColor(face, skin_color);
            _SetMannequinMaterial(face);
        }
        if (lo_hair != null)
        {
            Transform hair = lo_hair.Realizes(head_node, _transform.get_gameObject().get_layer());
            PlayerLoader.SetEquipColor(hair, hair_color);
            _SetMannequinMaterial(hair);
        }
        if (lo_arm != null)
        {
            Transform arm = PlayerLoader.AddSkin(lo_arm, body_skin, _transform.get_gameObject().get_layer());
            PlayerLoader.SetSkinAndEquipColor(arm, skin_color, (!is_arm) ? mannequin_color : equip_color, (!is_arm) ? 0.0001f : model_data.GetZBias());
            if (is_arm)
            {
                PlayerLoader.InvisibleBodyTriangles(model_data.bodyDraw, body_skin);
            }
            if (!is_arm)
            {
                _SetMannequinMaterial(arm);
            }
        }
        if (lo_leg != null)
        {
            Transform leg = PlayerLoader.AddSkin(lo_leg, body_skin, _transform.get_gameObject().get_layer());
            PlayerLoader.SetSkinAndEquipColor(leg, skin_color, (!is_leg) ? mannequin_color : equip_color, (!is_leg) ? 0.0001f : model_data.GetZBias());
            if (!is_leg)
            {
                _SetMannequinMaterial(leg);
            }
        }
        if (is_bdy)
        {
            displayInfo = MonoBehaviourSingleton <GlobalSettingsManager> .I.uiModelRendering.armorDisplayInfo;
        }
        else if (is_arm)
        {
            displayInfo = MonoBehaviourSingleton <GlobalSettingsManager> .I.uiModelRendering.armDisplayInfo;
        }
        else if (is_leg)
        {
            displayInfo = MonoBehaviourSingleton <GlobalSettingsManager> .I.uiModelRendering.legDisplayInfo;
        }
        OnLoadFinished();
    }