コード例 #1
0
ファイル: attackLinkController.cs プロジェクト: BXZR/Sword
    void check()                 //真正进行检测的方法
    {
        bool isOver = false;     //标记量

        theAttackLinkNow = null; //每次检查之前都需要清空引用
        foreach (attackLink AL in attackLinkMayUsing)
        {
            int selectAttackLinkIndex;
            if (AL.isCheckToOver(index + 1, out selectAttackLinkIndex))              //因为长度和index的关系,就比本的要求就是输入正确(当然还有SP等等的需求)
            {
                //这个判断非常的重要,如果取消,任何攻击动作都有可能中间取消,这当然不符合我们的需求
                //print("index Selected is "+selectAttackLinkIndex);
                //print("the selected attacklink's linkstring = "+ AL.attackLinkString);
                theAttackLinkNow = AL;
                AL.attackLinkMain(selectAttackLinkIndex); //发生效果

                flashLink();                              //更新列表
                reMake();                                 //完全重头开始
                isOver = true;                            //标记量,是否已经使用了一个技能
                break;                                    //每一次生效的连招只能够有一个
            }
        }
        if (!isOver)
        {
            index++;             //向下一个目录前进
        }
    }
コード例 #2
0
    //获得连招的效果信息
    string getAttacklinkEffectInformation(attackLink theAttacklink, GameObject theButton, out string theSkillInformation)
    {
        StringBuilder theInformationString      = new StringBuilder();
        StringBuilder theSkillInformationString = new StringBuilder();

        if (systemValues.isNullOrEmpty(theAttacklink.conNameToSELF) == false)
        {
            System.Type theType = System.Type.GetType(theAttacklink.conNameToSELF);
            //theButton.gameObject.AddComponent (theType);
            ////effectBasic theselfEffect = theButton.GetComponent <effectBasic> ();
            //effectBasic theselfEffect = (effectBasic)theButton.GetComponent (theType);
            effectBasic theselfEffect = (effectBasic)theButton.gameObject.AddComponent(theType);
            theselfEffect.Init();

            makeEffectInformation(theInformationString, theSkillInformationString, theselfEffect);
            Destroy(theselfEffect);
        }
        if (systemValues.isNullOrEmpty(theAttacklink.conNameToEMY) == false)
        {
            System.Type theType = System.Type.GetType(theAttacklink.conNameToEMY);
            //theButton.gameObject.AddComponent (theType);
            ////effectBasic theEMYEffect = theButton.GetComponent <effectBasic> ();
            //effectBasic theEMYEffect = (effectBasic)theButton.GetComponent (theType);
            effectBasic theEMYEffect = (effectBasic)theButton.gameObject.AddComponent(theType);
            theEMYEffect.Init();

            makeEffectInformation(theInformationString, theSkillInformationString, theEMYEffect, false);
            Destroy(theEMYEffect);
        }
        theSkillInformation = theSkillInformationString.ToString();
        return(theInformationString.ToString());
    }
コード例 #3
0
ファイル: effectDragonExtraDamage.cs プロジェクト: BXZR/Sword
 //招式等级额外特效 ====================================================================
 public override void SetAttackLink(attackLink attackLinkIn)
 {
     if (attackLinkIn && attackLinkIn.theAttackLinkLv >= 8)
     {
         //print ("ad");
         damageAddPercent += 0.06f;
     }
 }
コード例 #4
0
ファイル: effectDragonArea.cs プロジェクト: BXZR/Sword
 //招式等级额外特效 ====================================================================
 public override void SetAttackLink(attackLink attackLinkIn)
 {
     if (attackLinkIn && attackLinkIn.theAttackLinkLv >= 3)
     {
         //print ("ad");
         countMax++;
     }
 }
コード例 #5
0
ファイル: effectMulanBaoFa.cs プロジェクト: BXZR/Sword
 //招式等级额外特效 ====================================================================
 public override void SetAttackLink(attackLink attackLinkIn)
 {
     if (attackLinkIn && attackLinkIn.theAttackLinkLv >= 4)
     {
         //print ("ad");
         DamageUseMax += 5;
     }
 }
コード例 #6
0
ファイル: effectQianfang.cs プロジェクト: BXZR/Sword
    //招式等级额外特效 ====================================================================
    public override void SetAttackLink(attackLink attackLinkIn)
    {
        if (attackLinkIn && attackLinkIn.theAttackLinkLv >= 7)
        {
            hpup += 0.03f;
        }

        if (attackLinkIn && attackLinkIn.theAttackLinkLv >= 12)
        {
            arrowCounts += 2;
        }
    }
コード例 #7
0
    //招式等级额外特效 ====================================================================
    public override void SetAttackLink(attackLink attackLinkIn)
    {
        if (attackLinkIn && attackLinkIn.theAttackLinkLv >= 5)
        {
            //print ("ad");
            basicDamage *= 1.1f;
        }

        if (attackLinkIn && attackLinkIn.theAttackLinkLv >= 12)
        {
            //print ("ad");
            maxEMYCountForUse += 2;
        }
    }
コード例 #8
0
 public void SetAttackLink(attackLink theLink, skillButton theButton)
 {
     theLinkNow    = theLink;
     theShowButton = theButton;
     makeShow();
 }
コード例 #9
0
    }                                                          //有些技能效果是可以使用不同的连招按键触发的,但是这些效果完全相同,所以用这个来区分

    virtual public void SetAttackLink(attackLink theLink = null)
    {
    }                                                                  //可以从外部设定招式的等级,也就是招式的等级也可能影响招式效果