Ejemplo n.º 1
0
        // ユニットの陣営を変更
        public void ChangeParty(string new_party)
        {
            // 陣営を変更
            Party = new_party;

            // パイロットの陣営を変更
            foreach (var p in Pilots.Concat(SupportPilots))
            {
                p.Party = new_party;
            }

            if (IsFeatureAvailable("追加サポート"))
            {
                AdditionalSupport().Party = new_party;
            }

            // 他形態の陣営を変更
            foreach (var of in OtherForms)
            {
                of.ChangeParty(new_party);
            }

            // 出撃中?
            if (Status == "出撃")
            {
                // 自分の陣営のステージなら行動可能に
                if ((Party ?? "") == (SRC.Stage ?? ""))
                {
                    Rest();
                }
                // マップ上のユニット画像を更新
                GUI.PaintUnitBitmap(this);
            }

            SRC.PList.UpdateSupportMod(this);

            // 思考モードを通常に
            Mode = "通常";
        }