コード例 #1
0
ファイル: Safe.cs プロジェクト: root-cause/gtmp-SafeCracker
        public void Destroy(bool check_players = false)
        {
            if (check_players)
            {
                foreach (NetHandle handle in ColShape.getAllEntities())
                {
                    if (API.shared.getEntityType(handle) != EntityType.Player)
                    {
                        continue;
                    }

                    Client player = API.shared.getPlayerFromHandle(handle);
                    if (player == null)
                    {
                        continue;
                    }

                    player.triggerEvent("SetSafeNearby", false);
                    player.triggerEvent("SetDialInfo", 0.0, false);
                    player.resetData("temp_SafeID");
                }
            }

            DestroyLoot();

            Object.delete();
            DoorObject.delete();
            Label.delete();

            API.shared.deleteColShape(ColShape);
            if (Timer != null)
            {
                API.shared.stopTimer(Timer);
            }
        }
コード例 #2
0
        public void ArmedBody_WeaponChange(Client player, WeaponHash old_weapon)
        {
            if (WeaponData.ContainsKey(old_weapon))
            {
                CreateWeaponProp(player, old_weapon);
            }

            WeaponHash current_weapon = player.currentWeapon;

            if (WeaponData.ContainsKey(current_weapon))
            {
                int type = (int)WeaponData[current_weapon].Type;

                if (player.hasData(WeaponKeys[type]))
                {
                    GrandTheftMultiplayer.Server.Elements.Object obj = player.getData(WeaponKeys[type]);

                    if (obj.model == API.getHashKey(WeaponData[current_weapon].Model))
                    {
                        obj.delete();
                        player.resetData(WeaponKeys[type]);
                    }
                }
            }
        }
コード例 #3
0
        public void RemoveWeaponProp(Client player, WeaponAttachmentType type)
        {
            int type_int = (int)type;

            if (!player.hasData(WeaponKeys[type_int]))
            {
                return;
            }

            GrandTheftMultiplayer.Server.Elements.Object obj = player.getData(WeaponKeys[type_int]);
            obj.delete();

            player.resetData(WeaponKeys[type_int]);
        }
コード例 #4
0
        public void RemoveWeaponProps(Client player)
        {
            foreach (string key in WeaponKeys)
            {
                if (!player.hasData(key))
                {
                    continue;
                }

                GrandTheftMultiplayer.Server.Elements.Object obj = player.getData(key);
                obj.delete();

                player.resetData(key);
            }
        }
コード例 #5
0
        public void RemovePlayerWeapon(Client player, WeaponHash weapon)
        {
            if (WeaponData.ContainsKey(weapon))
            {
                string key = WeaponKeys[(int)WeaponData[weapon].Type];

                if (player.hasData(key))
                {
                    GrandTheftMultiplayer.Server.Elements.Object obj = player.getData(key);

                    if (obj.model == API.getHashKey(WeaponData[weapon].Model))
                    {
                        obj.delete();
                        player.resetData(key);
                    }
                }
            }

            player.removeWeapon(weapon);
        }
コード例 #6
0
 public void Delete()
 {
     _itemObject.delete();
     _itemLabel.delete();
 }
コード例 #7
0
 public void Destroy()
 {
     Object.delete();
     Label.delete();
 }