Пример #1
0
    public void FUN_3838(TrainEngine param1)
    {
        Vector3Int local_10;

        local_10 = Utilities.FUN_24304(vTransform, param1.vTransform.position);

        if (local_10.x < 0)
        {
            local_10.x = -local_10.x;
        }

        if (local_10.x < 0x10001)
        {
            if (local_10.z < 0)
            {
                if (-local_10.z < (param1.DAT_B0 - DAT_B4) + 0x10000)
                {
                    param1.DAT_A8 = this;
                    DAT_AC        = param1;
                }
            }
            else
            {
                if (local_10.z < (DAT_B0 - param1.DAT_B4) + 0x10000)
                {
                    DAT_A8        = param1;
                    param1.DAT_AC = this;
                }
            }
        }
    }
Пример #2
0
    public void FUN_3754()
    {
        RSEG_DB rVar1;
        int     iVar2;

        DAT_A8 = null;
        DAT_B0 = vCollider.reader.ReadInt32(24) + 0x5000;
        DAT_B4 = vCollider.reader.ReadInt32(12) - 0x5000;
        rVar1  = LevelManager.instance.FUN_518DC(screen, -1);
        DAT_B8 = rVar1;
        DAT_C0 = 1;
        iVar2  = rVar1.FUN_51334(screen);
        DAT_C4 = iVar2 << 16;

        if (tags != 0)
        {
            DAT_BC = 3814;
            flags |= 0x80;
        }

        physics2.X = 0;
        flags     |= 0x100;
        physics2.Y = 0;
        physics2.Z = 0;
        DAT_A0     = new Vector3Int(0x10, 0x20, 0x40);
        GameManager.instance.FUN_30334(GameManager.instance.worldObjs, 20, this);
    }
        private bool API_CreateSafeZone(TrainEngine workcart)
        {
            if (workcart.GetComponent <SafeCart>() != null)
            {
                return(true);
            }

            return(TryCreateSafeZone(workcart));
        }
        private bool?OnEntityTakeDamage(TrainEngine workcart)
        {
            if (workcart.GetComponent <SafeCart>() != null)
            {
                // Return true (standard) to cancel default behavior (prevent damage).
                return(true);
            }

            return(null);
        }
Пример #5
0
 void OnTriggerEnter2D(Collider2D collide)
 {
     if (collide.tag == "Engine")
     {
         TrainEngine te = collide.GetComponent <TrainEngine>();
         if (te.rigidbody.velocity.x < 40)
         {
             gm.SendMessage("Victory");
         }
     }
 }
            private void Awake()
            {
                _workcart = GetComponent <TrainEngine>();
                if (_workcart == null)
                {
                    return;
                }

                AddVolumetricSafeZone();
                MaybeAddTurrets();
            }
        private static bool TryCreateSafeZone(TrainEngine workcart)
        {
            if (AddSafeZoneWasBlocked(workcart))
            {
                return(false);
            }

            workcart.gameObject.AddComponent <SafeCart>();
            workcart.SetHealth(workcart.MaxHealth());
            Interface.CallHook("OnWorkcartSafeZoneCreated", workcart);

            return(true);
        }
Пример #8
0
    public void FUN_38FC()
    {
        TrainEngine tVar1;

        tVar1 = DAT_A8;

        if (tVar1 != null)
        {
            DAT_A8       = null;
            tVar1.DAT_AC = null;
        }

        tVar1 = DAT_AC;

        if (tVar1 != null)
        {
            DAT_AC       = null;
            tVar1.DAT_A8 = null;
        }
    }
 private void OnEntitySpawned(TrainEngine workcart)
 {
     TryCreateSafeZone(workcart);
 }
 public void RemoveWorkcart(TrainEngine workcart)
 {
     SafeWorkcarts.Remove(workcart.net.ID);
     Save();
 }
 public void AddWorkcart(TrainEngine workcart)
 {
     SafeWorkcarts.Add(workcart.net.ID);
     Save();
 }
        private static bool AddSafeZoneWasBlocked(TrainEngine workcart)
        {
            object hookResult = Interface.CallHook("OnWorkcartSafeZoneCreate", workcart);

            return(hookResult is bool && (bool)hookResult == false);
        }