public void TweenAttackPosition(EnclosureObjectType enclosureObjectType, Action <StockObject, Vector3> action) { var position = _stockPositionCommander.GetAttackPosition(enclosureObjectType); image.rectTransform .DOMove(position, 0.1f) .OnComplete(() => { action?.Invoke(this, position); }); }
private Sprite GetStockSprite(EnclosureObjectType enclosureObjectType) { switch (enclosureObjectType) { case EnclosureObjectType.Bullet: return(_enclosureSpriteTable.BulletSprite); case EnclosureObjectType.Bomb: return(_enclosureSpriteTable.BombSprite); case EnclosureObjectType.Heart: return(_enclosureSpriteTable.HeartSprite); case EnclosureObjectType.None: default: throw new ArgumentOutOfRangeException(nameof(enclosureObjectType), enclosureObjectType, null); } }
public Vector2 GetAttackPosition(EnclosureObjectType enclosureObjectType) { switch (enclosureObjectType) { case EnclosureObjectType.None: break; case EnclosureObjectType.Bullet: return(enemy.position); case EnclosureObjectType.Bomb: case EnclosureObjectType.Heart: return(player.position); default: throw new ArgumentOutOfRangeException(nameof(enclosureObjectType), enclosureObjectType, null); } return(Vector2.zero); }
public EnclosureObjectData(StockObject stockObject, int effectValue, EnclosureObjectType enclosureObjectType) { this.stockObject = stockObject; this.effectValue = effectValue; this.enclosureObjectType = enclosureObjectType; }