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)); } } } }
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); } } } } }
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); }
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); } } } }
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); } } } }
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()); }
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; } } }