private void updatePosition(ref ItemVisualComponent component, PositionComponent positionComponent) { Vector3Int pos = positionComponent.position; Vector3 scenePos = ViewUtil.fromModelToScene(pos) + new Vector3(0, 0, -0.1f); component.spriteRenderer.gameObject.transform.localPosition = scenePos; }
public void Run() { foreach (var i in filter) { EcsEntity entity = filter.GetEntity(i); ItemVisualComponent component = filter.Get1(i); Object.Destroy(component.go); entity.Del <ItemVisualComponent>(); } }
private void createSpriteForItem(EcsEntity entity) { ItemComponent item = entity.Get <ItemComponent>(); ItemVisualComponent visual = new ItemVisualComponent(); Vector3 spritePosition = ViewUtil.fromModelToScene(entity.pos()); visual.go = Object.Instantiate(itemPrefab, spritePosition + new Vector3(0, 0, -0.1f), Quaternion.identity); visual.go.transform.SetParent(GameView.get().mapHolder); visual.spriteRenderer = visual.go.GetComponent <SpriteRenderer>(); visual.spriteRenderer.sprite = createSprite(ItemTypeMap.getItemType(item.type)); entity.Replace(visual); }