public void OnTankPartsPrepared(NodeAddedEvent e, AssembledTankNode tank, [JoinAll] SingleNode <CameraRootTransformComponent> cameraNode) { tank.tankVisualRoot.transform.parent = tank.assembledTank.AssemblyRoot.transform; CameraVisibleTriggerComponent component = tank.trackRenderer.Renderer.gameObject.AddComponent <CameraVisibleTriggerComponent>(); tank.Entity.AddComponent(component); component.MainCameraTransform = cameraNode.component.Root; }
public void InitDroneWeapon(NodeAddedEvent e, [Combine] DroneWeaponNode droneWeapon, [JoinByUnit, Context] DroneEffectNode droneEffect, SingleNode <CameraRootTransformComponent> camera) { CameraVisibleTriggerComponent component = droneEffect.effectRendererGraphics.Renderer.gameObject.AddComponent <CameraVisibleTriggerComponent>(); component.MainCameraTransform = camera.component.Root; if (!droneWeapon.Entity.HasComponent <CameraVisibleTriggerComponent>()) { droneWeapon.Entity.AddComponent(component); } }
public void BuildWeaponGraphics(NodeAddedEvent e, [Combine] WeaponGraphicsRendererNode weapon, BattleCameraNode camera) { Renderer renderer = weapon.baseRenderer.Renderer; if (weapon.Entity.HasComponent <CameraVisibleTriggerComponent>()) { weapon.Entity.GetComponent <CameraVisibleTriggerComponent>().MainCameraTransform = camera.cameraRootTransform.Root; } else { CameraVisibleTriggerComponent component = renderer.gameObject.AddComponentIfMissing <CameraVisibleTriggerComponent>(); component.MainCameraTransform = camera.cameraRootTransform.Root; weapon.Entity.AddComponent(component); } }