private void UseCurrentItem() { ItemCanShootComponent icsc = (ItemCanShootComponent)this.currentUnit.GetComponent(nameof(ItemCanShootComponent)); if (icsc != null) { this.currentInputMode = InputMode.SelectMapPoint; this.currentInputSubMode = InputSubMode.SelectShotTarget; } }
public void EntityShootingAtEntity(AbstractEntity shooter, Point shooterPos, AbstractEntity target, Point targetPos) { CanCarryComponent ccc = (CanCarryComponent)shooter.GetComponent(nameof(CanCarryComponent)); if (ccc != null && ccc.CurrentItem != null) { ItemCanShootComponent icsc = (ItemCanShootComponent)ccc.CurrentItem.GetComponent(nameof(ItemCanShootComponent)); if (icsc != null) { MobDataComponent us = (MobDataComponent)shooter.GetComponent(nameof(MobDataComponent)); if (us.actionPoints > 0) { this.EntityShotByEntity(shooter, shooterPos.X, shooterPos.Y, target, targetPos.X, targetPos.Y); us.actionPoints -= 50; } } } }