コード例 #1
0
 public HomingProjectile(Game game, Creature target, Creature attacker, OnHitProjectileDelegate onHitDelegate)
     : base(game, attacker, onHitDelegate)
 {
     this.target = target;
     this.duration = null;
     onHit = onHitDelegate;
 }
コード例 #2
0
ファイル: HelperClasses.cs プロジェクト: DanielWieder/Dota-2d
 public bool PreviouslyHarmed(Creature creature)
 {
     if (harmedCreatures.Contains(creature))
         return true;
     harmedCreatures.Add(creature);
     return false;
 }
コード例 #3
0
 protected void volleyOnHit(Projectile projectile, Creature target)
 {
     if(!data.PreviouslyHarmed(target))
     {
         target.takePhysicalDamage(damage, attacker.getFlatArmorPen(), attacker.getPercArmorPen());
         target.buffs.Add(frostShot.getFrostDebuff(target));
     }
 }
コード例 #4
0
 public VolleyProjectile(Game game, Creature attacker, FrostShot frostShot, float damage, float duration, AreaOfEffectTracker data)
     : base(game, attacker, null)
 {
     this.frostShot = frostShot;
     this.damage = damage;
     this.duration = TimeSpan.FromSeconds(duration);
     this.data = data;
     onHit = volleyOnHit;
 }
コード例 #5
0
ファイル: Buff.cs プロジェクト: DanielWieder/Dota-2d
 public Buff(Creature entity)
 {
     entity.buffs.Add(this);
     this.creature = entity;
     name = string.Empty;
     texture = null;
     debuff = false;
     duration = null;
     dispelable = true;
     modifiedStats = new List<ModifiedStat>();
 }
コード例 #6
0
ファイル: UserInput.cs プロジェクト: DanielWieder/Dota-2d
 public static Entity.SpriteDirection GetTargetDirection(Creature creature)
 {
     float targetAngle = GetTargetAngle(creature);
         if (targetAngle < Math.PI / 2 && targetAngle > -Math.PI / 2)
             return Entity.SpriteDirection.Right;
         return Entity.SpriteDirection.Left;
 }
コード例 #7
0
ファイル: UserInput.cs プロジェクト: DanielWieder/Dota-2d
 public static float GetTargetAngle(Creature creature)
 {
     return (float)Math.Atan2((double)(creature.target.DisplayPosition.Y - creature.DisplayPosition.Y), (double)(creature.target.DisplayPosition.X - creature.DisplayPosition.X));
 }
コード例 #8
0
ファイル: Player.cs プロジェクト: DanielWieder/Dota-2d
 public void setTeam(Creature.Team team)
 {
     this.creature.team = team;
 }
コード例 #9
0
 public EnchantedCrystalArrowProjectile(Game game, Creature attacker, float damage, float duration, OnHitProjectileDelegate onHit)
     : base(game, attacker, onHit)
 {
     this.damage = damage;
     this.duration = TimeSpan.FromSeconds(duration);
 }
コード例 #10
0
ファイル: Creature.cs プロジェクト: DanielWieder/Dota-2d
 protected void onHit(Projectile projectile, Creature target)
 {
     target.takePhysicalDamage(getDamage(), getFlatArmorPen(), getPercArmorPen());
 }
コード例 #11
0
ファイル: Creature.cs プロジェクト: DanielWieder/Dota-2d
 public void OnAttack(Creature target)
 {
     e.target = target;
      Attack(this, e);
 }
コード例 #12
0
ファイル: Projectile.cs プロジェクト: DanielWieder/Dota-2d
 public Projectile(Game game, Creature attacker, OnHitProjectileDelegate onHit)
     : base(game)
 {
     this.attacker = attacker;
     this.onHit += onHit;
 }
コード例 #13
0
ファイル: FrostShot.cs プロジェクト: DanielWieder/Dota-2d
 public Buffs.Frost getFrostDebuff(Creature target)
 {
     return new Buffs.Frost(target, level);
 }