Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class X2Effect_BlastPadding extends X2Effect_ModifyStats config (LW_ScalingDefensivePerks);
- var config int CERAMIC_PLATING_HP;
- var config int ALLOY_PLATING_HP;
- var config int CARAPACE_PLATING_HP;
- var config int CHITIN_PLATING_HP;
- simulated protected function OnEffectAdded(const out EffectAppliedData ApplyEffectParameters, XComGameState_BaseObject kNewTargetState, XComGameState NewGameState, XComGameState_Effect NewEffectState)
- {
- local XComGameState_Unit TargetUnit;
- local StatChange NewChange;
- local int BonusAmount;
- local array<XComGameState_Item> Items;
- local XComGameState_Item Item;
- local XComGameState_Item Plating;
- TargetUnit = XComGameState_Unit(kNewTargetState);
- if (TargetUnit == none)
- return;
- Items = TargetUnit.GetAllInventoryItems();
- foreach Items(Item)
- {
- if(Item.GetMyTemplate().ItemCat == 'plating'){
- Plating = Item;
- }
- }
- switch(Plating.GetMyTemplateName()){
- case 'CeramicPlating':
- BonusAmount = 2;
- break;
- case 'AlloyPlating':
- BonusAmount = 3;
- break;
- case 'ChitinPlating':
- BonusAmount = 4;
- break;
- case 'CarapacePlating':
- BonusAmount = 5;
- break;
- default:
- }
- if(BonusAmount < StatAmount){
- BonusAmount = StatAmount;
- }
- NewChange.StatType = eStat_HP;
- NewChange.StatAmount = BonusAmount;
- NewEffectState.StatChanges.AddItem(NewChange);
- super.OnEffectAdded(ApplyEffectParameters, kNewTargetState, NewGameState, NewEffectState);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement