コード例 #1
0
        private void CheckPickup(BasePlayer player, BaseVehicle entity)
        {
            if (entity == null)
            {
                return;
            }

            if (entity.OwnerID != player.userID)
            {
                Message(player, "Pickup Ownership");
                return;
            }

            var container = entity.GetFuelSystem()?.GetFuelContainer();

            if (container != null && container.IsValid() && container.IsLocked() == false && container.inventory.IsLocked() == false)
            {
                Message(player, "Fuel");
                return;
            }

            foreach (var value in skins)
            {
                if (value.Value == entity.PrefabName)
                {
                    if (permission.UserHasPermission(player.UserIDString, permPickup))
                    {
                        entity.Kill();
                        GiveItem(player, value.Key);
                    }

                    return;
                }
            }
        }
コード例 #2
0
        private static void AdjustFuel(BaseVehicle vehicle, int desiredFuelAmount)
        {
            var fuelSystem = vehicle.GetFuelSystem();

            if (fuelSystem == null)
            {
                return;
            }

            var fuelAmount = desiredFuelAmount < 0
                ? fuelSystem.GetFuelContainer().allowedItem.stackable
                : desiredFuelAmount;

            var fuelItem = fuelSystem.GetFuelItem();

            if (fuelItem != null && fuelItem.amount != fuelAmount)
            {
                fuelItem.amount = fuelAmount;
                fuelItem.MarkDirty();
            }
        }