Exemplo n.º 1
0
 void UpdateInventory()
 {
     _lastEffective = Effective;
     Effective      = EffectiveSheetCalculator.GetEffectiveSheet(_base, Resolve <GameConfig>());
     _lastEffective ??= Effective;
     _lastChangeTime = DateTime.Now;
     _lerp           = 0.0f;
 }
Exemplo n.º 2
0
        void Update()
        {
            var assets = Resolve <IAssetManager>();
            var inventoryScreenState = Resolve <IInventoryScreenState>();

            _lastEffective = _effective;
            _effective     = EffectiveSheetCalculator.GetEffectiveSheet(assets, _base);
            _lastEffective ??= _effective;
            _lastChangeTime = DateTime.Now;
            _lerp           = 0.0f;
            Raise(new InventoryChangedEvent(_id));
            Raise(new SetCursorEvent(inventoryScreenState?.ItemInHand == null ? CoreSpriteId.Cursor : CoreSpriteId.CursorSmall));
        }
Exemplo n.º 3
0
 public PlayerInventoryManager(PartyCharacterId id, CharacterSheet sheet) : base(Handlers)
 {
     _id      = id;
     _base    = sheet;
     Apparent = new InterpolatedCharacterSheet(() => _lastEffective, () => _effective, () => _lerp);
 }