// public int GetFormationHeroCount () // { // return FormationsDictionary.Count; // } // public bool HasEmptyFormationPosition () // { // return GetFormationHeroCount() < 5; // } // public bool HasSameHeroInFormation (int heroDataID) // { // List<uint> characterInstanceIDs = new List<uint>(FormationsDictionary.Values); // int characterInstanceIDCount = characterInstanceIDs.Count; // for (int i = 0; i < characterInstanceIDCount; i++) // { // if (!GameProxy.instance.IsPlayer(characterInstanceIDs[i])) // { // HeroInfo heroInfo = HeroProxy.instance.GetHeroInfo(characterInstanceIDs[i]); // if (heroInfo.heroData.id == heroDataID) // { // return true; // } // } // } // return false; // } public bool CanAddToFormationPosition(FormationPosition formationPosition, uint addCharacterInstanceID) { // bool can = true; // if (IsHeroInFormation(addCharacterInstanceID)) // { // if (!IsPositionEmpty(formationPosition) // && GetCharacterInstanceIDAt(formationPosition) == addCharacterInstanceID) // { // can = false; // } // } // else // { // HeroInfo heroInfo = HeroProxy.instance.GetHeroInfo(addCharacterInstanceID); // if (HasSameHeroInFormation(heroInfo.heroData.id)) // { // if (!IsPositionEmpty(formationPosition)) // { // uint characterInstanceID = GetCharacterInstanceIDAt(formationPosition); // if (!GameProxy.instance.IsPlayer(characterInstanceID) // && HeroProxy.instance.GetHeroInfo(characterInstanceID).heroData.id == heroInfo.heroData.id) // { // can = true; // } // else // { // can = false; // } // } // else // { // can = false; // } // } // else // { // if (!IsPositionEmpty(formationPosition) && GameProxy.instance.IsPlayer((GetCharacterInstanceIDAt(formationPosition)))) // { // can = false; // } // else // { // if (!HasEmptyFormationPosition()) // { // if (!IsPositionEmpty(formationPosition)) // { // can = true; // } // else // { // can = false; // } // } // else // { // can = true; // } // } // } // } // return can; return(FormationTeamInfo.CanAddToFormationPosition(formationPosition, addCharacterInstanceID)); }
public bool CanAddToFormationPosition(FormationPosition formationPosition, uint addCharacterInstanceID) { // bool can = true; // if (IsHeroInFormation(addCharacterInstanceID)) // { // if (!IsPositionEmpty(formationPosition) // && GetCharacterInstanceIDAt(formationPosition) == addCharacterInstanceID) // { // can = false; // } // } // else // { // ExpeditionHeroInfo expeditionInfo = GetExpeditionHeroInfo(addCharacterInstanceID); //// HeroInfo heroInfo = HeroProxy.instance.GetHeroInfo(addCharacterInstanceID); // if (HasSameHeroInFormation(expeditionInfo.roleInfo.modelDataId)) // { // if (!IsPositionEmpty(formationPosition)) // { // uint characterInstanceID = GetCharacterInstanceIDAt(formationPosition); // ExpeditionHeroInfo oldInfo = GetExpeditionHeroInfo(characterInstanceID); // //if (!GameProxy.instance.IsPlayer(characterInstanceID)&& // if( oldInfo.roleInfo.modelDataId == expeditionInfo.roleInfo.modelDataId) // { // can = true; // } // else // { // can = false; // } // } // else // { // can = false; // } // } // else // { //// if (!IsPositionEmpty(formationPosition) && GameProxy.instance.IsPlayer((GetCharacterInstanceIDAt(formationPosition)))) //// { //// can = false; //// } //// else //// { // if (!HasEmptyFormationPosition()) // { // if (!IsPositionEmpty(formationPosition)) // { // can = true; // } // else // { // can = false; // } // } // else // { // can = true; // } //// } // } // } // return can; return(FormationTeamInfo.CanAddToFormationPosition(formationPosition, addCharacterInstanceID)); }