void createKomaObj(string name, int x, int cnt) { // 駒表示 Vector3 komaScale = new Vector3(100, 100, 0); Sprite[] sprites = Resources.LoadAll <Sprite> ("koma"); Sprite sp = System.Array.Find <Sprite> (sprites, (sprite) => sprite.name.Equals(name)); GameObject gameObj = new GameObject(); SpriteRenderer spriteRenderer = gameObj.AddComponent <SpriteRenderer> (); spriteRenderer.sprite = sp; gameObj.transform.parent = FindObjectOfType <Canvas> ().transform; string objName = KomaConst.motigoma + name; gameObj.transform.name = objName; gameObj.transform.localScale = komaScale; gameObj.transform.position = new Vector3(transform.position.x + basex + per1x * x, transform.position.y, 2); BoxCollider2D box = gameObj.AddComponent <BoxCollider2D>() as BoxCollider2D; KomaScript sc = gameObj.AddComponent <KomaScript>(); sc.SetKoma(0, 0, objName); // 枚数 createKomaNum2Obj(name, x, cnt); // 2桁目 createKomaNumObj(name, x, cnt); // 1桁目 }
public List <KomaMove> GetMotigomaMoves(KomaScript sc) { List <KomaMove> moves = new List <KomaMove> (); MasuManager manager = MasuManager.Instance; for (int x = 1; x <= 9; x++) { for (int y = 1; y <= 9; y++) { MasuInit masu = manager.GetMasu(x, y); // 敵味方の駒がいないとき if (!masu.exists) { KomaMove move = new KomaMove(); move.x = x; move.y = y; moves.Add(move); } else { continue; } } } return(moves); }
public List <KomaMove> GetMoves(KomaScript sc, bool reverse = false) { int reversenum = 1; if (reverse) { reversenum = -1; } List <KomaMove> moves = new List <KomaMove>(); MasuManager manager = MasuManager.Instance; int[] xs = { 0, -1, -1, 0, 1, 1 }; int[] ys = { 1, 0, -1, -1, -1, 0 }; int i = 0; foreach (int x in xs) { int y = ys [i]; MasuInit masu = manager.GetMasu(sc.x + x, sc.y + y * reversenum); if (masu.selfFlag != sc.selfFlag || masu.enemyFlag != sc.enemyFlag) { KomaMove move = new KomaMove(); move.x = x; move.y = y * reversenum; moves.Add(move); } i++; } return(moves); }
// 駒を浮かせた駒を戻す public void resetFloatKomaObj(string objName) { GameObject komaObj = GameObject.Find(objName); KomaScript sc = komaObj.GetComponent <KomaScript> (); // komaObj.transform.position = new Vector3 (transform.position.x + basex + per1x * x, transform.position.y, 2); komaObj.transform.position = new Vector3(komaObj.transform.position.x + 0.05f, transform.position.y, 2); }
// 駒を浮かせた駒を戻す public void resetFloatKomaObj(string objName) { GameObject komaObj = GameObject.Find(objName); KomaScript sc = komaObj.GetComponent <KomaScript> (); komaObj.transform.position = new Vector3(basex - per1x * sc.x, basey - per1y * sc.y, 0); iTween.ColorTo(komaObj, iTween.Hash("r", 1f, "g", 1f, "b", 1f, "time", 0.1f)); }
// 駒を浮かせる public void floatKomaObj(string objName) { GameObject komaObj = GameObject.Find(objName); KomaScript sc = komaObj.GetComponent <KomaScript> (); komaObj.transform.position = new Vector3(basex - per1x * sc.x - 0.05f, basey - per1y * sc.y + 0.05f, 0); iTween.ColorTo(komaObj, iTween.Hash("r", 0.7f, "g", 0.7f, "b", 0.7f, "time", 0.5f, "loopType", "pingpong")); }
public List <KomaMove> GetMotigomaMoves(KomaScript sc, bool reverse = false) { List <KomaMove> moves = new List <KomaMove> (); MasuManager manager = MasuManager.Instance; int ymin = 1; int ymax = 9; if (reverse) { ymax = 8; } else { ymin = 2; } for (int x = 1; x <= 9; x++) { bool nifuFlag = false; for (int y = ymin; y <= ymax; y++) { MasuInit masu = manager.GetMasu(x, y); // 味方側 if (!reverse && masu.komaName.Equals(KomaConst.komaFu)) { nifuFlag = true; break; // 敵側 } else if (reverse && masu.komaName.Equals(KomaConst.komaFu2)) { nifuFlag = true; break; } } if (!nifuFlag) { for (int y = ymin; y <= ymax; y++) { MasuInit masu = manager.GetMasu(x, y); // 敵味方の駒がいないとき if (!masu.exists) { KomaMove move = new KomaMove(); move.x = x; move.y = y; moves.Add(move); } else { continue; } } } } return(moves); }
// 移動可能マスの表示 //public void RefresAbles(KomaScript sc, List<KomaMove> moves, string name) public void RefresAbles(KomaScript sc, int[,] moves, string name) { GameObject refObj = GameObject.Find("ban2_1"); BanScript banScript = refObj.GetComponent <BanScript>(); float per1x = 50.6f; float per1y = 50.6f; float basex = 575f + per1x; float basey = 420f + per1y; //List<KomaMove> choosemoves = new List<KomaMove>(); //int[,] choosemoves = new int[4, 2]; if (!banScript.chooseflag) { //int i = 0; //foreach (KomaMove move in moves) for (int i = 0; i < 4; i++) { //if (sc.x + move.x > 5 || sc.x + move.x < 1) if (sc.x + moves[i, 0] > 5 || sc.x + moves[i, 0] < 1) { continue; } //if (sc.y + move.y > 5 || sc.y + move.y < 1) if (sc.y + moves[i, 1] > 5 || sc.y + moves[i, 1] < 1) { continue; } Sprite sp = Resources.Load <Sprite>("koma_able"); GameObject gameObj = new GameObject(); SpriteRenderer spriteRenderer = gameObj.AddComponent <SpriteRenderer>(); spriteRenderer.sprite = sp; gameObj.transform.parent = FindObjectOfType <Canvas>().transform; gameObj.transform.localScale = new Vector3(14, 14, 0); gameObj.transform.name = "koma_able" + i; //gameObj.transform.position = new Vector3(basex - per1x * (sc.x + move.x), basey - per1y * (sc.y + move.y), -2); gameObj.transform.position = new Vector3(basex - per1x * (sc.x + moves[i, 0]), basey - per1y * (sc.y + moves[i, 1]), -2); BoxCollider2D box = gameObj.AddComponent <BoxCollider2D>() as BoxCollider2D; KomaAble komaAble = gameObj.AddComponent <KomaAble>(); //komaAble.x = sc.x + move.x; //komaAble.y = sc.y + move.y; komaAble.x = sc.x + moves[i, 0]; komaAble.y = sc.y + moves[i, 1]; i++; //choosemoves.Add(move); } banScript.chooseflag = true; //banScript.choosemoves = choosemoves; banScript.choosemoves = moves; banScript.choosekomaname = name; } }
// 駒成確認&実行時 void execCheckNarigoma(string name, int x, int y) { GameObject gameObj = GameObject.Find(name); KomaScript sc = gameObj.GetComponent <KomaScript>(); if (sc.selfFlag) { // 駒がまだ成ってない if (KomaFunction.isNotNarigoma(sc.komaName)) { if (y <= 3 || sc.y <= 3 && sc.y != 0) { if (KomaFunction.isRequireNarigoma(sc.komaName, x, y)) { modKomanariObj(chooseKomaObjName, KomaFunction.GetNarigomaByKoma(sc.komaName), x, y); } else { string[] names = name.Split(new char[] { '_' }); name = "koma_" + names [1]; CreateNarigomaBg(KomaFunction.GetNarigomaByKoma(name), x, y); CreateNarigomaBg2(name, x, y); narigomaBgFlag = true; } } } } else if (sc.enemyFlag) { // 駒がまだ成ってない if (KomaFunction.isNotNarigoma(sc.komaName)) { if (y >= 7 || sc.y >= 7) { if (KomaFunction.isRequireNarigoma(sc.komaName, x, y)) { modKomanariObj(chooseKomaObjName, KomaFunction.GetNarigomaByKoma(sc.komaName), x, y); } else { string[] names = name.Split(new char[] { '_' }); name = "koma_" + names [1]; CreateNarigomaBg(KomaFunction.GetNarigomaByKoma(name), x, y); CreateNarigomaBg2(name, x, y); narigomaBgFlag = true; } } } } }
// 駒移動処理 public void MoveKomaObj(string name, int x, int y) { bool motigomaFlag = false; // 持ち駒の場合 if (name.IndexOf(KomaConst.motigoma) > -1) { name = name.Replace(KomaConst.motigoma, ""); MotigomaManager motigomaManager = MotigomaManager.Instance; motigomaManager.Minus(name); if (KomaFunction.isSelfKoma(name)) { GameObject obj = transform.Find("../Motigoma1").gameObject; MotigomaScript mSc = obj.GetComponent <MotigomaScript> (); mSc.RefreshKoma(); } else { GameObject obj = transform.Find("../Motigoma2").gameObject; MotigomaScript mSc = obj.GetComponent <MotigomaScript> (); mSc.RefreshKoma(); } name = CreateKomaObj(name, x, y); MasuManager manager = MasuManager.Instance; manager.SetMasu(x, y, KomaFunction.GetKomaNameByObjName(name)); manager.UpdMasuObjNameByXAndY(name, x, y); motigomaFlag = true; } GameObject gameObj = GameObject.Find(name); KomaScript sc = gameObj.GetComponent <KomaScript> (); gameObj.transform.position = new Vector3(basex - per1x * x, basey - per1y * y, 2); // 持ち駒でない場合 if (!motigomaFlag) { Debug.Log("motigomadenai " + name); execCheckGetEnemyKoma(name, x, y); execCheckNarigoma(name, x, y); // 移動前のマスを初期化 MasuManager manager = MasuManager.Instance; manager.EmptyMasu(sc.x, sc.y); sc.x = x; sc.y = y; manager.SetMasu(x, y, KomaFunction.GetKomaNameByObjName(name)); manager.UpdMasuObjNameByXAndY(name, x, y); } }
// 駒選択処理 public void chooseKoma(string name) { Debug.Log(name); string[] names = name.Split(new char[] { '_' }); string komaname = "yose5p_" + names[1]; Debug.Log(komaname); GameObject komaObj = GameObject.Find(name); KomaScript sc = komaObj.GetComponent <KomaScript>(); Debug.Log("sc.x:" + sc.x); Debug.Log("sc.y:" + sc.y); //List<KomaMove> moves = new List<KomaMove>(); int[,] moves = new int[4, 2]; Dice_move1 dice = new Dice_move1(); moves = dice.GetMoves(sc); this.RefresAbles(sc, moves, name); }
public List <KomaMove> GetMoves(KomaScript sc, bool reverse = false) { int reversenum = 1; if (reverse) { reversenum = -1; } List <KomaMove> moves = new List <KomaMove> (); MasuManager manager = MasuManager.Instance; for (int i = 1; i <= 8; i++) { MasuInit masu = manager.GetMasu(sc.x, sc.y + -1 * i * reversenum); // 敵の駒に当たったとき if (masu.enemyFlag && sc.selfFlag || masu.selfFlag && sc.enemyFlag) { KomaMove move = new KomaMove(); move.x = 0; move.y = -1 * i * reversenum; moves.Add(move); break; // 味方の駒に当たってないとき } else if (masu.selfFlag != sc.selfFlag || masu.enemyFlag != sc.enemyFlag) { KomaMove move = new KomaMove(); move.x = 0; move.y = -1 * i * reversenum; moves.Add(move); } else { break; } } return(moves); }
// 移動可能駒のマス表示 public void RefresAbles(KomaScript sc, List <KomaMove> moves, string name) { List <KomaMove> chooseKomaMoves = new List <KomaMove> (); if (!chooseFlag) { int i = 0; foreach (KomaMove move in moves) { if (sc.x + move.x > 9 || sc.x + move.x < 1) { continue; } if (sc.y + move.y > 9 || sc.y + move.y < 1) { continue; } Sprite sp = Resources.Load <Sprite> ("KomaAble"); GameObject gameObj = new GameObject(); SpriteRenderer spriteRenderer = gameObj.AddComponent <SpriteRenderer> (); spriteRenderer.sprite = sp; gameObj.transform.parent = FindObjectOfType <Canvas> ().transform; gameObj.transform.localScale = new Vector3(140, 140, 0); gameObj.transform.name = "KomaAble" + i; gameObj.transform.position = new Vector3(basex - per1x * (sc.x + move.x), basey - per1y * (sc.y + move.y), 0); BoxCollider2D box = gameObj.AddComponent <BoxCollider2D>() as BoxCollider2D; KomaAble komaAble = gameObj.AddComponent <KomaAble> (); komaAble.x = sc.x + move.x; komaAble.y = sc.y + move.y; i++; chooseKomaMoves.Add(move); } chooseFlag = true; chooseMoves = chooseKomaMoves; Debug.Log("able objName=" + name); chooseKomaObjName = name; } }
// 駒作成 public string CreateKomaObj(string komaName, int x, int y) { Vector3 komaScale = new Vector3(100, 100, 0); Sprite[] sprites = Resources.LoadAll <Sprite>("koma"); Sprite sp = System.Array.Find <Sprite>(sprites, (sprite) => sprite.name.Equals(komaName)); GameObject gameObj = new GameObject(); SpriteRenderer spriteRenderer = gameObj.AddComponent <SpriteRenderer>(); spriteRenderer.sprite = sp; gameObj.transform.parent = FindObjectOfType <Canvas>().transform; KomaManager komaManager = KomaManager.Instance; string objName = komaName + "_" + komaManager.issueKomaAttachId(); gameObj.transform.name = objName; gameObj.transform.localScale = komaScale; gameObj.transform.position = new Vector3(basex - per1x * x, basey - per1y * y, 2); BoxCollider2D box = gameObj.AddComponent <BoxCollider2D>() as BoxCollider2D; KomaScript sc = gameObj.AddComponent <KomaScript>(); sc.SetKoma(x, y, objName); return(objName); }
public List <KomaMove> GetMotigomaMoves(KomaScript sc, bool reverse = false) { List <KomaMove> moves = new List <KomaMove> (); MasuManager manager = MasuManager.Instance; int ymin = 1; int ymax = 9; if (reverse) { ymax = 7; } else { ymin = 3; } for (int x = 1; x <= 9; x++) { for (int y = ymin; y <= ymax; y++) { MasuInit masu = manager.GetMasu(x, y); // 敵味方の駒がいないとき if (!masu.exists) { KomaMove move = new KomaMove(); move.x = x; move.y = y; moves.Add(move); } else { continue; } } } return(moves); }
// 相手の駒を取ったか確認&実行時 void execCheckGetEnemyKoma(string objName, int x, int y) { GameObject gameObj = GameObject.Find(objName); KomaScript sc = gameObj.GetComponent <KomaScript>(); MasuManager manager = MasuManager.Instance; MasuInit masu = manager.GetMasu(x, y); MotigomaManager mManager = MotigomaManager.Instance; if (sc.selfFlag && masu.enemyFlag) { if (masu.komaName.Equals(KomaConst.komaOu2) || masu.komaName.Equals(KomaConst.komaGy2)) { mManager.Plus(KomaConst.komaOu); } else if (masu.komaName.Equals(KomaConst.komaHi2) || masu.komaName.Equals(KomaConst.komaRy2)) { mManager.Plus(KomaConst.komaHi); } else if (masu.komaName.Equals(KomaConst.komaKa2) || masu.komaName.Equals(KomaConst.komaUm2)) { mManager.Plus(KomaConst.komaKa); } else if (masu.komaName.Equals(KomaConst.komaKi2)) { mManager.Plus(KomaConst.komaKi); } else if (masu.komaName.Equals(KomaConst.komaGi2) || masu.komaName.Equals(KomaConst.komaNg2)) { mManager.Plus(KomaConst.komaGi); } else if (masu.komaName.Equals(KomaConst.komaKe2) || masu.komaName.Equals(KomaConst.komaNk2)) { mManager.Plus(KomaConst.komaKe); } else if (masu.komaName.Equals(KomaConst.komaKy2) || masu.komaName.Equals(KomaConst.komaNy2)) { mManager.Plus(KomaConst.komaKy); } else if (masu.komaName.Equals(KomaConst.komaFu2) || masu.komaName.Equals(KomaConst.komaTo2)) { mManager.Plus(KomaConst.komaFu); } GameObject obj = transform.Find("../Motigoma1").gameObject; MotigomaScript mSc = obj.GetComponent <MotigomaScript>(); mSc.RefreshKoma(); DestroyKomaObj(masu.objName); } else if (sc.enemyFlag && masu.selfFlag) { if (masu.komaName.Equals(KomaConst.komaOu) || masu.komaName.Equals(KomaConst.komaGy)) { mManager.Plus(KomaConst.komaOu2); } else if (masu.komaName.Equals(KomaConst.komaHi) || masu.komaName.Equals(KomaConst.komaRy)) { mManager.Plus(KomaConst.komaHi2); } else if (masu.komaName.Equals(KomaConst.komaKa) || masu.komaName.Equals(KomaConst.komaUm)) { mManager.Plus(KomaConst.komaKa2); } else if (masu.komaName.Equals(KomaConst.komaKi)) { mManager.Plus(KomaConst.komaKi2); } else if (masu.komaName.Equals(KomaConst.komaGi) || masu.komaName.Equals(KomaConst.komaNg)) { mManager.Plus(KomaConst.komaGi2); } else if (masu.komaName.Equals(KomaConst.komaKe) || masu.komaName.Equals(KomaConst.komaNk)) { mManager.Plus(KomaConst.komaKe2); } else if (masu.komaName.Equals(KomaConst.komaKy) || masu.komaName.Equals(KomaConst.komaNy)) { mManager.Plus(KomaConst.komaKy2); } else if (masu.komaName.Equals(KomaConst.komaFu) || masu.komaName.Equals(KomaConst.komaTo)) { mManager.Plus(KomaConst.komaFu2); } GameObject obj = transform.Find("../Motigoma2").gameObject; MotigomaScript mSc = obj.GetComponent <MotigomaScript>(); mSc.RefreshKoma(); DestroyKomaObj(masu.objName); } }
// 持ち駒選択処理 public void chooseMotigoma(string name) { Debug.Log(name); // 選択持ち駒を浮かせる if (KomaFunction.isSelfKoma(name)) { GameObject obj = transform.Find("../Motigoma1").gameObject; MotigomaScript mSc = obj.GetComponent <MotigomaScript> (); mSc.floatKomaObj(name); } else { GameObject obj = transform.Find("../Motigoma2").gameObject; MotigomaScript mSc = obj.GetComponent <MotigomaScript> (); mSc.floatKomaObj(name); } string[] names = name.Split(new char[] { '_' }); string komaname = "koma_" + names[1]; Debug.Log(komaname); GameObject komaObj = GameObject.Find(name); KomaScript sc = komaObj.GetComponent <KomaScript> (); List <KomaMove> moves = new List <KomaMove> (); if (komaname.Equals(KomaConst.komaOu) || komaname.Equals(KomaConst.komaGy)) { KomaOu koma = new KomaOu(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaHi)) { KomaHi koma = new KomaHi(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaKa)) { KomaKa koma = new KomaKa(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaKi)) { KomaKi koma = new KomaKi(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaGi)) { KomaGi koma = new KomaGi(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaKe)) { KomaKe koma = new KomaKe(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaKy)) { KomaKy koma = new KomaKy(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaFu)) { KomaFu koma = new KomaFu(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaOu2) || komaname.Equals(KomaConst.komaGy2)) { KomaOu koma = new KomaOu(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaHi2)) { KomaHi koma = new KomaHi(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaKa2)) { KomaKa koma = new KomaKa(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaKi2)) { KomaKi koma = new KomaKi(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaGi2)) { KomaGi koma = new KomaGi(); moves = koma.GetMotigomaMoves(sc); } else if (komaname.Equals(KomaConst.komaKe2)) { KomaKe koma = new KomaKe(); moves = koma.GetMotigomaMoves(sc, true); } else if (komaname.Equals(KomaConst.komaKy2)) { KomaKy koma = new KomaKy(); moves = koma.GetMotigomaMoves(sc, true); } else if (komaname.Equals(KomaConst.komaFu2)) { KomaFu koma = new KomaFu(); moves = koma.GetMotigomaMoves(sc, true); } this.RefresAbles(sc, moves, name); }
// 駒選択処理 public void chooseKoma(string name) { Debug.Log(name); floatKomaObj(name); string[] names = name.Split(new char[] { '_' }); string komaname = "koma_" + names[1]; Debug.Log(komaname); GameObject komaObj = GameObject.Find(name); KomaScript sc = komaObj.GetComponent <KomaScript> (); List <KomaMove> moves = new List <KomaMove> (); if (komaname.Equals(KomaConst.komaOu) || komaname.Equals(KomaConst.komaGy)) { KomaOu koma = new KomaOu(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaHi)) { KomaHi koma = new KomaHi(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaKa)) { KomaKa koma = new KomaKa(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaKi)) { KomaKi koma = new KomaKi(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaGi)) { KomaGi koma = new KomaGi(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaKe)) { KomaKe koma = new KomaKe(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaKy)) { KomaKy koma = new KomaKy(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaFu)) { KomaFu koma = new KomaFu(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaRy)) { KomaRy koma = new KomaRy(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaUm)) { KomaUm koma = new KomaUm(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaNg)) { KomaNg koma = new KomaNg(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaNk)) { KomaNk koma = new KomaNk(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaNy)) { KomaNy koma = new KomaNy(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaTo)) { KomaTo koma = new KomaTo(); moves = koma.GetMoves(sc); } else if (komaname.Equals(KomaConst.komaOu2) || komaname.Equals(KomaConst.komaGy2)) { KomaOu koma = new KomaOu(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaHi2)) { KomaHi koma = new KomaHi(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaKa2)) { KomaKa koma = new KomaKa(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaKi2)) { KomaKi koma = new KomaKi(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaGi2)) { KomaGi koma = new KomaGi(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaKe2)) { KomaKe koma = new KomaKe(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaKy2)) { KomaKy koma = new KomaKy(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaFu2)) { KomaFu koma = new KomaFu(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaRy2)) { KomaRy koma = new KomaRy(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaUm2)) { KomaUm koma = new KomaUm(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaNg2)) { KomaNg koma = new KomaNg(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaNk2)) { KomaNk koma = new KomaNk(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaNy2)) { KomaNy koma = new KomaNy(); moves = koma.GetMoves(sc, true); } else if (komaname.Equals(KomaConst.komaTo2)) { KomaTo koma = new KomaTo(); moves = koma.GetMoves(sc, true); } this.RefresAbles(sc, moves, name); }