コード例 #1
0
 public WarriorPanel(PictureBox show, WarriorList warrior)
 {
     this.show     = show;
     this.warrior  = warrior;
     this.hp       = new ItemPair(ItemPair.key.hp);
     this.speed    = new ItemPair(ItemPair.key.speed);
     this.power    = new ItemPair(ItemPair.key.power);
     this.distance = new ItemPair(ItemPair.key.distance);
 }
コード例 #2
0
        public int UpDistance(WarriorList warrior)
        {
            int index = (int)warrior - 1;
            int pay   = this.warriors[index].addDistanceFrom(Const.UpRefDat[index], coin);

            if (pay > 0)
            {
                this.coin -= pay;
                return(pay);
            }
            return(pay);
        }
コード例 #3
0
        private void change(object sender, EventArgs e)
        {
            Button      tmp      = sender as Button;
            ItemPair    obj      = findButtonIndex(tmp);
            WarriorList warr     = findWarriorFromItem(obj);
            int         errValue = 0;

            switch (obj.item)
            {
            case ItemPair.key.hp:
                errValue = Program.player.UpHp(warr);
                break;

            case ItemPair.key.speed:
                errValue = Program.player.UpSpeed(warr);
                break;

            case ItemPair.key.power:
                errValue = Program.player.UpPower(warr);
                break;

            case ItemPair.key.distance:
                errValue = Program.player.UpDistance(warr);
                break;
            }

            if (errValue > 0)
            {
                _coin.Text = "Coin:" + Program.player.coin;
                warriorsPanels[(int)warr - 1].update();
                //  message
                message.Enqueue("消耗了 " + errValue + " Coin");
            }
            else if (errValue < 0)
            {
                message.Enqueue("你的錢不夠,需要" + (-errValue).ToString() + "Coin");
            }
            else
            {
                message.Enqueue("這項不能升級");
            }
            showMessage();
        }
コード例 #4
0
        public override void Notify_PawnAdded(Pawn pawn)
        {
            if (pawn.def.race.FleshType == XenomorphRacesDefOf.RRY_Xenomorph)
            {
                if (!XenoList.Contains(pawn))
                {
                    XenoList.Add(pawn);
                }
            }
            if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_FaceHugger)
            {
                /*
                 * if (!hiveGrid.Dronelist.Contains(pawn))
                 * {
                 *  hiveGrid.Dronelist.Add(pawn);
                 * }
                 */
            }
            else if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_Runner)
            {
                if (!RunnerList.Contains(pawn))
                {
                    RunnerList.Add(pawn);
                }
                if (!ScoutList.Contains(pawn) && ScoutList.Count < Math.Max(1, RunnerList.Count / 3))
                {
                }
            }
            else if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_Drone)
            {
                if (!DroneList.Contains(pawn))
                {
                    DroneList.Add(pawn);
                }
            }
            else if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_Warrior)
            {
                if (!WarriorList.Contains(pawn))
                {
                    WarriorList.Add(pawn);
                }
            }

            /*
             * else if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_Preatorian)
             * {
             *  if (!PreatorianList.Contains(pawn))
             *  {
             *      PreatorianList.Add(pawn);
             *  }
             * }
             */
            else if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_Predalien)
            {
                if (!PredalienList.Contains(pawn))
                {
                    PredalienList.Add(pawn);
                }
            }
            else if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_Queen)
            {
                if (!QueenList.Contains(pawn))
                {
                    QueenList.Add(pawn);
                }
            }
            else if (pawn.def == XenomorphRacesDefOf.RRY_Xenomorph_Thrumbomorph)
            {
                if (!ThrumbomorphList.Contains(pawn))
                {
                    ThrumbomorphList.Add(pawn);
                }
            }
            base.Notify_PawnAdded(pawn);
        }
コード例 #5
0
 static public int EnergyOf(WarriorList index)
 {
     return(WarriorEnergy[(int)(index) - 1]);
 }
コード例 #6
0
 static private int indexOf(WarriorList warrior)
 {
     return((int)warrior - 1);
 }