public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_toolTip = stream.ReadString32(); m_debugUnlocalizedTooltip = stream.ReadString32(); m_savedStatusTypesForTooltips = new SerializedVector <StatusType>(assetFile, stream); m_shortToolTip = stream.ReadString32(); m_rewardString = stream.ReadString32(); m_sequencePrefab = new SerializedComponent(assetFile, stream); m_abilityName = stream.ReadString32(); m_flavorText = stream.ReadString32(); m_ultimate = stream.ReadBoolean(); stream.AlignTo(); m_previewVideo = stream.ReadString32(); m_expectedSequencePrefixForEditor = stream.ReadString32(); m_cooldown = stream.ReadInt32(); m_maxStocks = stream.ReadInt32(); m_stockRefreshDuration = stream.ReadInt32(); m_refillAllStockOnRefresh = stream.ReadBoolean(); stream.AlignTo(); m_initialStockAmount = stream.ReadInt32(); m_stockConsumedOnCast = stream.ReadInt32(); m_abilityManagedStockCount = stream.ReadBoolean(); stream.AlignTo(); m_runPriority = (AbilityPriority)stream.ReadInt32(); m_freeAction = stream.ReadBoolean(); stream.AlignTo(); m_techPointsCost = stream.ReadInt32(); m_techPointInteractions = new SerializedVector <TechPointInteraction>(assetFile, stream); m_actionAnimType = (ActorModelData.ActionAnimationType)stream.ReadInt32(); m_rotationVisibilityMode = (RotationVisibilityMode)stream.ReadInt32(); m_movementAdjustment = (MovementAdjustment)stream.ReadInt32(); m_movementSpeed = stream.ReadSingle(); m_movementDuration = stream.ReadSingle(); m_cameraBoundsMinHeight = stream.ReadSingle(); m_targetData = new SerializedArray <TargetData>(assetFile, stream); m_tags = new SerializedVector <AbilityTags>(assetFile, stream); m_statusWhenRequested = new SerializedVector <StatusType>(assetFile, stream); m_chainAbilities = new SerializedVector <SerializedMonoBehaviour>(assetFile, stream); m_targeterTemplateSwaps = new SerializedVector <TargeterTemplateSwapData>(assetFile, stream); }
public override void DeserializeAsset(AssetFile assetFile, StreamReader stream) { m_abilityScopeId = stream.ReadInt32(); m_name = stream.ReadString32(); m_availableInGame = stream.ReadBoolean(); stream.AlignTo(); m_gameTypeReq = (AbilityModGameTypeReq)stream.ReadInt32(); m_equipCost = stream.ReadInt32(); m_defaultEquip = stream.ReadBoolean(); stream.AlignTo(); m_tooltip = stream.ReadString32(); m_flavorText = stream.ReadString32(); m_debugUnlocalizedTooltip = stream.ReadString32(); m_savedStatusTypesForTooltips = new SerializedVector <StatusType>(assetFile, stream); m_iconSprite = new SerializedComponent(assetFile, stream); m_useRunPriorityOverride = stream.ReadBoolean(); stream.AlignTo(); m_runPriorityOverride = (AbilityPriority)stream.ReadInt32(); m_techPointCostMod = new AbilityModPropertyInt(assetFile, stream); m_maxCooldownMod = new AbilityModPropertyInt(assetFile, stream); m_maxStocksMod = new AbilityModPropertyInt(assetFile, stream); m_stockRefreshDurationMod = new AbilityModPropertyInt(assetFile, stream); m_refillAllStockOnRefreshMod = new AbilityModPropertyBool(assetFile, stream); m_isFreeActionMod = new AbilityModPropertyBool(assetFile, stream); m_autoQueueIfValidMod = new AbilityModPropertyBool(assetFile, stream); m_targetDataMaxRangeMod = new AbilityModPropertyFloat(assetFile, stream); m_targetDataMinRangeMod = new AbilityModPropertyFloat(assetFile, stream); m_targetDataCheckLosMod = new AbilityModPropertyBool(assetFile, stream); m_useTargetDataOverrides = stream.ReadBoolean(); stream.AlignTo(); m_targetDataOverrides = new SerializedArray <TargetData>(assetFile, stream); m_techPointInteractionMods = new SerializedArray <TechPointInteractionMod>(assetFile, stream); m_useActionAnimTypeOverride = stream.ReadBoolean(); stream.AlignTo(); m_actionAnimTypeOverride = (ActorModelData.ActionAnimationType)stream.ReadInt32(); m_useMovementAdjustmentOverride = stream.ReadBoolean(); stream.AlignTo(); m_movementAdjustmentOverride = (Ability.MovementAdjustment)stream.ReadInt32(); m_effectToSelfOnCast = new StandardEffectInfo(assetFile, stream); m_effectToTargetEnemyOnHit = new StandardEffectInfo(assetFile, stream); m_effectToTargetAllyOnHit = new StandardEffectInfo(assetFile, stream); m_useAllyEffectForTargetedCaster = stream.ReadBoolean(); stream.AlignTo(); m_effectTriggerChance = stream.ReadSingle(); m_effectTriggerChanceMultipliedPerHit = stream.ReadBoolean(); stream.AlignTo(); m_cooldownReductionsOnSelf = new AbilityModCooldownReduction(assetFile, stream); m_selfHitTimingSequencePrefab = new SerializedComponent(assetFile, stream); m_chainAbilityModInfo = new SerializedVector <ChainAbilityAdditionalModInfo>(assetFile, stream); m_useChainAbilityOverrides = stream.ReadBoolean(); stream.AlignTo(); m_chainAbilityOverrides = new SerializedVector <SerializedMonoBehaviour>(assetFile, stream).ToChildArray <Ability>(); m_tagsModType = (TagOverrideType)stream.ReadInt32(); m_abilityTagsInMod = new SerializedVector <AbilityTags>(assetFile, stream); m_statModsWhileEquipped = new SerializedArray <AbilityStatMod>(assetFile, stream); m_useStatusWhenRequestedOverride = stream.ReadBoolean(); stream.AlignTo(); m_statusWhenRequestedOverride = new SerializedVector <StatusType>(assetFile, stream); beginningOfModSpecificData = stream.ReadBoolean(); stream.AlignTo(); }