private void OnPlayerStep(IEventData eventData) { EntityFinishMovementEvent entityEvent = eventData as EntityFinishMovementEvent; if (entityEvent.EntityId == Locator.Get <GameManager>().Player.Guid) { stepsPerformed++; } }
private void OnLightSourceFinishMoving(IEventData eventData) { EntityFinishMovementEvent movementEvent = eventData as EntityFinishMovementEvent; UpdateMovingLightCasters(); Entity entity = lightCasters.Find(x => x.Guid == movementEvent.EntityId);; if (entity != null && movingLightCasters.ContainsKey(entity)) { movingLightCasters.Remove(entity); } }
private void OnEntityFinishMovement(IEventData eventData) { if (mapManager.Contains(entity)) { EntityFinishMovementEvent entityEvent = eventData as EntityFinishMovementEvent; if (IsEntityInRange(entityEvent.PreviousPosition, entity.CellTransform.Position) == true && IsEntityInRange(entityEvent.CurrentPosition, entity.CellTransform.Position) == false) { Entity activeEntity = entityManager.Get(entityEvent.EntityId); interaction.EntityExitsRange(activeEntity, entity); } } }
private void OnMovementFinish(IEventData data) { if (enabled) { EntityFinishMovementEvent movementEvent = data as EntityFinishMovementEvent; if (mapManager.Map[movementEvent.CurrentPosition].Items.Count > 0) { List <Entity> items = new List <Entity>(mapManager.Map[movementEvent.CurrentPosition].Items); for (int i = 0; i < items.Count; i++) { Item item = items[i].GetComponent <Item>(); if (item != null && slotsToPick.Contains(item.ItemInfo.InventorySlot)) { Item storedItem = inventory.GetItem(item.ItemInfo.InventorySlot); if (storedItem == null) { if (mapManager.RemoveItem(items[i], movementEvent.CurrentPosition)) { inventory.AddItem(item); AddItemAnimation(item); } } else if ((storedItem.ItemInfo.Id == item.ItemInfo.Id && item.ItemInfo.Stackable == true)) { if (mapManager.RemoveItem(items[i], movementEvent.CurrentPosition)) { inventory.AddItemAmount(item); AddItemAnimation(item); } } } } } } }