Ejemplo n.º 1
0
        protected override List <string> GetStatsFor_Sub(AbstractEntity e)
        {
            var str = new List <string>();

            str.Add($"Stats for {e.name}");
            // todo - stats

            CanCarryComponent ccc = (CanCarryComponent)e.GetComponent(nameof(CanCarryComponent));

            foreach (var item in ccc.GetItems())
            {
                str.Add($"{item.name}");
            }
            return(str);
        }
        private void ListItemsInInv()
        {
            this.menuItemList.Clear();
            int idx = 1;
            CanCarryComponent ccc = (CanCarryComponent)this.currentUnit.GetComponent(nameof(CanCarryComponent));

            foreach (var e in ccc.GetItems())
            {
                CarryableComponent cc = (CarryableComponent)e.GetComponent(nameof(CarryableComponent));
                if (cc != null)
                {
                    this.menuItemList.Add(idx, e);
                    idx++;
                }
            }
        }
        public void DropItem(AbstractEntity unit, AbstractEntity item, List <AbstractEntity> mapSquare)
        {
            MobDataComponent mdc = (MobDataComponent)unit.GetComponent(nameof(MobDataComponent));

            if (mdc == null || mdc.actionPoints > 0)
            {
                mdc.actionPoints -= 20;
                CanCarryComponent  ccc     = (CanCarryComponent)unit.GetComponent(nameof(CanCarryComponent));
                PositionComponent  unitpos = (PositionComponent)item.GetComponent(nameof(PositionComponent));
                PositionComponent  itempos = (PositionComponent)item.GetComponent(nameof(PositionComponent));
                CarryableComponent cc      = (CarryableComponent)item.GetComponent(nameof(CarryableComponent));
                if (ccc.GetItems().Contains(item))
                {
                    ccc.RemoveItem(item);
                    cc.carrier = null;
                    mapSquare.Add(item);
                    itempos.x = unitpos.x;
                    itempos.y = unitpos.y;
                }
            }
        }