public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int value = M_SideEffectParam.GetParam_MultipliedInt("Damage"); int times = M_SideEffectParam.GetParam_ConstInt("DamageTimes"); player.GameManager.SideEffect_ILifeAction( delegate(ILife life) { for (int i = 0; i < times; i++) { life.Damage(value); } }, player, ChoiceCount, TargetRange, TargetSelect, executorInfo.TargetClientIds, executorInfo.TargetMechIds ); return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int value = M_SideEffectParam.GetParam_MultipliedInt("AttackValue"); if (value < 0) { return(true); } if (TargetRange == TargetRange.Self) // 对自身 { player.GameManager.GetMech(executorInfo.MechId).M_MechAttack += value; } else { player.GameManager.SideEffect_MechAction( delegate(ModuleMech mech) { mech.M_MechAttack += value; }, player, 0, executorInfo.TargetMechIds, TargetRange, TargetSelect, -1 ); } return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int healPercent = M_SideEffectParam.GetParam_MultipliedInt("Percent"); if (TargetRange == TargetRange.Self) // 对自身 { ModuleMech mech = player.BattleGroundManager.GetMech(executorInfo.MechId); int healValue = (int)Math.Ceiling((float)healPercent * mech.M_MechTotalLife / 100); player.BattleGroundManager.GetMech(executorInfo.MechId).Heal(healValue); } else { player.GameManager.SideEffect_ILifeAction( delegate(ILife life) { int healValue = (int)Math.Ceiling((float)healPercent * life.GetTotalLife() / 100); life.Heal(healValue); }, player, ChoiceCount, TargetRange, TargetSelect, executorInfo.TargetClientIds, executorInfo.TargetMechIds ); } return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int value = M_SideEffectParam.GetParam_MultipliedInt("Energy"); int times = M_SideEffectParam.GetParam_ConstInt("Times"); player.GameManager.SideEffect_ShipAction( delegate(BattlePlayer sp) { for (int i = 0; i < times; i++) { sp.AddEnergy(value); } }, player, ChoiceCount, TargetRange, TargetSelect, executorInfo.TargetClientIds); return(true); }
public override string GenerateDesc() { return(HighlightStringFormat( DescRaws[LanguageManager_Common.GetCurrentLanguage()], GetDescOfTargetRange(), M_SideEffectParam.GetParam_MultipliedInt("ArmorValue"))); }
public override string GenerateDesc() { return(base.GenerateDesc() + HighlightStringFormat(DescRaws[LanguageManager_Common.GetCurrentLanguage()], GetDescOfTargetRange(), M_SideEffectParam.GetParam_ConstInt("CardCount"), M_SideEffectParam.GetParam_MultipliedInt("CopyCount"))); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; player.GameManager.SideEffect_ShipAction( delegate(BattlePlayer sp) { int cardCount = M_SideEffectParam.GetParam_ConstInt("CardCount"); int copyCount = M_SideEffectParam.GetParam_MultipliedInt("CopyCount"); if (executorInfo.CardInstanceId != ExecutorInfo.EXECUTE_INFO_NONE) { List <int> cardIds = player.HandManager.GetRandomHandCardIds(cardCount, new HashSet <int> { executorInfo.CardInstanceId }); foreach (int cardId in cardIds) { player.HandManager.GetTempCardsByID(cardId, copyCount); } } }, player, ChoiceCount, TargetRange, TargetSelect, executorInfo.TargetClientIds); return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; player.GameManager.SideEffect_ShipAction( delegate(BattlePlayer sp) { CardInfo_Base ci = sp.CardDeckManager.CardDeck.GetFirstCardInfo(); if (ci != null) { sp.HandManager.DrawCards(1); for (int i = 0; i < M_SideEffectParam.GetParam_MultipliedInt("CardCount"); i++) { sp.HandManager.GetACardByID(ci.CardID); } } }, player, ChoiceCount, TargetRange, TargetSelect, executorInfo.TargetClientIds); return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int value = M_SideEffectParam.GetParam_MultipliedInt("HealValue"); if (TargetRange == TargetRange.Self) // 对自身 { player.BattleGroundManager.GetMech(executorInfo.MechId).Heal(value); } else { player.GameManager.SideEffect_ILifeAction( delegate(ILife life) { life.Heal(value); }, player, ChoiceCount, TargetRange, TargetSelect, executorInfo.TargetClientIds, executorInfo.TargetMechIds ); } return(true); }
public override string GenerateDesc() { return(base.GenerateDesc() + HighlightStringFormat( DescRaws[LanguageManager_Common.GetCurrentLanguage()], GetDescOfTargetRange(), M_SideEffectParam.GetParam_MultipliedInt("CardCount"), BaseInfo.CardTypeNameDict[LanguageManager_Common.GetCurrentLanguage()][(CardTypes)M_SideEffectParam.GetParam_ConstInt("DrawCardType")], M_SideEffectParam.GetParam_MultipliedInt("CardCount") <= 1 ? "" : "s")); }
public override string GenerateDesc() { int times = M_SideEffectParam.GetParam_ConstInt("Times"); return(base.GenerateDesc() + HighlightStringFormat(DescRaws[LanguageManager_Common.GetCurrentLanguage()], GetDescOfTargetRange(), M_SideEffectParam.GetParam_MultipliedInt("Energy"), times > 1 ? ("*" + M_SideEffectParam.GetParam_ConstInt("Times")) : "")); }
public int GetSideEffectFunctionBias() { CardInfo_Base card = AllCards.GetCard(M_SideEffectParam.GetParam_ConstInt("CardID")); if (card != null) { return(card.GetCardUseBias() * M_SideEffectParam.GetParam_MultipliedInt("CardCount") * 3); } else { return(0); } }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int value = M_SideEffectParam.GetParam_MultipliedInt("Energy"); player.GameManager.SideEffect_ForeachMech( delegate(int validTargetCount) { player.AddEnergy(value * validTargetCount); }, player, TargetRange); return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int energyValue = M_SideEffectParam.GetParam_MultipliedInt("Energy"); int finalValue = energyValue * player.GameManager.CountMechsByTargetRange(TargetRange, player); finalValue = Math.Min(finalValue, player.MyEnemyPlayer.EnergyLeft); player.AddEnergy(finalValue); player.MyEnemyPlayer.UseEnergy(finalValue); return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; player.MyEnemyPlayer.Damage(M_SideEffectParam.GetParam_MultipliedInt("Value")); int plus_damage = player.EnergyLeft; player.UseAllEnergy(); player.MyEnemyPlayer.Damage(plus_damage * M_SideEffectParam.GetParam_MultipliedInt("ValuePlus")); return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer sp = (BattlePlayer)Player; CardBase ci = sp.HandManager.GetCardByCardInstanceId(executorInfo.CardInstanceId); if (ci.CardInfo.BaseInfo.Energy >= M_SideEffectParam.GetParam_MultipliedInt("DecValue")) { ci.M_Energy -= M_SideEffectParam.GetParam_MultipliedInt("DecValue"); } return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; player.GameManager.SideEffect_ShipAction( delegate(BattlePlayer sp) { sp.HandManager.DrawCards(M_SideEffectParam.GetParam_MultipliedInt("CardCount")); }, player, ChoiceCount, TargetRange, TargetSelect, executorInfo.TargetClientIds); return(true); }
public override string GenerateDesc() { int cardID = M_SideEffectParam.GetParam_ConstInt("CardID"); if (cardID == (int)AllCards.EmptyCardTypes.NoCard || cardID == (int)AllCards.EmptyCardTypes.EmptyCard) { return("Error!!!"); } BaseInfo bi = AllCards.GetCard(cardID).BaseInfo; return(base.GenerateDesc() + HighlightStringFormat( DescRaws[LanguageManager_Common.GetCurrentLanguage()], GetDescOfTargetRange(), M_SideEffectParam.GetParam_MultipliedInt("CardCount"), "[" + bi.CardNames[LanguageManager_Common.GetCurrentLanguage()] + "]")); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; if ((TargetRange & TargetRange.Mechs) != 0) { foreach (int mechId in executorInfo.TargetMechIds) { player.GameManager.GetMech(mechId).M_ImmuneLeftRounds += M_SideEffectParam.GetParam_MultipliedInt("Rounds"); player.GameManager.GetMech(mechId).M_InactivityRounds += M_SideEffectParam.GetParam_MultipliedInt("Rounds"); } } return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; ModuleMech mech = player.BattleGroundManager.GetMech(executorInfo.MechId); if (mech != null) { int attackTimes = M_SideEffectParam.GetParam_MultipliedInt("AttackTimes"); if (!mech.IsSentry) { mech.AttackTimesThisRound += attackTimes; } } return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int energy = M_SideEffectParam.GetParam_MultipliedInt("Energy"); if (player.EnergyLeft >= energy) { player.UseEnergy(energy); foreach (int mechID in executorInfo.TargetMechIds) { int damage = M_SideEffectParam.GetParam_MultipliedInt("Damage"); player.GameManager.GetMech(executorInfo.MechId).OnMakeDamage(damage); player.GameManager.GetMech(mechID).Damage(damage); } } return(true); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; int value = M_SideEffectParam.GetParam_MultipliedInt("Energy"); if (TargetRange == TargetRange.Self) { ModuleMech mech = player.BattleGroundManager.GetMech(executorInfo.MechId); if (mech?.M_Weapon != null) { int increase = Math.Min(mech.M_MechWeaponEnergyMax - mech.M_MechWeaponEnergy, value); mech.M_MechWeaponEnergy += increase; } } else { player.GameManager.SideEffect_MechAction( delegate(ModuleMech mech) { if (mech?.M_Weapon != null) { int increase = Math.Min(mech.M_MechWeaponEnergyMax - mech.M_MechWeaponEnergy, value); mech.M_MechWeaponEnergy += increase; } }, player, ChoiceCount, executorInfo.TargetMechIds, TargetRange, TargetSelect, -1); } return(true); }
public int GetSideEffectFunctionBias() { return(M_SideEffectParam.GetParam_MultipliedInt("Energy") * M_SideEffectParam.GetParam_ConstInt("Times")); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; ModuleMech mech; if (TargetRange == TargetRange.Self) { mech = player.BattleGroundManager.GetMech(executorInfo.MechId); } else { mech = player.BattleGroundManager.GetMech(executorInfo.TargetMechIds[0]); } int equipCount = 0; int plusDamage = M_SideEffectParam.GetParam_MultipliedInt("ValuePlus"); if (mech.M_Weapon != null) { mech.M_Weapon = null; equipCount++; } if (mech.M_Shield != null) { mech.M_Shield = null; equipCount++; } if (mech.M_Pack != null) { mech.M_Pack = null; equipCount++; } if (mech.M_MA != null) { mech.M_MA = null; equipCount++; } player.GameManager.SideEffect_ILifeAction( delegate(ILife life) { life.Damage(M_SideEffectParam.GetParam_MultipliedInt("ValueBasic")); }, player, ChoiceCount, TargetRange.EnemyLife, TargetSelect.All, executorInfo.TargetClientIds, executorInfo.TargetMechIds ); for (int i = 0; i < equipCount; i++) { player.GameManager.SideEffect_ILifeAction( delegate(ILife life) { life.Damage(plusDamage); }, player, ChoiceCount, TargetRange.EnemyLife, TargetSelect.All, executorInfo.TargetClientIds, executorInfo.TargetMechIds ); } player.GameManager.KillMechs(new List <int> { mech.M_MechID }); return(true); }
public int GetSideEffectFunctionBias() { return(M_SideEffectParam.GetParam_MultipliedInt("HealValue")); }
public int GetSideEffectFunctionBias() { return(3 * M_SideEffectParam.GetParam_MultipliedInt("CardCount")); }
public override string GenerateDesc() { return(base.GenerateDesc() + HighlightStringFormat(DescRaws[LanguageManager_Common.GetCurrentLanguage()], M_SideEffectParam.GetParam_MultipliedInt("Energy"), M_SideEffectParam.GetParam_MultipliedInt("Damage"))); }
public override bool Execute(ExecutorInfo executorInfo) { if (!base.Execute(executorInfo)) { return(false); } BattlePlayer player = (BattlePlayer)Player; ModuleMech mech = player.GameManager.GetMechOnBattleGround(M_SideEffectExecute.M_ExecutorInfo.MechId); if (mech?.M_Weapon != null) { int increase = Math.Min(mech.M_MechWeaponEnergyMax - mech.M_MechWeaponEnergy, M_SideEffectParam.GetParam_MultipliedInt("Energy")); mech.M_MechWeaponEnergy += increase; } return(true); }
public int GetSideEffectFunctionBias() { return(M_SideEffectParam.GetParam_MultipliedInt("Energy") * 2); }
public int GetSideEffectFunctionBias() { return(M_SideEffectParam.GetParam_MultipliedInt("AttackValue") * 2); }