示例#1
0
 /// <summary>
 /// Contructor Login
 /// </summary>
 /// <history>
 /// [vipacheco] 2-26-2016 Created
 /// [edgrodriguez] 27/02/2016 Modified
 /// [edgrodriguez] 29/02/2016 Modified
 /// [erosado] 25/04/2016  Modified. Se restructuro y se agregaron parametros _permission, _permissionLevel, _program, _modeSwitchLoginUser
 /// [jorcanche] 16/08/2016 Se agrego el parametro windowStartupLocation sirve para definir en que posicion estara el windowStartupLocation
 /// </history>
 public frmLogin(
     Window splash                               = null,
     EnumLoginType loginType                     = EnumLoginType.Normal,
     EnumProgram program                         = EnumProgram.All,
     bool validatePermission                     = false,
     bool validateRole                           = false,
     bool changePassword                         = false,
     bool autoSign                               = false,
     EnumPermission permission                   = EnumPermission.None,
     EnumPermisionLevel permissionLevel          = EnumPermisionLevel.None,
     EnumRole role                               = EnumRole.None,
     bool switchLoginUserMode                    = false,
     bool invitationMode                         = false,
     string invitationPlaceId                    = "",
     WindowStartupLocation windowStartupLocation = WindowStartupLocation.Manual
     )
 {
     InitializeComponent();
     _splash             = splash;
     _loginType          = loginType;
     _program            = program;
     _validatePermission = validatePermission;
     _validateRole       = validateRole;
     _changePassword     = changePassword;
     _autoSign           = autoSign;
     _permission         = permission;
     _permissionLevel    = permissionLevel;
     _role = role;
     _modeSwitchLoginUser  = switchLoginUserMode;
     _invitationMode       = invitationMode;
     _invitationPlaceId    = invitationPlaceId;
     WindowStartupLocation = windowStartupLocation;
     CloseWindow           = new ExecuteCommandHelper(x => btnCancelar_Click(this, null));
 }
示例#2
0
    void ShowRoleByID(EnumRole roleID)
    {
        GameManager.Instance.GameState = EnumGameState.CharacterSelect;

        //retrieve the roles under this account

        if (roleID == EnumRole.NotSelected || roleID == EnumRole.NotAvailable) //no roles used yet
        {
            _selectedRoleID = EnumRole.Warrior;                                //for new players, default role is 1
            EnabledArrowButton();
        }
        else  //found a role. Choose the last used as the current.
        {
            _selectedRoleID = roleID;
        }
        SwitchCharacterModel(_selectedRoleID);
        UpdateRoleInfo();
        //finish loading at first time? remove app loading obj
        if (AppLoading.Instance != null)
        {
            AppLoading.Instance.FinishLoading();
        }
        BeginBackgroundDownloadBundles();
        SoundManager.Instance.PlaySoundEffect(k_sfx_selected[_selectedRoleID]);
    }
示例#3
0
    /// <summary>
    /// if enabled is true, show character and hide shadow.
    /// else show shadow and hide character.
    /// </summary>
    /// <param name="role"></param>
    void SwitchCharacterModel(EnumRole role)
    {
        Transform  dummy     = preveiwStage.FindChild("Dummy00" + (role + 1));
        GameObject roleModel = _rolesMapping[role];

        _roleAnimators[_selectedRoleID].enabled = true;
        Transform dummy1 = preveiwStage.FindChild("Dummy001");
        Transform dummy2 = preveiwStage.FindChild("Dummy002");

        if (role == EnumRole.Mage)
        {
            _rolesMapping[EnumRole.Mage].transform.parent        = dummy2;
            _rolesMapping[EnumRole.Mage].transform.localPosition = Vector3.zero;
            _rolesMapping[EnumRole.Mage].transform.localRotation = Quaternion.identity;
            _roleAnimators[EnumRole.Mage].enabled = true;

            _rolesMapping[EnumRole.Warrior].transform.parent        = dummy1;
            _rolesMapping[EnumRole.Warrior].transform.localPosition = Vector3.zero;
            _rolesMapping[EnumRole.Warrior].transform.localRotation = Quaternion.identity;
            _roleAnimators[EnumRole.Warrior].enabled = false;
        }
        else if (role == EnumRole.Warrior)
        {
            _rolesMapping[EnumRole.Mage].transform.parent        = dummy1;
            _rolesMapping[EnumRole.Mage].transform.localPosition = Vector3.zero;
            _rolesMapping[EnumRole.Mage].transform.localRotation = Quaternion.identity;
            _roleAnimators[EnumRole.Mage].enabled = false;

            _rolesMapping[EnumRole.Warrior].transform.parent        = dummy2;
            _rolesMapping[EnumRole.Warrior].transform.localPosition = Vector3.zero;
            _rolesMapping[EnumRole.Warrior].transform.localRotation = Quaternion.identity;
            _roleAnimators[EnumRole.Warrior].enabled = true;
        }
    }
示例#4
0
    public override void Parse(BinaryReader reader)
    {
        _uid = reader.ReadInt32();

        _nickname = NetResponse.ReadString(reader);

        _role = (EnumRole)reader.ReadByte();

        byte propNum = reader.ReadByte();

        for (int key = 0; key < propNum; ++key)
        {
            int   value      = reader.ReadInt32();
            float floatvalue = value / (FCConst.PropFactor((PlayerPropKey)key) * 1.0f);
            _props.Add((PlayerPropKey)key, floatvalue);
        }

        byte propBattleNum = reader.ReadByte();

        for (int key = 32; key < 32 + propBattleNum; ++key)
        {
            int   value      = reader.ReadInt32();
            float floatValue = value / (FCConst.PropFactor((PlayerPropKey)key) * 1.0f);
            _props.Add((PlayerPropKey)key, floatValue);
        }

        _equippedInventory = new PlayerInventory();
        _equippedInventory.Parse(reader);
    }
示例#5
0
        public static User GetInstance(EnumRole roleValue)
        {
            switch (roleValue)
            {
            case EnumRole.Interviewer:
                return(new Interviewer());

            case EnumRole.Candidate:
                return(new Candidate());

            default:
                return(null);
            }
        }
示例#6
0
    void OnGetCharacters(FaustComm.NetResponse msg)
    {
        if (msg.Succeeded)
        {
            ConnectionManager.Instance.SendACK(GetCharacters, true);

            Camera camera = this.GetComponentInChildren <Camera>();
            camera.cullingMask = 1 << LayerMask.NameToLayer("2DUILOADING") |
                                 1 << LayerMask.NameToLayer("2DUI");

            Debug.Log("Characters retrieved successfully.");
            GetCharactersResponse myMsg = (GetCharactersResponse)msg;
            for (int i = 0; i < FCConst.k_role_count; i++)
            {
                EnumRole role = (EnumRole)i;
                if (myMsg.playerInfos.ContainsKey(role))
                {
                    _playerInfos[role] = myMsg.playerInfos[role];
                }
                else
                {
                    _playerInfos[role] = null;
                }
            }

            _selectedRoleID = (EnumRole)PlayerPrefs.GetInt("LastUsedRole", 0);
            InitRoleModelsWithEquipments();
            if (IsForceToSelectServer)
            {
                _loadingStep          = EnumLoadingStep.step3;
                IsForceToSelectServer = false;
            }
            else
            {
                if (!IsFreshFish || IsManualSelectServerComplete)
                {
                    _loadingStep = EnumLoadingStep.step4;
                }
                else
                {
                    _loadingStep = EnumLoadingStep.step3;
                }
            }
        }
        else
        {
            UIMessageBoxManager.Instance.ShowMessageBox(Utils.GetErrorIDS(msg.errorCode), "", MB_TYPE.MB_OK, null);
        }
    }
示例#7
0
    void UpdateEquipments(GameObject model, EnumRole roleID, bool useFancyGear)
    {
        List <GameObject> equipInstances = new List <GameObject>();

        InitInformation initialInfo = DataManager.Instance._initInformation;

        List <EquipmentIdx> equipmentListWithLevel = new List <EquipmentIdx>();

        if (_playerInfos.ContainsKey(roleID) && _playerInfos[roleID] != null)
        {
            PlayerInfo playerInfo = _playerInfos[roleID];
            playerInfo.GetSelfEquipmentIds(equipmentListWithLevel);
        }
        else
        {
            List <string> equipmentList = roleID == EnumRole.Mage ? initialInfo._loginEquipment_mage : initialInfo._loginEquipment_warrior;
            foreach (string name in equipmentList)
            {
                EquipmentIdx eIdx = new EquipmentIdx();
                eIdx._id             = name;
                eIdx._evolutionLevel = 0;
                equipmentListWithLevel.Add(eIdx);
            }
        }

        PlayerInfo.GetOtherEquipmentInstanceWithIds(equipInstances, equipmentListWithLevel);

        List <FCEquipmentsBase> equipments = new List <FCEquipmentsBase>();

        // get equipment data array
        foreach (GameObject g in equipInstances)
        {
            FCEquipmentsBase[] es = g.GetComponentsInChildren <FCEquipmentsBase>();
            equipments.AddRange(es);
            // destroy ai game object
            GameObject.Destroy(g);
        }

        // equip models.
        AvatarController avatar = model.GetComponent <AvatarController>();

        avatar.RemoveWeapons();
        foreach (FCEquipmentsBase eeb in equipments)
        {
            EquipmentAssembler.Singleton.Assemble(eeb, avatar);
        }
        model.SetActive(false);
        model.SetActive(true);
    }
示例#8
0
 public void SetRole(EnumRole role)
 {
     this.Role = role;
     if (Role == EnumRole.Guest)
     {
         AuthorizePermission = new GuestAuthorizePermission();
     }
     else if (Role == EnumRole.Admin)
     {
         AuthorizePermission = new AdminAuthorizePermission();
     }
     else if (Role == EnumRole.User)
     {
         AuthorizePermission = new UserAuthorizePermission();
     }
 }
示例#9
0
    /// <summary>
    /// Create default roles for later selection.
    /// </summary>
    void InitRoleModelsWithEquipments()
    {
        GameObject go;

        for (int i = 0; i < FCConst.k_role_count; i++)
        {
            EnumRole role = (EnumRole)i;
            if (!_rolesMapping.ContainsKey(role))
            {
                go = CharacterAssembler.Singleton.AssembleCharacterWithoutAI(_defaultRoleLabels[role]);
                go.transform.parent        = preveiwStage.FindChild("Dummy00" + (i + 1).ToString());
                go.transform.localPosition = Vector3.zero;
                go.transform.localRotation = Quaternion.identity;
                go.GetComponent <AvatarController>().Init("", "", i);
                _rolesMapping[role]  = go;
                _roleAnimators[role] = go.GetComponent <LoginCharAnimation>();
            }
            UpdateEquipments(_rolesMapping[role], role, true);
        }
    }
示例#10
0
    public PLevelData GetCurrentClassLevelData(int level, EnumRole role)
    {
        PLevelData data = new PLevelData();

        if (level < 0 || level >= CurPlayerLevelDataList._dataList.Count)
        {
            Debug.LogError("level is out range: [" + level + "]");
            level = 1;
        }


        PlayerLevelData playerLevelData = CurPlayerLevelDataList._dataList[level];

        data._level    = playerLevelData._level;
        data._xp       = playerLevelData._exp;
        data._reviveHc = playerLevelData._reviveHc;

        if (role == EnumRole.Mage)
        {
            data._hp          = playerLevelData._mage_hp;
            data._attack      = playerLevelData._mage_attack;
            data._defense     = playerLevelData._mage_defense;
            data._crit_rate   = playerLevelData._mage_crit;
            data._crit_damage = playerLevelData._mage_crit_damage;
        }
        else if (role == EnumRole.Warrior)
        {
            data._hp          = playerLevelData._warrior_hp;
            data._attack      = playerLevelData._warrior_attack;
            data._defense     = playerLevelData._warrior_defense;
            data._crit_rate   = playerLevelData._warrior_crit;
            data._crit_damage = playerLevelData._warrior_crit_damage;
        }

        return(data);
    }
示例#11
0
 /// <summary>
 /// Determina si el usuario tiene cierto rol
 /// </summary>
 /// <param name="role">Rol</param>
 /// <history>
 /// [jorcanche]  08/Mar/2016 Created
 /// </history>
 public bool HasRole(EnumRole role)
 {
     return(this.Roles.Exists(p => p.prro == EnumToListHelper.GetEnumDescription(role)));
 }
示例#12
0
 public PermissionAttribute(EnumRole role)
 {
     this.Role = role;
 }
示例#13
0
 public PermissionAttribute(EnumRole role, EnumEntity entity, EnumAction action)
 {
     this.Role   = role;
     this.Entity = entity;
     this.Action = action;
 }
示例#14
0
 public static bool BeAbleToCheckProductsOutOfStock(this EnumRole role)
 {
     return(role == EnumRole.OWNER);
 }
示例#15
0
    public void DisplayQuest(QuestProgress qp)
    {
        QuestData qd = QuestManager.instance.CurrentQuestList.FindQuestDataByID(qp.quest_id);

        //fill UI fields
        nameLabel.text = Localization.instance.Get(qd.quest_name);
#if UNITY_EDITOR || DEVELOPMENT_BUILD
        labelQuestID.text = "Quest id: " + qd.quest_id.ToString();
#endif
        labelDescription.text = Localization.instance.Get(qd.description);

        EnumRole role = PlayerInfo.Instance.Role;

        //rewards

        //hc, sc, exp. Do not show 0 values
        int activeItemCount = 0;
        if (qd.reward_exp > 0)
        {
            activeItemCount++;
        }
        if (qd.reward_sc > 0)
        {
            activeItemCount++;
        }
        if (qd.reward_hc > 0)
        {
            activeItemCount++;
        }

        //left aligned
        switch (activeItemCount)
        {
        case 0:     //hide all
            foreach (UIRewardItem item in rewards1)
            {
                item.root.SetActive(false);
            }
            break;

        case 1:     //show 1
            rewards1[0].root.SetActive(true);
            rewards1[1].root.SetActive(false);
            rewards1[2].root.SetActive(false);

            if (qd.reward_exp > 0)
            {
                rewards1[0].iconBG.spriteName = k_exp_sprite_name;
                rewards1[0].amount.text       = "x" + qd.reward_exp.ToString();
            }
            else if (qd.reward_sc > 0)
            {
                rewards1[0].iconBG.spriteName = k_sc_sprite_name;
                rewards1[0].amount.text       = "x" + qd.reward_sc.ToString();
            }
            else if (qd.reward_hc > 0)
            {
                rewards1[0].iconBG.spriteName = k_hc_sprite_name;
                rewards1[0].amount.text       = "x" + qd.reward_hc.ToString();
            }
            break;

        case 2:     //show 2
            rewards1[0].root.SetActive(true);
            rewards1[1].root.SetActive(true);
            rewards1[2].root.SetActive(false);

            if (qd.reward_hc <= 0)
            {
                //show exp, sc
                rewards1[0].iconBG.spriteName = k_exp_sprite_name;
                rewards1[0].amount.text       = "x" + qd.reward_exp.ToString();

                rewards1[1].iconBG.spriteName = k_sc_sprite_name;
                rewards1[1].amount.text       = "x" + qd.reward_sc.ToString();
            }
            if (qd.reward_sc <= 0)
            {
                //show exp, hc
                rewards1[0].iconBG.spriteName = k_exp_sprite_name;
                rewards1[0].amount.text       = "x" + qd.reward_exp.ToString();

                rewards1[1].iconBG.spriteName = k_hc_sprite_name;
                rewards1[1].amount.text       = "x" + qd.reward_hc.ToString();
            }
            if (qd.reward_exp <= 0)
            {
                //show hc and sc
                rewards1[0].iconBG.spriteName = k_sc_sprite_name;
                rewards1[0].amount.text       = "x" + qd.reward_sc.ToString();

                rewards1[1].iconBG.spriteName = k_hc_sprite_name;
                rewards1[1].amount.text       = "x" + qd.reward_hc.ToString();
            }
            break;

        case 3:     //show all 3
            foreach (UIRewardItem item in rewards1)
            {
                item.root.SetActive(true);
            }
            rewards1[0].iconBG.spriteName = k_exp_sprite_name;
            rewards1[0].amount.text       = "x" + qd.reward_exp.ToString();

            rewards1[1].iconBG.spriteName = k_sc_sprite_name;
            rewards1[1].amount.text       = "x" + qd.reward_sc.ToString();

            rewards1[2].iconBG.spriteName = k_hc_sprite_name;
            rewards1[2].amount.text       = "x" + qd.reward_hc.ToString();
            break;
        }

        //reward items
        int index = 0;
        foreach (QuestRewardItem rewardItem in qd.reward_item_list)
        {
            if (rewardItem.reward_role == role || rewardItem.reward_role < 0)
            {
                rewards2[index].gameObject.SetActive(true);

                rewards2[index].SetData(rewardItem.reward_item_id, rewardItem.reward_item_count);

                index++;
            }
        }

        while (index < 4)
        {
            rewards2[index].gameObject.SetActive(false);
            index++;
        }

        //targets
        index = 0;
        for (int i = 0; i < qp.target_progress_list.Count; i++)
        {
            QuestTargetProgress qtp = qp.target_progress_list[i];

            targets[i].targetRoot.SetActive(true);

            targets[i].targetLabel.text = GetQuestTargetString(qtp, qd);

            if (qtp.actual_amount == qtp.required_amount)
            {
                targets[i].tick.SetActive(true);
                targets[i].circle.SetActive(false);
                //change color to green
                targets[i].targetLabel.color = completeColor;
            }
            else
            {
                targets[i].tick.SetActive(false);
                targets[i].circle.SetActive(true);
                targets[i].targetLabel.color = uncompleteColor;
            }
        }

        //hide other targets
        for (int i = qp.target_progress_list.Count; i < 2; i++)
        {
            targets[i].targetRoot.SetActive(false);
        }

        if (qp.isCompleted)
        {
            buttonLabel.text = Localization.instance.Get("IDS_MESSAGE_QUEST_ACCEPTREWARD");
            buttonFight.gameObject.SetActive(true);
        }
        else// if (!qp.isCompleted)
        {
            buttonLabel.text = Localization.instance.Get("IDS_BUTTON_HUD_COMBAT");
            buttonFight.gameObject.SetActive(!string.IsNullOrEmpty(qd.recommended_level_name));
        }

        //claim effect
        claimEffectRoot.SetActive(false);
    }
示例#16
0
        public static string GetSymbol(EnumRole symbolNumb)
        {
            ConfigRoleEnum symbol = CreateEnum(symbolNumb);

            return(symbol.GetSymbol());
        }
示例#17
0
 public static bool IsAllowedToShop(this EnumRole role)
 {
     return(role == EnumRole.CUSTOMER);
 }
示例#18
0
 public RoleControl(EnumRole rolenumber)
 {
     pagerole = Convert.ToInt32(rolenumber).ToString();
 }
示例#19
0
 public Person(EnumRole role)
 {
     Role = role;
 }
示例#20
0
        public bool Welcome(string unionId, Guid teamId, out int teamNum, out int teacherNum, out int parentNum, out int studentNum, out EnumRole role)
        {
            role = EnumRole.NotRegister;

            teamNum    = 0;
            teacherNum = 0;
            parentNum  = 0;
            studentNum = 0;

            try
            {
                var q = Db.WeiXinUser.Where(x => x.UnionId == unionId);
                if (q.Any())
                {
                    var user = q.SingleOrDefault();
                    if (user.Teacher.Any(x => x.Status == 1))
                    {
                        role = EnumRole.Teacher;
                    }

                    if (user.Parent.Any(x => x.Status == 1))
                    {
                        role = EnumRole.Parent;
                    }
                }

                teamNum    = Db.Team.Count(x => x.Status == 1);
                teacherNum = Db.Teacher.Count(x => x.Status == 1);
                parentNum  = Db.Parent.Where(x => x.Status == 1 && x.StudentParent.Any(y => y.ParentId == x.ParentId && y.Student.TeamId == teamId)).GroupBy(x => x.ParentId).Count();
                studentNum = Db.Student.Count(x => x.Status == 1);

                return(true);
            }
            catch (Exception ex)
            {
                SetError(ex);
                return(false);
            }
        }
示例#21
0
 public PlayerModel(PlayerId id, EnumRole role)
 {
     this.id   = PlayerIdExtensions.ToString(id);
     this.role = role;
 }
示例#22
0
 public PermissionAttribute(EnumRole role, params EnumBusinessPermission[] parameters)
 {
     this.Role = role;
     Permissions = parameters.ToList();
 }
示例#23
0
 public bool CanDo(EnumRole role)
 {
     return((Role & role) != EnumRole.None);
 }
示例#24
0
 public static ConfigRoleEnum CreateEnum(EnumRole symbolNumb)
 {
     return(symbolNumb.ToEnum <ConfigRoleEnum>(GetDefaultsEnum()));
 }
示例#25
0
 public AutorisationRoleAttribute(EnumRole role)
 {
     _role = role;
 }
示例#26
0
 public static EnumRole CreateCode(EnumRole symbolNumb)
 {
     return((EnumRole)symbolNumb.ToEnum <ConfigRoleEnum>(GetDefaultsEnum()));
 }