Example #1
0
    void InitCreateView()
    {
        curRCNum.text = "拥有房卡:" + PlayerInfo.Instance.GetRoomCard.ToString();
        ESelectType selectType = (ESelectType)XPlayerPrefs.Instance.mGamePay;

        //加载蛋的模式和付费缓存
        payType.SetDefaultCreateRoominfo(selectType);
        //加载游戏的具体模式的缓存
        if (XPlayerPrefs.Instance.mGameType == 1)//转蛋
        {
            gameType.SetDefaultCreateRoominfo((ESelectType)1);
            int num = XPlayerPrefs.Instance.mGameNum;
            zhuanDanContainer.SetDefaultCreateRoominfo((ESelectType)(num / 4));
        }
        else if (XPlayerPrefs.Instance.mGameType >= 2)//掼蛋
        {
            gameType.SetDefaultCreateRoominfo((ESelectType)2);
            int num         = XPlayerPrefs.Instance.mGameNum;
            int newgametype = XPlayerPrefs.Instance.mGameType;
            //打二
            if (XPlayerPrefs.Instance.mGameType > 2)//这个是因为 如果是掼蛋一直2,然后再打打到6默认num是大于0的所以根据type判断更好
            {
                guanDanContainer.SetDefaultCreateRoominfo((ESelectType)newgametype);
            }
            //非打二
            else
            {
                guanDanContainer.SetDefaultCreateRoominfo((ESelectType)(num / 4));
            }
        }
        SetListLabsData(XPlayerPrefs.Instance.mGamePay);
    }
Example #2
0
 public void LoadContent(ESelectType eSelectType, RichTextBox richTextBox)
 {
     _richTextBox         = richTextBox;
     textBoxUrl.Visible   = true;
     buttonInsert.Visible = true;
     LoadContent(eSelectType);
 }
Example #3
0
 public void Deserialize(JSON_TrickParam json)
 {
     if (json == null)
     {
         return;
     }
     this.mIname         = json.iname;
     this.mName          = json.name;
     this.mExpr          = json.expr;
     this.mDamageType    = (eTrickDamageType)json.dmg_type;
     this.mDamageVal     = (OInt)json.dmg_val;
     this.mCalcType      = (SkillParamCalcTypes)json.calc;
     this.mElem          = (EElement)json.elem;
     this.mAttackDetail  = (AttackDetailTypes)json.atk_det;
     this.mBuffId        = json.buff;
     this.mCondId        = json.cond;
     this.mKnockBackRate = (OInt)json.kb_rate;
     this.mKnockBackVal  = (OInt)json.kb_val;
     this.mTarget        = (ESkillTarget)json.target;
     this.mVisualType    = (eTrickVisualType)json.visual;
     this.mActionCount   = (OInt)json.count;
     this.mValidClock    = (OInt)json.clock;
     this.mIsNoOverWrite = (OBool)(json.is_no_ow != 0);
     this.mMarkerName    = json.marker;
     this.mEffectName    = json.effect;
     this.mEffTarget     = (ESkillTarget)json.eff_target;
     this.mEffShape      = (ESelectType)json.eff_shape;
     this.mEffScope      = (OInt)json.eff_scope;
     this.mEffHeight     = (OInt)json.eff_height;
 }
Example #4
0
 public void LoadContent(ESelectType eSelectType, TextBox textID, TextBox textName)
 {
     _textID              = textID;
     _textName            = textName;
     textBoxUrl.Visible   = false;
     buttonInsert.Visible = false;
     LoadContent(eSelectType);
 }
Example #5
0
 public static bool IsTypeLaser(ESelectType type)
 {
     return(new List <ESelectType>((IEnumerable <ESelectType>) new ESelectType[5]
     {
         ESelectType.Laser,
         ESelectType.LaserSpread,
         ESelectType.LaserWide,
         ESelectType.LaserTwin,
         ESelectType.LaserTriple
     }).Contains(type));
 }
Example #6
0
 //这里如果有新的成员,需要继续添加变化ESelectType
 void ButtonClick(GameObject go)
 {
     for (int i = 0; i < childCount.Count; i++)
     {
         childCount[i].transform.GetChild(1).gameObject.SetActive(childCount[i].transform.GetChild(0).gameObject == go);
         if (childCount[i] == go.transform.parent.gameObject)
         {
             mSelectTeam = (ESelectType)(i + 1);
         }
     }
     if (OnHasChange != null)//只在选择支付形式的时候用到
     {
         OnHasChange((int)mSelectTeam);
     }
 }
Example #7
0
 public void LoadTaskContent(FormEditor fe, TextBox textID, TextBox textName)
 {
     _eSelectType         = ESelectType.eSelectTask;
     _textID              = textID;
     _textName            = textName;
     textBoxUrl.Visible   = false;
     buttonInsert.Visible = false;
     this.dataGridViewXML.RowHeadersWidth    = 20;
     this.dataGridViewXML.RowTemplate.Height = 23;
     this.dataGridViewXML.SelectionMode      = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     System.Windows.Forms.DataGridView dgv = fe.GetTaskListGridView();
     for (int i = 0; i < dgv.Columns.Count; ++i)
     {
         dataGridViewXML.Columns.Add(dgv.Columns[i].Clone() as DataGridViewColumn);
     }
     for (int j = 0; j < dgv.Rows.Count; ++j)
     {
         int idx = dataGridViewXML.Rows.Add();
         for (int i = 0; i < dgv.Columns.Count; ++i)
         {
             dataGridViewXML.Rows[idx].Cells[i].Value = dgv.Rows[j].Cells[i].Value.ToString();
         }
     }
 }
Example #8
0
    TGuanDanGameType GetGameType(ESelectType selectType)
    {
        TGuanDanGameType tg = TGuanDanGameType.TGuanDanGameTypeGuanDan6;

        switch (selectType)
        {
        case ESelectType.EC:
            tg = TGuanDanGameType.TGuanDanGameTypeGuanDan6;
            break;

        case ESelectType.ED:
            tg = TGuanDanGameType.TGuanDanGameTypeGuanDan8;
            break;

        case ESelectType.EE:
            tg = TGuanDanGameType.TGuanDanGameTypeGuanDan10;
            break;

        case ESelectType.EF:
            tg = TGuanDanGameType.TGuanDanGameTypeGuanDanA;
            break;
        }
        return(tg);
    }
Example #9
0
        public bool Deserialize(JSON_SkillParam json)
        {
            if (json == null)
            {
                return(false);
            }
            this.iname               = json.iname;
            this.name                = json.name;
            this.expr                = json.expr;
            this.motion              = json.motnm;
            this.effect              = json.effnm;
            this.defend_effect       = json.effdef;
            this.weapon              = json.weapon;
            this.tokkou              = json.tktag;
            this.tk_rate             = json.tkrate;
            this.type                = (ESkillType)json.type;
            this.timing              = (ESkillTiming)json.timing;
            this.condition           = (ESkillCondition)json.cond;
            this.target              = (ESkillTarget)json.target;
            this.line_type           = (ELineType)json.line;
            this.lvcap               = (OInt)json.cap;
            this.cost                = (OInt)json.cost;
            this.count               = (OInt)json.count;
            this.rate                = (OInt)json.rate;
            this.select_range        = (ESelectType)json.sran;
            this.range_min           = (OInt)json.rangemin;
            this.range_max           = (OInt)json.range;
            this.select_scope        = (ESelectType)json.ssco;
            this.scope               = (OInt)json.scope;
            this.effect_height       = (OInt)json.eff_h;
            this.back_defrate        = (OInt)json.bdb;
            this.side_defrate        = (OInt)json.sdb;
            this.ignore_defense_rate = (OInt)json.idr;
            this.job                  = json.job;
            this.SceneName            = json.scn;
            this.ComboNum             = (OInt)json.combo_num;
            this.ComboDamageRate      = (OInt)(100 - Math.Abs(json.combo_rate));
            this.IsCritical           = (OBool)(json.is_cri != 0);
            this.JewelDamageType      = (JewelDamageTypes)json.jdtype;
            this.JewelDamageValue     = (OInt)json.jdv;
            this.IsJewelAbsorb        = (OBool)(json.jdabs != 0);
            this.DuplicateCount       = (OInt)json.dupli;
            this.CollaboMainId        = json.cs_main_id;
            this.CollaboHeight        = (OInt)json.cs_height;
            this.KnockBackRate        = (OInt)json.kb_rate;
            this.KnockBackVal         = (OInt)json.kb_val;
            this.KnockBackDir         = (eKnockBackDir)json.kb_dir;
            this.KnockBackDs          = (eKnockBackDs)json.kb_ds;
            this.DamageDispType       = (eDamageDispType)json.dmg_dt;
            this.ReplaceTargetIdLists = (List <string>)null;
            if (json.rp_tgt_ids != null)
            {
                this.ReplaceTargetIdLists = new List <string>();
                foreach (string rpTgtId in json.rp_tgt_ids)
                {
                    this.ReplaceTargetIdLists.Add(rpTgtId);
                }
            }
            this.ReplaceChangeIdLists = (List <string>)null;
            if (json.rp_chg_ids != null && this.ReplaceTargetIdLists != null)
            {
                this.ReplaceChangeIdLists = new List <string>();
                foreach (string rpChgId in json.rp_chg_ids)
                {
                    this.ReplaceChangeIdLists.Add(rpChgId);
                }
            }
            if (this.ReplaceTargetIdLists != null && this.ReplaceChangeIdLists != null && this.ReplaceTargetIdLists.Count != this.ReplaceChangeIdLists.Count)
            {
                this.ReplaceTargetIdLists.Clear();
                this.ReplaceChangeIdLists.Clear();
            }
            this.AbilityReplaceTargetIdLists = (List <string>)null;
            if (json.ab_rp_tgt_ids != null)
            {
                this.AbilityReplaceTargetIdLists = new List <string>();
                foreach (string abRpTgtId in json.ab_rp_tgt_ids)
                {
                    this.AbilityReplaceTargetIdLists.Add(abRpTgtId);
                }
            }
            this.AbilityReplaceChangeIdLists = (List <string>)null;
            if (json.ab_rp_chg_ids != null && this.AbilityReplaceTargetIdLists != null)
            {
                this.AbilityReplaceChangeIdLists = new List <string>();
                foreach (string abRpChgId in json.ab_rp_chg_ids)
                {
                    this.AbilityReplaceChangeIdLists.Add(abRpChgId);
                }
            }
            if (this.AbilityReplaceTargetIdLists != null && this.AbilityReplaceChangeIdLists != null && this.AbilityReplaceTargetIdLists.Count != this.AbilityReplaceChangeIdLists.Count)
            {
                this.AbilityReplaceTargetIdLists.Clear();
                this.AbilityReplaceChangeIdLists.Clear();
            }
            this.CollaboVoiceId             = json.cs_voice;
            this.CollaboVoicePlayDelayFrame = json.cs_vp_df;
            this.TeleportType           = (eTeleportType)json.tl_type;
            this.TeleportTarget         = (ESkillTarget)json.tl_target;
            this.TeleportHeight         = json.tl_height;
            this.TeleportIsMove         = json.tl_is_mov != 0;
            this.TrickId                = json.tr_id;
            this.TrickSetType           = (eTrickSetType)json.tr_set;
            this.BreakObjId             = json.bo_id;
            this.MapEffectDesc          = json.me_desc;
            this.WeatherRate            = json.wth_rate;
            this.WeatherId              = json.wth_id;
            this.ElementSpcAtkRate      = json.elem_tk;
            this.MaxDamageValue         = json.max_dmg;
            this.CutInConceptCardId     = json.ci_cc_id;
            this.JudgeHpVal             = json.jhp_val;
            this.JudgeHpCalc            = (SkillParamCalcTypes)json.jhp_calc;
            this.AcFromAbilId           = json.ac_fr_ab_id;
            this.AcToAbilId             = json.ac_to_ab_id;
            this.AcTurn                 = json.ac_turn;
            this.EffectHitTargetNumRate = (OInt)json.eff_htnrate;
            this.AbsorbAndGive          = (eAbsorbAndGive)json.aag;
            this.TargetEx               = (eSkillTargetEx)json.target_ex;
            this.JumpSpcAtkRate         = json.jmp_tk;
            this.flags = (SkillFlags)0;
            if (json.cutin != 0)
            {
                this.flags |= SkillFlags.ExecuteCutin;
            }
            if (json.isbtl != 0)
            {
                this.flags |= SkillFlags.ExecuteInBattle;
            }
            if (json.chran != 0)
            {
                this.flags |= SkillFlags.EnableChangeRange;
            }
            if (json.sonoba != 0)
            {
                this.flags |= SkillFlags.SelfTargetSelect;
            }
            if (json.pierce != 0)
            {
                this.flags |= SkillFlags.PierceAttack;
            }
            if (json.hbonus != 0)
            {
                this.flags |= SkillFlags.EnableHeightRangeBonus;
            }
            if (json.ehpa != 0)
            {
                this.flags |= SkillFlags.EnableHeightParamAdjust;
            }
            if (json.utgt != 0)
            {
                this.flags |= SkillFlags.EnableUnitLockTarget;
            }
            if (json.ctbreak != 0)
            {
                this.flags |= SkillFlags.CastBreak;
            }
            if (json.mpatk != 0)
            {
                this.flags |= SkillFlags.JewelAttack;
            }
            if (json.fhit != 0)
            {
                this.flags |= SkillFlags.ForceHit;
            }
            if (json.suicide != 0)
            {
                this.flags |= SkillFlags.Suicide;
            }
            if (json.sub_actuate != 0)
            {
                this.flags |= SkillFlags.SubActuate;
            }
            if (json.is_fixed != 0)
            {
                this.flags |= SkillFlags.FixedDamage;
            }
            if (json.f_ulock != 0)
            {
                this.flags |= SkillFlags.ForceUnitLock;
            }
            if (json.ad_react != 0)
            {
                this.flags |= SkillFlags.AllDamageReaction;
            }
            if (json.ig_elem != 0)
            {
                this.flags |= SkillFlags.IgnoreElement;
            }
            if (json.is_pre_apply != 0)
            {
                this.flags |= SkillFlags.PrevApply;
            }
            if (json.jhp_over != 0)
            {
                this.flags |= SkillFlags.JudgeHpOver;
            }
            if (json.is_mhm_dmg != 0)
            {
                this.flags |= SkillFlags.MhmDamage;
            }
            if (json.ac_is_self != 0)
            {
                this.flags |= SkillFlags.AcSelf;
            }
            if (json.ac_is_reset != 0)
            {
                this.flags |= SkillFlags.AcReset;
            }
            if (json.is_htndiv != 0)
            {
                this.flags |= SkillFlags.HitTargetNumDiv;
            }
            if (json.is_no_ccc != 0)
            {
                this.flags |= SkillFlags.NoChargeCalcCT;
            }
            if (json.jmpbreak != 0)
            {
                this.flags |= SkillFlags.JumpBreak;
            }
            this.hp_cost          = (OInt)json.hp_cost;
            this.hp_cost_rate     = (OInt)Math.Min(Math.Max(json.hp_cost_rate, 0), 100);
            this.random_hit_rate  = (OInt)json.rhit;
            this.effect_type      = (SkillEffectTypes)json.eff_type;
            this.effect_calc      = (SkillParamCalcTypes)json.eff_calc;
            this.effect_rate      = new SkillRankUpValue();
            this.effect_rate.ini  = (OInt)json.eff_rate_ini;
            this.effect_rate.max  = (OInt)json.eff_rate_max;
            this.effect_value     = new SkillRankUpValue();
            this.effect_value.ini = (OInt)json.eff_val_ini;
            this.effect_value.max = (OInt)json.eff_val_max;
            this.effect_range     = new SkillRankUpValue();
            this.effect_range.ini = (OInt)json.eff_range_ini;
            this.effect_range.max = (OInt)json.eff_range_max;
            this.effect_hprate    = (OInt)json.eff_hprate;
            this.effect_mprate    = (OInt)json.eff_mprate;
            this.effect_dead_rate = (OInt)json.eff_durate;
            this.effect_lvrate    = (OInt)json.eff_lvrate;
            this.attack_type      = (AttackTypes)json.atk_type;
            this.attack_detail    = (AttackDetailTypes)json.atk_det;
            this.element_type     = (EElement)json.elem;
            this.element_value    = (SkillRankUpValue)null;
            if (this.element_type != EElement.None)
            {
                this.element_value     = new SkillRankUpValue();
                this.element_value.ini = (OInt)json.elem_ini;
                this.element_value.max = (OInt)json.elem_max;
            }
            this.cast_type  = (ECastTypes)json.ct_type;
            this.cast_speed = (SkillRankUpValue)null;
            if (this.type == ESkillType.Skill && (json.ct_spd_ini != 0 || json.ct_spd_max != 0))
            {
                this.cast_speed     = new SkillRankUpValue();
                this.cast_speed.ini = (OInt)json.ct_spd_ini;
                this.cast_speed.max = (OInt)json.ct_spd_max;
            }
            this.absorb_damage_rate   = (OInt)json.abs_d_rate;
            this.reaction_damage_type = (DamageTypes)json.react_d_type;
            this.reaction_det_lists   = (List <AttackDetailTypes>)null;
            if (json.react_dets != null)
            {
                this.reaction_det_lists = new List <AttackDetailTypes>();
                foreach (AttackDetailTypes reactDet in json.react_dets)
                {
                    this.reaction_det_lists.Add(reactDet);
                }
            }
            this.control_ct_rate  = (SkillRankUpValue)null;
            this.control_ct_value = (SkillRankUpValue)null;
            if (this.control_ct_calc == SkillParamCalcTypes.Fixed || json.ct_val_ini != 0 || json.ct_val_max != 0)
            {
                this.control_ct_rate      = new SkillRankUpValue();
                this.control_ct_rate.ini  = (OInt)json.ct_rate_ini;
                this.control_ct_rate.max  = (OInt)json.ct_rate_max;
                this.control_ct_value     = new SkillRankUpValue();
                this.control_ct_value.ini = (OInt)json.ct_val_ini;
                this.control_ct_value.max = (OInt)json.ct_val_max;
                this.control_ct_calc      = (SkillParamCalcTypes)json.ct_calc;
            }
            this.target_buff_iname  = json.t_buff;
            this.target_cond_iname  = json.t_cond;
            this.self_buff_iname    = json.s_buff;
            this.self_cond_iname    = json.s_cond;
            this.shield_type        = (ShieldTypes)json.shield_type;
            this.shield_damage_type = (DamageTypes)json.shield_d_type;
            this.shield_turn        = (SkillRankUpValue)null;
            this.shield_value       = (SkillRankUpValue)null;
            if (this.shield_type != ShieldTypes.None && this.shield_damage_type != DamageTypes.None)
            {
                this.shield_turn      = new SkillRankUpValue();
                this.shield_turn.ini  = (OInt)json.shield_turn_ini;
                this.shield_turn.max  = (OInt)json.shield_turn_max;
                this.shield_value     = new SkillRankUpValue();
                this.shield_value.ini = (OInt)json.shield_ini;
                this.shield_value.max = (OInt)json.shield_max;
                if (json.shield_reset != 0)
                {
                    this.flags |= SkillFlags.ShieldReset;
                }
            }
            if (this.reaction_damage_type != DamageTypes.None || this.shield_damage_type != DamageTypes.None)
            {
                this.control_damage_rate      = new SkillRankUpValue();
                this.control_damage_rate.ini  = (OInt)json.ctrl_d_rate_ini;
                this.control_damage_rate.max  = (OInt)json.ctrl_d_rate_max;
                this.control_damage_value     = new SkillRankUpValue();
                this.control_damage_value.ini = (OInt)json.ctrl_d_ini;
                this.control_damage_value.max = (OInt)json.ctrl_d_max;
                this.control_damage_calc      = (SkillParamCalcTypes)json.ctrl_d_calc;
            }
            SkillEffectTypes effectType = this.effect_type;

            switch (effectType)
            {
            case SkillEffectTypes.Teleport:
            case SkillEffectTypes.Changing:
            case SkillEffectTypes.Throw:
                this.scope        = (OInt)0;
                this.select_scope = ESelectType.Cross;
                break;

            case SkillEffectTypes.RateDamage:
                if (this.attack_type == AttackTypes.None)
                {
                    this.attack_type = AttackTypes.PhyAttack;
                    break;
                }
                break;

            default:
                if (effectType == SkillEffectTypes.Attack || effectType == SkillEffectTypes.ReflectDamage || effectType == SkillEffectTypes.RateDamageCurrent)
                {
                    goto case SkillEffectTypes.RateDamage;
                }
                else
                {
                    break;
                }
            }
            if (this.select_range == ESelectType.Laser)
            {
                this.select_scope = ESelectType.Laser;
                this.scope        = (OInt)Math.Max((int)this.scope, 1);
            }
            else
            {
                switch (this.select_range)
                {
                case ESelectType.LaserSpread:
                    this.select_scope = ESelectType.LaserSpread;
                    break;

                case ESelectType.LaserWide:
                    this.select_scope = ESelectType.LaserWide;
                    break;

                case ESelectType.LaserTwin:
                    this.select_scope = ESelectType.LaserTwin;
                    break;

                case ESelectType.LaserTriple:
                    this.select_scope = ESelectType.LaserTriple;
                    break;
                }
                switch (this.select_scope)
                {
                case ESelectType.LaserSpread:
                case ESelectType.LaserWide:
                case ESelectType.LaserTwin:
                case ESelectType.LaserTriple:
                    this.scope = (OInt)1;
                    break;
                }
            }
            if (this.TeleportType != eTeleportType.None)
            {
                if (!this.IsTargetGridNoUnit && this.TeleportType != eTeleportType.BeforeSkill)
                {
                    this.target = ESkillTarget.GridNoUnit;
                }
                if (this.IsTargetTeleport)
                {
                    if (this.IsCastSkill())
                    {
                        this.cast_speed = (SkillRankUpValue)null;
                    }
                    if ((int)this.scope != 0)
                    {
                        this.scope = (OInt)0;
                    }
                }
            }
            if (this.IsTargetValidGrid && !this.IsTrickSkill())
            {
                this.target = ESkillTarget.GridNoUnit;
            }
            if (this.timing == ESkillTiming.Auto && this.effect_type == SkillEffectTypes.Attack)
            {
                this.effect_type = SkillEffectTypes.Buff;
            }
            return(true);
        }
Example #10
0
        public bool Deserialize(JSON_SkillParam json)
        {
            if (json == null)
            {
                return(false);
            }
            this.iname               = json.iname;
            this.name                = json.name;
            this.expr                = json.expr;
            this.motion              = json.motnm;
            this.effect              = json.effnm;
            this.defend_effect       = json.effdef;
            this.weapon              = json.weapon;
            this.tokkou              = json.tktag;
            this.tk_rate             = json.tkrate;
            this.type                = (ESkillType)json.type;
            this.timing              = (ESkillTiming)json.timing;
            this.condition           = (ESkillCondition)json.cond;
            this.target              = (ESkillTarget)json.target;
            this.line_type           = (ELineType)json.line;
            this.lvcap               = (OInt)json.cap;
            this.cost                = (OInt)json.cost;
            this.count               = (OInt)json.count;
            this.rate                = (OInt)json.rate;
            this.select_range        = (ESelectType)json.sran;
            this.range_min           = (OInt)json.rangemin;
            this.range_max           = (OInt)json.range;
            this.select_scope        = (ESelectType)json.ssco;
            this.scope               = (OInt)json.scope;
            this.effect_height       = (OInt)json.eff_h;
            this.back_defrate        = (OInt)json.bdb;
            this.side_defrate        = (OInt)json.sdb;
            this.ignore_defense_rate = (OInt)json.idr;
            this.job              = json.job;
            this.SceneName        = json.scn;
            this.ComboNum         = (OInt)json.combo_num;
            this.ComboDamageRate  = (OInt)(100 - Math.Abs(json.combo_rate));
            this.IsCritical       = (OBool)(json.is_cri != 0);
            this.JewelDamageType  = (JewelDamageTypes)json.jdtype;
            this.JewelDamageValue = (OInt)json.jdv;
            this.IsJewelAbsorb    = (OBool)(json.jdabs != 0);
            this.DuplicateCount   = (OInt)json.dupli;
            this.CollaboMainId    = json.cs_main_id;
            this.CollaboHeight    = (OInt)json.cs_height;
            this.KnockBackRate    = (OInt)json.kb_rate;
            this.KnockBackVal     = (OInt)json.kb_val;
            this.DamageDispType   = (eDamageDispType)json.dmg_dt;
            this.ReplaceTargetIdLists.Clear();
            if (json.rp_tgt_ids != null)
            {
                foreach (string rpTgtId in json.rp_tgt_ids)
                {
                    this.ReplaceTargetIdLists.Add(rpTgtId);
                }
            }
            this.ReplaceChangeIdLists.Clear();
            if (json.rp_chg_ids != null)
            {
                foreach (string rpChgId in json.rp_chg_ids)
                {
                    this.ReplaceChangeIdLists.Add(rpChgId);
                }
            }
            if (this.ReplaceTargetIdLists.Count != this.ReplaceChangeIdLists.Count)
            {
                this.ReplaceTargetIdLists.Clear();
                this.ReplaceChangeIdLists.Clear();
            }
            this.AbilityReplaceTargetIdLists.Clear();
            if (json.ab_rp_tgt_ids != null)
            {
                foreach (string abRpTgtId in json.ab_rp_tgt_ids)
                {
                    this.AbilityReplaceTargetIdLists.Add(abRpTgtId);
                }
            }
            this.AbilityReplaceChangeIdLists.Clear();
            if (json.ab_rp_chg_ids != null)
            {
                foreach (string abRpChgId in json.ab_rp_chg_ids)
                {
                    this.AbilityReplaceChangeIdLists.Add(abRpChgId);
                }
            }
            if (this.AbilityReplaceTargetIdLists.Count != this.AbilityReplaceChangeIdLists.Count)
            {
                this.AbilityReplaceTargetIdLists.Clear();
                this.AbilityReplaceChangeIdLists.Clear();
            }
            this.CollaboVoiceId             = json.cs_voice;
            this.CollaboVoicePlayDelayFrame = json.cs_vp_df;
            this.flags = (SkillFlags)0;
            if (json.cutin != 0)
            {
                this.flags |= SkillFlags.ExecuteCutin;
            }
            if (json.isbtl != 0)
            {
                this.flags |= SkillFlags.ExecuteInBattle;
            }
            if (json.chran != 0)
            {
                this.flags |= SkillFlags.EnableChangeRange;
            }
            if (json.sonoba != 0)
            {
                this.flags |= SkillFlags.SelfTargetSelect;
            }
            if (json.pierce != 0)
            {
                this.flags |= SkillFlags.PierceAttack;
            }
            if (json.hbonus != 0)
            {
                this.flags |= SkillFlags.EnableHeightRangeBonus;
            }
            if (json.ehpa != 0)
            {
                this.flags |= SkillFlags.EnableHeightParamAdjust;
            }
            if (json.utgt != 0)
            {
                this.flags |= SkillFlags.EnableUnitLockTarget;
            }
            if (json.ctbreak != 0)
            {
                this.flags |= SkillFlags.CastBreak;
            }
            if (json.mpatk != 0)
            {
                this.flags |= SkillFlags.JewelAttack;
            }
            if (json.fhit != 0)
            {
                this.flags |= SkillFlags.ForceHit;
            }
            if (json.suicide != 0)
            {
                this.flags |= SkillFlags.Suicide;
            }
            this.hp_cost          = (OInt)json.hp_cost;
            this.hp_cost_rate     = (OInt)Math.Min(Math.Max(json.hp_cost_rate, 0), 100);
            this.random_hit_rate  = (OInt)json.rhit;
            this.effect_type      = (SkillEffectTypes)json.eff_type;
            this.effect_calc      = (SkillParamCalcTypes)json.eff_calc;
            this.effect_rate      = new SkillRankUpValue();
            this.effect_rate.ini  = (OInt)json.eff_rate_ini;
            this.effect_rate.max  = (OInt)json.eff_rate_max;
            this.effect_value     = new SkillRankUpValue();
            this.effect_value.ini = (OInt)json.eff_val_ini;
            this.effect_value.max = (OInt)json.eff_val_max;
            this.effect_range     = new SkillRankUpValue();
            this.effect_range.ini = (OInt)json.eff_range_ini;
            this.effect_range.max = (OInt)json.eff_range_max;
            this.effect_hprate    = (OInt)json.eff_hprate;
            this.effect_mprate    = (OInt)json.eff_mprate;
            this.effect_dead_rate = (OInt)json.eff_durate;
            this.effect_lvrate    = (OInt)json.eff_lvrate;
            this.attack_type      = (AttackTypes)json.atk_type;
            this.attack_detail    = (AttackDetailTypes)json.atk_det;
            this.element_type     = (EElement)json.elem;
            this.element_value    = (SkillRankUpValue)null;
            if (this.element_type != EElement.None)
            {
                this.element_value     = new SkillRankUpValue();
                this.element_value.ini = (OInt)json.elem_ini;
                this.element_value.max = (OInt)json.elem_max;
            }
            this.cast_type  = (ECastTypes)json.ct_type;
            this.cast_speed = (SkillRankUpValue)null;
            if (this.type == ESkillType.Skill && (json.ct_spd_ini != 0 || json.ct_spd_max != 0))
            {
                this.cast_speed     = new SkillRankUpValue();
                this.cast_speed.ini = (OInt)json.ct_spd_ini;
                this.cast_speed.max = (OInt)json.ct_spd_max;
            }
            this.absorb_damage_rate   = (OInt)json.abs_d_rate;
            this.reaction_damage_type = (DamageTypes)json.react_d_type;
            this.reaction_det_lists.Clear();
            if (json.react_dets != null)
            {
                foreach (AttackDetailTypes reactDet in json.react_dets)
                {
                    this.reaction_det_lists.Add(reactDet);
                }
            }
            if (this.reaction_damage_type != DamageTypes.None)
            {
                this.control_damage_value     = new SkillRankUpValue();
                this.control_damage_value.ini = (OInt)json.ctrl_d_ini;
                this.control_damage_value.max = (OInt)json.ctrl_d_max;
                this.control_damage_calc      = (SkillParamCalcTypes)json.ctrl_d_calc;
            }
            this.control_ct_rate  = (SkillRankUpValue)null;
            this.control_ct_value = (SkillRankUpValue)null;
            if (this.control_ct_calc == SkillParamCalcTypes.Fixed || json.ct_val_ini != 0 || json.ct_val_max != 0)
            {
                this.control_ct_rate      = new SkillRankUpValue();
                this.control_ct_rate.ini  = (OInt)json.ct_rate_ini;
                this.control_ct_rate.max  = (OInt)json.ct_rate_max;
                this.control_ct_value     = new SkillRankUpValue();
                this.control_ct_value.ini = (OInt)json.ct_val_ini;
                this.control_ct_value.max = (OInt)json.ct_val_max;
                this.control_ct_calc      = (SkillParamCalcTypes)json.ct_calc;
            }
            this.target_buff_iname  = json.t_buff;
            this.target_cond_iname  = json.t_cond;
            this.self_buff_iname    = json.s_buff;
            this.self_cond_iname    = json.s_cond;
            this.shield_type        = (ShieldTypes)json.shield_type;
            this.shield_damage_type = (DamageTypes)json.shield_d_type;
            this.shield_turn        = (SkillRankUpValue)null;
            this.shield_value       = (SkillRankUpValue)null;
            if (this.shield_type != ShieldTypes.None && this.shield_damage_type != DamageTypes.None)
            {
                this.shield_turn      = new SkillRankUpValue();
                this.shield_turn.ini  = (OInt)json.shield_turn_ini;
                this.shield_turn.max  = (OInt)json.shield_turn_max;
                this.shield_value     = new SkillRankUpValue();
                this.shield_value.ini = (OInt)json.shield_ini;
                this.shield_value.max = (OInt)json.shield_max;
            }
            SkillEffectTypes effectType = this.effect_type;

            switch (effectType)
            {
            case SkillEffectTypes.Teleport:
            case SkillEffectTypes.Changing:
            case SkillEffectTypes.Throw:
                this.scope        = (OInt)0;
                this.select_scope = ESelectType.Cross;
                break;

            case SkillEffectTypes.RateDamage:
                if (this.attack_type == AttackTypes.None)
                {
                    this.attack_type = AttackTypes.PhyAttack;
                    break;
                }
                break;

            default:
                if (effectType == SkillEffectTypes.Attack || effectType == SkillEffectTypes.ReflectDamage)
                {
                    goto case SkillEffectTypes.RateDamage;
                }
                else
                {
                    break;
                }
            }
            if (this.select_range == ESelectType.Laser)
            {
                this.select_scope = ESelectType.Laser;
                this.scope        = (OInt)Math.Max((int)this.scope, 1);
            }
            else
            {
                switch (this.select_range)
                {
                case ESelectType.LaserSpread:
                    this.select_scope = ESelectType.LaserSpread;
                    break;

                case ESelectType.LaserWide:
                    this.select_scope = ESelectType.LaserWide;
                    break;

                case ESelectType.LaserTwin:
                    this.select_scope = ESelectType.LaserTwin;
                    break;

                case ESelectType.LaserTriple:
                    this.select_scope = ESelectType.LaserTriple;
                    break;
                }
                switch (this.select_scope)
                {
                case ESelectType.LaserSpread:
                case ESelectType.LaserWide:
                case ESelectType.LaserTwin:
                case ESelectType.LaserTriple:
                    this.scope = (OInt)1;
                    break;
                }
            }
            return(true);
        }
Example #11
0
 public void SetDefaultCreateRoominfo(ESelectType index)
 {
     this.mSelectTeam = index;
     ButtonClick(childCount[(int)(index) - 1].transform.GetChild(0).gameObject);
 }
        private void Start()
        {
            if (Object.op_Inequality((Object)this.RangeTemplate, (Object)null))
            {
                this.RangeTemplate.SetActive(false);
            }
            if (Object.op_Inequality((Object)this.SpaceTemplate, (Object)null))
            {
                this.SpaceTemplate.SetActive(false);
            }
            UnitData unitDataByUniqueId = MonoSingleton <GameManager> .Instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID);

            if (unitDataByUniqueId == null)
            {
                DebugUtility.Log("Not Selected Unit!!");
            }
            else
            {
                JobData jobData             = unitDataByUniqueId.CurrentJob;
                long    selectedJobUniqueId = (long)GlobalVars.SelectedJobUniqueID;
                for (int index = 0; index < unitDataByUniqueId.Jobs.Length; ++index)
                {
                    if (unitDataByUniqueId.Jobs[index].UniqueID == selectedJobUniqueId)
                    {
                        jobData = unitDataByUniqueId.Jobs[index];
                        break;
                    }
                }
                SkillData       attackSkill    = jobData.GetAttackSkill();
                int             attackRangeMax = unitDataByUniqueId.GetAttackRangeMax(attackSkill);
                int             attackRangeMin = unitDataByUniqueId.GetAttackRangeMin(attackSkill);
                ESelectType     selectRange    = attackSkill.SkillParam.select_range;
                GridLayoutGroup component1     = (GridLayoutGroup)((Component)this.Parent).GetComponent <GridLayoutGroup>();
                if (Object.op_Equality((Object)component1, (Object)null))
                {
                    DebugUtility.Log("Parent is not attachment GridLayoutGroup");
                }
                else
                {
                    component1.set_constraintCount(Mathf.Max(attackRangeMax * 2 + 1, UnitAttackRangeWindow.RANGE_BLOCK_MAX));
                    if (component1.get_constraintCount() > UnitAttackRangeWindow.RANGE_BLOCK_MAX + 1)
                    {
                        component1.set_cellSize(new Vector2((float)this.BlockSize, (float)this.BlockSize));
                        component1.set_spacing(new Vector2(5f, 5f));
                    }
                    int           num         = component1.get_constraintCount() / 2;
                    List <string> stringList1 = new List <string>();
                    List <string> stringList2;
                    switch (selectRange)
                    {
                    case ESelectType.Diamond:
                        stringList2 = this.GetDiamondRange(new Vector2((float)num, (float)num), attackRangeMin, attackRangeMax);
                        break;

                    case ESelectType.Square:
                        stringList2 = this.GetSquareRange(new Vector2((float)num, (float)num), attackRangeMin, attackRangeMax);
                        break;

                    case ESelectType.Laser:
                        stringList2 = this.GetLaserRange(new Vector2((float)num, (float)num), attackRangeMin, attackRangeMax);
                        break;

                    case ESelectType.All:
                        stringList2 = this.GetAllRange(new Vector2((float)num, (float)num), attackRangeMin, attackRangeMax);
                        break;

                    case ESelectType.Bishop:
                        stringList2 = this.GetBishopRange(new Vector2((float)num, (float)num), attackRangeMin, attackRangeMax);
                        break;

                    case ESelectType.Horse:
                        stringList2 = this.GetHorseRange(new Vector2((float)num, (float)num), attackRangeMin, attackRangeMax);
                        break;

                    default:
                        stringList2 = this.GetCrossRange(new Vector2((float)num, (float)num), attackRangeMin, attackRangeMax);
                        break;
                    }
                    for (int index1 = 0; index1 < component1.get_constraintCount(); ++index1)
                    {
                        for (int index2 = 0; index2 < component1.get_constraintCount(); ++index2)
                        {
                            string     str         = index2.ToString() + "," + index1.ToString();
                            GameObject gameObject1 = this.SpaceTemplate;
                            if (stringList2.IndexOf(str) != -1 || index2 == num && index1 == num)
                            {
                                gameObject1 = this.RangeTemplate;
                            }
                            GameObject gameObject2 = (GameObject)Object.Instantiate <GameObject>((M0)gameObject1);
                            gameObject2.get_transform().SetParent(this.Parent, false);
                            ((Object)gameObject2).set_name("Grid" + index2.ToString() + "-" + index1.ToString());
                            gameObject2.SetActive(true);
                            if (!Object.op_Equality((Object)gameObject1, (Object)this.SpaceTemplate))
                            {
                                Image component2 = (Image)gameObject2.GetComponent <Image>();
                                if (index2 == num && index1 == num)
                                {
                                    ((Graphic)component2).set_color(Color32.op_Implicit(new Color32((byte)0, byte.MaxValue, byte.MaxValue, byte.MaxValue)));
                                }
                                else
                                {
                                    ((Graphic)component2).set_color(Color32.op_Implicit(new Color32(byte.MaxValue, (byte)0, (byte)0, byte.MaxValue)));
                                }
                            }
                        }
                    }
                    string str1 = LocalizedText.Get("sys.MINMAX_VALUE", (object)attackRangeMin.ToString(), (object)attackRangeMax.ToString());
                    if (!Object.op_Inequality((Object)this.RangeMinMax, (Object)null))
                    {
                        return;
                    }
                    this.RangeMinMax.set_text(str1);
                }
            }
        }
Example #13
0
        public void LoadContent(ESelectType eSelectType)
        {
            _eSelectType = eSelectType;
            if (!_mapType2FileName.ContainsKey(eSelectType))
            {
                MessageBox.Show("找不到该配置文件", "错误", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }
            string   fileName = _mapType2FileName[eSelectType];
            FileInfo fi       = new FileInfo(fileName);

            if (!fi.Exists)
            {
                MessageBox.Show("找不该配置文件" + fileName, "错误", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            XmlDocument doc = null;

            try
            {
                doc = LoadDocument(fileName);
            }
            catch (System.Xml.XmlException ex)
            {
                using (StreamReader sr = File.OpenText(fileName))
                {
                    string s = sr.ReadLine();
                    if (!s.Contains("<?xml"))
                    {
                        string text = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + sr.ReadToEnd();
                        sr.Close();
                        StreamWriter sw = new StreamWriter(fileName);
                        sw.Write(text);
                    }
                }
                doc = LoadDocument(fileName);
            }

            ArrayList  arColumn = new ArrayList();
            XmlElement elem     = CTaskInfoMgr.GetDescendElement(doc, "Table");

            if (null == elem)
            {
                return;
            }

            bool bCreateColumn = true;

            foreach (XmlNode node in elem.ChildNodes)
            {
                if (node.GetType() == typeof(XmlElement))
                {
                    XmlElement elemData = (XmlElement)node;
                    ArrayList  arData   = new ArrayList();
                    foreach (XmlAttribute attr in elemData.Attributes)
                    {
                        if (bCreateColumn)
                        {
                            DataGridViewColumn column = new DataGridViewTextBoxColumn();
                            column.HeaderText = attr.Name;
                            column.Name       = attr.Name;
                            arColumn.Add(column);
                        }
                        arData.Add(attr.Value);
                    }
                    if (bCreateColumn)
                    {
                        DataGridViewColumn[] arDataGridViewColumn = (DataGridViewColumn[])arColumn.ToArray(typeof(DataGridViewColumn));
                        dataGridViewXML.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
                        dataGridViewXML.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
                        dataGridViewXML.EditMode      = DataGridViewEditMode.EditProgrammatically;
                        dataGridViewXML.Columns.AddRange(arDataGridViewColumn);
                    }
                    bCreateColumn = false;
                    string[] arDataText = (string[])arData.ToArray(typeof(string));
                    dataGridViewXML.Rows.Add(arDataText);
                }
            }
        }