public void InitCustom(GuestInfoRecord guestInfo) { _ShowGuest = guestInfo; if (_ShowGuest != null) { gameObject.SetActive(true); _CustomAtractAttrs.InitContentItem(GetSortedAtractAttr()); _CustomPointAttrs.InitContentItem(GetSortedPointAttr()); _CustomLikeSkill.InitContentItem(guestInfo.GetNotNullSkills()); if (_CustomAnimation != null) { _CustomAnimation.ShowCustomCount(guestInfo.GuestNum); _CustomAnimation.StartPlaySwing(); } } else { gameObject.SetActive(false); } }
public void Calculate(GirlMemberInfo girl, GuestInfoRecord guest, SkillInfoRecord skill, int orgAttract, int orgPoint, out int outAttract, out int outPoint) { outAttract = orgAttract; outPoint = orgPoint; //foreach (var buff in skill.Buffs) { _BuffManager.Calculate(girl, guest, skill.Buffs[0], orgAttract, orgPoint, out outAttract, out outPoint); } }
public GuestInfoRecord GetSpecilGuest() { if (_SpecilGuest == null && string.IsNullOrEmpty(_SpecilGuestID)) { InitSpecilStage(); } else if (_SpecilGuest == null && !string.IsNullOrEmpty(_SpecilGuestID)) { _SpecilGuest = TableReader.GuestInfo.GetRecord(_SpecilGuestID); } return(_SpecilGuest); }
//return delta between origin and new #endregion #region cal result public int[] CalculateAttractValue(GuestInfoRecord guestInfo, out int[] attractBase, out int[] attractFinal) { int attractValue = 0; attractBase = new int[MAX_FIGHT_GIRL_COUNT + 1]; attractFinal = new int[MAX_FIGHT_GIRL_COUNT + 1]; for (int i = 0; i < MAX_FIGHT_GIRL_COUNT; ++i) { if (_FightingGirls.Count > i) { attractValue += (int)(guestInfo.Attr1AAttract * _FightingGirls[i].Attr1A); attractValue += (int)(guestInfo.Attr1BAttract * _FightingGirls[i].Attr1B); attractValue += (int)(guestInfo.Attr2AAttract * _FightingGirls[i].Attr2A); attractValue += (int)(guestInfo.Attr2BAttract * _FightingGirls[i].Attr2B); attractValue += (int)(guestInfo.Attr3AAttract * _FightingGirls[i].Attr3A); attractValue += (int)(guestInfo.Attr3BAttract * _FightingGirls[i].Attr3B); } attractBase[i] = attractValue; attractFinal[i] = attractValue; if (SkillManager.CanGirlSkillUse(_FightingGirls[i], _FightingGirls[i].GirlInfoRecord.Skills[0], _FightingGirls)) { int exAttract = 0; int exPoint = 0; _SkillManager.Calculate(_FightingGirls[i], guestInfo, _FightingGirls[i].GirlInfoRecord.Skills[0], attractValue, 0, out exAttract, out exPoint); attractFinal[i] = exAttract; } } for (int i = 0; i < 3; ++i) { attractBase[3] += attractBase[i]; attractFinal[3] += attractFinal[i]; } return(attractBase); }
private void InitSpecilStage() { var spGuests = TableReader.GuestInfo.GetSpecilGuests(); if (spGuests.Count <= 0) { return; } var randomIdx = UnityEngine.Random.Range(0, spGuests.Count); _SpecilGuest = spGuests[randomIdx]; if (_FightingGrilIDs != null) { _FightingGrilIDs.Clear(); } if (_FightingGirls != null) { _FightingGirls.Clear(); } }
public int[] CalculatePointValue(GuestInfoRecord guestInfo, int guestCount, out int[] pointBase, out int[] pointFinal) { int pointValue = 0; pointBase = new int[FightManager.ROUND_CALCULATE_COUNT + 1]; pointFinal = new int[FightManager.ROUND_CALCULATE_COUNT + 1]; for (int i = 0; i < MAX_FIGHT_GIRL_COUNT; ++i) { if (_FightingGirls.Count > i) { pointValue += (int)(guestInfo.Attr1APoint * _FightingGirls[i].Attr1A); pointValue += (int)(guestInfo.Attr1BPoint * _FightingGirls[i].Attr1B); pointValue += (int)(guestInfo.Attr2APoint * _FightingGirls[i].Attr2A); pointValue += (int)(guestInfo.Attr2BPoint * _FightingGirls[i].Attr2B); pointValue += (int)(guestInfo.Attr3APoint * _FightingGirls[i].Attr3A); pointValue += (int)(guestInfo.Attr3BPoint * _FightingGirls[i].Attr3B); } pointBase[i] = pointValue; pointFinal[i] = pointValue; if (SkillManager.CanGirlSkillUse(_FightingGirls[i], _FightingGirls[i].GirlInfoRecord.Skills[0], _FightingGirls)) { int exAttract = 0; int exPoint = 0; _SkillManager.Calculate(_FightingGirls[i], guestInfo, _FightingGirls[i].GirlInfoRecord.Skills[0], 0, pointValue, out exAttract, out exPoint); pointFinal[i] = exPoint; } } for (int i = 0; i < 3; ++i) { pointBase[3] += pointBase[i]; pointFinal[3] += pointFinal[i]; } return(pointBase); }
//public override GuestInfoRecord GetGuest() //{ // return _ObjRecord.GuestInfo; //} //public override List<FightGirlInfo> GetEnemyGirl() //{ // FightGirlInfo fightGirl = new FightGirlInfo(_ObjRecord.GirlInfo.Id); // List<FightGirlInfo> fightgirls = new List<FightGirlInfo>(); // fightgirls.Add(fightGirl); // return fightgirls; //} public override GuestInfoRecord GetGuest() { GuestInfoRecord guestRecord = new GuestInfoRecord(null); int num = Random.Range(1, 6); guestRecord.GuestNum = num; int randomAttr = Random.Range(0, 3); for (int i = 0; i < 3; ++i) { if (i == randomAttr) { continue; } int isA = Random.Range(0, 2); if (i == 0 && isA == 1) { guestRecord.Attr1AAttract = 10; } else if (i == 0 && isA == 0) { guestRecord.Attr1BAttract = 10; } else if (i == 1 && isA == 1) { guestRecord.Attr2AAttract = 10; } else if (i == 1 && isA == 0) { guestRecord.Attr2BAttract = 10; } else if (i == 2 && isA == 1) { guestRecord.Attr3AAttract = 10; } else if (i == 2 && isA == 0) { guestRecord.Attr3BAttract = 10; } } randomAttr = Random.Range(0, 3); for (int i = 0; i < 3; ++i) { if (i == randomAttr) { continue; } int isA = Random.Range(0, 2); if (i == 0 && isA == 1) { guestRecord.Attr1APoint = 10; } else if (i == 0 && isA == 0) { guestRecord.Attr1BPoint = 10; } else if (i == 1 && isA == 1) { guestRecord.Attr2APoint = 10; } else if (i == 1 && isA == 0) { guestRecord.Attr2BPoint = 10; } else if (i == 2 && isA == 1) { guestRecord.Attr3APoint = 10; } else if (i == 2 && isA == 0) { guestRecord.Attr3BPoint = 10; } } return(guestRecord); }
public override void Calculate(GirlMemberInfo girl, GuestInfoRecord guest, BuffInfoRecord buff, int orgAttract, int orgPoint, out int outAttract, out int outPoint) { Impact_ModifyCulRecord impactRecord = TableReader.Impact_ModifyCul.GetRecord(buff.Impact.ID); int valueAttract = 0; int valuePoint = 0; outAttract = orgAttract; outPoint = orgPoint; switch (impactRecord.ActTarget) { case IMPACT_MODIFY_TARGET.ATTR1A: valueAttract = (int)(girl.Attr1A * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr1AAttract); valuePoint = (int)(girl.Attr1A * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr1APoint); outAttract += valueAttract; outPoint += valuePoint; break; case IMPACT_MODIFY_TARGET.ATTR1B: valueAttract = (int)(girl.Attr1B * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr1BAttract); valuePoint = (int)(girl.Attr1B * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr1BPoint); outAttract += valueAttract; outPoint += valuePoint; break; case IMPACT_MODIFY_TARGET.ATTR2A: valueAttract = (int)(girl.Attr2A * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr2AAttract); valuePoint = (int)(girl.Attr2A * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr2APoint); outAttract += valueAttract; outPoint += valuePoint; break; case IMPACT_MODIFY_TARGET.ATTR2B: valueAttract = (int)(girl.Attr2B * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr2BAttract); valuePoint = (int)(girl.Attr2B * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr2BPoint); outAttract += valueAttract; outPoint += valuePoint; break; case IMPACT_MODIFY_TARGET.ATTR3A: valueAttract = (int)(girl.Attr2A * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr2AAttract); valuePoint = (int)(girl.Attr2A * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr2APoint); outAttract += valueAttract; outPoint += valuePoint; break; case IMPACT_MODIFY_TARGET.ATTR3B: valueAttract = (int)(girl.Attr3B * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr3BAttract); valuePoint = (int)(girl.Attr3B * ((impactRecord.ActPersent) * 0.0001f) * guest.Attr3BPoint); outAttract += valueAttract; outPoint += valuePoint; break; case IMPACT_MODIFY_TARGET.ATTRACK: valueAttract = (int)(orgAttract * ((impactRecord.ActPersent + 10000) * 0.0001f)); outAttract = valueAttract; break; case IMPACT_MODIFY_TARGET.POINT: valuePoint = (int)(orgPoint * ((impactRecord.ActPersent + 10000) * 0.0001f)); outPoint = valuePoint; break; } }
public void ShowCustom(GuestInfoRecord guestInfo) { InitCustom(guestInfo); }
public void InitCustom() { _ShowGuest = FightStagePack.Instance.GetSpecilGuest(); _CustomPointAttrs.InitContentItem(GetSortedPointAttr()); }
public virtual void Calculate(GirlMemberInfo girl, GuestInfoRecord guest, BuffInfoRecord buff, int orgAttract, int orgPoint, out int outAttract, out int outPoint) { outAttract = orgAttract; outPoint = orgPoint; }
public void Calculate(GirlMemberInfo girl, GuestInfoRecord guest, BuffInfoRecord buffRecord, int orgAttract, int orgPoint, out int outAttract, out int outPoint) { var buffBase = (BuffImpact_Base)System.Activator.CreateInstance(System.Type.GetType("GameLogic." + buffRecord.Impact.TableName)); buffBase.Calculate(girl, guest, buffRecord, orgAttract, orgPoint, out outAttract, out outPoint); }