protected override bool OnCast(Entity source) { var proj = Projectiles.GiantSwordProjectile.Fire(source.GameObject); Effects.SpellCastEffect.Display(proj.Position, 90f); return true; }
protected override bool OnCast(Entity source) { var proj = AxeProjectile.Fire(source.GameObject); Effects.SpellCastEffect.Display(proj.Position, proj.Rotation, true); return true; }
protected override bool OnCast(Entity source) { SoundManager.PauseMusic(); //this.m_enemyPauseDuration = 0; //this.PauseAllEnemies(); //Tween.To(m_traitAura, 0.2f, Tween.EaseNone, "ScaleX", "100", "ScaleY", "100"); return true; }
protected override bool OnCast(Entity source) { var obj = source.GameObject; Tween.RunFunction(0f, this, "CastDagger", obj, false); Tween.RunFunction(0.05f, this, "CastDagger", obj, true); Tween.RunFunction(0.1f, this, "CastDagger", obj, true); Tween.RunFunction(0.15f, this, "CastDagger", obj, true); Tween.RunFunction(0.2f, this, "CastDagger", obj, true); return true; }
protected override bool OnCast(Entity source) { var obj = source.GameObject; if (_shadowSprite == null) _shadowSprite = new ObjContainer(obj.SpriteName) { OutlineColour = Color.Blue, OutlineWidth = 2, TextureColor = Color.Black }; else _shadowSprite.ChangeSprite(obj.SpriteName); _shadowSprite.Position = obj.Position; _shadowSprite.Flip = obj.Flip; _shadowSprite.Scale = Vector2.Zero; _shadowSprite.Visible = true; _shadowSprite.GoToFrame(obj.CurrentFrame); for (var i = 0; i < obj.NumChildren; i++) { var src = obj.GetChildAt(i) as SpriteObj; var dst = _shadowSprite.GetChildAt(i) as SpriteObj; var show = src.Visible; if (source is Player && ( i == 16 || ( Player.Class is Classes.Spellthief && (i == 10 || i == 11) ))) show = false; dst.ChangeSprite(src.SpriteName); dst.Visible = show; } Tween.To(_shadowSprite, 0.4f, Linear.EaseNone, "ScaleX", obj.ScaleX.ToString(), "ScaleY", obj.ScaleY.ToString()); Effects.InverseEmitEffect.Display(_shadowSprite.Position); return true; }
protected override bool OnCast(Entity source) { var angleOffset = 0f; for (int i = 0; i < 4; i++) { Vector2 sourceAnchor; switch (i) { case 0: sourceAnchor = new Vector2(-10f, -10f); break; case 1: sourceAnchor = new Vector2(10f, -10f); break; case 2: sourceAnchor = new Vector2(10f, 10f); break; default: sourceAnchor = new Vector2(-10f, 10f); break; } var proj = ConfluxProjectile.Fire(source.GameObject, angleOffset, sourceAnchor); //proj.Orientation = MathHelper.ToRadians(angle); angleOffset += 90f; } return true; }