Ejemplo n.º 1
0
    public override void SetRandomDir()
    {
        int seasonType = Random.Range(0, (int)SEASON_TYPE._MAX);

        KittyTotalObject.SetEffectUVList(m_listEffectUV[seasonType]);

        for (int i = 0; i < m_listKitty.Count; i++)
        {
            for (int j = 0; j < m_listKitty[i].Count; j++)
            {
                if (m_listKitty[i][j].GetComponent <KittyTotalObject>())
                {
                    int kittylevel             = Random.Range(0, m_dKittyLevelMax);
                    KittyTotalObject tmpScript = m_listKitty[i][j].GetComponent <KittyTotalObject>();

                    tmpScript.SetValid(false);
                    tmpScript.KittyLevel = kittylevel;
                    tmpScript.SetKittyHeadUVList(m_rectFaceUV[kittylevel]);
                    tmpScript.SetKittyLegUVList(m_rectLegUV[kittylevel]);
                    tmpScript.SetEffectUV();
                    tmpScript.SetKittyPos(i, j);
                    tmpScript.SetRotateType(Random.Range(0, DefineBaseManager.inst.KittyLegDir));
                }
            }
        }
    }
Ejemplo n.º 2
0
 private void UsePassiveItem_Reflection(SData_Item itemData)
 {
     for (int i = 0; i < DefineBaseManager.inst.KittyMaxMapX; i++)
     {
         for (int j = 0; j < DefineBaseManager.inst.KittyMaxMapY; j++)
         {
             if (i == 0 || i + 1 == DefineBaseManager.inst.KittyMaxMapX)
             {
                 KittyTotalObject tmpKittyObj = m_pKittyTotalManager.GetKittyTotalObject(i, j);
                 if (tmpKittyObj != null)
                 {
                     tmpKittyObj.SetLegChange(LEG_TYPE._DIAMOND, itemData.ItemUseTime);
                 }
             }
             else if (j == 0 || j + 1 == DefineBaseManager.inst.KittyMaxMapY)
             {
                 KittyTotalObject tmpKittyObj = m_pKittyTotalManager.GetKittyTotalObject(i, j);
                 if (tmpKittyObj != null)
                 {
                     tmpKittyObj.SetLegChange(LEG_TYPE._DIAMOND, itemData.ItemUseTime);
                 }
             }
         }
     }
 }
Ejemplo n.º 3
0
    private void EndKittyTurn()
    {
        if (m_dKittyTurnType == (int)KITTY_TURN_TYPE._LEFT)
        {
            SetRotateType(m_dKittyRotType + m_dKittyAddTurn);
        }
        else
        {
            SetRotateType(m_dKittyRotType - m_dKittyAddTurn);
        }

        SetIsTurn(false);
        enabled = true;
        SetKittyHeadUV(0);
        m_dKittyAddTurn = 1;

        if (m_objKittyLeg != null)
        {
            Collider[] MyTrigger = m_objKittyLeg.GetComponent <IsTrigger>().GetTriggerObject();

            for (int j = 0; j < MyTrigger.Length; j++)
            {
                if (MyTrigger[j] != null)
                {
                    if (MyTrigger[j].transform.parent != null)
                    {
                        if (MyTrigger[j].transform.parent.parent != null)
                        {
                            KittyTotalObject tmpScript = MyTrigger[j].transform.parent.parent.GetComponent <KittyTotalObject>();
                            if (tmpScript != null)
                            {
                                int TriggerPosX = tmpScript.GetKittyPosX();
                                int TriggerPosY = tmpScript.GetKittyPosY();

                                if (TriggerPosX == m_dKittyPosX && TriggerPosY == m_dKittyPosY)
                                {
                                    continue;
                                }

                                tmpScript.InputKittyTurn(GetKittyTurnType());
                            }
                        }
                    }
                }
            }
        }
        Main.game.EndTurn(m_dKittyPosX, m_dKittyPosY);
    }
Ejemplo n.º 4
0
    private void UseActiveItem_Bomb(SData_Item itemData, int _KittyX, int _KittyY)
    {
        int DirX = 0;
        int DirY = 0;

        if (itemData.ItemAreaX % 2 == 0)
        {
            DirX = (itemData.ItemAreaX - 1) / 2;
        }
        else
        {
            DirX = (itemData.ItemAreaX) / 2;
        }

        if (itemData.ItemAreaY % 2 == 0)
        {
            DirY = (itemData.ItemAreaY - 1) / 2;
        }
        else
        {
            DirY = (itemData.ItemAreaY) / 2;
        }

        for (int i = 0; i < itemData.ItemAreaX && _KittyX - DirX + i < DefineBaseManager.inst.KittyMaxMapX; i++)
        {
            if (_KittyX - DirX + i < 0)
            {
                continue;
            }

            for (int j = 0; j < itemData.ItemAreaY && _KittyY - DirY + j < DefineBaseManager.inst.KittyMaxMapY; j++)
            {
                if (_KittyY - DirY + j < 0)
                {
                    continue;
                }

                KittyTotalObject tmpKittyObj = m_pKittyTotalManager.GetKittyTotalObject(_KittyX - DirX + i, _KittyY - DirY + j);
                if (tmpKittyObj != null)
                {
                    tmpKittyObj.InputKittyTurn((int)KITTY_TURN_TYPE._LEFT);
                }
            }
        }
    }
Ejemplo n.º 5
0
    private void UseActiveItem_AbsoluteArea(SData_Item itemData, int _KittyX, int _KittyY)
    {
        int DirX = 0;
        int DirY = 0;

        if (itemData.ItemAreaX % 2 == 0)
        {
            DirX = (itemData.ItemAreaX - 1) / 2;
        }
        else
        {
            DirX = (itemData.ItemAreaX) / 2;
        }

        if (itemData.ItemAreaY % 2 == 0)
        {
            DirY = (itemData.ItemAreaY - 1) / 2;
        }
        else
        {
            DirY = (itemData.ItemAreaY) / 2;
        }

        for (int i = 0; i < itemData.ItemAreaX && _KittyX - DirX + i < DefineBaseManager.inst.KittyMaxMapX; i++)
        {
            if (_KittyX - DirX + i < 0)
            {
                continue;
            }

            for (int j = 0; j < itemData.ItemAreaY && _KittyY - DirY + j < DefineBaseManager.inst.KittyMaxMapY; j++)
            {
                if (_KittyY - DirY + j < 0)
                {
                    continue;
                }

                KittyTotalObject tmpKittyObj = m_pKittyTotalManager.GetKittyTotalObject(_KittyX - DirX + i, _KittyY - DirY + j);
                if (tmpKittyObj != null)
                {
                    tmpKittyObj.SetLegChange(LEG_TYPE._DIAMOND, itemData.ItemUseTime);
                }
            }
        }
    }
Ejemplo n.º 6
0
    protected bool AddKittyObject(int _line, KittyTotalObject _AddObj)
    {
        if (_AddObj)
        {
            _AddObj.SetValid(false);

            if (m_listKitty.Count > _line)
            {
                m_listKitty[_line].Add(_AddObj);
            }
            else
            {
                List <KittyTotalObject> tmpList = new List <KittyTotalObject>();
                tmpList.Add(_AddObj);
                m_listKitty.Add(tmpList);
            }
        }

        return(SetLoadObjectLineY());
    }
Ejemplo n.º 7
0
    protected override void SetKittyObject(int _line)
    {
        float Gap = DefineBaseManager.inst.KittyGap;

        for (int j = 0; j < LoadObjNum; j++)
        {
            GameObject tmpObj;

            tmpObj      = Instantiate(objBackground);
            tmpObj.name = string.Format("{0}{1}_{2}", "Kitty_Object_", m_loadObjectLineX, m_loadObjectLineY);

            m_vecTmpPos.x                  = (m_loadObjectLineX * Gap);
            m_vecTmpPos.y                  = -(m_loadObjectLineY * Gap);
            m_vecTmpPos.z                  = 0.0f;
            tmpObj.transform.parent        = m_objKittyRoot.transform;
            tmpObj.transform.localPosition = m_vecTmpPos;
            m_vecTmpPos.x                  = 1.0f;
            m_vecTmpPos.y                  = 1.0f;
            m_vecTmpPos.z                  = 1.0f;
            tmpObj.transform.localScale    = m_vecTmpPos;

            KittyTotalObject tmpScript = tmpObj.AddComponent <KittyTotalObject>();
            tmpScript.Create();
            tmpScript.SetKittyObject();
            tmpScript.SetKittyHead(objCharacter);
            tmpScript.SetKittyLeg(objCharacter);
            LEG_TYPE legType = LEG_TYPE._NULL;
            switch ((LEG_BASE_SET)DefineBaseManager.inst.KittyTurnLegType)
            {
            case LEG_BASE_SET._RIGHT_ANGLE:
                legType = LEG_TYPE._RIGHT_ANGLE;
                break;

            case LEG_BASE_SET._RIGHT_AND_STRAIGHT:
                if (Random.Range(0, DefineBaseManager.kKittyLegStraight) == 1)
                {
                    legType = LEG_TYPE._STRAIGHT_LINE;
                }
                else
                {
                    legType = LEG_TYPE._RIGHT_ANGLE;
                }
                break;

            case LEG_BASE_SET._RIGHT_AND_DIAMOND:
                if (Random.Range(0, DefineBaseManager.kKittyLegDiamond) == 1)
                {
                    legType = LEG_TYPE._DIAMOND;
                }
                else
                {
                    legType = LEG_TYPE._RIGHT_ANGLE;
                }
                break;

            case LEG_BASE_SET._STRAIGHT_LINE:
                legType = LEG_TYPE._STRAIGHT_LINE;
                break;

            case LEG_BASE_SET._STRAIGHT_AND_DIAMOND:
                if (Random.Range(0, DefineBaseManager.kKittyLegDiamond) == 1)
                {
                    legType = LEG_TYPE._DIAMOND;
                }
                else
                {
                    legType = LEG_TYPE._STRAIGHT_LINE;
                }
                break;

            case LEG_BASE_SET._ALL_RANDOM:
                if (Random.Range(0, DefineBaseManager.kKittyLegDiamond) == 1)
                {
                    legType = LEG_TYPE._DIAMOND;
                }
                else if (Random.Range(0, DefineBaseManager.kKittyLegStraight) == 1)
                {
                    legType = LEG_TYPE._STRAIGHT_LINE;
                }
                else
                {
                    legType = LEG_TYPE._RIGHT_ANGLE;
                }
                break;
            }
            switch (legType)
            {
            case LEG_TYPE._RIGHT_ANGLE:
                tmpScript.SetKittyLeg_RightAngle();
                break;

            case LEG_TYPE._STRAIGHT_LINE:
                tmpScript.SetKittyLeg_StraightLine();
                break;

            case LEG_TYPE._DIAMOND:
                tmpScript.SetKittyLeg_Diamond();
                break;
            }
            tmpScript.SetEffectTurnBack(objBackground);
            tmpScript.SetEffectParticle(objBackground, m_fEffectSize);
            tmpScript.SetKittyProcess();
            tmpScript.SetKittyPos(m_loadObjectLineX, m_loadObjectLineY);

            if (!AddKittyObject(m_loadObjectLineX, tmpScript))
            {
                return;
            }
        }
    }