public Effect_ArrowTrail(_Spells_ArrowInstance xInst, byte byDirection) { RC_ArrowTrail xRC = new RC_ArrowTrail(byDirection); xRC.xTransform = new TransformComponent(xInst.xTransform.v2Pos); this.xRenderComponent = xRC; xRC.v2StartPos = xInst.xTransform.v2Pos; Vector2 v2Mod = Vector2.Zero; if (byDirection == 1) { v2Mod.Y = 4f; } else if (byDirection == 3) { v2Mod.Y = 5f; } else if (byDirection == 0) { v2Mod.X = 4f; } else { v2Mod.X = 5f; } if (byDirection == 1) { v2Mod.X = 7f; } xRC.v2StartPos += xInst.xRenderComponent.v2OffsetRenderPos + xInst.xRenderComponent.GetCurrentAnimation().v2PositionOffset - v2Mod; xRC.fVirtualHeight = xInst.xRenderComponent.fVirtualHeight; this.v2Start = xInst.xTransform.v2Pos; Program.GetTheGame().xRenderMaster.RegisterSortedRenderComponent(this.xRenderComponent); }
public override void OnAnimationCallback(AnimationInstruction xIns) { Vector2 v2Pos = this.xOwner.xTransform.v2Pos + new Vector2(2f, 0f); if (CAS.NetworkRole != NetworkHelperInterface.NetworkRole.Client) { float fVelocity = 16f; byte byDir = 0; this.xArrowInstance = (Program.game._EntityMaster_AddSpellInstance(SpellCodex.SpellTypes._Skill_Bow_ShootArrow, this.xOwner, v2Pos, true, new float[] { fVelocity, (float)byDir }) as _Spells_ArrowInstance); this.xArrowInstance.xTransform.v2Pos = v2Pos; this.xArrowInstance.v2Direction = new Vector2(0f, -1f); this.xArrowInstance.fVelocity = fVelocity; this.xArrowInstance.xAttackPhaseEnemy.lxCurrentColliders[0].ibitLayers = (this.xArrowInstance.xAttackPhaseEnvironment.lxCurrentColliders[0].ibitLayers = this.xOwner.xCollisionComponent.xMovementCollider.ibitLayers); this.xArrowInstance.xAttackPhaseEnvironment.lenLayers.Add(Collider.ColliderLayers.StaticEnvironment); this.xArrowInstance.xAttackPhaseEnvironment.lenLayers.Add(Collider.ColliderLayers.DynamicEnvironment); this.xArrowInstance.xAttackPhaseEnvironment.xStats.sAttackHandle = "Arrow"; this.xArrowInstance.xEffect = (Program.GetTheGame()._EffectMaster_AddEffect(new Effect_ArrowTrail(this.xArrowInstance, 0)) as Effect_ArrowTrail); } Program.game.xSoundSystem.PlayCue("Bow", this.xOwner.xTransform); Program.game._EffectMaster_AddEffect(new SortedAnimated(v2Pos + new Vector2(0f, -57f), SortedAnimated.SortedAnimatedEffects._SkillEffects_Bow_FadingArrow)).xRenderComponent.fVirtualHeight += 80f; }
public static ISpellInstance GetSpellInstance(SpellCodex.SpellTypes enType, int iPowerLevel) { ISpellInstance xIn = null; ContentManager Content = Program.GetTheGame().Content; string MONSTER_PATH = "Sprites/Monster/"; if (enType == SpellCodex.SpellTypes._Magic_Fire_Fireball) { xIn = new _Spells_FireballInstance(); _Spells_FireballInstance xFireball = xIn as _Spells_FireballInstance; xFireball.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball.xRenderComponent.xTransform = xIn.xTransform; xFireball.xAttackPhaseEnemy = new AttackPhase(xFireball); xFireball.xAttackPhaseEnvironment = new AttackPhase(xFireball); xFireball.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); SphereCollider col = new SphereCollider(10f, new Vector2(0f, -11f), xFireball.xTransform, 0f, xFireball); col.xAttackPhase = xFireball.xAttackPhaseEnemy; col.bIsLarge = false; xFireball.xAttackPhaseEnemy.lxCurrentColliders.Add(col); xFireball.xAttackPhaseEnemy.RegisterCurrent(); col = new SphereCollider(2f, new Vector2(0f, -3f), xFireball.xTransform, 0f, xFireball); col.xAttackPhase = xFireball.xAttackPhaseEnvironment; col.bCollideWithFlat = false; xFireball.xAttackPhaseEnvironment.lxCurrentColliders.Add(col); xFireball.xAttackPhaseEnvironment.RegisterCurrent(); xFireball.enType = enType; xFireball.xRenderComponent.xOwnerObject = xIn; xFireball.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -12f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Up"), new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(1, new Animation(1, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Up"), new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(2, new Animation(2, 2, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Up"), new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(3, new Animation(3, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Up"), new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations[1].SetRotationOverride(1.57079637f); xIn.xRenderComponent.dixAnimations[2].SetRotationOverride(3.14159274f); xIn.xRenderComponent.dixAnimations[3].SetRotationOverride(4.712389f); xIn.xRenderComponent.dixAnimations.Add(4, new Animation(4, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Up"), new Vector2(12f, 10f), 4, 6, 24, 38, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(5, new Animation(5, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Up"), new Vector2(12f, 10f), 4, 6, 24, 38, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(6, new Animation(6, 2, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Up"), new Vector2(12f, 10f), 4, 6, 24, 38, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(7, new Animation(7, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Up"), new Vector2(12f, 10f), 4, 6, 24, 38, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations[5].SetRotationOverride(1.57079637f); xIn.xRenderComponent.dixAnimations[6].SetRotationOverride(3.14159274f); xIn.xRenderComponent.dixAnimations[7].SetRotationOverride(4.712389f); xIn.xRenderComponent.dixAnimations.Add(8, new Animation(8, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv4Up"), new Vector2(16f, 11f), 4, 6, 29, 46, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(9, new Animation(9, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv4Up"), new Vector2(16f, 11f), 4, 6, 29, 46, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(10, new Animation(10, 2, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv4Up"), new Vector2(16f, 11f), 4, 6, 29, 46, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(11, new Animation(11, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv4Up"), new Vector2(16f, 11f), 4, 6, 29, 46, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations[9].SetRotationOverride(1.57079637f); xIn.xRenderComponent.dixAnimations[10].SetRotationOverride(3.14159274f); xIn.xRenderComponent.dixAnimations[11].SetRotationOverride(4.712389f); xIn.xRenderComponent.dixAnimations.Add(12, new Animation(12, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv5Up"), new Vector2(28f, 30f), 4, 1, 56, 51, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(13, new Animation(13, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv5Up"), new Vector2(28f, 30f), 4, 1, 56, 51, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(14, new Animation(14, 2, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv5Up"), new Vector2(28f, 30f), 4, 1, 56, 51, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(15, new Animation(15, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv5Up"), new Vector2(28f, 30f), 4, 1, 56, 51, 0, 0, 10, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations[13].SetRotationOverride(1.57079637f); xIn.xRenderComponent.dixAnimations[14].SetRotationOverride(3.14159274f); xIn.xRenderComponent.dixAnimations[15].SetRotationOverride(4.712389f); xIn.xRenderComponent.dixAnimations.Add(20, new Animation(20, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Disappear"), new Vector2(9f, 7f), 4, 9, 18, 25, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations.Add(21, new Animation(21, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Disappear"), new Vector2(9f, 7f), 4, 9, 18, 25, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations.Add(22, new Animation(22, 2, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Disappear"), new Vector2(9f, 7f), 4, 9, 18, 25, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations.Add(23, new Animation(23, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv1Disappear"), new Vector2(9f, 7f), 4, 9, 18, 25, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations[21].SetRotationOverride(1.57079637f); xIn.xRenderComponent.dixAnimations[22].SetRotationOverride(3.14159274f); xIn.xRenderComponent.dixAnimations[23].SetRotationOverride(4.712389f); xIn.xRenderComponent.dixAnimations.Add(24, new Animation(24, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Disappear"), new Vector2(12f, 10f), 4, 9, 24, 38, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations.Add(25, new Animation(25, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Disappear"), new Vector2(12f, 10f), 4, 9, 24, 38, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations.Add(26, new Animation(26, 2, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Disappear"), new Vector2(12f, 10f), 4, 9, 24, 38, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations.Add(27, new Animation(27, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Fire_Fireball, "Sprites/Spells/Fireball/Lv3Disappear"), new Vector2(12f, 10f), 4, 9, 24, 38, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFramesXtoY, new float[] { 1f, 9f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.1f })) })); xIn.xRenderComponent.dixAnimations[25].SetRotationOverride(1.57079637f); xIn.xRenderComponent.dixAnimations[26].SetRotationOverride(3.14159274f); xIn.xRenderComponent.dixAnimations[27].SetRotationOverride(4.712389f); DynamicLight xLight = new DynamicLight(); xLight.xRenderComponent.xTransform = xIn.xTransform; xLight.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xRenderMaster.dstxLightSources["OmniLightRad100"], new Vector2(100f, 100f), 4, 1, 200, 200, 0, 0, 1, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xLight.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -10f); xLight.SetScale(0.3f); xLight.xMountObject = xFireball; xLight.enDestructionType = DynamicLight.DestructionType.Flash; xLight.fFlicker = 0.3f; xLight.iFlickerInterval = 15; Program.GetTheGame()._DynamicLight_CreateDynamicLight(xLight); } else if (enType == SpellCodex.SpellTypes._Magic_Fire_Meteor) { xIn = new _Spells_MeteorInstance(); _Spells_MeteorInstance xFireball2 = xIn as _Spells_MeteorInstance; xFireball2.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball2.xRenderComponent.xTransform = xIn.xTransform; xFireball2.bSendOwnerID = true; xFireball2.xAttackPhaseEnemy = new AttackPhase(xFireball2); xFireball2.xAttackPhaseEnvironment = new AttackPhase(xFireball2); xFireball2.xAttackPhaseEpicenter = new AttackPhase(xFireball2); xFireball2.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball2.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); if (Program.GetTheGame().xNetworkInfo.enCurrentRole != NetworkHelperInterface.NetworkRole.Client) { SphereCollider col2 = new SphereCollider(14f, new Vector2(0f, 0f), xFireball2.xTransform, 0f, xFireball2); col2.xAttackPhase = xFireball2.xAttackPhaseEnemy; col2.bIsLarge = false; xFireball2.xAttackPhaseEnemy.lxCurrentColliders.Add(col2); col2 = new SphereCollider(12f, new Vector2(0f, 0f), xFireball2.xTransform, 0f, xFireball2); col2.xAttackPhase = xFireball2.xAttackPhaseEnvironment; col2.bCollideWithFlat = false; xFireball2.xAttackPhaseEnvironment.lxCurrentColliders.Add(col2); col2 = new SphereCollider(10f, new Vector2(0f, 0f), xFireball2.xTransform, 0f, xFireball2); col2.xAttackPhase = xFireball2.xAttackPhaseEpicenter; col2.bCollideWithFlat = false; xFireball2.xAttackPhaseEpicenter.lxCurrentColliders.Add(col2); } xFireball2.enType = enType; xFireball2.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(18f, 32f), 3, 7, 36, 41, 36, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Fire_Flamethrower) { xIn = new _Spells_FlamethrowerInstance(); _Spells_FlamethrowerInstance xFireball3 = xIn as _Spells_FlamethrowerInstance; xFireball3.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball3.xRenderComponent.xTransform = xIn.xTransform; xFireball3.bSendOwnerID = true; xFireball3.xAttackPhaseEnemy = new AttackPhase(xFireball3); xFireball3.xAttackPhaseEnvironment = new AttackPhase(xFireball3); xFireball3.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball3.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); if (Program.GetTheGame().xNetworkInfo.enCurrentRole != NetworkHelperInterface.NetworkRole.Client) { SphereCollider col3 = new SphereCollider(17f, new Vector2(0f, 0f), xFireball3.xTransform, 0f, xFireball3); col3.xAttackPhase = xFireball3.xAttackPhaseEnemy; col3.bIsLarge = false; xFireball3.xAttackPhaseEnemy.lxCurrentColliders.Add(col3); col3 = new SphereCollider(17f, new Vector2(0f, 0f), xFireball3.xTransform, 0f, xFireball3); col3.xAttackPhase = xFireball3.xAttackPhaseEnemy; col3.bIsLarge = false; xFireball3.xAttackPhaseEnemy.lxCurrentColliders.Add(col3); col3 = new SphereCollider(17f, new Vector2(0f, 0f), xFireball3.xTransform, 0f, xFireball3); col3.xAttackPhase = xFireball3.xAttackPhaseEnvironment; col3.bCollideWithFlat = false; xFireball3.xAttackPhaseEnvironment.lxCurrentColliders.Add(col3); col3 = new SphereCollider(17f, new Vector2(0f, 0f), xFireball3.xTransform, 0f, xFireball3); col3.xAttackPhase = xFireball3.xAttackPhaseEnvironment; col3.bCollideWithFlat = false; xFireball3.xAttackPhaseEnvironment.lxCurrentColliders.Add(col3); } xFireball3.enType = enType; xFireball3.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(18f, 32f), 3, 7, 36, 41, 36, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Fire_BurnControlInstance) { xIn = new _Spells_BurnInstance(); _Spells_BurnInstance xBurn = xIn as _Spells_BurnInstance; xBurn.xRenderComponent = new AnimatedRenderComponent(xIn); xBurn.xRenderComponent.xTransform = xIn.xTransform; xBurn.xDummyPhase = new AttackPhase(xBurn); xBurn.xDummyPhase.xStats.iBreakingPower = -1; xBurn.enType = enType; xBurn.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(18f, 32f), 3, 7, 36, 41, 36, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Earth_EarthSpike) { xIn = new _Spells_EarthSpikeInstance(); _Spells_EarthSpikeInstance xFireball4 = xIn as _Spells_EarthSpikeInstance; xFireball4.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball4.xRenderComponent.xTransform = xIn.xTransform; xFireball4.xAttackPhaseEnemy = new AttackPhase(xFireball4); xFireball4.xAttackPhaseEnvironment = new AttackPhase(xFireball4); xFireball4.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball4.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); if (Program.GetTheGame().xNetworkInfo.enCurrentRole != NetworkHelperInterface.NetworkRole.Client) { SphereCollider col4 = new SphereCollider(14f, new Vector2(0f, 0f), xFireball4.xTransform, 0f, xFireball4); col4.xAttackPhase = xFireball4.xAttackPhaseEnemy; col4.bIsLarge = false; xFireball4.xAttackPhaseEnemy.lxCurrentColliders.Add(col4); xFireball4.xAttackPhaseEnemy.RegisterCurrent(); col4 = new SphereCollider(12f, new Vector2(0f, 0f), xFireball4.xTransform, 0f, xFireball4); col4.xAttackPhase = xFireball4.xAttackPhaseEnvironment; col4.bCollideWithFlat = false; xFireball4.xAttackPhaseEnvironment.lxCurrentColliders.Add(col4); xFireball4.xAttackPhaseEnvironment.RegisterCurrent(); } xFireball4.enType = enType; xFireball4.xRenderComponent.xOwnerObject = xIn; Dictionary<ushort, Animation> arg_1546_0 = xIn.xRenderComponent.dixAnimations; ushort arg_1546_1 = 0; ushort arg_1541_0 = 0; byte arg_1541_1 = 0; Texture2D arg_1541_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_EarthSpike, "Sprites/Spells/Earth Spike/Level 1-2/Start"); Vector2 arg_1541_3 = new Vector2(18f, 32f); int arg_1541_4 = 3; int arg_1541_5 = 7; int arg_1541_6 = 36; int arg_1541_7 = 41; int arg_1541_8 = 36; int arg_1541_9 = 0; int arg_1541_10 = 10; Animation.LoopSettings arg_1541_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_1541_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_1541_13 = true; bool arg_1541_14 = true; AnimationInstruction[] array = new AnimationInstruction[1]; AnimationInstruction[] arg_153E_0 = array; int arg_153E_1 = 0; AnimInsCriteria arg_1539_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 1f }); AnimInsEvent.EventType arg_1534_0 = AnimInsEvent.EventType.PlaySound; string arg_1534_1 = "Earth_Spike"; float[] array2 = new float[1]; arg_153E_0[arg_153E_1] = new AnimationInstruction(arg_1539_0, new AnimInsEvent(arg_1534_0, arg_1534_1, array2)); arg_1546_0.Add(arg_1546_1, new Animation(arg_1541_0, arg_1541_1, arg_1541_2, arg_1541_3, arg_1541_4, arg_1541_5, arg_1541_6, arg_1541_7, arg_1541_8, arg_1541_9, arg_1541_10, arg_1541_11, arg_1541_12, arg_1541_13, arg_1541_14, array)); xIn.xRenderComponent.dixAnimations.Add(1, new Animation(1, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_EarthSpike, "Sprites/Spells/Earth Spike/Level 1-2/End"), new Vector2(18f, 32f), 4, 12, 36, 41, 0, 0, 12, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); Dictionary<ushort, Animation> arg_162C_0 = xIn.xRenderComponent.dixAnimations; ushort arg_162C_1 = 2; ushort arg_1627_0 = 2; byte arg_1627_1 = 0; Texture2D arg_1627_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_EarthSpike, "Sprites/Spells/Earth Spike/Level 3/Start"); Vector2 arg_1627_3 = new Vector2(17f, 37f); int arg_1627_4 = 3; int arg_1627_5 = 7; int arg_1627_6 = 35; int arg_1627_7 = 45; int arg_1627_8 = 35; int arg_1627_9 = 0; int arg_1627_10 = 10; Animation.LoopSettings arg_1627_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_1627_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_1627_13 = true; bool arg_1627_14 = true; array = new AnimationInstruction[1]; AnimationInstruction[] arg_1624_0 = array; int arg_1624_1 = 0; AnimInsCriteria arg_161F_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 1f }); AnimInsEvent.EventType arg_161A_0 = AnimInsEvent.EventType.PlaySound; string arg_161A_1 = "Earth_Spike"; array2 = new float[1]; arg_1624_0[arg_1624_1] = new AnimationInstruction(arg_161F_0, new AnimInsEvent(arg_161A_0, arg_161A_1, array2)); arg_162C_0.Add(arg_162C_1, new Animation(arg_1627_0, arg_1627_1, arg_1627_2, arg_1627_3, arg_1627_4, arg_1627_5, arg_1627_6, arg_1627_7, arg_1627_8, arg_1627_9, arg_1627_10, arg_1627_11, arg_1627_12, arg_1627_13, arg_1627_14, array)); xIn.xRenderComponent.dixAnimations.Add(3, new Animation(3, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_EarthSpike, "Sprites/Spells/Earth Spike/Level 3/End"), new Vector2(17f, 37f), 4, 12, 35, 45, 0, 0, 12, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Earth_SummonPlant) { xIn = new _Spells_PlantInstance(); _Spells_PlantInstance xCloud = xIn as _Spells_PlantInstance; xCloud.xRenderComponent = new AnimatedRenderComponent(xIn); xCloud.xRenderComponent.xTransform = xIn.xTransform; xCloud.enType = enType; xCloud.xRenderComponent.xOwnerObject = xIn; xCloud.xAttackPhaseEnemy = new AttackPhase(xCloud); xCloud.xAttackPhaseEnemy.xStats = new AttackStats(); xCloud.xAttackPhaseEnemy.xStats.iBreakingPower = -1; xCloud.xAttackPhaseEnemy.xStats.iBaseDamage = 25; xCloud.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.Enemies); xCloud.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.DynamicEnvironment); SphereCollider col5 = new SphereCollider(12f, new Vector2(-7f, -6f), xCloud.xTransform, 0f, xCloud); col5.xAttackPhase = xCloud.xAttackPhaseEnemy; col5.bIsLarge = false; col5.ibitLayers = 2147483647; xCloud.xAttackPhaseEnemy.lxCurrentColliders.Add(col5); col5 = new SphereCollider(12f, new Vector2(-7f, 9f), xCloud.xTransform, 0f, xCloud); col5.xAttackPhase = xCloud.xAttackPhaseEnemy; col5.bIsLarge = false; col5.ibitLayers = 2147483647; xCloud.xAttackPhaseEnemy.lxCurrentColliders.Add(col5); Dictionary<ushort, Animation> arg_18B6_0 = xIn.xRenderComponent.dixAnimations; ushort arg_18B6_1 = 0; ushort arg_18B1_0 = 0; byte arg_18B1_1 = 1; Texture2D arg_18B1_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 1/Appear"); Vector2 arg_18B1_3 = new Vector2(11f, 20f); int arg_18B1_4 = 4; int arg_18B1_5 = 9; int arg_18B1_6 = 22; int arg_18B1_7 = 25; int arg_18B1_8 = 0; int arg_18B1_9 = 0; int arg_18B1_10 = 10; Animation.LoopSettings arg_18B1_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_18B1_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_18B1_13 = false; bool arg_18B1_14 = false; AnimationInstruction[] array = new AnimationInstruction[2]; AnimationInstruction[] arg_1880_0 = array; int arg_1880_1 = 0; AnimInsCriteria arg_187B_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_1876_0 = AnimInsEvent.EventType.PlaySound; string arg_1876_1 = "Halloweed_Appear"; float[] array2 = new float[1]; arg_1880_0[arg_1880_1] = new AnimationInstruction(arg_187B_0, new AnimInsEvent(arg_1876_0, arg_1876_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 1f })); arg_18B6_0.Add(arg_18B6_1, new Animation(arg_18B1_0, arg_18B1_1, arg_18B1_2, arg_18B1_3, arg_18B1_4, arg_18B1_5, arg_18B1_6, arg_18B1_7, arg_18B1_8, arg_18B1_9, arg_18B1_10, arg_18B1_11, arg_18B1_12, arg_18B1_13, arg_18B1_14, array)); xIn.xRenderComponent.dixAnimations.Add(1, new Animation(1, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 1/Idle"), new Vector2(8f, 13f), 4, 8, 15, 18, 0, 0, 12, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); Dictionary<ushort, Animation> arg_19C1_0 = xIn.xRenderComponent.dixAnimations; ushort arg_19C1_1 = 2; ushort arg_19BC_0 = 2; byte arg_19BC_1 = 1; Texture2D arg_19BC_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 1/Disappear"); Vector2 arg_19BC_3 = new Vector2(9f, 21f); int arg_19BC_4 = 4; int arg_19BC_5 = 9; int arg_19BC_6 = 18; int arg_19BC_7 = 27; int arg_19BC_8 = 0; int arg_19BC_9 = 0; int arg_19BC_10 = 12; Animation.LoopSettings arg_19BC_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_19BC_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_19BC_13 = false; bool arg_19BC_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_1981_0 = array; int arg_1981_1 = 0; AnimInsCriteria arg_197C_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_1977_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_1981_0[arg_1981_1] = new AnimationInstruction(arg_197C_0, new AnimInsEvent(arg_1977_0, array2)); AnimationInstruction[] arg_19B9_0 = array; int arg_19B9_1 = 1; AnimInsCriteria arg_19B4_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_19AF_0 = AnimInsEvent.EventType.PlaySound; string arg_19AF_1 = "Halloweed_Disappear"; array2 = new float[1]; arg_19B9_0[arg_19B9_1] = new AnimationInstruction(arg_19B4_0, new AnimInsEvent(arg_19AF_0, arg_19AF_1, array2)); arg_19C1_0.Add(arg_19C1_1, new Animation(arg_19BC_0, arg_19BC_1, arg_19BC_2, arg_19BC_3, arg_19BC_4, arg_19BC_5, arg_19BC_6, arg_19BC_7, arg_19BC_8, arg_19BC_9, arg_19BC_10, arg_19BC_11, arg_19BC_12, arg_19BC_13, arg_19BC_14, array)); Dictionary<ushort, Animation> arg_1AF8_0 = xIn.xRenderComponent.dixAnimations; ushort arg_1AF8_1 = 3; ushort arg_1AF3_0 = 3; byte arg_1AF3_1 = 3; Texture2D arg_1AF3_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 1/Attack/Left"); Vector2 arg_1AF3_3 = new Vector2(20f, 19f); int arg_1AF3_4 = 4; int arg_1AF3_5 = 9; int arg_1AF3_6 = 36; int arg_1AF3_7 = 40; int arg_1AF3_8 = 0; int arg_1AF3_9 = 0; int arg_1AF3_10 = 12; Animation.LoopSettings arg_1AF3_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_1AF3_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_1AF3_13 = false; bool arg_1AF3_14 = false; array = new AnimationInstruction[4]; AnimationInstruction[] arg_1A4A_0 = array; int arg_1A4A_1 = 0; AnimInsCriteria arg_1A45_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[] { 2f }); AnimInsEvent.EventType arg_1A40_0 = AnimInsEvent.EventType.PlaySound; string arg_1A40_1 = "Halloweed_Attack"; array2 = new float[1]; arg_1A4A_0[arg_1A4A_1] = new AnimationInstruction(arg_1A45_0, new AnimInsEvent(arg_1A40_0, arg_1A40_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 2f })); array[3] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 1f })); arg_1AF8_0.Add(arg_1AF8_1, new Animation(arg_1AF3_0, arg_1AF3_1, arg_1AF3_2, arg_1AF3_3, arg_1AF3_4, arg_1AF3_5, arg_1AF3_6, arg_1AF3_7, arg_1AF3_8, arg_1AF3_9, arg_1AF3_10, arg_1AF3_11, arg_1AF3_12, arg_1AF3_13, arg_1AF3_14, array)); Dictionary<ushort, Animation> arg_1C2F_0 = xIn.xRenderComponent.dixAnimations; ushort arg_1C2F_1 = 4; ushort arg_1C2A_0 = 4; byte arg_1C2A_1 = 1; Texture2D arg_1C2A_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 1/Attack/Right"); Vector2 arg_1C2A_3 = new Vector2(16f, 19f); int arg_1C2A_4 = 4; int arg_1C2A_5 = 9; int arg_1C2A_6 = 36; int arg_1C2A_7 = 40; int arg_1C2A_8 = 0; int arg_1C2A_9 = 0; int arg_1C2A_10 = 12; Animation.LoopSettings arg_1C2A_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_1C2A_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_1C2A_13 = false; bool arg_1C2A_14 = false; array = new AnimationInstruction[4]; AnimationInstruction[] arg_1B81_0 = array; int arg_1B81_1 = 0; AnimInsCriteria arg_1B7C_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[] { 2f }); AnimInsEvent.EventType arg_1B77_0 = AnimInsEvent.EventType.PlaySound; string arg_1B77_1 = "Halloweed_Attack"; array2 = new float[1]; arg_1B81_0[arg_1B81_1] = new AnimationInstruction(arg_1B7C_0, new AnimInsEvent(arg_1B77_0, arg_1B77_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 2f })); array[3] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 1f })); arg_1C2F_0.Add(arg_1C2F_1, new Animation(arg_1C2A_0, arg_1C2A_1, arg_1C2A_2, arg_1C2A_3, arg_1C2A_4, arg_1C2A_5, arg_1C2A_6, arg_1C2A_7, arg_1C2A_8, arg_1C2A_9, arg_1C2A_10, arg_1C2A_11, arg_1C2A_12, arg_1C2A_13, arg_1C2A_14, array)); Dictionary<ushort, Animation> arg_1CEE_0 = xIn.xRenderComponent.dixAnimations; ushort arg_1CEE_1 = 5; ushort arg_1CE9_0 = 5; byte arg_1CE9_1 = 1; Texture2D arg_1CE9_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 2/Appear"); Vector2 arg_1CE9_3 = new Vector2(11f, 20f); int arg_1CE9_4 = 4; int arg_1CE9_5 = 9; int arg_1CE9_6 = 22; int arg_1CE9_7 = 25; int arg_1CE9_8 = 0; int arg_1CE9_9 = 0; int arg_1CE9_10 = 10; Animation.LoopSettings arg_1CE9_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_1CE9_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_1CE9_13 = false; bool arg_1CE9_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_1CB8_0 = array; int arg_1CB8_1 = 0; AnimInsCriteria arg_1CB3_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_1CAE_0 = AnimInsEvent.EventType.PlaySound; string arg_1CAE_1 = "Halloweed_Appear"; array2 = new float[1]; arg_1CB8_0[arg_1CB8_1] = new AnimationInstruction(arg_1CB3_0, new AnimInsEvent(arg_1CAE_0, arg_1CAE_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 6f })); arg_1CEE_0.Add(arg_1CEE_1, new Animation(arg_1CE9_0, arg_1CE9_1, arg_1CE9_2, arg_1CE9_3, arg_1CE9_4, arg_1CE9_5, arg_1CE9_6, arg_1CE9_7, arg_1CE9_8, arg_1CE9_9, arg_1CE9_10, arg_1CE9_11, arg_1CE9_12, arg_1CE9_13, arg_1CE9_14, array)); xIn.xRenderComponent.dixAnimations.Add(6, new Animation(6, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 2/Idle"), new Vector2(8f, 16f), 4, 8, 17, 18, 0, 0, 12, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); Dictionary<ushort, Animation> arg_1DF9_0 = xIn.xRenderComponent.dixAnimations; ushort arg_1DF9_1 = 7; ushort arg_1DF4_0 = 7; byte arg_1DF4_1 = 1; Texture2D arg_1DF4_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 2/Disappear"); Vector2 arg_1DF4_3 = new Vector2(9f, 21f); int arg_1DF4_4 = 4; int arg_1DF4_5 = 9; int arg_1DF4_6 = 18; int arg_1DF4_7 = 27; int arg_1DF4_8 = 0; int arg_1DF4_9 = 0; int arg_1DF4_10 = 12; Animation.LoopSettings arg_1DF4_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_1DF4_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_1DF4_13 = false; bool arg_1DF4_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_1DB9_0 = array; int arg_1DB9_1 = 0; AnimInsCriteria arg_1DB4_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_1DAF_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_1DB9_0[arg_1DB9_1] = new AnimationInstruction(arg_1DB4_0, new AnimInsEvent(arg_1DAF_0, array2)); AnimationInstruction[] arg_1DF1_0 = array; int arg_1DF1_1 = 1; AnimInsCriteria arg_1DEC_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_1DE7_0 = AnimInsEvent.EventType.PlaySound; string arg_1DE7_1 = "Halloweed_Disappear"; array2 = new float[1]; arg_1DF1_0[arg_1DF1_1] = new AnimationInstruction(arg_1DEC_0, new AnimInsEvent(arg_1DE7_0, arg_1DE7_1, array2)); arg_1DF9_0.Add(arg_1DF9_1, new Animation(arg_1DF4_0, arg_1DF4_1, arg_1DF4_2, arg_1DF4_3, arg_1DF4_4, arg_1DF4_5, arg_1DF4_6, arg_1DF4_7, arg_1DF4_8, arg_1DF4_9, arg_1DF4_10, arg_1DF4_11, arg_1DF4_12, arg_1DF4_13, arg_1DF4_14, array)); Dictionary<ushort, Animation> arg_1F30_0 = xIn.xRenderComponent.dixAnimations; ushort arg_1F30_1 = 8; ushort arg_1F2B_0 = 8; byte arg_1F2B_1 = 3; Texture2D arg_1F2B_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 2/Attack/Left"); Vector2 arg_1F2B_3 = new Vector2(20f, 19f); int arg_1F2B_4 = 4; int arg_1F2B_5 = 9; int arg_1F2B_6 = 36; int arg_1F2B_7 = 39; int arg_1F2B_8 = 0; int arg_1F2B_9 = 0; int arg_1F2B_10 = 12; Animation.LoopSettings arg_1F2B_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_1F2B_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_1F2B_13 = false; bool arg_1F2B_14 = false; array = new AnimationInstruction[4]; AnimationInstruction[] arg_1E82_0 = array; int arg_1E82_1 = 0; AnimInsCriteria arg_1E7D_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[] { 2f }); AnimInsEvent.EventType arg_1E78_0 = AnimInsEvent.EventType.PlaySound; string arg_1E78_1 = "Halloweed_Attack"; array2 = new float[1]; arg_1E82_0[arg_1E82_1] = new AnimationInstruction(arg_1E7D_0, new AnimInsEvent(arg_1E78_0, arg_1E78_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 2f })); array[3] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 6f })); arg_1F30_0.Add(arg_1F30_1, new Animation(arg_1F2B_0, arg_1F2B_1, arg_1F2B_2, arg_1F2B_3, arg_1F2B_4, arg_1F2B_5, arg_1F2B_6, arg_1F2B_7, arg_1F2B_8, arg_1F2B_9, arg_1F2B_10, arg_1F2B_11, arg_1F2B_12, arg_1F2B_13, arg_1F2B_14, array)); Dictionary<ushort, Animation> arg_2069_0 = xIn.xRenderComponent.dixAnimations; ushort arg_2069_1 = 9; ushort arg_2064_0 = 9; byte arg_2064_1 = 1; Texture2D arg_2064_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 2/Attack/Right"); Vector2 arg_2064_3 = new Vector2(16f, 19f); int arg_2064_4 = 4; int arg_2064_5 = 9; int arg_2064_6 = 36; int arg_2064_7 = 40; int arg_2064_8 = 0; int arg_2064_9 = 0; int arg_2064_10 = 12; Animation.LoopSettings arg_2064_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2064_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2064_13 = false; bool arg_2064_14 = false; array = new AnimationInstruction[4]; AnimationInstruction[] arg_1FBB_0 = array; int arg_1FBB_1 = 0; AnimInsCriteria arg_1FB6_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[] { 2f }); AnimInsEvent.EventType arg_1FB1_0 = AnimInsEvent.EventType.PlaySound; string arg_1FB1_1 = "Halloweed_Attack"; array2 = new float[1]; arg_1FBB_0[arg_1FBB_1] = new AnimationInstruction(arg_1FB6_0, new AnimInsEvent(arg_1FB1_0, arg_1FB1_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 2f })); array[3] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 6f })); arg_2069_0.Add(arg_2069_1, new Animation(arg_2064_0, arg_2064_1, arg_2064_2, arg_2064_3, arg_2064_4, arg_2064_5, arg_2064_6, arg_2064_7, arg_2064_8, arg_2064_9, arg_2064_10, arg_2064_11, arg_2064_12, arg_2064_13, arg_2064_14, array)); Dictionary<ushort, Animation> arg_212A_0 = xIn.xRenderComponent.dixAnimations; ushort arg_212A_1 = 10; ushort arg_2125_0 = 10; byte arg_2125_1 = 1; Texture2D arg_2125_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 3/Appear"); Vector2 arg_2125_3 = new Vector2(11f, 24f); int arg_2125_4 = 4; int arg_2125_5 = 9; int arg_2125_6 = 22; int arg_2125_7 = 28; int arg_2125_8 = 0; int arg_2125_9 = 0; int arg_2125_10 = 10; Animation.LoopSettings arg_2125_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2125_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2125_13 = false; bool arg_2125_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_20F4_0 = array; int arg_20F4_1 = 0; AnimInsCriteria arg_20EF_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_20EA_0 = AnimInsEvent.EventType.PlaySound; string arg_20EA_1 = "Halloweed_Appear"; array2 = new float[1]; arg_20F4_0[arg_20F4_1] = new AnimationInstruction(arg_20EF_0, new AnimInsEvent(arg_20EA_0, arg_20EA_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 11f })); arg_212A_0.Add(arg_212A_1, new Animation(arg_2125_0, arg_2125_1, arg_2125_2, arg_2125_3, arg_2125_4, arg_2125_5, arg_2125_6, arg_2125_7, arg_2125_8, arg_2125_9, arg_2125_10, arg_2125_11, arg_2125_12, arg_2125_13, arg_2125_14, array)); xIn.xRenderComponent.dixAnimations.Add(11, new Animation(11, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 3/Idle"), new Vector2(9f, 24f), 4, 8, 18, 28, 0, 0, 12, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); Dictionary<ushort, Animation> arg_2239_0 = xIn.xRenderComponent.dixAnimations; ushort arg_2239_1 = 12; ushort arg_2234_0 = 12; byte arg_2234_1 = 1; Texture2D arg_2234_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 3/Disappear"); Vector2 arg_2234_3 = new Vector2(11f, 27f); int arg_2234_4 = 4; int arg_2234_5 = 9; int arg_2234_6 = 20; int arg_2234_7 = 31; int arg_2234_8 = 0; int arg_2234_9 = 0; int arg_2234_10 = 12; Animation.LoopSettings arg_2234_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2234_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2234_13 = false; bool arg_2234_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_21F9_0 = array; int arg_21F9_1 = 0; AnimInsCriteria arg_21F4_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_21EF_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_21F9_0[arg_21F9_1] = new AnimationInstruction(arg_21F4_0, new AnimInsEvent(arg_21EF_0, array2)); AnimationInstruction[] arg_2231_0 = array; int arg_2231_1 = 1; AnimInsCriteria arg_222C_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_2227_0 = AnimInsEvent.EventType.PlaySound; string arg_2227_1 = "Halloweed_Disappear"; array2 = new float[1]; arg_2231_0[arg_2231_1] = new AnimationInstruction(arg_222C_0, new AnimInsEvent(arg_2227_0, arg_2227_1, array2)); arg_2239_0.Add(arg_2239_1, new Animation(arg_2234_0, arg_2234_1, arg_2234_2, arg_2234_3, arg_2234_4, arg_2234_5, arg_2234_6, arg_2234_7, arg_2234_8, arg_2234_9, arg_2234_10, arg_2234_11, arg_2234_12, arg_2234_13, arg_2234_14, array)); Dictionary<ushort, Animation> arg_2372_0 = xIn.xRenderComponent.dixAnimations; ushort arg_2372_1 = 13; ushort arg_236D_0 = 13; byte arg_236D_1 = 3; Texture2D arg_236D_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 3/Attack/Left"); Vector2 arg_236D_3 = new Vector2(25f, 27f); int arg_236D_4 = 4; int arg_236D_5 = 11; int arg_236D_6 = 43; int arg_236D_7 = 51; int arg_236D_8 = 0; int arg_236D_9 = 0; int arg_236D_10 = 12; Animation.LoopSettings arg_236D_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_236D_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_236D_13 = false; bool arg_236D_14 = false; array = new AnimationInstruction[4]; AnimationInstruction[] arg_22C4_0 = array; int arg_22C4_1 = 0; AnimInsCriteria arg_22BF_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[] { 2f }); AnimInsEvent.EventType arg_22BA_0 = AnimInsEvent.EventType.PlaySound; string arg_22BA_1 = "Halloweed_Attack"; array2 = new float[1]; arg_22C4_0[arg_22C4_1] = new AnimationInstruction(arg_22BF_0, new AnimInsEvent(arg_22BA_0, arg_22BA_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 2f })); array[3] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 11f })); arg_2372_0.Add(arg_2372_1, new Animation(arg_236D_0, arg_236D_1, arg_236D_2, arg_236D_3, arg_236D_4, arg_236D_5, arg_236D_6, arg_236D_7, arg_236D_8, arg_236D_9, arg_236D_10, arg_236D_11, arg_236D_12, arg_236D_13, arg_236D_14, array)); Dictionary<ushort, Animation> arg_24AB_0 = xIn.xRenderComponent.dixAnimations; ushort arg_24AB_1 = 14; ushort arg_24A6_0 = 14; byte arg_24A6_1 = 1; Texture2D arg_24A6_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Earth_SummonPlant, "Sprites/Spells/Plant/Level 3/Attack/Right"); Vector2 arg_24A6_3 = new Vector2(21f, 27f); int arg_24A6_4 = 4; int arg_24A6_5 = 11; int arg_24A6_6 = 43; int arg_24A6_7 = 51; int arg_24A6_8 = 0; int arg_24A6_9 = 0; int arg_24A6_10 = 12; Animation.LoopSettings arg_24A6_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_24A6_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_24A6_13 = false; bool arg_24A6_14 = false; array = new AnimationInstruction[4]; AnimationInstruction[] arg_23FD_0 = array; int arg_23FD_1 = 0; AnimInsCriteria arg_23F8_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[] { 2f }); AnimInsEvent.EventType arg_23F3_0 = AnimInsEvent.EventType.PlaySound; string arg_23F3_1 = "Halloweed_Attack"; array2 = new float[1]; arg_23FD_0[arg_23FD_1] = new AnimationInstruction(arg_23F8_0, new AnimInsEvent(arg_23F3_0, arg_23F3_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 2f })); array[3] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 11f })); arg_24AB_0.Add(arg_24AB_1, new Animation(arg_24A6_0, arg_24A6_1, arg_24A6_2, arg_24A6_3, arg_24A6_4, arg_24A6_5, arg_24A6_6, arg_24A6_7, arg_24A6_8, arg_24A6_9, arg_24A6_10, arg_24A6_11, arg_24A6_12, arg_24A6_13, arg_24A6_14, array)); } else if (enType == SpellCodex.SpellTypes._Magic_Earth_InsectSwarm) { xIn = new _Spells_InsectSwarmInstance(); _Spells_InsectSwarmInstance xCloud2 = xIn as _Spells_InsectSwarmInstance; xCloud2.xRenderComponent = new AnimatedRenderComponent(xIn); xCloud2.xRenderComponent.xTransform = xIn.xTransform; xCloud2.enType = enType; xCloud2.xRenderComponent.xOwnerObject = xIn; xCloud2.xAttackPhaseEnemy = new AttackPhase(xCloud2); xCloud2.xAttackPhaseEnemy.xStats = new AttackStats(); xCloud2.xAttackPhaseEnemy.xStats.iBreakingPower = -1; xCloud2.xAttackPhaseEnemy.xStats.iBaseDamage = 25; xCloud2.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.Enemies); xCloud2.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.DynamicEnvironment); SphereCollider col6 = new SphereCollider(12f, new Vector2(-7f, -6f), xCloud2.xTransform, 0f, xCloud2); col6.xAttackPhase = xCloud2.xAttackPhaseEnemy; col6.bIsLarge = false; col6.ibitLayers = 2147483647; xCloud2.xAttackPhaseEnemy.lxCurrentColliders.Add(col6); col6 = new SphereCollider(12f, new Vector2(-7f, 9f), xCloud2.xTransform, 0f, xCloud2); col6.xAttackPhase = xCloud2.xAttackPhaseEnemy; col6.bIsLarge = false; col6.ibitLayers = 2147483647; xCloud2.xAttackPhaseEnemy.lxCurrentColliders.Add(col6); xCloud2.xCollisionComponent.xMovementCollider = new SphereCollider(5f, Vector2.Zero, xCloud2.xTransform, 9f + (float)new Random().NextDouble(), xCloud2); xCloud2.xCollisionComponent.xMovementCollider.bIsLarge = false; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 1, RenderMaster.txNullTex, new Vector2(11f, 20f), 4, 9, 22, 25, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, false, false, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Wind_SummonCloud) { xIn = new _Spells_CloudInstance(); _Spells_CloudInstance xCloud3 = xIn as _Spells_CloudInstance; xCloud3.xRenderComponent = new AnimatedRenderComponent(xIn); xCloud3.xRenderComponent.xTransform = xIn.xTransform; xCloud3.enType = enType; xCloud3.xRenderComponent.xOwnerObject = xIn; xCloud3.bPersistent = true; xCloud3.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -25f); xCloud3.xAttackPhaseEnemy = new AttackPhase(xCloud3); xCloud3.xAttackPhaseEnemy.xStats = new AttackStats(); xCloud3.xAttackPhaseEnemy.xStats.iBreakingPower = -1; xCloud3.xAttackPhaseEnemy.xStats.iBaseDamage = 25; xCloud3.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.Enemies); xCloud3.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.DynamicEnvironment); xCloud3.xAttackPhaseEnemy.xStats.enAttackElement = AttackStats.Element.Wind; xCloud3.xAttackPhaseEnemy.xStats.enAttackType = AttackStats.Type.Magical; SphereCollider col7 = new SphereCollider(7f, new Vector2(0f, 0f), xCloud3.xTransform, 0f, xCloud3); col7.xAttackPhase = xCloud3.xAttackPhaseEnemy; col7.bIsLarge = false; col7.ibitLayers = 2147483647; xCloud3.xAttackPhaseEnemy.lxCurrentColliders.Add(col7); xCloud3.xShadowComponent = new StaticRenderComponent(Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Monster/Bosses/Papa Slime/Spawn/smallshadow"), xCloud3.xTransform); Program.GetTheGame().xRenderMaster.RegisterShadowLayer(xCloud3.xShadowComponent, 60); xCloud3.xShadowComponent.fAlpha = 0.5f; Dictionary<ushort, Animation> arg_291B_0 = xIn.xRenderComponent.dixAnimations; ushort arg_291B_1 = 0; ushort arg_2916_0 = 0; byte arg_2916_1 = 1; Texture2D arg_2916_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Spawn"); Vector2 arg_2916_3 = new Vector2(15f, 14f); int arg_2916_4 = 4; int arg_2916_5 = 7; int arg_2916_6 = 28; int arg_2916_7 = 18; int arg_2916_8 = 0; int arg_2916_9 = 0; int arg_2916_10 = 10; Animation.LoopSettings arg_2916_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2916_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2916_13 = false; bool arg_2916_14 = false; AnimationInstruction[] array = new AnimationInstruction[2]; AnimationInstruction[] arg_28E5_0 = array; int arg_28E5_1 = 0; AnimInsCriteria arg_28E0_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_28DB_0 = AnimInsEvent.EventType.PlaySound; string arg_28DB_1 = "Summon_cloud"; float[] array2 = new float[1]; arg_28E5_0[arg_28E5_1] = new AnimationInstruction(arg_28E0_0, new AnimInsEvent(arg_28DB_0, arg_28DB_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 4f })); arg_291B_0.Add(arg_291B_1, new Animation(arg_2916_0, arg_2916_1, arg_2916_2, arg_2916_3, arg_2916_4, arg_2916_5, arg_2916_6, arg_2916_7, arg_2916_8, arg_2916_9, arg_2916_10, arg_2916_11, arg_2916_12, arg_2916_13, arg_2916_14, array)); Dictionary<ushort, Animation> arg_29D9_0 = xIn.xRenderComponent.dixAnimations; ushort arg_29D9_1 = 1; ushort arg_29D4_0 = 1; byte arg_29D4_1 = 3; Texture2D arg_29D4_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Spawn"); Vector2 arg_29D4_3 = new Vector2(15f, 14f); int arg_29D4_4 = 4; int arg_29D4_5 = 7; int arg_29D4_6 = 28; int arg_29D4_7 = 18; int arg_29D4_8 = 0; int arg_29D4_9 = 0; int arg_29D4_10 = 10; Animation.LoopSettings arg_29D4_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_29D4_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_29D4_13 = false; bool arg_29D4_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_29A3_0 = array; int arg_29A3_1 = 0; AnimInsCriteria arg_299E_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_2999_0 = AnimInsEvent.EventType.PlaySound; string arg_2999_1 = "Summon_cloud"; array2 = new float[1]; arg_29A3_0[arg_29A3_1] = new AnimationInstruction(arg_299E_0, new AnimInsEvent(arg_2999_0, arg_2999_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 5f })); arg_29D9_0.Add(arg_29D9_1, new Animation(arg_29D4_0, arg_29D4_1, arg_29D4_2, arg_29D4_3, arg_29D4_4, arg_29D4_5, arg_29D4_6, arg_29D4_7, arg_29D4_8, arg_29D4_9, arg_29D4_10, arg_29D4_11, arg_29D4_12, arg_29D4_13, arg_29D4_14, array)); Dictionary<ushort, Animation> arg_2A8F_0 = xIn.xRenderComponent.dixAnimations; ushort arg_2A8F_1 = 2; ushort arg_2A8A_0 = 2; byte arg_2A8A_1 = 1; Texture2D arg_2A8A_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Despawn"); Vector2 arg_2A8A_3 = new Vector2(18f, 22f); int arg_2A8A_4 = 4; int arg_2A8A_5 = 5; int arg_2A8A_6 = 37; int arg_2A8A_7 = 25; int arg_2A8A_8 = 0; int arg_2A8A_9 = 0; int arg_2A8A_10 = 12; Animation.LoopSettings arg_2A8A_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2A8A_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2A8A_13 = false; bool arg_2A8A_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_2A4F_0 = array; int arg_2A4F_1 = 0; AnimInsCriteria arg_2A4A_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_2A45_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_2A4F_0[arg_2A4F_1] = new AnimationInstruction(arg_2A4A_0, new AnimInsEvent(arg_2A45_0, array2)); AnimationInstruction[] arg_2A87_0 = array; int arg_2A87_1 = 1; AnimInsCriteria arg_2A82_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_2A7D_0 = AnimInsEvent.EventType.PlaySound; string arg_2A7D_1 = "Enemy_Poof"; array2 = new float[1]; arg_2A87_0[arg_2A87_1] = new AnimationInstruction(arg_2A82_0, new AnimInsEvent(arg_2A7D_0, arg_2A7D_1, array2)); arg_2A8F_0.Add(arg_2A8F_1, new Animation(arg_2A8A_0, arg_2A8A_1, arg_2A8A_2, arg_2A8A_3, arg_2A8A_4, arg_2A8A_5, arg_2A8A_6, arg_2A8A_7, arg_2A8A_8, arg_2A8A_9, arg_2A8A_10, arg_2A8A_11, arg_2A8A_12, arg_2A8A_13, arg_2A8A_14, array)); Dictionary<ushort, Animation> arg_2B45_0 = xIn.xRenderComponent.dixAnimations; ushort arg_2B45_1 = 3; ushort arg_2B40_0 = 3; byte arg_2B40_1 = 3; Texture2D arg_2B40_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Despawn"); Vector2 arg_2B40_3 = new Vector2(18f, 22f); int arg_2B40_4 = 4; int arg_2B40_5 = 5; int arg_2B40_6 = 37; int arg_2B40_7 = 25; int arg_2B40_8 = 0; int arg_2B40_9 = 0; int arg_2B40_10 = 12; Animation.LoopSettings arg_2B40_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2B40_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2B40_13 = false; bool arg_2B40_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_2B05_0 = array; int arg_2B05_1 = 0; AnimInsCriteria arg_2B00_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_2AFB_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_2B05_0[arg_2B05_1] = new AnimationInstruction(arg_2B00_0, new AnimInsEvent(arg_2AFB_0, array2)); AnimationInstruction[] arg_2B3D_0 = array; int arg_2B3D_1 = 1; AnimInsCriteria arg_2B38_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_2B33_0 = AnimInsEvent.EventType.PlaySound; string arg_2B33_1 = "Enemy_Poof"; array2 = new float[1]; arg_2B3D_0[arg_2B3D_1] = new AnimationInstruction(arg_2B38_0, new AnimInsEvent(arg_2B33_0, arg_2B33_1, array2)); arg_2B45_0.Add(arg_2B45_1, new Animation(arg_2B40_0, arg_2B40_1, arg_2B40_2, arg_2B40_3, arg_2B40_4, arg_2B40_5, arg_2B40_6, arg_2B40_7, arg_2B40_8, arg_2B40_9, arg_2B40_10, arg_2B40_11, arg_2B40_12, arg_2B40_13, arg_2B40_14, array)); xIn.xRenderComponent.dixAnimations.Add(4, new Animation(4, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Idle"), new Vector2(15f, 14f), 4, 10, 28, 18, 0, 0, 12, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(5, new Animation(5, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Idle"), new Vector2(15f, 14f), 4, 10, 28, 18, 0, 0, 12, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(6, new Animation(6, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Attack"), new Vector2(17f, 14f), 5, 4, 32, 17, 0, 0, 12, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, false, false, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 1f }), new AnimInsEvent(AnimInsEvent.EventType.FreezeFrame, new float[] { 12f })), new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 4f })) })); xIn.xRenderComponent.dixAnimations.Add(7, new Animation(7, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 1-2/Attack"), new Vector2(17f, 14f), 5, 4, 32, 17, 0, 0, 12, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, false, false, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 1f }), new AnimInsEvent(AnimInsEvent.EventType.FreezeFrame, new float[] { 12f })), new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 5f })) })); xIn.xRenderComponent.dixAnimations[1].enSpriteEffect = SpriteEffects.FlipHorizontally; xIn.xRenderComponent.dixAnimations[3].enSpriteEffect = SpriteEffects.FlipHorizontally; xIn.xRenderComponent.dixAnimations[5].enSpriteEffect = SpriteEffects.FlipHorizontally; xIn.xRenderComponent.dixAnimations[7].enSpriteEffect = SpriteEffects.FlipHorizontally; Dictionary<ushort, Animation> arg_2E8F_0 = xIn.xRenderComponent.dixAnimations; ushort arg_2E8F_1 = 10; ushort arg_2E8A_0 = 10; byte arg_2E8A_1 = 1; Texture2D arg_2E8A_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Spawn"); Vector2 arg_2E8A_3 = new Vector2(18f, 20f); int arg_2E8A_4 = 4; int arg_2E8A_5 = 7; int arg_2E8A_6 = 35; int arg_2E8A_7 = 22; int arg_2E8A_8 = 0; int arg_2E8A_9 = 0; int arg_2E8A_10 = 10; Animation.LoopSettings arg_2E8A_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2E8A_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2E8A_13 = false; bool arg_2E8A_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_2E59_0 = array; int arg_2E59_1 = 0; AnimInsCriteria arg_2E54_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_2E4F_0 = AnimInsEvent.EventType.PlaySound; string arg_2E4F_1 = "Summon_cloud"; array2 = new float[1]; arg_2E59_0[arg_2E59_1] = new AnimationInstruction(arg_2E54_0, new AnimInsEvent(arg_2E4F_0, arg_2E4F_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 14f })); arg_2E8F_0.Add(arg_2E8F_1, new Animation(arg_2E8A_0, arg_2E8A_1, arg_2E8A_2, arg_2E8A_3, arg_2E8A_4, arg_2E8A_5, arg_2E8A_6, arg_2E8A_7, arg_2E8A_8, arg_2E8A_9, arg_2E8A_10, arg_2E8A_11, arg_2E8A_12, arg_2E8A_13, arg_2E8A_14, array)); Dictionary<ushort, Animation> arg_2F4F_0 = xIn.xRenderComponent.dixAnimations; ushort arg_2F4F_1 = 11; ushort arg_2F4A_0 = 11; byte arg_2F4A_1 = 3; Texture2D arg_2F4A_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Spawn"); Vector2 arg_2F4A_3 = new Vector2(18f, 20f); int arg_2F4A_4 = 4; int arg_2F4A_5 = 7; int arg_2F4A_6 = 35; int arg_2F4A_7 = 22; int arg_2F4A_8 = 0; int arg_2F4A_9 = 0; int arg_2F4A_10 = 10; Animation.LoopSettings arg_2F4A_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_2F4A_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_2F4A_13 = false; bool arg_2F4A_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_2F19_0 = array; int arg_2F19_1 = 0; AnimInsCriteria arg_2F14_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_2F0F_0 = AnimInsEvent.EventType.PlaySound; string arg_2F0F_1 = "Summon_cloud"; array2 = new float[1]; arg_2F19_0[arg_2F19_1] = new AnimationInstruction(arg_2F14_0, new AnimInsEvent(arg_2F0F_0, arg_2F0F_1, array2)); array[1] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 15f })); arg_2F4F_0.Add(arg_2F4F_1, new Animation(arg_2F4A_0, arg_2F4A_1, arg_2F4A_2, arg_2F4A_3, arg_2F4A_4, arg_2F4A_5, arg_2F4A_6, arg_2F4A_7, arg_2F4A_8, arg_2F4A_9, arg_2F4A_10, arg_2F4A_11, arg_2F4A_12, arg_2F4A_13, arg_2F4A_14, array)); Dictionary<ushort, Animation> arg_3007_0 = xIn.xRenderComponent.dixAnimations; ushort arg_3007_1 = 12; ushort arg_3002_0 = 12; byte arg_3002_1 = 1; Texture2D arg_3002_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Despawn"); Vector2 arg_3002_3 = new Vector2(20f, 20f); int arg_3002_4 = 4; int arg_3002_5 = 5; int arg_3002_6 = 43; int arg_3002_7 = 24; int arg_3002_8 = 0; int arg_3002_9 = 0; int arg_3002_10 = 12; Animation.LoopSettings arg_3002_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_3002_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_3002_13 = false; bool arg_3002_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_2FC7_0 = array; int arg_2FC7_1 = 0; AnimInsCriteria arg_2FC2_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_2FBD_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_2FC7_0[arg_2FC7_1] = new AnimationInstruction(arg_2FC2_0, new AnimInsEvent(arg_2FBD_0, array2)); AnimationInstruction[] arg_2FFF_0 = array; int arg_2FFF_1 = 1; AnimInsCriteria arg_2FFA_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_2FF5_0 = AnimInsEvent.EventType.PlaySound; string arg_2FF5_1 = "Enemy_Poof"; array2 = new float[1]; arg_2FFF_0[arg_2FFF_1] = new AnimationInstruction(arg_2FFA_0, new AnimInsEvent(arg_2FF5_0, arg_2FF5_1, array2)); arg_3007_0.Add(arg_3007_1, new Animation(arg_3002_0, arg_3002_1, arg_3002_2, arg_3002_3, arg_3002_4, arg_3002_5, arg_3002_6, arg_3002_7, arg_3002_8, arg_3002_9, arg_3002_10, arg_3002_11, arg_3002_12, arg_3002_13, arg_3002_14, array)); Dictionary<ushort, Animation> arg_30BF_0 = xIn.xRenderComponent.dixAnimations; ushort arg_30BF_1 = 13; ushort arg_30BA_0 = 13; byte arg_30BA_1 = 3; Texture2D arg_30BA_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Despawn"); Vector2 arg_30BA_3 = new Vector2(20f, 20f); int arg_30BA_4 = 4; int arg_30BA_5 = 5; int arg_30BA_6 = 43; int arg_30BA_7 = 24; int arg_30BA_8 = 0; int arg_30BA_9 = 0; int arg_30BA_10 = 12; Animation.LoopSettings arg_30BA_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_30BA_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_30BA_13 = false; bool arg_30BA_14 = false; array = new AnimationInstruction[2]; AnimationInstruction[] arg_307F_0 = array; int arg_307F_1 = 0; AnimInsCriteria arg_307A_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_3075_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_307F_0[arg_307F_1] = new AnimationInstruction(arg_307A_0, new AnimInsEvent(arg_3075_0, array2)); AnimationInstruction[] arg_30B7_0 = array; int arg_30B7_1 = 1; AnimInsCriteria arg_30B2_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 2f }); AnimInsEvent.EventType arg_30AD_0 = AnimInsEvent.EventType.PlaySound; string arg_30AD_1 = "Enemy_Poof"; array2 = new float[1]; arg_30B7_0[arg_30B7_1] = new AnimationInstruction(arg_30B2_0, new AnimInsEvent(arg_30AD_0, arg_30AD_1, array2)); arg_30BF_0.Add(arg_30BF_1, new Animation(arg_30BA_0, arg_30BA_1, arg_30BA_2, arg_30BA_3, arg_30BA_4, arg_30BA_5, arg_30BA_6, arg_30BA_7, arg_30BA_8, arg_30BA_9, arg_30BA_10, arg_30BA_11, arg_30BA_12, arg_30BA_13, arg_30BA_14, array)); xIn.xRenderComponent.dixAnimations.Add(14, new Animation(14, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Idle"), new Vector2(18f, 20f), 4, 10, 35, 22, 0, 0, 12, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(15, new Animation(15, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Idle"), new Vector2(18f, 20f), 4, 10, 35, 22, 0, 0, 12, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(16, new Animation(16, 1, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Attack"), new Vector2(21f, 20f), 5, 4, 39, 22, 0, 0, 12, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, false, false, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 1f }), new AnimInsEvent(AnimInsEvent.EventType.FreezeFrame, new float[] { 12f })), new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 14f })) })); xIn.xRenderComponent.dixAnimations.Add(17, new Animation(17, 3, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_SummonCloud, "Sprites/Spells/Cloud/Level 3/Attack"), new Vector2(21f, 20f), 5, 4, 39, 22, 0, 0, 12, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, false, false, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 1f }), new AnimInsEvent(AnimInsEvent.EventType.FreezeFrame, new float[] { 12f })), new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 15f })) })); xIn.xRenderComponent.dixAnimations[11].enSpriteEffect = SpriteEffects.FlipHorizontally; xIn.xRenderComponent.dixAnimations[13].enSpriteEffect = SpriteEffects.FlipHorizontally; xIn.xRenderComponent.dixAnimations[15].enSpriteEffect = SpriteEffects.FlipHorizontally; xIn.xRenderComponent.dixAnimations[17].enSpriteEffect = SpriteEffects.FlipHorizontally; } else if (enType == SpellCodex.SpellTypes._Magic_Wind_ChainLightning) { xIn = new _Spells_ChainLightningInstance(); _Spells_ChainLightningInstance xChainLightning = xIn as _Spells_ChainLightningInstance; xChainLightning.xRenderComponent = new AnimatedRenderComponent(xIn); xChainLightning.xRenderComponent.xTransform = xIn.xTransform; xChainLightning.xAttackPhaseEnemy = new AttackPhase(xChainLightning); xChainLightning.xAttackPhaseEnvironment = new AttackPhase(xChainLightning); xChainLightning.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xChainLightning.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); SphereCollider col8 = new SphereCollider(10f, new Vector2(0f, -11f), xChainLightning.xTransform, 0f, xChainLightning); col8.xAttackPhase = xChainLightning.xAttackPhaseEnemy; col8.bIsLarge = false; xChainLightning.xAttackPhaseEnemy.lxCurrentColliders.Add(col8); col8 = new SphereCollider(2f, new Vector2(0f, -3f), xChainLightning.xTransform, 0f, xChainLightning); col8.xAttackPhase = xChainLightning.xAttackPhaseEnvironment; col8.bCollideWithFlat = false; xChainLightning.xAttackPhaseEnvironment.lxCurrentColliders.Add(col8); xChainLightning.enType = enType; xChainLightning.xRenderComponent.xOwnerObject = xIn; xChainLightning.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -12f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Wind_WindSlice) { xIn = new _Spells_WindSliceInstance(); _Spells_WindSliceInstance xFireball5 = xIn as _Spells_WindSliceInstance; xFireball5.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball5.xRenderComponent.xTransform = xIn.xTransform; xFireball5.xAttackPhaseEnemy = new AttackPhase(xFireball5); xFireball5.xAttackPhaseEnvironment = new AttackPhase(xFireball5); xFireball5.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball5.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); SphereCollider col9 = new SphereCollider(12f, Vector2.Zero, xFireball5.xTransform, 0f, xFireball5); col9.xAttackPhase = xFireball5.xAttackPhaseEnemy; col9.bIsLarge = false; col9.bCollideWithFlat = false; xFireball5.xAttackPhaseEnemy.lxCurrentColliders.Add(col9); col9 = new SphereCollider(12f, Vector2.Zero, xFireball5.xTransform, 0f, xFireball5); col9.xAttackPhase = xFireball5.xAttackPhaseEnvironment; col9.bCollideWithFlat = false; xFireball5.xAttackPhaseEnvironment.lxCurrentColliders.Add(col9); xFireball5.enType = enType; xFireball5.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_WindSlice, "Sprites/Spells/Wind Slash/Level 1/Slash/Mid"), new Vector2(9f, 17f), 4, 2, 18, 35, 0, 0, 5, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations[0].enSpriteEffect = SpriteEffects.FlipHorizontally; Dictionary<ushort, Animation> arg_36FE_0 = xIn.xRenderComponent.dixAnimations; ushort arg_36FE_1 = 1; ushort arg_36F9_0 = 1; byte arg_36F9_1 = 0; Texture2D arg_36F9_2 = Program.GetTheGame().xSpellAssetLibrary.GetTexture2DByString(SpellCodex.SpellTypes._Magic_Wind_WindSlice, "Sprites/Spells/Wind Slash/Level 1/Slash/End"); Vector2 arg_36F9_3 = new Vector2(9f, 15f); int arg_36F9_4 = 4; int arg_36F9_5 = 5; int arg_36F9_6 = 28; int arg_36F9_7 = 29; int arg_36F9_8 = 0; int arg_36F9_9 = 0; int arg_36F9_10 = 5; Animation.LoopSettings arg_36F9_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_36F9_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_36F9_13 = true; bool arg_36F9_14 = true; AnimationInstruction[] array = new AnimationInstruction[1]; AnimationInstruction[] arg_36F6_0 = array; int arg_36F6_1 = 0; AnimInsCriteria arg_36F1_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]); AnimInsEvent.EventType arg_36EC_0 = AnimInsEvent.EventType.CallBackAnimation; float[] array2 = new float[1]; arg_36F6_0[arg_36F6_1] = new AnimationInstruction(arg_36F1_0, new AnimInsEvent(arg_36EC_0, array2)); arg_36FE_0.Add(arg_36FE_1, new Animation(arg_36F9_0, arg_36F9_1, arg_36F9_2, arg_36F9_3, arg_36F9_4, arg_36F9_5, arg_36F9_6, arg_36F9_7, arg_36F9_8, arg_36F9_9, arg_36F9_10, arg_36F9_11, arg_36F9_12, arg_36F9_13, arg_36F9_14, array)); xIn.xRenderComponent.dixAnimations[1].enSpriteEffect = SpriteEffects.FlipHorizontally; } else if (enType == SpellCodex.SpellTypes._Magic_Ice_IceSpikes) { xIn = new _Spells_IcespikeInstance(); _Spells_IcespikeInstance xFireball6 = xIn as _Spells_IcespikeInstance; xFireball6.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball6.xRenderComponent.xTransform = xIn.xTransform; xFireball6.xAttackPhaseEnemy = new AttackPhase(xFireball6); xFireball6.xAttackPhaseEnvironment = new AttackPhase(xFireball6); xFireball6.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball6.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); SphereCollider col10 = new SphereCollider(11f, new Vector2(0f, -7f), xFireball6.xTransform, 0f, xFireball6); col10.xAttackPhase = xFireball6.xAttackPhaseEnemy; col10.bIsLarge = false; xFireball6.xAttackPhaseEnemy.lxCurrentColliders.Add(col10); xFireball6.xAttackPhaseEnemy.RegisterCurrent(); col10 = new SphereCollider(2f, new Vector2(0f, -3f), xFireball6.xTransform, 0f, xFireball6); col10.xAttackPhase = xFireball6.xAttackPhaseEnvironment; col10.bCollideWithFlat = true; xFireball6.xAttackPhaseEnvironment.lxCurrentColliders.Add(col10); xFireball6.xAttackPhaseEnvironment.RegisterCurrent(); xFireball6.enType = enType; xFireball6.xRenderComponent.xOwnerObject = xIn; xFireball6.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -12f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(1, new Animation(1, 1, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(2, new Animation(2, 2, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(3, new Animation(3, 3, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Ice_IceNova) { xIn = new _Spells_IceNovaInstance(); _Spells_IceNovaInstance xNova = xIn as _Spells_IceNovaInstance; xNova.xRenderComponent = new AnimatedRenderComponent(xIn); xNova.xRenderComponent.xTransform = xIn.xTransform; xNova.xAttackPhaseEnemy = new AttackPhase(xNova); SphereCollider col11 = new SphereCollider(12f, new Vector2(0f, -4f), xNova.xTransform, 0f, xNova); col11.xAttackPhase = xNova.xAttackPhaseEnemy; col11.bIsLarge = false; xNova.xAttackPhaseEnemy.lxCurrentColliders.Add(col11); xNova.xAttackPhaseEnemy.RegisterCurrent(); xNova.enType = enType; xNova.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Ice_FrostyFriend) { xIn = new _Spells_FrostyFriendInstance(); _Spells_FrostyFriendInstance xCloud4 = xIn as _Spells_FrostyFriendInstance; xCloud4.xRenderComponent = new AnimatedRenderComponent(xIn); xCloud4.xRenderComponent.xTransform = xIn.xTransform; xCloud4.enType = enType; xCloud4.xRenderComponent.xOwnerObject = xIn; xCloud4.bPersistent = true; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 1, RenderMaster.txNullTex, new Vector2(15f, 14f), 4, 7, 28, 18, 0, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, false, false, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Magic_Light_Heal) { xIn = new _Spells_HealInstance(); _Spells_HealInstance xArrow = xIn as _Spells_HealInstance; xArrow.enType = enType; xArrow.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow.xRenderComponent.xTransform = xIn.xTransform; xArrow.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_Bow_ShootArrow) { xIn = new _Spells_ArrowInstance(); _Spells_ArrowInstance xArrow2 = xIn as _Spells_ArrowInstance; xArrow2.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow2.xRenderComponent.xTransform = xIn.xTransform; xArrow2.xAttackPhaseEnemy = new AttackPhase(xArrow2); xArrow2.xAttackPhaseEnvironment = new AttackPhase(xArrow2); xArrow2.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xArrow2.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); SphereCollider col12 = new SphereCollider(10f, new Vector2(0f, -3f), xArrow2.xTransform, 0f, xArrow2); col12.xAttackPhase = xArrow2.xAttackPhaseEnemy; col12.bIsLarge = false; xArrow2.xAttackPhaseEnemy.lxCurrentColliders.Add(col12); xArrow2.xAttackPhaseEnemy.RegisterCurrent(); col12 = new SphereCollider(2f, new Vector2(0f, -2f), xArrow2.xTransform, 0f, xArrow2); col12.xAttackPhase = xArrow2.xAttackPhaseEnvironment; col12.bCollideWithFlat = false; xArrow2.xAttackPhaseEnvironment.lxCurrentColliders.Add(col12); col12 = new SphereCollider(2f, new Vector2(0f, -2f), xArrow2.xTransform, 0f, xArrow2); col12.xAttackPhase = xArrow2.xAttackPhaseEnvironment; col12.bCollideWithFlat = false; xArrow2.xAttackPhaseEnvironment.lxCurrentColliders.Add(col12); xArrow2.xAttackPhaseEnvironment.RegisterCurrent(); xArrow2.enType = enType; xArrow2.xRenderComponent.xOwnerObject = xIn; xArrow2.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -12f); xArrow2.bAutoDestructInNetwork = false; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Up"), new Vector2(4f, 8f), 4, 1, 7, 16, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(1, new Animation(1, 1, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Right"), new Vector2(8f, 4f), 4, 1, 16, 7, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(2, new Animation(2, 2, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Down"), new Vector2(4f, 8f), 4, 1, 7, 16, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(3, new Animation(3, 3, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Left"), new Vector2(8f, 4f), 4, 1, 16, 7, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_Bow_SplittingArrow) { xIn = new _Skills_SplittingArrowInstance(); _Skills_SplittingArrowInstance xArrow3 = xIn as _Skills_SplittingArrowInstance; xArrow3.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow3.xRenderComponent.xTransform = xIn.xTransform; xArrow3.xAttackPhaseEnemy = new AttackPhase(xArrow3); xArrow3.xAttackPhaseEnvironment = new AttackPhase(xArrow3); xArrow3.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xArrow3.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); SphereCollider col13 = new SphereCollider(10f, new Vector2(0f, -6f), xArrow3.xTransform, 0f, xArrow3); col13.xAttackPhase = xArrow3.xAttackPhaseEnemy; col13.bIsLarge = false; xArrow3.xAttackPhaseEnemy.lxCurrentColliders.Add(col13); xArrow3.xAttackPhaseEnemy.RegisterCurrent(); col13 = new SphereCollider(2f, new Vector2(0f, -2f), xArrow3.xTransform, 0f, xArrow3); col13.xAttackPhase = xArrow3.xAttackPhaseEnvironment; col13.bCollideWithFlat = false; xArrow3.xAttackPhaseEnvironment.lxCurrentColliders.Add(col13); xArrow3.xAttackPhaseEnvironment.RegisterCurrent(); xArrow3.enType = enType; xArrow3.xRenderComponent.xOwnerObject = xIn; xArrow3.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -12f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Up"), new Vector2(4f, 8f), 4, 1, 7, 16, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(1, new Animation(1, 1, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Right"), new Vector2(8f, 4f), 4, 1, 16, 7, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(2, new Animation(2, 2, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Down"), new Vector2(4f, 8f), 4, 1, 7, 16, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.dixAnimations.Add(3, new Animation(3, 3, Content.Load<Texture2D>("Sprites/Spells/Arrows/Basic/Left"), new Vector2(8f, 4f), 4, 1, 16, 7, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_Bow_MachineBow) { xIn = new _Skills_MachineBowInstance(); _Skills_MachineBowInstance xArrow4 = xIn as _Skills_MachineBowInstance; xArrow4.enType = enType; xArrow4.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow4.xRenderComponent.xTransform = xIn.xTransform; xArrow4.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_OneHanded_Stinger) { xIn = new _Spells_StingerInstance(); _Spells_StingerInstance xArrow5 = xIn as _Spells_StingerInstance; xArrow5.enType = enType; xArrow5.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow5.xRenderComponent.xTransform = xIn.xTransform; xArrow5.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_OneHanded_QuickCounter) { xIn = new _Spells_ShortswingInstance(); _Spells_ShortswingInstance xArrow6 = xIn as _Spells_ShortswingInstance; xArrow6.bSendOwnerID = true; xArrow6.enType = enType; xArrow6.xAttackPhaseEnemy = new AttackPhase(xArrow6); xArrow6.xAttackPhaseEnemy.xStats.bKnockBackOwner = false; if (Program.GetTheGame().xNetworkInfo.enCurrentRole != NetworkHelperInterface.NetworkRole.Client) { BoxCollider col14 = new BoxCollider(24, 40, 0f, new Vector2(0f, 0f), xArrow6.xTransform, 0f, xArrow6); col14.xAttackPhase = xArrow6.xAttackPhaseEnemy; col14.bIsLarge = false; xArrow6.xAttackPhaseEnemy.lxCurrentColliders.Add(col14); } xArrow6.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow6.xRenderComponent.xTransform = xIn.xTransform; xArrow6.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_OneHanded_MillionStabs) { xIn = new _Skills_StabInstance(); _Skills_StabInstance xArrow7 = xIn as _Skills_StabInstance; xArrow7.enType = enType; xArrow7.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow7.xRenderComponent.xTransform = xIn.xTransform; xArrow7.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_OneHanded_ShadowClone) { xIn = new _Skills_ShadowCloneInstance(); _Skills_ShadowCloneInstance xArrow8 = xIn as _Skills_ShadowCloneInstance; xArrow8.enType = enType; xArrow8.bSendOwnerID = true; xArrow8.bPersistent = true; xArrow8.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow8.xRenderComponent.xTransform = xIn.xTransform; xArrow8.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_OneHanded_SpiritSlash) { xIn = new _Skills_SpiritSlashInstance(); _Skills_SpiritSlashInstance xArrow9 = xIn as _Skills_SpiritSlashInstance; xArrow9.enType = enType; xArrow9.bSendOwnerID = true; xArrow9.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow9.xRenderComponent.xTransform = xIn.xTransform; xArrow9.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_TwoHanded_Spin) { xIn = new _Spells_SpinInstance(); _Spells_SpinInstance xArrow10 = xIn as _Spells_SpinInstance; xArrow10.enType = enType; xArrow10.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow10.xRenderComponent.xTransform = xIn.xTransform; xArrow10.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_TwoHanded_Overhead) { xIn = new _Spells_OverheadInstance(); _Spells_OverheadInstance xArrow11 = xIn as _Spells_OverheadInstance; xArrow11.enType = enType; xArrow11.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow11.xRenderComponent.xTransform = xIn.xTransform; xArrow11.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_TwoHanded_Throw) { xIn = new _Spells_ThrowInstance(); _Spells_ThrowInstance xFireball7 = xIn as _Spells_ThrowInstance; xFireball7.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball7.xRenderComponent.xTransform = xIn.xTransform; xFireball7.bSendOwnerID = true; xFireball7.xAttackPhaseEnemy = new AttackPhase(xFireball7); xFireball7.xAttackPhaseEnvironment = new AttackPhase(xFireball7); xFireball7.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball7.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); if (Program.GetTheGame().xNetworkInfo.enCurrentRole != NetworkHelperInterface.NetworkRole.Client) { SphereCollider col15 = new SphereCollider(14f, new Vector2(0f, 0f), xFireball7.xTransform, 0f, xFireball7); col15.xAttackPhase = xFireball7.xAttackPhaseEnemy; col15.bIsLarge = false; xFireball7.xAttackPhaseEnemy.lxCurrentColliders.Add(col15); col15 = new SphereCollider(12f, new Vector2(0f, 0f), xFireball7.xTransform, 0f, xFireball7); col15.xAttackPhase = xFireball7.xAttackPhaseEnvironment; col15.bCollideWithFlat = false; xFireball7.xAttackPhaseEnvironment.lxCurrentColliders.Add(col15); } xFireball7.enType = enType; xFireball7.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(18f, 32f), 3, 7, 36, 41, 36, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_TwoHanded_Smash) { xIn = new _Spells_SmashInstance(); _Spells_SmashInstance xFireball8 = xIn as _Spells_SmashInstance; xFireball8.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball8.xRenderComponent.xTransform = xIn.xTransform; xFireball8.bSendOwnerID = true; xFireball8.xAttackPhaseEnemy = new AttackPhase(xFireball8); xFireball8.xAttackPhaseEnvironment = new AttackPhase(xFireball8); xFireball8.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball8.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); if (Program.GetTheGame().xNetworkInfo.enCurrentRole != NetworkHelperInterface.NetworkRole.Client) { SphereCollider col16 = new SphereCollider(20f, new Vector2(0f, 0f), xFireball8.xTransform, 0f, xFireball8); col16.xAttackPhase = xFireball8.xAttackPhaseEnemy; col16.bIsLarge = false; xFireball8.xAttackPhaseEnemy.lxCurrentColliders.Add(col16); col16 = new SphereCollider(20f, new Vector2(0f, 0f), xFireball8.xTransform, 0f, xFireball8); col16.xAttackPhase = xFireball8.xAttackPhaseEnemy; col16.bIsLarge = false; xFireball8.xAttackPhaseEnemy.lxCurrentColliders.Add(col16); col16 = new SphereCollider(1f, new Vector2(0f, 0f), xFireball8.xTransform, 0f, xFireball8); col16.xAttackPhase = xFireball8.xAttackPhaseEnvironment; col16.bCollideWithFlat = false; xFireball8.xAttackPhaseEnvironment.lxCurrentColliders.Add(col16); } xFireball8.enType = enType; xFireball8.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(18f, 32f), 3, 7, 36, 41, 36, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_TwoHanded_Smash_TravelInstance) { xIn = new _Spells_SmashTravelInstance(); _Spells_SmashTravelInstance xFireball9 = xIn as _Spells_SmashTravelInstance; xFireball9.xRenderComponent = new AnimatedRenderComponent(xIn); xFireball9.xRenderComponent.xTransform = xIn.xTransform; xFireball9.bSendOwnerID = true; xFireball9.xAttackPhaseEnemy = new AttackPhase(xFireball9); xFireball9.xAttackPhaseEnvironment = new AttackPhase(xFireball9); xFireball9.xAttackPhaseEnvironment.xStats.bKnockBackOwner = (xFireball9.xAttackPhaseEnemy.xStats.bKnockBackOwner = false); xFireball9.colMoveCollider = new SphereCollider(18f, new Vector2(0f, 0f), xFireball9.xTransform, 10f, xFireball9); xFireball9.colMoveCollider.bIsLarge = false; if (Program.GetTheGame().xNetworkInfo.enCurrentRole != NetworkHelperInterface.NetworkRole.Client) { SphereCollider col17 = new SphereCollider(14f, new Vector2(0f, 0f), xFireball9.xTransform, 0f, xFireball9); col17.xAttackPhase = xFireball9.xAttackPhaseEnemy; col17.bIsLarge = false; xFireball9.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.Enemies); xFireball9.xAttackPhaseEnemy.lenLayers.Add(Collider.ColliderLayers.DynamicEnvironment); xFireball9.xAttackPhaseEnemy.lxCurrentColliders.Add(col17); col17 = new SphereCollider(12f, new Vector2(0f, 0f), xFireball9.xTransform, 0f, xFireball9); col17.xAttackPhase = xFireball9.xAttackPhaseEnvironment; col17.bCollideWithFlat = false; xFireball9.xAttackPhaseEnvironment.lxCurrentColliders.Add(col17); } xFireball9.enType = enType; xFireball9.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(18f, 32f), 3, 7, 36, 41, 36, 0, 10, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Skill_TwoHanded_BerserkMode) { xIn = new _Skills_BerserkInstance(); _Skills_BerserkInstance xArrow12 = xIn as _Skills_BerserkInstance; xArrow12.enType = enType; xArrow12.bSendOwnerID = true; xArrow12.bPersistent = true; xArrow12.xRenderComponent = new AnimatedRenderComponent(xIn); xArrow12.xRenderComponent.xTransform = xIn.xTransform; xArrow12.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 1, 1, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._Ridiculon_ButterflySwarm) { xIn = new _Ridiculon_ButterflySwarmInstance(); _Ridiculon_ButterflySwarmInstance xProjectile = xIn as _Ridiculon_ButterflySwarmInstance; xProjectile.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile.xRenderComponent.xTransform = xIn.xTransform; xProjectile.enType = enType; xProjectile.xRenderComponent.xOwnerObject = xIn; xProjectile.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -6f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 4, 5, 18, 25, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); } else if (enType == SpellCodex.SpellTypes._EnemySkill_JackLantern_Flame) { xIn = new _EnemySpells_JackLanternProjectile(); _EnemySpells_JackLanternProjectile xProjectile2 = xIn as _EnemySpells_JackLanternProjectile; xProjectile2.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile2.xRenderComponent.xTransform = xIn.xTransform; xProjectile2.xAttackPhasePlayer = new AttackPhase(xProjectile2); xProjectile2.xAttackPhaseEnvironment = new AttackPhase(xProjectile2); SphereCollider col18 = new SphereCollider(6f, new Vector2(0f, -2f), xProjectile2.xTransform, 0f, xProjectile2); col18.xAttackPhase = xProjectile2.xAttackPhasePlayer; col18.bIsLarge = false; xProjectile2.xAttackPhasePlayer.lxCurrentColliders.Add(col18); xProjectile2.xAttackPhasePlayer.RegisterCurrent(); xProjectile2.xAttackPhasePlayer.xStats.bIsProjectile = true; col18 = new SphereCollider(2f, new Vector2(0f, -3f), xProjectile2.xTransform, 0f, xProjectile2); col18.xAttackPhase = xProjectile2.xAttackPhaseEnvironment; col18.bCollideWithFlat = false; xProjectile2.xAttackPhaseEnvironment.lxCurrentColliders.Add(col18); xProjectile2.enType = enType; xProjectile2.xRenderComponent.xOwnerObject = xIn; xProjectile2.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -6f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Halloween Forest/Jack o Lantern/Projectile/Projectile"), new Vector2(3f, 10f), 4, 5, 7, 13, 0, 0, 5, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); DynamicLight xLight2 = new DynamicLight(); xLight2.xRenderComponent.xTransform = xIn.xTransform; xLight2.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xRenderMaster.dstxLightSources["OmniLightRad100"], new Vector2(100f, 100f), 4, 1, 200, 200, 0, 0, 1, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xLight2.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xLight2.SetScale(0.15f); xLight2.xMountObject = xIn; xLight2.enDestructionType = DynamicLight.DestructionType.Flash; xLight2.fFlicker = 0.3f; xLight2.iFlickerInterval = 15; Program.GetTheGame()._DynamicLight_CreateDynamicLight(xLight2); } else if (enType == SpellCodex.SpellTypes._EnemySkill_Halloweed_Root) { xIn = new _EnemySpells_HalloweedRoot(); _EnemySpells_HalloweedRoot xProjectile3 = xIn as _EnemySpells_HalloweedRoot; xProjectile3.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile3.xRenderComponent.xTransform = xIn.xTransform; xProjectile3.xAttackPhasePlayer = new AttackPhase(xProjectile3); xProjectile3.xAttackPhaseEnvironment = new AttackPhase(xProjectile3); SphereCollider col19 = new SphereCollider(3f, new Vector2(0f, -2f), xProjectile3.xTransform, 0f, xProjectile3); col19.xAttackPhase = xProjectile3.xAttackPhasePlayer; col19.bIsLarge = false; xProjectile3.xAttackPhasePlayer.lxCurrentColliders.Add(col19); xProjectile3.xAttackPhasePlayer.RegisterCurrent(); xProjectile3.xAttackPhasePlayer.xStats.bNonDamaging = true; col19 = new SphereCollider(2f, new Vector2(0f, -3f), xProjectile3.xTransform, 0f, xProjectile3); col19.xAttackPhase = xProjectile3.xAttackPhaseEnvironment; col19.bCollideWithFlat = false; xProjectile3.xAttackPhaseEnvironment.lxCurrentColliders.Add(col19); xProjectile3.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile3.enType = enType; xProjectile3.xRenderComponent.xOwnerObject = xIn; xProjectile3.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -6f); xIn.xRenderComponent.dixAnimations[0] = new Animation(0, 0, RenderMaster.txNullTex, new Vector2(11f, 6f), 4, 1, 21, 12, 0, 0, 13, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0]); Dictionary<ushort, Animation> arg_512E_0 = xIn.xRenderComponent.dixAnimations; ushort arg_512E_1 = 1; ushort arg_5129_0 = 1; byte arg_5129_1 = 0; Texture2D arg_5129_2 = Content.Load<Texture2D>("Sprites/Monster/Halloween Forest/Halloweed/RootEffect/Start"); Vector2 arg_5129_3 = new Vector2(21f, 26f); int arg_5129_4 = 4; int arg_5129_5 = 7; int arg_5129_6 = 41; int arg_5129_7 = 41; int arg_5129_8 = 0; int arg_5129_9 = 0; int arg_5129_10 = 13; Animation.LoopSettings arg_5129_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_5129_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_5129_13 = true; bool arg_5129_14 = true; AnimationInstruction[] array = new AnimationInstruction[1]; AnimationInstruction[] arg_5126_0 = array; int arg_5126_1 = 0; AnimInsCriteria arg_5121_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[0]); AnimInsEvent.EventType arg_511C_0 = AnimInsEvent.EventType.PlaySound; string arg_511C_1 = "Halloweed_SnareHit"; float[] array2 = new float[1]; arg_5126_0[arg_5126_1] = new AnimationInstruction(arg_5121_0, new AnimInsEvent(arg_511C_0, arg_511C_1, array2)); arg_512E_0[arg_512E_1] = new Animation(arg_5129_0, arg_5129_1, arg_5129_2, arg_5129_3, arg_5129_4, arg_5129_5, arg_5129_6, arg_5129_7, arg_5129_8, arg_5129_9, arg_5129_10, arg_5129_11, arg_5129_12, arg_5129_13, arg_5129_14, array); Dictionary<ushort, Animation> arg_528E_0 = xIn.xRenderComponent.dixAnimations; ushort arg_528E_1 = 2; ushort arg_5289_0 = 2; byte arg_5289_1 = 0; Texture2D arg_5289_2 = Content.Load<Texture2D>("Sprites/Monster/Halloween Forest/Halloweed/RootEffect/End"); Vector2 arg_5289_3 = new Vector2(21f, 26f); int arg_5289_4 = 4; int arg_5289_5 = 6; int arg_5289_6 = 41; int arg_5289_7 = 41; int arg_5289_8 = 0; int arg_5289_9 = 0; int arg_5289_10 = 13; Animation.LoopSettings arg_5289_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_5289_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_5289_13 = true; bool arg_5289_14 = true; array = new AnimationInstruction[5]; AnimationInstruction[] arg_51A3_0 = array; int arg_51A3_1 = 0; AnimInsCriteria arg_519E_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }); AnimInsEvent.EventType arg_5199_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_51A3_0[arg_51A3_1] = new AnimationInstruction(arg_519E_0, new AnimInsEvent(arg_5199_0, array2)); AnimationInstruction[] arg_51DF_0 = array; int arg_51DF_1 = 1; AnimInsCriteria arg_51DA_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }); AnimInsEvent.EventType arg_51D5_0 = AnimInsEvent.EventType.FreezeFrame; array2 = new float[2]; array2[0] = 20f; arg_51DF_0[arg_51DF_1] = new AnimationInstruction(arg_51DA_0, new AnimInsEvent(arg_51D5_0, array2)); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.025f })); AnimationInstruction[] arg_5257_0 = array; int arg_5257_1 = 3; AnimInsCriteria arg_5252_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }); AnimInsEvent.EventType arg_524D_0 = AnimInsEvent.EventType.FreezeFrame; array2 = new float[2]; array2[0] = 40f; arg_5257_0[arg_5257_1] = new AnimationInstruction(arg_5252_0, new AnimInsEvent(arg_524D_0, array2)); array[4] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); arg_528E_0[arg_528E_1] = new Animation(arg_5289_0, arg_5289_1, arg_5289_2, arg_5289_3, arg_5289_4, arg_5289_5, arg_5289_6, arg_5289_7, arg_5289_8, arg_5289_9, arg_5289_10, arg_5289_11, arg_5289_12, arg_5289_13, arg_5289_14, array); } else if (enType == SpellCodex.SpellTypes._EnemySkill_SummerElder_Root) { xIn = new _EnemySpells_SummerElderRoot(); _EnemySpells_SummerElderRoot xProjectile4 = xIn as _EnemySpells_SummerElderRoot; xProjectile4.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile4.xRenderComponent.xTransform = xIn.xTransform; xProjectile4.xAttackPhasePlayer = new AttackPhase(xProjectile4); xProjectile4.xAttackPhaseEnvironment = new AttackPhase(xProjectile4); SphereCollider col20 = new SphereCollider(3f, new Vector2(0f, -2f), xProjectile4.xTransform, 0f, xProjectile4); col20.xAttackPhase = xProjectile4.xAttackPhasePlayer; col20.bIsLarge = false; xProjectile4.xAttackPhasePlayer.lxCurrentColliders.Add(col20); xProjectile4.xAttackPhasePlayer.RegisterCurrent(); xProjectile4.xAttackPhasePlayer.xStats.bNonDamaging = true; col20 = new SphereCollider(2f, new Vector2(0f, -3f), xProjectile4.xTransform, 0f, xProjectile4); col20.xAttackPhase = xProjectile4.xAttackPhaseEnvironment; col20.bCollideWithFlat = false; xProjectile4.xAttackPhaseEnvironment.lxCurrentColliders.Add(col20); xProjectile4.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile4.enType = enType; xProjectile4.xRenderComponent.xOwnerObject = xIn; xProjectile4.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -6f); xIn.xRenderComponent.dixAnimations[0] = new Animation(0, 0, RenderMaster.txNullTex, new Vector2(11f, 6f), 4, 1, 21, 12, 0, 0, 13, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0]); Dictionary<ushort, Animation> arg_549A_0 = xIn.xRenderComponent.dixAnimations; ushort arg_549A_1 = 1; ushort arg_5495_0 = 1; byte arg_5495_1 = 0; Texture2D arg_5495_2 = Content.Load<Texture2D>("Sprites/Monster/Halloween Forest/Halloweed/RootEffect/Start"); Vector2 arg_5495_3 = new Vector2(21f, 26f); int arg_5495_4 = 4; int arg_5495_5 = 7; int arg_5495_6 = 41; int arg_5495_7 = 41; int arg_5495_8 = 0; int arg_5495_9 = 0; int arg_5495_10 = 13; Animation.LoopSettings arg_5495_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_5495_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_5495_13 = true; bool arg_5495_14 = true; AnimationInstruction[] array = new AnimationInstruction[1]; AnimationInstruction[] arg_5492_0 = array; int arg_5492_1 = 0; AnimInsCriteria arg_548D_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtStart, new float[0]); AnimInsEvent.EventType arg_5488_0 = AnimInsEvent.EventType.PlaySound; string arg_5488_1 = "Halloweed_SnareHit"; float[] array2 = new float[1]; arg_5492_0[arg_5492_1] = new AnimationInstruction(arg_548D_0, new AnimInsEvent(arg_5488_0, arg_5488_1, array2)); arg_549A_0[arg_549A_1] = new Animation(arg_5495_0, arg_5495_1, arg_5495_2, arg_5495_3, arg_5495_4, arg_5495_5, arg_5495_6, arg_5495_7, arg_5495_8, arg_5495_9, arg_5495_10, arg_5495_11, arg_5495_12, arg_5495_13, arg_5495_14, array); Dictionary<ushort, Animation> arg_55FA_0 = xIn.xRenderComponent.dixAnimations; ushort arg_55FA_1 = 2; ushort arg_55F5_0 = 2; byte arg_55F5_1 = 0; Texture2D arg_55F5_2 = Content.Load<Texture2D>("Sprites/Monster/Halloween Forest/Halloweed/RootEffect/End"); Vector2 arg_55F5_3 = new Vector2(21f, 26f); int arg_55F5_4 = 4; int arg_55F5_5 = 6; int arg_55F5_6 = 41; int arg_55F5_7 = 41; int arg_55F5_8 = 0; int arg_55F5_9 = 0; int arg_55F5_10 = 13; Animation.LoopSettings arg_55F5_11 = Animation.LoopSettings.Clamp; Animation.CancelOptions arg_55F5_12 = Animation.CancelOptions.IgnoreIfPlaying; bool arg_55F5_13 = true; bool arg_55F5_14 = true; array = new AnimationInstruction[5]; AnimationInstruction[] arg_550F_0 = array; int arg_550F_1 = 0; AnimInsCriteria arg_550A_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 4f }); AnimInsEvent.EventType arg_5505_0 = AnimInsEvent.EventType.CallBackAnimation; array2 = new float[1]; arg_550F_0[arg_550F_1] = new AnimationInstruction(arg_550A_0, new AnimInsEvent(arg_5505_0, array2)); AnimationInstruction[] arg_554B_0 = array; int arg_554B_1 = 1; AnimInsCriteria arg_5546_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }); AnimInsEvent.EventType arg_5541_0 = AnimInsEvent.EventType.FreezeFrame; array2 = new float[2]; array2[0] = 20f; arg_554B_0[arg_554B_1] = new AnimationInstruction(arg_5546_0, new AnimInsEvent(arg_5541_0, array2)); array[2] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }), new AnimInsEvent(AnimInsEvent.EventType.AdjustAlpha, new float[] { -0.025f })); AnimationInstruction[] arg_55C3_0 = array; int arg_55C3_1 = 3; AnimInsCriteria arg_55BE_0 = new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtFrameX, new float[] { 6f }); AnimInsEvent.EventType arg_55B9_0 = AnimInsEvent.EventType.FreezeFrame; array2 = new float[2]; array2[0] = 40f; arg_55C3_0[arg_55C3_1] = new AnimationInstruction(arg_55BE_0, new AnimInsEvent(arg_55B9_0, array2)); array[4] = new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.CallBackAnimation, new float[] { 1f })); arg_55FA_0[arg_55FA_1] = new Animation(arg_55F5_0, arg_55F5_1, arg_55F5_2, arg_55F5_3, arg_55F5_4, arg_55F5_5, arg_55F5_6, arg_55F5_7, arg_55F5_8, arg_55F5_9, arg_55F5_10, arg_55F5_11, arg_55F5_12, arg_55F5_13, arg_55F5_14, array); } else if (enType == SpellCodex.SpellTypes._EnemySkill_BallSpark_HomingSpark) { xIn = new _EnemySpells_BallSparkSpark(); _EnemySpells_BallSparkSpark xProjectile5 = xIn as _EnemySpells_BallSparkSpark; xProjectile5.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile5.xRenderComponent.xTransform = xIn.xTransform; xProjectile5.xAttackPhasePlayer = new AttackPhase(xProjectile5); xProjectile5.xAttackPhaseEnvironment = new AttackPhase(xProjectile5); SphereCollider col21 = new SphereCollider(3f, new Vector2(0f, -3f), xProjectile5.xTransform, 0f, xProjectile5); col21.xAttackPhase = xProjectile5.xAttackPhasePlayer; col21.bIsLarge = false; xProjectile5.xAttackPhasePlayer.lxCurrentColliders.Add(col21); xProjectile5.xAttackPhasePlayer.RegisterCurrent(); xProjectile5.xAttackPhasePlayer.xStats.bIsProjectile = true; col21 = new SphereCollider(2f, new Vector2(0f, -4f), xProjectile5.xTransform, 0f, xProjectile5); col21.xAttackPhase = xProjectile5.xAttackPhaseEnvironment; col21.bCollideWithFlat = false; xProjectile5.xAttackPhaseEnvironment.lxCurrentColliders.Add(col21); xProjectile5.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile5.enType = enType; xProjectile5.xRenderComponent.xOwnerObject = xIn; xProjectile5.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Temple/Sphere/Projectile/Idle"), new Vector2(10f, 10f), 3, 6, 20, 20, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 16f; DynamicLight xLight3 = new DynamicLight(); xLight3.xRenderComponent.xTransform = xIn.xTransform; xLight3.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xRenderMaster.dstxLightSources["OmniLightRad100"], new Vector2(100f, 100f), 4, 1, 200, 200, 0, 0, 1, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xLight3.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xLight3.SetScale(0.15f); xLight3.xMountObject = xIn; xLight3.enDestructionType = DynamicLight.DestructionType.Flash; xLight3.fFlicker = 0.3f; xLight3.iFlickerInterval = 15; Program.GetTheGame()._DynamicLight_CreateDynamicLight(xLight3); } else if (enType == SpellCodex.SpellTypes._EnemySkill_Tornado) { xIn = new _EnemySpells_Tornado(); _EnemySpells_Tornado xProjectile6 = xIn as _EnemySpells_Tornado; xProjectile6.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile6.xRenderComponent.xTransform = xIn.xTransform; xProjectile6.xAttackPhasePlayer = new AttackPhase(xProjectile6); xProjectile6.xAttackPhaseEnvironment = new AttackPhase(xProjectile6); SphereCollider col22 = new SphereCollider(10f, new Vector2(0f, -3f), xProjectile6.xTransform, 0f, xProjectile6); col22.xAttackPhase = xProjectile6.xAttackPhasePlayer; col22.bIsLarge = false; xProjectile6.xAttackPhasePlayer.lxCurrentColliders.Add(col22); xProjectile6.xAttackPhasePlayer.xStats.bIsProjectile = false; xProjectile6.xAttackPhasePlayer.RegisterCurrent(); xProjectile6.xAttackPhasePlayer.xStats.bNonDamaging = true; col22 = new SphereCollider(8f, new Vector2(0f, -4f), xProjectile6.xTransform, 0f, xProjectile6); col22.xAttackPhase = xProjectile6.xAttackPhaseEnvironment; col22.bCollideWithFlat = false; xProjectile6.xAttackPhaseEnvironment.lxCurrentColliders.Add(col22); xProjectile6.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile6.xAttackPhaseEnvironment.lenLayers.Add(Collider.ColliderLayers.StaticEnvironment); xProjectile6.enType = enType; xProjectile6.xRenderComponent.xOwnerObject = xIn; xProjectile6.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Season Change/Fall Wizard/Spellcast/Tornado"), new Vector2(23f, 57f), 4, 3, 46, 58, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fAlpha = 0.8f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_Pumpking_CrowSwarm) { xIn = new _EnemySpells_CrowSwarm(); _EnemySpells_CrowSwarm xProjectile7 = xIn as _EnemySpells_CrowSwarm; xProjectile7.bSendNetworkUpdates = false; xProjectile7.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile7.xRenderComponent.xTransform = xIn.xTransform; xProjectile7.xAttackPhasePlayer = new AttackPhase(xProjectile7); xProjectile7.xAttackPhaseEnvironment = new AttackPhase(xProjectile7); SphereCollider col23 = new SphereCollider(3f, new Vector2(0f, -15f), new TransformComponent(xProjectile7.xTransform.v2Pos), 0f, xProjectile7); col23.xAttackPhase = xProjectile7.xAttackPhasePlayer; col23.bIsLarge = false; xProjectile7.xAttackPhasePlayer.lxCurrentColliders.Add(col23); xProjectile7.xAttackPhasePlayer.xStats.bIsProjectile = true; col23 = new SphereCollider(2f, new Vector2(0f, -4f), xProjectile7.xTransform, 0f, xProjectile7); col23.xAttackPhase = xProjectile7.xAttackPhaseEnvironment; col23.bCollideWithFlat = false; xProjectile7.xAttackPhaseEnvironment.lxCurrentColliders.Add(col23); xProjectile7.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile7.enType = enType; xProjectile7.xRenderComponent.xOwnerObject = xIn; xProjectile7.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Temple/Sphere/Projectile/Idle"), new Vector2(10f, 10f), 3, 6, 20, 20, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 16f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_PGTest_GuardableProjectile) { xIn = new _EnemySpells_PGTestGuardableProjectile(); _EnemySpells_PGTestGuardableProjectile xProjectile8 = xIn as _EnemySpells_PGTestGuardableProjectile; xProjectile8.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile8.xRenderComponent.xTransform = xIn.xTransform; xProjectile8.xAttackPhasePlayer = new AttackPhase(xProjectile8); BoxCollider col24 = new BoxCollider(12, 36, 0f, new Vector2(0f, -3f), xProjectile8.xTransform, 0f, xProjectile8); col24.xAttackPhase = xProjectile8.xAttackPhasePlayer; col24.bIsLarge = false; xProjectile8.xAttackPhasePlayer.lxCurrentColliders.Add(col24); xProjectile8.xAttackPhasePlayer.RegisterCurrent(); xProjectile8.enType = enType; xProjectile8.xRenderComponent.xOwnerObject = xIn; xProjectile8.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -3f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Green"), new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 16f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_PGTest_RoguelikeGuardableProjectile) { xIn = new _EnemySpells_PGTestGuardableProjectileRoguelike(); _EnemySpells_PGTestGuardableProjectileRoguelike xProjectile9 = xIn as _EnemySpells_PGTestGuardableProjectileRoguelike; xProjectile9.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile9.xRenderComponent.xTransform = xIn.xTransform; xProjectile9.xAttackPhasePlayer = new AttackPhase(xProjectile9); BoxCollider col25 = new BoxCollider(12, 36, 0f, new Vector2(0f, -3f), xProjectile9.xTransform, 0f, xProjectile9); col25.xAttackPhase = xProjectile9.xAttackPhasePlayer; col25.bIsLarge = false; xProjectile9.xAttackPhasePlayer.lxCurrentColliders.Add(col25); xProjectile9.xAttackPhasePlayer.RegisterCurrent(); xProjectile9.enType = enType; xProjectile9.xRenderComponent.xOwnerObject = xIn; xProjectile9.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -3f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Green"), new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 16f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_BulletHellKnockbackBullet) { xIn = new _EnemySpells_GenericStraightBullet(); _EnemySpells_GenericStraightBullet xProjectile10 = xIn as _EnemySpells_GenericStraightBullet; xProjectile10.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile10.xRenderComponent.xTransform = xIn.xTransform; xProjectile10.xAttackPhasePlayer = new AttackPhase(xProjectile10); xProjectile10.xAttackPhaseEnvironment = new AttackPhase(xProjectile10); SphereCollider col26 = new SphereCollider(3f, new Vector2(0f, -3f), xProjectile10.xTransform, 0f, xProjectile10); col26.xAttackPhase = xProjectile10.xAttackPhasePlayer; col26.bIsLarge = false; xProjectile10.xAttackPhasePlayer.lxCurrentColliders.Add(col26); xProjectile10.xAttackPhasePlayer.RegisterCurrent(); col26 = new SphereCollider(1f, new Vector2(0f, -3f), xProjectile10.xTransform, 0f, xProjectile10); col26.xAttackPhase = xProjectile10.xAttackPhaseEnvironment; col26.bCollideWithFlat = false; col26.bIsActive = false; xProjectile10.xAttackPhaseEnvironment.lxCurrentColliders.Add(col26); xProjectile10.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile10.enType = enType; xProjectile10.xRenderComponent.xOwnerObject = xIn; xProjectile10.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Red"), new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 16f; DynamicLight xLight4 = new DynamicLight(); xLight4.xRenderComponent.xTransform = xIn.xTransform; xLight4.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xRenderMaster.dstxLightSources["OmniLightRad100"], new Vector2(100f, 100f), 4, 1, 200, 200, 0, 0, 1, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xLight4.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xLight4.SetScale(0.15f); xLight4.xMountObject = xIn; xLight4.enDestructionType = DynamicLight.DestructionType.Flash; xLight4.fFlicker = 0.3f; xLight4.iFlickerInterval = 15; Program.GetTheGame()._DynamicLight_CreateDynamicLight(xLight4); } else if (enType == SpellCodex.SpellTypes._EnemySkill_PhasemanRedBullet) { xIn = new _EnemySpells_GenericStraightBullet(); _EnemySpells_GenericStraightBullet xProjectile11 = xIn as _EnemySpells_GenericStraightBullet; xProjectile11.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile11.xRenderComponent.xTransform = xIn.xTransform; xProjectile11.xAttackPhasePlayer = new AttackPhase(xProjectile11); xProjectile11.xAttackPhaseEnvironment = new AttackPhase(xProjectile11); SphereCollider col27 = new SphereCollider(3f, new Vector2(0f, 0f), xProjectile11.xTransform, 0f, xProjectile11); col27.xAttackPhase = xProjectile11.xAttackPhasePlayer; col27.bIsLarge = false; xProjectile11.xAttackPhasePlayer.lxCurrentColliders.Add(col27); xProjectile11.xAttackPhasePlayer.RegisterCurrent(); xProjectile11.xAttackPhasePlayer.xStats.bIsProjectile = true; col27 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile11.xTransform, 0f, xProjectile11); col27.xAttackPhase = xProjectile11.xAttackPhaseEnvironment; col27.bCollideWithFlat = false; xProjectile11.xAttackPhaseEnvironment.lxCurrentColliders.Add(col27); xProjectile11.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile11.enType = enType; xProjectile11.xRenderComponent.xOwnerObject = xIn; xProjectile11.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Red"), new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_PhasemanSpecial) { xIn = new _EnemySpells_PhasemanSpecialProjectile(); _EnemySpells_PhasemanSpecialProjectile xProjectile12 = xIn as _EnemySpells_PhasemanSpecialProjectile; xProjectile12.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile12.xRenderComponent.xTransform = xIn.xTransform; xProjectile12.xAttackPhasePlayer = new AttackPhase(xProjectile12); SphereCollider col28 = new SphereCollider(3f, new Vector2(0f, -3f), xProjectile12.xTransform, 0f, xProjectile12); col28.xAttackPhase = xProjectile12.xAttackPhasePlayer; col28.bIsLarge = false; xProjectile12.xAttackPhasePlayer.lxCurrentColliders.Add(col28); xProjectile12.xAttackPhasePlayer.RegisterCurrent(); xProjectile12.xAttackPhasePlayer.xStats.bIsProjectile = true; xProjectile12.enType = enType; xProjectile12.xRenderComponent.xOwnerObject = xIn; xProjectile12.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Green"), new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; DynamicLight xLight5 = new DynamicLight(); xLight5.xRenderComponent.xTransform = xIn.xTransform; xLight5.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xRenderMaster.dstxLightSources["OmniLightRad100"], new Vector2(100f, 100f), 4, 1, 200, 200, 0, 0, 1, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xLight5.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xLight5.SetScale(0.15f); xLight5.xMountObject = xIn; xLight5.enDestructionType = DynamicLight.DestructionType.Flash; xLight5.fFlicker = 0.3f; xLight5.iFlickerInterval = 15; Program.GetTheGame()._DynamicLight_CreateDynamicLight(xLight5); } else if (enType == SpellCodex.SpellTypes._EnemySkill_PhasemanMegaBullet) { xIn = new _EnemySpells_PhasemanMegabullet(); _EnemySpells_PhasemanMegabullet xProjectile13 = xIn as _EnemySpells_PhasemanMegabullet; xProjectile13.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile13.xRenderComponent.xTransform = xIn.xTransform; xProjectile13.xAttackPhasePlayer = new AttackPhase(xProjectile13); SphereCollider col29 = new SphereCollider(3f, new Vector2(0f, 0f), xProjectile13.xTransform, 0f, xProjectile13); col29.xAttackPhase = xProjectile13.xAttackPhasePlayer; col29.bIsLarge = false; xProjectile13.xAttackPhasePlayer.lxCurrentColliders.Add(col29); xProjectile13.xAttackPhasePlayer.RegisterCurrent(); xProjectile13.xAttackPhasePlayer.xStats.bIsProjectile = true; col29 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile13.xTransform, 0f, xProjectile13); col29.bCollideWithFlat = false; xProjectile13.enType = enType; xProjectile13.xRenderComponent.xOwnerObject = xIn; xProjectile13.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Purple"), new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; DynamicLight xLight6 = new DynamicLight(); xLight6.xRenderComponent.xTransform = xIn.xTransform; xLight6.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xRenderMaster.dstxLightSources["OmniLightRad100"], new Vector2(100f, 100f), 4, 1, 200, 200, 0, 0, 1, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xLight6.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xLight6.SetScale(0.15f); xLight6.xMountObject = xIn; xLight6.enDestructionType = DynamicLight.DestructionType.Flash; xLight6.fFlicker = 0.3f; xLight6.iFlickerInterval = 15; Program.GetTheGame()._DynamicLight_CreateDynamicLight(xLight6); } else if (enType == SpellCodex.SpellTypes._EnemySkill_Crystal_ShieldProjectile) { xIn = new _EnemySpells_CrystalShieldProjectile(); _EnemySpells_CrystalShieldProjectile xProjectile14 = xIn as _EnemySpells_CrystalShieldProjectile; xProjectile14.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile14.xRenderComponent.xTransform = xIn.xTransform; xProjectile14.enType = enType; xProjectile14.xRenderComponent.xOwnerObject = xIn; xProjectile14.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Temple/Crystal/Shield/ProjectileStart"), new Vector2(7f, 7f), 4, 3, 15, 15, 0, 0, 6, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[] { new AnimationInstruction(new AnimInsCriteria(AnimInsCriteria.Criteria.TriggerAtEnd, new float[0]), new AnimInsEvent(AnimInsEvent.EventType.PlayAnimation, new float[] { 1f })) })); xIn.xRenderComponent.dixAnimations.Add(1, new Animation(1, 0, Content.Load<Texture2D>("Sprites/Monster/Temple/Crystal/Shield/Projectile"), new Vector2(7f, 7f), 4, 6, 15, 15, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 16f; xIn.xRenderComponent.v2OffsetRenderPos.Y = -20f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_GundamRocket) { xIn = new _EnemySpells_Rocket(); _EnemySpells_Rocket xProjectile15 = xIn as _EnemySpells_Rocket; xProjectile15.bSendNetworkUpdates = false; xProjectile15.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile15.xRenderComponent.xTransform = xIn.xTransform; xProjectile15.xAttackPhasePlayer = new AttackPhase(xProjectile15); SphereCollider col30 = new SphereCollider(20f, new Vector2(0f, 0f), xProjectile15.xTransform, 0f, xProjectile15); col30.xAttackPhase = xProjectile15.xAttackPhasePlayer; col30.bIsLarge = false; xProjectile15.xAttackPhasePlayer.lxCurrentColliders.Add(col30); xProjectile15.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.Players); xProjectile15.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.Neutrals); xProjectile15.xAttackPhasePlayer.xStats.bIsProjectile = true; xProjectile15.enType = enType; xProjectile15.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Gundam/Body/Rockets/Rocket"), new Vector2(8f, 6f), 4, 1, 17, 32, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight = 10000f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_ArbitraryCircularDamage) { xIn = new _EnemySpells_ArbitraryCircularExplosion(); _EnemySpells_ArbitraryCircularExplosion xProjectile16 = xIn as _EnemySpells_ArbitraryCircularExplosion; xProjectile16.bSendNetworkUpdates = false; xProjectile16.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile16.xRenderComponent.xTransform = xIn.xTransform; xProjectile16.xAttackPhasePlayer = new AttackPhase(xProjectile16); SphereCollider col31 = new SphereCollider(20f, new Vector2(0f, 0f), xProjectile16.xTransform, 0f, xProjectile16); col31.xAttackPhase = xProjectile16.xAttackPhasePlayer; col31.bIsLarge = false; xProjectile16.xAttackPhasePlayer.lxCurrentColliders.Add(col31); xProjectile16.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.Players); xProjectile16.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.Neutrals); xProjectile16.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.DynamicEnvironment); xProjectile16.xAttackPhasePlayer.xStats.bIsProjectile = false; xProjectile16.enType = enType; xProjectile16.xRenderComponent.xOwnerObject = xIn; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(8f, 6f), 4, 1, 17, 32, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight = 10000f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_OrbitBullet) { xIn = new _EnemySpells_GenericOrbitBullet(); _EnemySpells_GenericOrbitBullet xProjectile17 = xIn as _EnemySpells_GenericOrbitBullet; xProjectile17.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile17.xRenderComponent.xTransform = xIn.xTransform; xProjectile17.xAttackPhasePlayer = new AttackPhase(xProjectile17); xProjectile17.xAttackPhaseEnvironment = new AttackPhase(xProjectile17); SphereCollider col32 = new SphereCollider(3f, new Vector2(0f, 0f), xProjectile17.xTransform, 0f, xProjectile17); col32.xAttackPhase = xProjectile17.xAttackPhasePlayer; col32.bIsLarge = false; xProjectile17.xAttackPhasePlayer.lxCurrentColliders.Add(col32); xProjectile17.xAttackPhasePlayer.RegisterCurrent(); xProjectile17.xAttackPhasePlayer.xStats.bIsProjectile = true; col32 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile17.xTransform, 0f, xProjectile17); col32.xAttackPhase = xProjectile17.xAttackPhaseEnvironment; col32.bCollideWithFlat = false; xProjectile17.xAttackPhaseEnvironment.lxCurrentColliders.Add(col32); xProjectile17.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile17.enType = enType; xProjectile17.xRenderComponent.xOwnerObject = xIn; xProjectile17.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Directional_Purple"), new Vector2(7f, 8f), 4, 1, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 10f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_DelayedHomingBullet) { xIn = new _EnemySpells_DelayedHomingBullet(); _EnemySpells_DelayedHomingBullet xProjectile18 = xIn as _EnemySpells_DelayedHomingBullet; xProjectile18.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile18.xRenderComponent.xTransform = xIn.xTransform; xProjectile18.xAttackPhasePlayer = new AttackPhase(xProjectile18); xProjectile18.xAttackPhaseEnvironment = new AttackPhase(xProjectile18); SphereCollider col33 = new SphereCollider(3f, new Vector2(0f, 0f), xProjectile18.xTransform, 0f, xProjectile18); col33.xAttackPhase = xProjectile18.xAttackPhasePlayer; col33.bIsLarge = false; xProjectile18.xAttackPhasePlayer.lxCurrentColliders.Add(col33); xProjectile18.xAttackPhasePlayer.RegisterCurrent(); xProjectile18.xAttackPhasePlayer.xStats.bIsProjectile = true; col33 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile18.xTransform, 0f, xProjectile18); col33.xAttackPhase = xProjectile18.xAttackPhaseEnvironment; col33.bCollideWithFlat = false; xProjectile18.xAttackPhaseEnvironment.lxCurrentColliders.Add(col33); xProjectile18.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile18.enType = enType; xProjectile18.xRenderComponent.xOwnerObject = xIn; xProjectile18.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Directional_Turkos"), new Vector2(7f, 8f), 4, 1, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 6f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_GundamMegaBullet) { xIn = new _EnemySpells_GundamMegabullet(); _EnemySpells_GundamMegabullet xProjectile19 = xIn as _EnemySpells_GundamMegabullet; xProjectile19.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile19.xRenderComponent.xTransform = xIn.xTransform; xProjectile19.xAttackPhasePlayer = new AttackPhase(xProjectile19); SphereCollider col34 = new SphereCollider(3f, new Vector2(0f, 0f), xProjectile19.xTransform, 0f, xProjectile19); col34.xAttackPhase = xProjectile19.xAttackPhasePlayer; col34.bIsLarge = false; xProjectile19.xAttackPhasePlayer.lxCurrentColliders.Add(col34); xProjectile19.xAttackPhasePlayer.RegisterCurrent(); xProjectile19.xAttackPhasePlayer.xStats.bIsProjectile = true; col34 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile19.xTransform, 0f, xProjectile19); col34.bCollideWithFlat = false; xProjectile19.enType = enType; xProjectile19.xRenderComponent.xOwnerObject = xIn; xProjectile19.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Bosses/Phaseman/Projectiles/Purple"), new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; DynamicLight xLight7 = new DynamicLight(); xLight7.xRenderComponent.xTransform = xIn.xTransform; xLight7.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Program.GetTheGame().xRenderMaster.dstxLightSources["OmniLightRad100"], new Vector2(100f, 100f), 4, 1, 200, 200, 0, 0, 1, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xLight7.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, -4f); xLight7.SetScale(0.15f); xLight7.xMountObject = xIn; xLight7.enDestructionType = DynamicLight.DestructionType.Flash; xLight7.fFlicker = 0.3f; xLight7.iFlickerInterval = 15; Program.GetTheGame()._DynamicLight_CreateDynamicLight(xLight7); } else if (enType == SpellCodex.SpellTypes._EnemySkill_ScoundrelSnowBall_Small) { xIn = new _EnemySpells_SmallSnowBall(); _EnemySpells_SmallSnowBall xProjectile20 = xIn as _EnemySpells_SmallSnowBall; xProjectile20.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile20.xRenderComponent.xTransform = xIn.xTransform; xProjectile20.xAttackPhasePlayer = new AttackPhase(xProjectile20); xProjectile20.xAttackPhaseEnvironment = new AttackPhase(xProjectile20); SphereCollider col35 = new SphereCollider(5f, new Vector2(0f, 0f), xProjectile20.xTransform, 0f, xProjectile20); col35.xAttackPhase = xProjectile20.xAttackPhasePlayer; col35.bIsLarge = false; xProjectile20.xAttackPhasePlayer.lxCurrentColliders.Add(col35); xProjectile20.xAttackPhasePlayer.RegisterCurrent(); xProjectile20.xAttackPhasePlayer.xStats.bIsProjectile = true; col35 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile20.xTransform, 0f, xProjectile20); col35.xAttackPhase = xProjectile20.xAttackPhaseEnvironment; col35.bCollideWithFlat = false; xProjectile20.xAttackPhaseEnvironment.lxCurrentColliders.Add(col35); xProjectile20.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile20.enType = enType; xProjectile20.xRenderComponent.xOwnerObject = xIn; xProjectile20.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Winterland/Frostling Scoundrel/Snowball"), new Vector2(2f, 3f), 4, 1, 5, 5, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_ScoundrelSnowBall_Big) { xIn = new _EnemySpells_BigSnowBall(); _EnemySpells_BigSnowBall xProjectile21 = xIn as _EnemySpells_BigSnowBall; xProjectile21.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile21.xRenderComponent.xTransform = xIn.xTransform; xProjectile21.xAttackPhasePlayer = new AttackPhase(xProjectile21); xProjectile21.xAttackPhaseEnvironment = new AttackPhase(xProjectile21); SphereCollider col36 = new SphereCollider(10f, new Vector2(0f, 0f), xProjectile21.xTransform, 0f, xProjectile21); col36.xAttackPhase = xProjectile21.xAttackPhasePlayer; col36.bIsLarge = false; xProjectile21.xAttackPhasePlayer.lxCurrentColliders.Add(col36); xProjectile21.xAttackPhasePlayer.xStats.bIsProjectile = true; xProjectile21.enType = enType; xProjectile21.xRenderComponent.xOwnerObject = xIn; xProjectile21.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Winterland/Frostling Scoundrel/SnowballBig"), new Vector2(6f, 10f), 4, 1, 12, 12, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_SteamPipeSteam) { xIn = new _EnemySpells_GenericStraightBullet(); _EnemySpells_GenericStraightBullet xProjectile22 = xIn as _EnemySpells_GenericStraightBullet; xProjectile22.bFadeIn = false; xProjectile22.bScaleIn = false; xProjectile22.bScaleOut = false; xProjectile22.bDisableAllNetworking = true; xProjectile22.bSendNetworkUpdates = false; xProjectile22.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile22.xRenderComponent.xTransform = xIn.xTransform; xProjectile22.xAttackPhasePlayer = new AttackPhase(xProjectile22); xProjectile22.xAttackPhaseEnvironment = new AttackPhase(xProjectile22); SphereCollider col37 = new SphereCollider(5f, new Vector2(0f, 0f), xProjectile22.xTransform, 0f, xProjectile22); col37.xAttackPhase = xProjectile22.xAttackPhasePlayer; col37.bIsLarge = false; xProjectile22.xAttackPhasePlayer.lxCurrentColliders.Add(col37); xProjectile22.xAttackPhasePlayer.RegisterCurrent(); xProjectile22.xAttackPhasePlayer.xStats.bIsProjectile = true; xProjectile22.enType = enType; xProjectile22.xRenderComponent.xOwnerObject = xIn; xProjectile22.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(9f, 7f), 5, 12, 18, 14, 18, 0, 13, Animation.LoopSettings.Clamp, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_LinearShockwave) { xIn = new _EnemySpells_LinearShockwave(); _EnemySpells_LinearShockwave xProjectile23 = xIn as _EnemySpells_LinearShockwave; xProjectile23.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile23.xRenderComponent.xTransform = xIn.xTransform; xProjectile23.xAttackPhasePlayer = new AttackPhase(xProjectile23); xProjectile23.xAttackPhaseEnvironment = new AttackPhase(xProjectile23); SphereCollider col38 = new SphereCollider(9f, new Vector2(0f, 0f), xProjectile23.xTransform, 0f, xProjectile23); col38.xAttackPhase = xProjectile23.xAttackPhasePlayer; col38.bIsLarge = false; xProjectile23.xAttackPhasePlayer.lxCurrentColliders.Add(col38); xProjectile23.xAttackPhasePlayer.RegisterCurrent(); xProjectile23.xAttackPhasePlayer.xStats.bIsProjectile = true; xProjectile23.xAttackPhasePlayer.xStats.bIgnoreShield = true; xProjectile23.xAttackPhasePlayer.xStats.enShieldCrush = AttackStats.ShieldCrush.AllIncludingPerfectGuard; col38 = new SphereCollider(5f, new Vector2(0f, 0f), xProjectile23.xTransform, 0f, xProjectile23); col38.xAttackPhase = xProjectile23.xAttackPhaseEnvironment; col38.bCollideWithFlat = false; xProjectile23.xAttackPhaseEnvironment.lxCurrentColliders.Add(col38); xProjectile23.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile23.enType = enType; xProjectile23.xRenderComponent.xOwnerObject = xIn; xProjectile23.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(8f, 8f), 4, 4, 16, 16, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_SpinningShieldThing) { xIn = new _EnemySpells_SpinningShieldThings(); _EnemySpells_SpinningShieldThings xProjectile24 = xIn as _EnemySpells_SpinningShieldThings; xProjectile24.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile24.xRenderComponent.xTransform = xIn.xTransform; xProjectile24.enType = enType; xProjectile24.xRenderComponent.xOwnerObject = xIn; xProjectile24.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xProjectile24.bSendOwnerAsWorldActor = true; xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Season Change/Winter Wizard/Attack/Projectile/Cube"), new Vector2(11f, 12f), 4, 6, 22, 23, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.v2OffsetRenderPos.Y = -5f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_AutumnMageProjectile) { xIn = new _EnemySpells_SeasonMageProjectile(); _EnemySpells_SeasonMageProjectile xProjectile25 = xIn as _EnemySpells_SeasonMageProjectile; xProjectile25.enBigParticleTail = SortedAnimated.SortedAnimatedEffects._EnemyEffects_AutumnProjectile_BigParticle; xProjectile25.enSmallParticleTrail = SortedAnimated.SortedAnimatedEffects._EnemyEffects_AutumnProjectile_SmallParticle; xProjectile25.enDestroyEffect = SortedAnimated.SortedAnimatedEffects._EnemyEffects_AutumnProjectile_Destroyed; xProjectile25.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile25.xRenderComponent.xTransform = xIn.xTransform; xProjectile25.xAttackPhasePlayer = new AttackPhase(xProjectile25); xProjectile25.xAttackPhaseEnvironment = new AttackPhase(xProjectile25); xProjectile25.bFadeIn = false; xProjectile25.bScaleIn = false; xProjectile25.bScaleOut = true; SphereCollider col39 = new SphereCollider(5f, new Vector2(0f, 0f), xProjectile25.xTransform, 0f, xProjectile25); col39.xAttackPhase = xProjectile25.xAttackPhasePlayer; col39.bIsLarge = false; xProjectile25.xAttackPhasePlayer.lxCurrentColliders.Add(col39); xProjectile25.xAttackPhasePlayer.RegisterCurrent(); xProjectile25.xAttackPhasePlayer.xStats.bIsProjectile = true; col39 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile25.xTransform, 0f, xProjectile25); col39.xAttackPhase = xProjectile25.xAttackPhaseEnvironment; col39.bCollideWithFlat = false; xProjectile25.xAttackPhaseEnvironment.lxCurrentColliders.Add(col39); xProjectile25.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile25.enType = enType; xProjectile25.xRenderComponent.xOwnerObject = xIn; xProjectile25.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Season Change/Fall Wizard/Attack/Projectile/Cube"), new Vector2(11f, 12f), 4, 6, 22, 23, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_WinterMageProjectile) { xIn = new _EnemySpells_SeasonMageProjectile(); _EnemySpells_SeasonMageProjectile xProjectile26 = xIn as _EnemySpells_SeasonMageProjectile; xProjectile26.enBigParticleTail = SortedAnimated.SortedAnimatedEffects._EnemyEffects_WinterProjectile_BigParticle; xProjectile26.enSmallParticleTrail = SortedAnimated.SortedAnimatedEffects._EnemyEffects_WinterProjectile_SmallParticle; xProjectile26.enDestroyEffect = SortedAnimated.SortedAnimatedEffects._EnemyEffects_WinterProjectile_Destroyed; xProjectile26.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile26.xRenderComponent.xTransform = xIn.xTransform; xProjectile26.xAttackPhasePlayer = new AttackPhase(xProjectile26); xProjectile26.xAttackPhaseEnvironment = new AttackPhase(xProjectile26); xProjectile26.bFadeIn = false; xProjectile26.bScaleIn = false; xProjectile26.bScaleOut = true; SphereCollider col40 = new SphereCollider(5f, new Vector2(0f, 0f), xProjectile26.xTransform, 0f, xProjectile26); col40.xAttackPhase = xProjectile26.xAttackPhasePlayer; col40.bIsLarge = false; xProjectile26.xAttackPhasePlayer.lxCurrentColliders.Add(col40); xProjectile26.xAttackPhasePlayer.RegisterCurrent(); xProjectile26.xAttackPhasePlayer.xStats.bIsProjectile = true; col40 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile26.xTransform, 0f, xProjectile26); col40.xAttackPhase = xProjectile26.xAttackPhaseEnvironment; col40.bCollideWithFlat = false; xProjectile26.xAttackPhaseEnvironment.lxCurrentColliders.Add(col40); xProjectile26.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile26.enType = enType; xProjectile26.xRenderComponent.xOwnerObject = xIn; xProjectile26.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Season Change/Winter Wizard/Attack/Projectile/Cube"), new Vector2(11f, 12f), 4, 6, 22, 23, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_SummerMageProjectile) { xIn = new _EnemySpells_SeasonMageProjectile(); _EnemySpells_SeasonMageProjectile xProjectile27 = xIn as _EnemySpells_SeasonMageProjectile; xProjectile27.enBigParticleTail = SortedAnimated.SortedAnimatedEffects._EnemyEffects_SummerProjectile_BigParticle; xProjectile27.enSmallParticleTrail = SortedAnimated.SortedAnimatedEffects._EnemyEffects_SummerProjectile_SmallParticle; xProjectile27.enDestroyEffect = SortedAnimated.SortedAnimatedEffects._EnemyEffects_SummerProjectile_Destroyed; xProjectile27.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile27.xRenderComponent.xTransform = xIn.xTransform; xProjectile27.xAttackPhasePlayer = new AttackPhase(xProjectile27); xProjectile27.xAttackPhaseEnvironment = new AttackPhase(xProjectile27); xProjectile27.bFadeIn = false; xProjectile27.bScaleIn = false; xProjectile27.bScaleOut = true; SphereCollider col41 = new SphereCollider(5f, new Vector2(0f, 0f), xProjectile27.xTransform, 0f, xProjectile27); col41.xAttackPhase = xProjectile27.xAttackPhasePlayer; col41.bIsLarge = false; xProjectile27.xAttackPhasePlayer.lxCurrentColliders.Add(col41); xProjectile27.xAttackPhasePlayer.RegisterCurrent(); xProjectile27.xAttackPhasePlayer.xStats.bIsProjectile = true; col41 = new SphereCollider(1f, new Vector2(0f, 0f), xProjectile27.xTransform, 0f, xProjectile27); col41.xAttackPhase = xProjectile27.xAttackPhaseEnvironment; col41.bCollideWithFlat = false; xProjectile27.xAttackPhaseEnvironment.lxCurrentColliders.Add(col41); xProjectile27.xAttackPhaseEnvironment.RegisterCurrent(); xProjectile27.enType = enType; xProjectile27.xRenderComponent.xOwnerObject = xIn; xProjectile27.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Season Change/Summer Wizard/Attack/Projectile/Cube"), new Vector2(11f, 12f), 4, 6, 22, 23, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_SummerHydraFire) { xIn = new _EnemySpells_SummerHydraFire(); _EnemySpells_SummerHydraFire xProjectile28 = xIn as _EnemySpells_SummerHydraFire; xProjectile28.enType = enType; xProjectile28.xAttackPhase = new AttackPhase(xProjectile28); SphereCollider col42 = new SphereCollider(15f, new Vector2(0f, 0f), xProjectile28.xTransform, 0f, xProjectile28); col42.xAttackPhase = xProjectile28.xAttackPhase; col42.bIsLarge = false; xProjectile28.xAttackPhase.lxCurrentColliders.Add(col42); xProjectile28.xAttackPhase.xStats.bIsProjectile = false; xProjectile28.xAttackPhase.lenLayers.Add(Collider.ColliderLayers.Players); xProjectile28.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile28.xRenderComponent.xTransform = xIn.xTransform; xProjectile28.xRenderComponent.xOwnerObject = xIn; xProjectile28.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Season Change/Fall Wizard/Attack/Projectile/Cube"), new Vector2(11f, 12f), 4, 6, 22, 23, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 180f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_WinterHydraFrost) { xIn = new _EnemySpells_WinterHydraBreath(); _EnemySpells_WinterHydraBreath xProjectile29 = xIn as _EnemySpells_WinterHydraBreath; xProjectile29.enType = enType; xProjectile29.xAttackPhase = new AttackPhase(xProjectile29); SphereCollider col43 = new SphereCollider(15f, new Vector2(0f, 0f), xProjectile29.xTransform, 0f, xProjectile29); col43.xAttackPhase = xProjectile29.xAttackPhase; col43.bIsLarge = false; xProjectile29.xAttackPhase.lxCurrentColliders.Add(col43); xProjectile29.xAttackPhase.xStats.bIsProjectile = false; xProjectile29.xAttackPhase.xStats.bIgnoreShield = true; xProjectile29.xAttackPhase.lenLayers.Add(Collider.ColliderLayers.Players); xProjectile29.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile29.xRenderComponent.xTransform = xIn.xTransform; xProjectile29.xRenderComponent.xOwnerObject = xIn; xProjectile29.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>("Sprites/Monster/Season Change/Winter Wizard/Attack/Projectile/Cube"), new Vector2(11f, 12f), 4, 6, 22, 23, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 180f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_AutumnHydraShot) { xIn = new _EnemySpells_AutumnHydraHomingShot(); _EnemySpells_AutumnHydraHomingShot xProjectile30 = xIn as _EnemySpells_AutumnHydraHomingShot; xProjectile30.enType = enType; xProjectile30.xAttackPhasePlayer = new AttackPhase(xProjectile30); SphereCollider col44 = new SphereCollider(15f, new Vector2(0f, 0f), xProjectile30.xTransform, 0f, xProjectile30); col44.xAttackPhase = xProjectile30.xAttackPhasePlayer; col44.bIsLarge = false; xProjectile30.xAttackPhasePlayer.lxCurrentColliders.Add(col44); xProjectile30.xAttackPhasePlayer.xStats.bIsProjectile = true; xProjectile30.xAttackPhasePlayer.xStats.bIgnoreShield = false; xProjectile30.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.Players); xProjectile30.xRenderComponent = new AnimatedRenderComponent(xIn); xProjectile30.xRenderComponent.xTransform = xIn.xTransform; xProjectile30.xRenderComponent.xOwnerObject = xIn; xProjectile30.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xProjectile30.AddSpore(SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_AutumnBigSpore_Looping, Utility.RandomizeVector2Direction(CAS.RandomInVisual) * 0f); float fPart = 1.57079637f; for (int i = 0; i < 4; i++) { SortedAnimated.SortedAnimatedEffects en = SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_AutumnBigSpore_Looping; if (i % 2 == 0) { en = SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_AutumnSmallSpore_Looping; } xProjectile30.AddSpore(en, Utility.RadiansToVector2(fPart * (float)i) * 5f); } fPart = 0.7853982f; for (int j = 0; j < 8; j++) { SortedAnimated.SortedAnimatedEffects en2 = SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_AutumnBigSpore_Looping; if (j % 2 == 0) { en2 = SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_AutumnSmallSpore_Looping; } xProjectile30.AddSpore(en2, Utility.RadiansToVector2(fPart * (float)j) * 8f); } fPart = 0.5235988f; for (int k = 0; k < 12; k++) { SortedAnimated.SortedAnimatedEffects en3 = SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_AutumnBigSpore_Looping; if (k % 2 == 0) { en3 = SortedAnimated.SortedAnimatedEffects._EnemyEffects_Boss_SeasonHydra_AutumnSmallSpore_Looping; } xProjectile30.AddSpore(en3, Utility.RadiansToVector2(fPart * (float)k) * 11f); } xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(11f, 12f), 4, 6, 22, 23, 0, 0, 6, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 180f; xIn.xRenderComponent.fScale = 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_GasCloud_Blind) { xIn = new _EnemySpells_GasCloud(); _EnemySpells_GasCloud xGasCloud = xIn as _EnemySpells_GasCloud; xGasCloud.xRenderComponent = new AnimatedRenderComponent(xIn); xGasCloud.xRenderComponent.xTransform = xIn.xTransform; xGasCloud.xAttackPhasePlayer = new AttackPhase(xGasCloud); SphereCollider col45 = new SphereCollider(12f, new Vector2(0f, 0f), xGasCloud.xTransform, 0f, xGasCloud); col45.xAttackPhase = xGasCloud.xAttackPhasePlayer; col45.bIsLarge = false; xGasCloud.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.Players); xGasCloud.xAttackPhasePlayer.lxCurrentColliders.Add(col45); xGasCloud.xAttackPhasePlayer.RegisterCurrent(); xGasCloud.xAttackPhasePlayer.xStats.bIsProjectile = true; xGasCloud.xAttackPhasePlayer.xStats.bIgnoreShield = true; xGasCloud.xAttackPhasePlayer.xStats.bNonDamaging = true; xGasCloud.enType = enType; xGasCloud.xRenderComponent.xOwnerObject = xIn; xGasCloud.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, Content.Load<Texture2D>(MONSTER_PATH + "Bosses/Season Hydra/Fall/Mushroom/Smoke"), new Vector2(13f, 11f), 4, 9, 26, 23, 0, 0, 22, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } else if (enType == SpellCodex.SpellTypes._EnemySkill_GasCloud_Burn) { xIn = new _EnemySpells_GasCloud(); _EnemySpells_GasCloud xGasCloud2 = xIn as _EnemySpells_GasCloud; xGasCloud2.xRenderComponent = new AnimatedRenderComponent(xIn); xGasCloud2.xRenderComponent.xTransform = xIn.xTransform; xGasCloud2.xAttackPhasePlayer = new AttackPhase(xGasCloud2); SphereCollider col46 = new SphereCollider(5f, new Vector2(0f, 0f), xGasCloud2.xTransform, 0f, xGasCloud2); col46.xAttackPhase = xGasCloud2.xAttackPhasePlayer; col46.bIsLarge = false; xGasCloud2.xAttackPhasePlayer.lenLayers.Add(Collider.ColliderLayers.Players); xGasCloud2.xAttackPhasePlayer.lxCurrentColliders.Add(col46); xGasCloud2.xAttackPhasePlayer.RegisterCurrent(); xGasCloud2.xAttackPhasePlayer.xStats.bIgnoreShield = true; xGasCloud2.xAttackPhasePlayer.xStats.bNonDamaging = true; xGasCloud2.enType = enType; xGasCloud2.xRenderComponent.xOwnerObject = xIn; xGasCloud2.xRenderComponent.v2OffsetRenderPos = new Vector2(0f, 0f); xIn.xRenderComponent.dixAnimations.Add(0, new Animation(0, 0, RenderMaster.txNullTex, new Vector2(22f, 38f), 4, 1, 46, 53, 0, 0, 22, Animation.LoopSettings.Looping, Animation.CancelOptions.IgnoreIfPlaying, true, true, new AnimationInstruction[0])); xIn.xRenderComponent.fVirtualHeight += 0f; } return xIn; }