List <List <PosShipDamage> > TakeAttaker(ShipData Attaker, List <List <PosShipDamage> > eDeckPosDamaged) { //假设我方船完全相同,且都可以炮击 return(HougekiBattle(nowPosibility)); }
List <PosShipDamage> TakeTarget(ShipData FAttacker) { //前船的战斗会影响此处的缘护率 int numShipInDeck = eDeck.Ship_List.Count; List <double> PosNormal = new List <double>(); //旗舰外Normal率 foreach (ShipData currentShip in eDeck.Ship_List.Skip(1)) { PosNormal.Add(currentShip.StateDamaged_dictonary["Normal"]); } //每艘船进行缘护的概率,阵型缘护发生率*自身Normal率*1/(非旗舰船Normal数概率+1) //缘护不发生时被选中的概率 //最后合并成每艘船被选择的概率 //和每艘船的受伤状态有关,Normal,击沉,影响到后续伤害 }
//概率函数for(i,j) 有序增长 KindAttack(ShipData Fship, ShipData Eship) { }