コード例 #1
0
        public void AttachDetachedWeapon(NodeRemoveEvent e, TankNode tank, [JoinByTank, Context] TankIncarnationNode incornation, [JoinByTank] DetachedWeaponNode weapon)
        {
            this.StopCollide(weapon.weaponDetachCollider);
            WeaponVisualRootComponent weaponVisualRoot = weapon.weaponVisualRoot;

            weaponVisualRoot.transform.SetParent(tank.visualMountPoint.MountPoint, false);
            weaponVisualRoot.transform.localRotation = Quaternion.identity;
            weaponVisualRoot.transform.localPosition = Vector3.zero;
            this.StopCollide(weapon.weaponDetachCollider);
            weaponVisualRoot.VisualTriggerMarker.VisualTriggerMeshCollider.enabled = true;
            weapon.Entity.RemoveComponentIfPresent <DetachedWeaponComponent>();
        }
コード例 #2
0
 public void ConfigureTargetBehaviour(NodeAddedEvent e, TankIncarnationNode tankIncarnation, [JoinByTank, Context] ActivatedAssembledTankNode activatedTank)
 {
     activatedTank.tankVisualRoot.gameObject.GetComponent <TargetBehaviour>().Init(activatedTank.Entity, tankIncarnation.Entity);
     activatedTank.rigidbody.Rigidbody.gameObject.GetComponent <TargetBehaviour>().Init(activatedTank.Entity, tankIncarnation.Entity);
 }
コード例 #3
0
 public void DeleteNameplateOnReincarnation(NodeRemoveEvent e, TankIncarnationNode tank, [JoinByTank] SingleNode <NameplateComponent> nameplate)
 {
     Object.Destroy(nameplate.component.gameObject);
 }
コード例 #4
0
 public void ResetLocalMagazineStorage(NodeAddedEvent evt, LocalHammerMagazineNode weapon, [JoinByTank, Context] TankIncarnationNode tank)
 {
     weapon.magazineLocalStorage.CurrentCartridgeCount = weapon.magazineWeapon.MaxCartridgeCount;
 }
コード例 #5
0
 public void ClearShaderBlockersComponent(NodeRemoveEvent e, TankIncarnationNode tankIncarnation, [JoinByTank] TankNode tank)
 {
     tank.tankOpaqueShaderBlockers.Blockers.Clear();
 }
コード例 #6
0
 public void SetStartMaterials(NodeAddedEvent e, TankIncarnationNode incarnation, [Combine, Context, JoinByTank] RendererReadyForShowingNode renderer)
 {
     this.SetStartMaterials(renderer);
 }
コード例 #7
0
 public void Reset(NodeAddedEvent e, TankIncarnationNode tankIncarnation, [JoinByTank] SingleNode <DetachedWeaponComponent> weapon)
 {
     weapon.Entity.RemoveComponent <DetachedWeaponComponent>();
 }
コード例 #8
0
 public void Reset(NodeAddedEvent e, TankIncarnationNode incarnation, [JoinByTank] InitializedWeaponNode weapon)
 {
     weapon.doubleDamageEffect.Reset();
 }
コード例 #9
0
 public void ResetEffectOnTankIncarnation(NodeRemoveEvent e, TankIncarnationNode tankIncarnation, [JoinByTank] InitializedTankInvisibilityEffectNode tank)
 {
     tank.tankInvisibilityEffectUnity.ResetEffect();
 }
コード例 #10
0
 public void OnReset(NodeAddedEvent e, TankIncarnationNode incarnation, [JoinByTank] TankNode tankNode)
 {
     tankNode.tankMovementSender.LastSentMovementTime = 0.0;
 }
コード例 #11
0
 public void AcceptTankIncarnation(NodeAddedEvent e, SelfTankNode selfTank, [JoinByTank, Context] TankIncarnationNode tankIncarnation)
 {
     tankIncarnation.Entity.AddComponent <TankClientIncarnationComponent>();
 }
コード例 #12
0
 public void OnTankSpawn(NodeAddedEvent e, TankIncarnationNode selfTank, [JoinByTank] WeaponNode weapon)
 {
     weapon.weaponRotationControl.MouseRotationCumulativeHorizontalAngle = 0f;
 }
コード例 #13
0
 public void ReleaseEffectsOnDeath(NodeRemoveEvent e, TankIncarnationNode tankIncarnation, [JoinByTank] TankWithEffectsNode tank, [JoinAll] SingleNode <MapInstanceComponent> map)
 {
コード例 #14
0
 public void Clean(NodeRemoveEvent e, TankIncarnationNode tankIncarnation, [JoinByTank] SingleNode <SelfTankReadyForCameraComponent> tank)
 {
     tank.Entity.RemoveComponent <SelfTankReadyForCameraComponent>();
 }
コード例 #15
0
 public void DetachHUDEffectInstance(NodeRemoveEvent e, TankIncarnationNode tankIncarnation, [JoinByTank, Combine] SingleNode <SelfTargetHitFeedbackHUDInstanceComponent> effect)
 {
     tankIncarnation.tankGroup.Detach(effect.Entity);
 }