// Start is called before the first frame update void Start() { // 呼叫CentralData CentralData myData = CentralData.GetInst(); // 動態設定p1 p2 //p1 = factory.Create("黃色小鴨"); //p2 = factory.Create("黃色小鴨"); p1 = factory.Create(myData.Player); p2 = factory.Create(myData.Enemy); p1.transform.position = new Vector3(-5.0f, -0.7f, 0.0f); p2.transform.position = new Vector3(5.2f, 1.0f, 0.0f); // 翻轉p1 SpriteRenderer spr = p1.GetComponent <SpriteRenderer>(); if (spr != null) { spr.flipX = true; } // 顯示腳色 p1.gameObject.SetActive(true); p2.gameObject.SetActive(true); // 初始化腳色的訊息框 panel1.Init(p1); panel2.Init(p2); string msg = "開戰!! " + p1.pokename + " vs " + p2.pokename + " 決鬥開始"; message.text = msg; }
public void Next() // 做每回合 { //round++; //Debug.Log("第" + round + "回合"); Pokemon13 pAtker = null; Pokemon13 pDefer = null; string msg = ""; // 1. int bWho = Random.Range(0, 2); if (bWho > 0) { pAtker = p1; pDefer = p2; } else { pAtker = p2; pDefer = p1; } Debug.Log(pAtker.pokename + " 攻擊"); msg += pAtker.pokename + " 攻擊\n"; message.text = msg; int damage = pAtker.Atk() - pDefer.Def(); if (damage <= 0) { //Debug.Log(pDefer.name + " 成功防禦"); msg += pDefer.pokename + " 成功防禦\n"; message.text = msg; } else { //Debug.Log(pAtker.name + " 攻擊成功, " + pDefer.name + " 損傷 " + damage); msg += pAtker.pokename + " 攻擊成功, " + pDefer.pokename + " 損傷 " + damage + "\n"; message.text = msg; //pDefer.hp -= damage; pDefer.Damage(damage); } Debug.Log(pDefer.pokename + " 還有HP: " + pDefer.hp); msg += pDefer.pokename + " 還有HP: " + pDefer.hp + "\n"; message.text = msg; if (pDefer.hp <= 0) { // 勝負已出!! pWinner = pAtker; // 勝者 pLoser = pDefer; // 魯蛇 Debug.Log(pDefer.pokename + " 被打趴了.."); Debug.Log("獲勝者為 " + pAtker.pokename); msg += pDefer.pokename + " 被打趴了.." + "\n"; msg += "獲勝者為 " + pAtker.pokename + "\n"; message.text = msg; //bPlay = false; } }
public void Next() { //p1 = new Pikachu13(); // Pikachu13 Bulbasaur13 Squirtle13 //p2 = new Bulbasaur13(); Debug.Log(p1._name + " 有HP: " + p1.hp); Debug.Log(p2._name + " 有HP: " + p2.hp); Pokemon13 pAtker = null; Pokemon13 pDefer = null; string mag = " "; int bWho = Random.Range(0, 2); if (bWho > 0) { pAtker = p1; pDefer = p2; } else { pAtker = p2; pDefer = p1; } Debug.Log(pAtker._name + " 攻擊"); mag += pAtker._name + " 攻擊"; message.text = mag; int damage = pAtker.atk() - pDefer.def(); if (damage <= 0) { //Debug.Log(pDefer.name + " 成功防禦"); } else { //Debug.Log(pAtker.name + " 攻擊成功, " + pDefer.name + " 損傷 " + damage); pDefer.hp -= damage; } Debug.Log(pDefer._name + " 還有HP: " + pDefer.hp); mag += pDefer._name + " 還有HP: " + pDefer.hp + "\n"; message.text = mag; if (pDefer.hp <= 0) { Winer = pAtker; Loser = pDefer; Debug.Log(pDefer._name + " 被打趴了.."); Debug.Log("獲勝者為 " + pAtker._name); mag += pDefer._name + " 被打趴了.." + "\n"; mag += "獲勝者為 " + pAtker._name + "\n"; message.text = mag; return; } }
public void init(Pokemon13 r) { role = r; init(r._name, r.hp, r.hp); }
// 2 public void Init(Pokemon13 r) { this.role = r; Init(r.pokename, r.hp, r.hp); }