public override ActionResult Perform(ITurnable turnable, TurnResult result) { Creature creature = turnable as Creature; if (X != 0) { creature.SpriteEffect = X > 0 ? SpriteEffects.FlipHorizontally : SpriteEffects.None; } int newX = creature.X + X; int newY = creature.Y + Y; if (!creature.Map.InBounds(newX, newY) || creature.Map.GetTile(newX, newY).IsSolid) { result.AddEvent(new BumpEvent(X, Y, 9f, creature)); return(Succeed()); } Creature other = creature.Map.GetCreature(newX, newY); if (other != null) { result.AddEvent(new BumpEvent(X, Y, 9f, creature)); return(Succeed()); } result.AddEvent(new MoveEvent(creature, creature.X, creature.Y, newX, newY, 4f, 0.3f)); creature.X += X; creature.Y += Y; return(Succeed()); }
public EnemyState(IStateEnter enter, IStateExit exit, IStateUpdate update, ITurnable turnable, ITitanShield titanShield) : base(enter, exit, update) { _turnable = turnable; _titanShield = titanShield; }
public static void Main(string[] args) { IWentylatornaFabryka fabryka = new DekoratorowaFabryka(); ITurnable went1 = fabryka.utworzWentylator(); ITurnable went2 = fabryka.utworzWentylator(); went1.wlacz(); went2.wlacz(); went1.wylacz(); went1.wlacz(); went1.wylacz(); went1.wlacz(); went1.wylacz(); Console.WriteLine(String.Format("Wentylator #1: {0}", went1.status())); Console.WriteLine(String.Format("Wentylator #2: {0}", went2.status())); }
public EnemyState_Kill(IStateEnter enter, IStateExit exit, IStateUpdate update, ITurnable turnable, ITitanShield titanShield) : base(enter, exit, update, turnable, titanShield) { }
public void removeTurn(ITurnable turnable) { turnList.Remove(turnable); }
public void registerTurn(ITurnable turnable) { turnList.Add(turnable); }
public BasicMove(ITurnable user) : base(user) { }
public abstract ActionResult Perform(ITurnable turnable, TurnResult result);
public AbstractAction(ITurnable user) { this.user = user; }
public PlayerState(IStateEnter enter, IStateExit exit, IStateUpdate update, ITurnable turnable) : base(enter, exit, update) { _turnable = turnable; }
public TurnRightCommand(ITurnable rover, Rotate rotate) { _rotate = rotate; _rover = rover; }
private static void TurnOnTurnable(ITurnable turnable) { turnable.TurnOn(); }
public WentylatorDekorator(WentylatorFacade wentylator) { this.wentylator = wentylator; this.wlaczenia = 0; this.wylaczenia = 0; }
public AbstractEffect(ITurnable target) { this.target = target; }
public takeDamage(int damage, ITurnable target) : base(target) { this.damage = damage; }