Exemplo n.º 1
0
    /// <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);
            }
        }
    }
Exemplo n.º 2
0
    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);
        }
    }
Exemplo n.º 3
0
    //------------------------------------------------------------------------------------ユニットが死んだときの処理-------------
    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;
            }
        }
    }
Exemplo n.º 4
0
    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));
    }
Exemplo n.º 5
0
    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);
    }
Exemplo n.º 6
0
 public void Prepar(ShinBattleController b, BattleManager bm)
 {
     battle        = b;
     battleManager = bm;
     skillList     = b.status.skillList;
     soundManager  = battleManager.GetComponent <SoundManager> ();
 }
Exemplo n.º 7
0
    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));
    }
Exemplo n.º 8
0
    void OnTriggerStay(Collider other)
    {
        if (other.tag == targetTag)
        {
            ShinBattleController sc = other.GetComponent <ShinBattleController>();

            sc.GiveDamage(attack);

            this.GetComponent <BoxCollider> ().enabled = false;
        }
    }
Exemplo n.º 9
0
    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);
    }
Exemplo n.º 10
0
    /// <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);
        }
    }
Exemplo n.º 11
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);
        }
    }
Exemplo n.º 12
0
    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);
    }
Exemplo n.º 13
0
    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);
    }
Exemplo n.º 14
0
    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);
        }
    }
Exemplo n.º 15
0
    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;
    }
Exemplo n.º 16
0
    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++;
    }
Exemplo n.º 17
0
 public virtual void SkillEffect(ShinBattleController s, ShinBattleController ts, int atk)
 {
 }
Exemplo n.º 18
0
 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));
 }
Exemplo n.º 19
0
 public virtual void ItemEvent(ShinBattleController s)
 {
 }