Exemplo n.º 1
0
    public Player CreateGuest(int id, CharaInfo charaInfo, PlayerLoader.OnCompleteLoad callback = null)
    {
        //IL_0011: Unknown result type (might be due to invalid IL or missing references)
        //IL_0023: Unknown result type (might be due to invalid IL or missing references)
        //IL_0028: Unknown result type (might be due to invalid IL or missing references)
        //IL_0045: Unknown result type (might be due to invalid IL or missing references)
        //IL_004a: Unknown result type (might be due to invalid IL or missing references)
        //IL_004c: Unknown result type (might be due to invalid IL or missing references)
        CreatePlayerInfo createPlayerInfo = new CreatePlayerInfo();

        createPlayerInfo.charaInfo = charaInfo;
        Player  player         = CreatePlayer(id, createPlayerInfo, false, Vector3.get_zero(), 0f, null, callback);
        Vector3 appearPosGuest = Vector3.get_zero();

        if (boss != null)
        {
            appearPosGuest = boss._transform.get_position();
        }
        player.SetAppearPosGuest(appearPosGuest);
        return(player);
    }
Exemplo n.º 2
0
    public Player CreateNonPlayer(int id, PlayerLoader.OnCompleteLoad callback = null)
    {
        //IL_0005: Unknown result type (might be due to invalid IL or missing references)
        //IL_0025: Unknown result type (might be due to invalid IL or missing references)
        //IL_002a: Unknown result type (might be due to invalid IL or missing references)
        //IL_0047: Unknown result type (might be due to invalid IL or missing references)
        //IL_004c: Unknown result type (might be due to invalid IL or missing references)
        //IL_004e: Unknown result type (might be due to invalid IL or missing references)
        CreatePlayerInfo.ExtentionInfo extention_info = null;
        Player player = CreateNonPlayer(id, extention_info, Vector3.get_zero(), 0f, null, callback);

        if (player == null)
        {
            return(null);
        }
        Vector3 appearPosGuest = Vector3.get_zero();

        if (boss != null)
        {
            appearPosGuest = boss._transform.get_position();
        }
        player.SetAppearPosGuest(appearPosGuest);
        return(player);
    }
Exemplo n.º 3
0
    public Player CreatePlayer(int id, CreatePlayerInfo create_info, bool self, Vector3 pos, float dir, PlayerTransferInfo transfer_info = null, PlayerLoader.OnCompleteLoad callback = null)
    {
        //IL_001d: Unknown result type (might be due to invalid IL or missing references)
        //IL_0022: Expected O, but got Unknown
        //IL_003a: Unknown result type (might be due to invalid IL or missing references)
        //IL_010a: Unknown result type (might be due to invalid IL or missing references)
        //IL_0123: Unknown result type (might be due to invalid IL or missing references)
        //IL_01c9: Unknown result type (might be due to invalid IL or missing references)
        if (create_info.charaInfo == null)
        {
            Log.Error("StageObjectManager.CreatePlayer() charaInfo is NULL");
            return(null);
        }
        GameObject val = new GameObject();

        val.set_name("Player:" + id);
        val.get_transform().set_parent(base._transform);
        int num = 0;

        if (create_info.extentionInfo != null)
        {
            num = create_info.extentionInfo.npcDataID;
        }
        bool   flag = num > 0;
        Player player;

        if (self)
        {
            player = val.AddComponent <Self>();
            if (MonoBehaviourSingleton <InGameCameraManager> .IsValid())
            {
                MonoBehaviourSingleton <InGameCameraManager> .I.target = player._transform;
            }
        }
        else if (flag)
        {
            player = val.AddComponent <NonPlayer>();
            NonPlayer nonPlayer = player as NonPlayer;
            nonPlayer.npcId = num;
            if (Singleton <NPCTable> .IsValid())
            {
                nonPlayer.npcTableData = Singleton <NPCTable> .I.GetNPCData(num);
            }
            nonPlayer.lv       = create_info.extentionInfo.npcLv;
            nonPlayer.lv_index = create_info.extentionInfo.npcLvIndex;
        }
        else
        {
            player = val.AddComponent <Player>();
        }
        player.id = id;
        player._transform.set_position(pos);
        player._transform.set_eulerAngles(new Vector3(0f, dir, 0f));
        player.SetState(create_info, transfer_info);
        if (MonoBehaviourSingleton <InGameRecorder> .IsValid())
        {
            int userId = create_info.charaInfo.userId;
            InGameRecorder.PlayerRecord playerRecord = player.record = MonoBehaviourSingleton <InGameRecorder> .I.GetPlayer(id, userId);

            playerRecord.isSelf      = self;
            playerRecord.isNPC       = flag;
            playerRecord.charaInfo   = create_info.charaInfo;
            playerRecord.beforeLevel = create_info.charaInfo.level;
        }
        if (self)
        {
            player.AddController <SelfController>();
        }
        else if (flag)
        {
            player.AddController <NpcController>();
        }
        if (MonoBehaviourSingleton <InGameSettingsManager> .IsValid())
        {
            EffectPlayProcessor component = MonoBehaviourSingleton <InGameSettingsManager> .I.get_gameObject().GetComponent <EffectPlayProcessor>();

            if (component != null && component.effectSettings != null)
            {
                player.effectPlayProcessor = val.AddComponent <EffectPlayProcessor>();
                player.effectPlayProcessor.effectSettings = component.effectSettings;
            }
        }
        PlayerLoadInfo playerLoadInfo = new PlayerLoadInfo();

        if (player.weaponData != null)
        {
            playerLoadInfo.SetEquipWeapon(create_info.charaInfo.sex, (uint)player.weaponData.eId);
        }
        playerLoadInfo.Apply(create_info.charaInfo, false, true, true, true);
        player.Load(playerLoadInfo, callback);
        player.OnSetPlayerStatus(create_info.charaInfo.level, create_info.charaInfo.atk, create_info.charaInfo.def, create_info.charaInfo.hp, false, transfer_info);
        player.StartFieldBuff(MonoBehaviourSingleton <FieldManager> .IsValid() ? MonoBehaviourSingleton <FieldManager> .I.currentFieldBuffId : 0);
        return(player);
    }
Exemplo n.º 4
0
    public Player CreateNonPlayer(int id, CreatePlayerInfo.ExtentionInfo extention_info, Vector3 pos, float dir, PlayerTransferInfo transfer_info = null, PlayerLoader.OnCompleteLoad callback = null)
    {
        //IL_0237: Unknown result type (might be due to invalid IL or missing references)
        CreatePlayerInfo createPlayerInfo = new CreatePlayerInfo();

        createPlayerInfo.charaInfo = new CharaInfo();
        bool flag = QuestManager.IsValidInGame() && MonoBehaviourSingleton <QuestManager> .I.GetVorgonQuestType() != QuestManager.VorgonQuetType.NONE;

        bool flag2 = false;

        if (extention_info != null)
        {
            createPlayerInfo.extentionInfo = extention_info;
        }
        else
        {
            createPlayerInfo.extentionInfo = new CreatePlayerInfo.ExtentionInfo();
            flag2 = true;
        }
        NPCTable.NPCData nPCData = null;
        if (flag2)
        {
            List <int> list = new List <int>();
            int        i    = 0;
            for (int count = nonplayerList.Count; i < count; i++)
            {
                NonPlayer nonPlayer = nonplayerList[i] as NonPlayer;
                if (nonPlayer != null)
                {
                    list.Add(nonPlayer.npcId);
                }
            }
            nPCData = Singleton <NPCTable> .I.GetNPCDataRandom(NPCTable.NPC_TYPE.FIGURE, list);

            if (nPCData != null)
            {
                createPlayerInfo.extentionInfo.npcDataID = nPCData.id;
            }
        }
        else
        {
            nPCData = Singleton <NPCTable> .I.GetNPCData(createPlayerInfo.extentionInfo.npcDataID);
        }
        if (flag)
        {
            int npc_id = VorgonPreEventController.NPC_ID_LIST[id % 3];
            nPCData = Singleton <NPCTable> .I.GetNPCData(npc_id);
        }
        if (nPCData == null)
        {
            return(null);
        }
        nPCData.CopyCharaInfo(createPlayerInfo.charaInfo);
        NpcLevelTable.NpcLevelData npcLevelData = null;
        if (flag2)
        {
            int lv = 1;
            if (QuestManager.IsValidInGame() && MonoBehaviourSingleton <QuestManager> .I.GetCurrentQuestEnemyID() > 0)
            {
                lv = MonoBehaviourSingleton <QuestManager> .I.GetCurrentQuestEnemyLv();
            }
            if (flag)
            {
                lv = 80;
            }
            npcLevelData = Singleton <NpcLevelTable> .I.GetNpcLevelRandom((uint)lv);

            if (npcLevelData != null)
            {
                createPlayerInfo.extentionInfo.npcLv      = (int)npcLevelData.lv;
                createPlayerInfo.extentionInfo.npcLvIndex = npcLevelData.lvIndex;
            }
        }
        else
        {
            npcLevelData = Singleton <NpcLevelTable> .I.GetNpcLevel((uint)createPlayerInfo.extentionInfo.npcLv, createPlayerInfo.extentionInfo.npcLvIndex);
        }
        if (npcLevelData == null)
        {
            return(null);
        }
        npcLevelData.CopyHomeCharaInfo(createPlayerInfo.charaInfo, (!flag2) ? null : createPlayerInfo.extentionInfo);
        if (flag)
        {
            for (int j = 0; j < createPlayerInfo.charaInfo.equipSet.Count; j++)
            {
                createPlayerInfo.charaInfo.equipSet[j].eId = VorgonPreEventController.NPC_WEAPON_ID_LIST[id % 3];
            }
        }
        return(CreatePlayer(id, createPlayerInfo, false, pos, dir, transfer_info, callback));
    }
Exemplo n.º 5
0
    public void Init(InGameManager.IntervalTransferInfo transfer_info = null)
    {
        //IL_007e: Unknown result type (might be due to invalid IL or missing references)
        //IL_0141: Unknown result type (might be due to invalid IL or missing references)
        //IL_016d: Unknown result type (might be due to invalid IL or missing references)
        //IL_01cf: Unknown result type (might be due to invalid IL or missing references)
        //IL_0290: Unknown result type (might be due to invalid IL or missing references)
        //IL_02f1: Unknown result type (might be due to invalid IL or missing references)
        Self self = null;

        if (transfer_info != null)
        {
            int i = 0;
            for (int count = transfer_info.playerInfoList.Count; i < count; i++)
            {
                InGameManager.IntervalTransferInfo.PlayerInfo playerInfo = transfer_info.playerInfoList[i];
                Player     player     = null;
                CoopClient coopClient = null;
                if (MonoBehaviourSingleton <CoopManager> .IsValid() && !playerInfo.isSelf && playerInfo.coopClientId != 0)
                {
                    coopClient = MonoBehaviourSingleton <CoopManager> .I.coopRoom.clients.FindByClientId(playerInfo.coopClientId);
                }
                if (playerInfo.isSelf)
                {
                    player = CreatePlayer(0, playerInfo.createInfo, true, Vector3.get_zero(), 0f, playerInfo.transferInfo, null);
                    if (player == null)
                    {
                        continue;
                    }
                    self             = (player as Self);
                    self.taskChecker = playerInfo.taskChecker;
                }
                else
                {
                    bool flag = false;
                    if (MonoBehaviourSingleton <CoopManager> .IsValid())
                    {
                        if (MonoBehaviourSingleton <CoopManager> .I.coopRoom.isOfflinePlay)
                        {
                            flag = true;
                        }
                        else if (coopClient != null && coopClient.isLeave && MonoBehaviourSingleton <CoopManager> .I.isStageHost)
                        {
                            flag = true;
                        }
                    }
                    if (flag || playerInfo.coopMode == StageObject.COOP_MODE_TYPE.NONE || playerInfo.coopMode == StageObject.COOP_MODE_TYPE.ORIGINAL)
                    {
                        player = CreatePlayer(playerInfo.id, playerInfo.createInfo, false, Vector3.get_zero(), 0f, playerInfo.transferInfo, null);
                        if (player == null)
                        {
                            continue;
                        }
                        player.SetAppearPosGuest(Vector3.get_zero());
                        if (coopClient != null && playerInfo.isCoopPlayer)
                        {
                            coopClient.SetPlayerID(player.id);
                        }
                    }
                    else
                    {
                        PlayerLoader.OnCompleteLoad callback = delegate(object o)
                        {
                            //IL_0008: Unknown result type (might be due to invalid IL or missing references)
                            Player player2 = o as Player;
                            player2.get_gameObject().SetActive(false);
                            MonoBehaviourSingleton <StageObjectManager> .I.AddCacheObject(player2);
                        };
                        player = CreatePlayer(playerInfo.id, playerInfo.createInfo, false, Vector3.get_zero(), 0f, playerInfo.transferInfo, callback);
                        if (player == null)
                        {
                            continue;
                        }
                        if (coopClient != null)
                        {
                            coopClient.SetCachePlayer(player.id, playerInfo.isCoopPlayer);
                        }
                    }
                    if (flag || playerInfo.isNpcController)
                    {
                        if (!(player.controller is NpcController))
                        {
                            player.AddController <NpcController>();
                        }
                        if (QuestManager.IsValidInGameDefenseBattle())
                        {
                            player.DestroyObject();
                        }
                    }
                }
                if (player.controller != null)
                {
                    player.controller.SetEnableControll(false, ControllerBase.DISABLE_FLAG.BATTLE_START);
                }
            }
        }
        if (self == null)
        {
            self = CreateSelf(0, Vector3.get_zero(), 0f);
            if (self != null && self.controller != null)
            {
                self.controller.SetEnableControll(false, ControllerBase.DISABLE_FLAG.BATTLE_START);
            }
        }
        if (!(self == null))
        {
            if (QuestManager.IsValidInGame() && !MonoBehaviourSingleton <InGameManager> .I.IsNeedInitBoss())
            {
                self.SetAppearPosGuest(Vector3.get_zero());
            }
            if (FieldManager.IsValidInGameNoQuest() || MonoBehaviourSingleton <QuestManager> .I.IsExplore() || MonoBehaviourSingleton <QuestManager> .I.IsWaveMatch())
            {
                self.SetAppearPosField();
            }
        }
    }
Exemplo n.º 6
0
    private PlayerLoader Load(LoungePlayer chara, GameObject go, CharaInfo chara_info, PlayerLoader.OnCompleteLoad callback)
    {
        PlayerLoader   playerLoader   = go.AddComponent <PlayerLoader>();
        PlayerLoadInfo playerLoadInfo = new PlayerLoadInfo();

        if (chara_info != null)
        {
            playerLoadInfo.Apply(chara_info, false, true, true, true);
            chara.sexType = chara_info.sex;
        }
        playerLoader.StartLoad(playerLoadInfo, 8, 99, false, false, true, true, false, false, true, true, SHADER_TYPE.NORMAL, callback, true, -1);
        return(playerLoader);
    }
    private static PlayerLoader Load(HomePlayerCharacter chara, GameObject go, FriendCharaInfo chara_info, PlayerLoader.OnCompleteLoad callback)
    {
        PlayerLoader   playerLoader   = go.AddComponent <PlayerLoader>();
        PlayerLoadInfo playerLoadInfo = new PlayerLoadInfo();

        if (chara_info != null)
        {
            playerLoadInfo.Apply(chara_info, false, true, true, true);
            chara.sexType = chara_info.sex;
        }
        else
        {
            int num = Random.Range(0, 2);
            int face_type_id;
            int hair_style_id;
            if (num == 0)
            {
                int[] defaultHasManFaceIndexes = Singleton <AvatarTable> .I.defaultHasManFaceIndexes;
                face_type_id = defaultHasManFaceIndexes[Random.Range(0, defaultHasManFaceIndexes.Length)];
                int[] defaultHasManHeadIndexes = Singleton <AvatarTable> .I.defaultHasManHeadIndexes;
                hair_style_id = defaultHasManHeadIndexes[Random.Range(0, defaultHasManHeadIndexes.Length)];
            }
            else
            {
                int[] defaultHasWomanFaceIndexes = Singleton <AvatarTable> .I.defaultHasWomanFaceIndexes;
                face_type_id = defaultHasWomanFaceIndexes[Random.Range(0, defaultHasWomanFaceIndexes.Length)];
                int[] defaultHasWomanHeadIndexes = Singleton <AvatarTable> .I.defaultHasWomanHeadIndexes;
                hair_style_id = defaultHasWomanHeadIndexes[Random.Range(0, defaultHasWomanHeadIndexes.Length)];
            }
            int[] defaultHasSkinColorIndexes = Singleton <AvatarTable> .I.defaultHasSkinColorIndexes;
            int   skin_color_id = defaultHasSkinColorIndexes[Random.Range(0, defaultHasSkinColorIndexes.Length)];
            int[] defaultHasHairColorIndexes = Singleton <AvatarTable> .I.defaultHasHairColorIndexes;
            int   hair_color_id = defaultHasHairColorIndexes[Random.Range(0, defaultHasHairColorIndexes.Length)];
            playerLoadInfo.SetFace(num, face_type_id, skin_color_id);
            playerLoadInfo.SetHair(num, hair_style_id, hair_color_id);
            OutGameSettingsManager.HomeScene.RandomEquip randomEquip = MonoBehaviourSingleton <OutGameSettingsManager> .I.homeScene.randomEquip;
            uint equip_body_item_id = (uint)Utility.Lot(randomEquip.bodys);
            uint equip_head_item_id = (uint)Utility.Lot(randomEquip.helms);
            uint equip_arm_item_id  = (uint)Utility.Lot(randomEquip.arms);
            uint equip_leg_item_id  = (uint)Utility.Lot(randomEquip.legs);
            playerLoadInfo.SetEquipBody(num, equip_body_item_id);
            if (Random.Range(0, 4) != 0)
            {
                playerLoadInfo.SetEquipHead(num, equip_head_item_id);
            }
            playerLoadInfo.SetEquipArm(num, equip_arm_item_id);
            playerLoadInfo.SetEquipLeg(num, equip_leg_item_id);
            chara.sexType = num;
        }
        playerLoader.StartLoad(playerLoadInfo, 0, 99, false, false, true, true, false, false, true, true, SHADER_TYPE.NORMAL, callback, true, -1);
        return(playerLoader);
    }