alwayswin:
StageController:
(资料图)
private void EndStage()
{
SingletonBehavior<BattleObjectManager>.Instance.OnStageEnd();
this.StageModel.SetStageResult(true, true, this._currentRound, this.SaveAddedUnlockedInformationData());
GlobalGameManager.Instance.SetStageClearState(this.StageModel.StageResult);
BattleSoundGenerator.StopBGM(true);
SingletonBehavior<BattleUIRoot>.Instance.OpenBattleEndTypo(this.StageModel.StageResult, this.StageModel.SkipStageResult(), this.StageModel.FormationInfo);
Singleton<DungeonSinStockManager>.Instance.OnStageEnd();
SingletonBehavior<BattleCamManager>.Instance.OnStageEnd();
}
HP, SP dungeon recover:
DungeonUnitModel:
public DungeonUnitModel(UnitDataModel_Player unit, int level, int hp, int mp)
{
this._unitModel = unit;
this._hp = hp+100;
this._mp = mp+50;
this._level = level;
this._egoGiftDetail = new EGOGiftDetail_Dungeon();
this._isGacksung = this.GacksungLevel == Singleton<StaticDataManager>.Instance.Common.PersonalityLevelTable.GetMaxGacksungLevelOfRank(unit.classInfo.Rank);
}
public void ResetData()
{
this._hp = this.GetMaxHp();
this._mp = 45;
}
Increase SP effect on coin flip:
Util:
public static float GetCoinProbAdder(int mp)
{
return (float)mp * 0.01f;
}
Player Start with 45 SP, else start with -45 SP:
BattleUnitModel:
public virtual void Init(UnitDataModel unitmodel, int instanceID)
{
this._instanceID = instanceID;
this._unitModel = unitmodel;
this._faction = unitmodel.Faction;
this._passiveDetail = new PassiveDetail(this, this._unitModel);
this._buffDetail = new BuffDetail(this);
this._EGOGiftDetail = new EGOGiftDetail_Battle();
this._systemAbilityDetail = new BattleSystemAbilityDetail();
this._actionSlotDetail = new ActionSlotDetail(this);
this._sortedActionList = new List<BattleActionModel>();
this._doneActionThisTurnList = new List<BattleActionModel>();
this._doneActionPrevTurnList = new List<BattleActionModel>();
this._activatedAbilityDic = new Dictionary<string, int>();
List<BreakSection> list = new List<BreakSection>();
if (!Singleton<StageController>.Instance.StageModel.BlockCreateBreakSectionWhenAddUnit(this))
{
BreakSectionInfo breakSection = this._unitModel.ClassInfo.BreakSection;
foreach (int num in ((breakSection != null) ? breakSection.SectionList : null))
{
int num2 = this._unitModel.GetMaxHp() * num / 100;
BreakSection breakSection2 = new BreakSection(this, num2);
list.Add(breakSection2);
}
}
this._resistDetail = new ResistDetail(unitmodel.ClassInfo.ResistInfo);
this._state = new CharacterState(false, false, false, false, false, false, false, false, unitmodel.GetMaxHp(), list);
if (this._faction.Equals(UNIT_FACTION.PLAYER))
{
this._state.Init(this);
this._state.RecoverMp(45);
}
else
{
this._state.RecoverMp(-45);
}
this._originID = this._unitModel.ClassInfo.ID;
this.CreateSlotWeightConditions();
}
mirrordungeonpalwayspickup3fromall:
MirrorDungeonAcquireCharacterPanel
OpenAsServerData:
public void OpenAsServerData(MirrorDungeonEncounterRewardEventInfo reward)
{
this._afterSelectedPanel.SetIsStartingDungeon(false);
this._afterSelectedPanel.SetCloseEvent(delegate
{
base.StartCoroutine(this.AlphaFadeOut(delegate
{
(SingletonBehavior<DungeonManager>.Instance as MirrorDungeonManager).StageReward.SetAcquireCharacterDone();
}));
});
int num = 12;
int num2 = 3;
List<int> list = reward.pool;
if (num > list.Count)
{
num = list.Count;
}
if (num2 > num)
{
num2 = num;
}
list = list.GetRange(0, num);
this.SetDataOpen(list, num2, Singleton<UserDataManager>.Instance.MirrorDungeonSaveData.GetEquiptableEgoCount());
}
Copyright © 2015-2022 南极产业网版权所有 备案号:粤ICP备2022077823号-13 联系邮箱: 317 493 128@qq.com