/// <summary> /// Checks the rest. /// </summary> public void CheckRest(ShinBattleController d) { if (d.tag == "Player") { if (GetDeadNumber() == playerList.Count) { foreach (ShinBattleController se in enemyList) { se.enabled = false; } BattleOver(false); } } else { enemyList.Remove(d); if (enemyList.Count <= 0) { foreach (ShinBattleController sp in playerList) { if (!sp.enabled) { sp.enabled = true; } sp.BattleEnd(); } playerList[0].DeleteTarget(); BattleOver(true); } } }
public void UpdateStatus(ShinBattleController p) { player = p; faceIcon.texture = player.status.iconFace [0]; float ww = Screen.width / 1280.0f; //float hw = Screen.height / 720.0f; int[][] g = new int[2][] { new int[2] { player.nowHp, player.status.maxhp }, new int[2] { player.nowMp, player.status.maxmp }, }; for (int i = 0; i < 2; i++) { status[i].text = g[i][0].ToString(); float widht = (float)(g[i][1] - g[i][0]) / (float)g[i][1] * -143.0f * ww; gauge[i].pixelInset = new Rect(gauge[i].pixelInset.x, gauge[i].pixelInset.y, widht, gauge[i].pixelInset.height); } }
//------------------------------------------------------------------------------------ユニットが死んだときの処理------------- public void RemoveUnit(ShinBattleController d) { //d.enabled = false; //d.GetComponent<CharacterController> ().enabled = false; if (d.tag == "Player") { //playerList.Remove (d); foreach (ShinBattleController se in enemyList) { se.ChangeTarget(); } if (GetDeadNumber() == 0) { buiManager.enabled = false; } } else { ItemDrop(d.ID); // Destroy (d.gameObject); foreach (ShinBattleController sp in playerList) { sp.ChangeTarget(); } if (enemyList.Count == 0) { buiManager.enabled = false; } } }
public override void ItemEvent(ShinBattleController s) { s.Recovery(false, amount); GameObject ef = Resources.Load("Prefabs/Effects/Recovery_MP", typeof(GameObject)) as GameObject; MonoBehaviour.Instantiate(ef, s.transform.position, Quaternion.Euler(270.0f, 0.0f, 0.0f)); }
public void Prepare(ShinBattleController p) { player = p; float ww = Screen.width / 1280.0f; float hw = Screen.height / 720.0f; GUITexture frame = GetComponent <GUITexture> (); frame.pixelInset = new Rect(frame.pixelInset.x * ww, frame.pixelInset.y * hw, 274 * ww, 118 * hw); faceIcon = CreateGUITexture("PlayerStatus", player.status.iconFace [0], new Rect(-134 * ww, -56 * hw, 114 * ww, 114 * hw)); faceIcon.transform.parent = transform; faceIcon.transform.localPosition = new Vector3(0.0f, 0.0f, 1.0f); gauge = new GUITexture[2]; status = new GUIText[2]; for (int i = 0; i < 2; i++) { gauge[i] = CreateGUITexture("gauge", "UI/battle/battle_gauge_mask", new Rect(130 * ww, -15 * hw - 37 * hw * i, 0, 10 * hw)); gauge[i].transform.parent = transform; gauge[i].transform.localPosition = new Vector3(0.0f, 0.0f, 1.0f); status[i] = CreateGUIText("Status", player.nowHp.ToString(), (int)(20 * ww), new Vector2(128 * ww, 17 * hw - 37 * hw * i)); status[i].anchor = TextAnchor.UpperRight; status[i].transform.parent = transform; status[i].transform.localPosition = new Vector3(0.0f, 0.0f, 1.0f); } p.InitIcon(this); }
public void Prepar(ShinBattleController b, BattleManager bm) { battle = b; battleManager = bm; skillList = b.status.skillList; soundManager = battleManager.GetComponent <SoundManager> (); }
public override void ItemEvent(ShinBattleController s) { s.enabled = true; s.GetComponent <CharacterController> ().enabled = true; s.Revival(); s.Recovery(true, amount); GameObject ef = Resources.Load("Prefabs/Effects/Recovery_HP", typeof(GameObject)) as GameObject; MonoBehaviour.Instantiate(ef, s.transform.position, Quaternion.Euler(270.0f, 0.0f, 0.0f)); }
void OnTriggerStay(Collider other) { if (other.tag == targetTag) { ShinBattleController sc = other.GetComponent <ShinBattleController>(); sc.GiveDamage(attack); this.GetComponent <BoxCollider> ().enabled = false; } }
public void InitPosition(float y, Transform target) { bCamera = GameObject.Find("BattleCamera(Clone)").transform; this.target = target.GetComponent <ShinBattleController> (); cursor = transform.Find("HpCursor"); HpGauge = cursor.Find("cursol"); cursor.localPosition = new Vector3(0.0f, y, 0.0f); }
/// <summary> /// Sorts the party member. /// </summary> /// ------------------------------------操作キャラ切り替え-------------------------------------------------------- /// public void SortPartyMember() { ShinBattleController temp = playerList [0]; for (int i = 0; i < playerList.Count - 1; i++) { playerList[i] = playerList[i + 1]; } playerList[playerList.Count - 1] = temp; for (int i = 0; i < playerList.Count; i++) { playerList[i].ChangeOperationMode(i == 0); } }
void OnTriggerEnter(Collider other) { if (other.tag == targetTag) { ShinBattleController sc = other.GetComponent <ShinBattleController>(); int damage = (int)((attack - sc.status.defense / 2) * Random.Range(0.9f, 1.10f)); if (damage < 0) { damage = 0; } other.GetComponent <ShinBattleController>().GiveDamage(damage); Destroy(gameObject); } }
public override void SkillEffect(ShinBattleController s, ShinBattleController ts, int atk) { Vector3 pos = s.transform.TransformPoint(Vector3.forward); GameObject o = MonoBehaviour.Instantiate(Resources.Load (effectPath[effectNumber], typeof(GameObject)) as GameObject, pos, s.transform.rotation) as GameObject; LongEffects le = o.AddComponent <LongEffects> (); int damage = (int)((atk - ts.status.defense / 2) * correction * Random.Range(0.9f, 1.10f)); if (damage < 0) { damage = 0; } le.Prepar(ts.transform.position, ts.tag, damage); }
public override void SkillEffect(ShinBattleController s, ShinBattleController ts, int atk) { Vector3 pos = s.transform.TransformPoint(Vector3.back); GameObject o = MonoBehaviour.Instantiate(Resources.Load(effectPath[effectNumber], typeof(GameObject)) as GameObject, pos + new Vector3(0.0f, 0.2f, 0.0f), Quaternion.Euler(270.0f, 0.0f, 0.0f)) as GameObject; MiddleEffects ec = o.AddComponent <MiddleEffects> (); int damage = (int)((atk - ts.status.defense / 2) * correction * Random.Range(0.9f, 1.10f)); if (damage < 0) { damage = 0; } ec.Prepar(ts.transform.position, ts.tag, damage); }
void OnTriggerStay(Collider other) { if (other.tag == targetTag) { ShinBattleController sc = other.GetComponent <ShinBattleController>(); int damage = (int)((attack - sc.status.defense / 2) * Random.Range(0.9f, 1.10f)); if (damage < 0) { damage = 0; } other.GetComponent <ShinBattleController>().GiveDamage(damage); this.GetComponent <BoxCollider> ().enabled = false; // if (targetTag == "Enemy") print ("attack : "+damage); GameObject o = Resources.Load("Prefabs/Effects/hit_effect", typeof(GameObject)) as GameObject; Vector3 head = (sc.GetHeadPosition() - sc.transform.position) / 2; Instantiate(o, sc.transform.position + head, Quaternion.identity); } }
public void Prepare(BattleManager bm, InputManager im) { battleManager = bm; inputManager = im; status = battleManager.GetComponent <StatusData> (); KozMinPro_Bold = Resources.Load("UI/font/KozMinPro-Bold", typeof(Font)) as Font; KozMinPro_Medium = Resources.Load("UI/font/KozMinPro-Medium", typeof(Font)) as Font; ww = Screen.width / 1280.0f; float hw = Screen.height / 720.0f; resultObject = CreateGUITexture("result", "UI/battle/result", new Rect(0, 0, Screen.width, Screen.height)); expGauge = new GUITexture[battleManager.playerList.Count]; exp = new GUIText[battleManager.playerList.Count]; for (int i = 0; i < battleManager.playerList.Count; i++) { int id = battleManager.playerList[i].ID; ShinBattleController player = battleManager.playerList[i]; int nextExp = ReturnNextExe(player.status.level); float widht = (float)(nextExp - player.status.experience) / (float)nextExp * -145.0f * ww; CreateGUITexture("name", status.playersData[id].nameFolder, new Rect(960 * ww, 520 * hw - 54 * i * hw, 150 * ww, 30 * hw), resultObject.transform, 2.1f); CreateGUITexture("exp_frame", "UI/battle/exp_gauge", new Rect(1110 * ww, 510 * hw - 54 * i * hw, 145 * ww, 30 * hw), resultObject.transform, 2.1f); expGauge[i] = CreateGUITexture("exp_gauge", "UI/battle/battle_gauge_mask", new Rect(1255 * ww, 533 * hw - 54 * i * hw, widht, 7 * hw)); expGauge[i].transform.parent = resultObject.transform; expGauge[i].transform.localPosition = new Vector3(0.0f, 0.0f, 2.2f); exp[i] = CreateGUITextRerurn("exp", "+", (int)(15 * ww), new Vector2(1250 * ww, 530 * hw - 54 * i * hw), KozMinPro_Medium, resultObject.transform, 2.2f, TextAnchor.UpperRight); exp[i].color = new Color(0.9f, 1.0f, 0.75f); } items = new GUIText[battleManager.getItems.Count]; for (int i = 0; i < battleManager.getItems.Count; i++) { items[i] = CreateGUITextRerurn("item", status.itemData[battleManager.getItems[i]].name + " x1", (int)(20 * ww), new Vector2(25 * ww, 550 * hw - 35 * i * hw), KozMinPro_Bold, resultObject.transform, 2.2f, TextAnchor.UpperLeft); } //speed = battleManager.getExp / 2; }
public override void SkillEffect(ShinBattleController s, ShinBattleController ts, int atk) { if (effectNumber == 0) { Vector3 pos = s.transform.TransformPoint(Vector3.forward / 2); MonoBehaviour.Instantiate(Resources.Load(effectPath[effectNumber], typeof(GameObject)) as GameObject, pos + new Vector3(0.0f, 0.2f, 0.0f), s.transform.rotation); } int damage = (int)((atk - ts.status.defense / 2) * correction * Random.Range(0.9f, 1.10f)); if (damage < 0) { damage = 0; } s.checkHit.SetColliderEnable(true); s.checkHit.attack = damage; effectNumber++; }
public virtual void SkillEffect(ShinBattleController s, ShinBattleController ts, int atk) { }
public override void SkillEffect(ShinBattleController s, ShinBattleController ts, int atk) { MonoBehaviour.Instantiate(Resources.Load(effectPath[effectNumber], typeof(GameObject)) as GameObject, s.transform.position, Quaternion.Euler(270.0f, 0.0f, 0.0f)); }
public virtual void ItemEvent(ShinBattleController s) { }