Esempio n. 1
0
        public byte skillCastDmgTypeCalculations(Fightable chr, Fightable target, bool canCrit)
        {
            byte dmgType;

            //successrate to hit
            if (chr.getAtkSuc() >= target.getDefSuc() || (int)(Randomizer.NextInt(2) / (Math.Pow(2, (float)-(target.getDefSuc() - chr.getAtkSuc()) / 400f))) == 0)
            {
                if (chr.getCritRate() >= target.getDefSuc() || (int)(Randomizer.NextInt(2) / (Math.Pow(2, (float)-(target.getDefSuc() - chr.getCritRate()) / 200f))) == 0)
                {
                    if (canCrit && (int)(Randomizer.NextInt(2) * 50) == 0)
                    {
                        dmgType = 5;
                    }
                    else
                    {
                        dmgType = 2;
                    }
                }
                else
                {
                    dmgType = 1;
                }
            }
            else
            {
                dmgType = 0;
            }
            return(dmgType);
        }
Esempio n. 2
0
 void Awake()
 {
     fightable         = PlayerController.instance.player.GetComponent <Fightable>();
     HPSlider          = GetComponent <Slider>();
     maxHP             = fightable.maxHealth;
     HPSlider.maxValue = maxHP;
     curHP             = maxHP;
 }
Esempio n. 3
0
    void Start()
    {
        if (m_fsm != null)
        {
            StateMove stateMove = new StateMove();
            StateIdle stateIdle = new StateIdle();
            stateIdle.AddTransition(FSMTransition.MOVE, FSMStateId.STATE_MOVE);
            stateMove.AddTransition(FSMTransition.STOP_MOVE, FSMStateId.STATE_IDLE);
            m_fsm.AddState(stateIdle);
            m_fsm.AddState(stateMove);
            m_fsm.CurrentState = stateIdle;
        }

        m_spatial = gameObject.GetComponent <Spatial>();
        m_fighter = gameObject.GetComponent <Fightable>();
    }
Esempio n. 4
0
    void Start()
    {
        if (m_fsm != null)
        {
            StateMove stateMove = new StateMove();
            StateIdle stateIdle = new StateIdle();
            stateIdle.AddTransition(FSMTransition.MOVE, FSMStateId.STATE_MOVE);
            stateMove.AddTransition(FSMTransition.STOP_MOVE, FSMStateId.STATE_IDLE);
            m_fsm.AddState(stateIdle);
            m_fsm.AddState(stateMove);
            m_fsm.CurrentState = stateIdle;
        }

        m_spatial = gameObject.GetComponent<Spatial>();
        m_fighter = gameObject.GetComponent<Fightable>();
    }
Esempio n. 5
0
        public byte skillCastDmgTypeCalculations(Fightable chr, Fightable target, bool canCrit)
        {
            byte dmgType;

            //successrate to hit
            if(chr.getAtkSuc()>=target.getDefSuc() || (int)(Randomizer.NextInt(2)/(Math.Pow(2,(float)-(target.getDefSuc()-chr.getAtkSuc())/400f)))==0) {
                if(chr.getCritRate()>=target.getDefSuc() || (int)(Randomizer.NextInt(2)/(Math.Pow(2,(float)-(target.getDefSuc()-chr.getCritRate())/200f)))==0) {
                    if(canCrit && (int)(Randomizer.NextInt(2)*50)==0) {
                        dmgType=5;
                    } else {
                        dmgType=2;
                    }
                }else{
                    dmgType=1;
                }
            }else{
                dmgType=0;
            }
            return dmgType;
        }