public static int RollInitiative(CombatSituation situation, Character character)
        {
            int ir = character.Intuition + character.Reaction;
            int id = character.Intuition + character.DataProcessing;

            switch (situation)
            {
            case CombatSituation.PHYSICAL:
                return(ir + d6());

            case CombatSituation.ASTRAL:
                return((2 * character.Intuition) + d6(2));

            case CombatSituation.MATRIX:
                switch (character.MatrixLevel)
                {
                case MatrixLevel.AR:
                    return(ir + d6());

                case MatrixLevel.COLD_SIM:
                    return(id + d6(3));

                case MatrixLevel.HOT_SIM:
                    return(id + d6(4));

                default:
                    throw new NotImplementedException();
                }

            default:
                throw new NotImplementedException();
            }
        }
Ejemplo n.º 2
0
        private void combatSituationChanged(object sender, EventArgs e)
        {
            if (physicalRadioButton.Checked)
            {
                m_Situation = CombatSituation.PHYSICAL;
            }
            else if (astralRadioButton.Checked)
            {
                m_Situation = CombatSituation.ASTRAL;
            }
            else if (matrixRadioButton.Checked)
            {
                m_Situation = CombatSituation.MATRIX;
            }

            if (OnCombatSituationChanged != null)
            {
                OnCombatSituationChanged(this, null);
            }
        }
Ejemplo n.º 3
0
        public CombatSituationPanel()
        {
            InitializeComponent();

            Situation = CombatSituation.PHYSICAL;
        }