Dyestuff Helper - Подсчет лута для изготовления n-ного кол-ва красок.

Тема в разделе 'Информационный раздел', создана пользователем Илья, 1 дек 2010.

  1. Илья 100500+1

    На форуме с:
    6 авг 2008
    Сообщения:
    314
    Адрес:
    Москва
    Прошу, не нужно сейчас говорить, что это очередное изобретение велосипеда. Пишу для оттачивания навыков программирования.

    [IMG]

    Кнопка Apply применяет выбранное кол-во краски к выбранной строке.
    Параметр All позволяет применить ко всем строкам 1 и то же значение поля "Кол-во"
    Ну и Calculate выдаст все необходимое.

    Ссылка: http://narod.ru/disk/693040001/dsh.zip.html
    Пароль: lumiro.net
  2. NecroMAX sooo saaad

    На форуме с:
    20 ноя 2008
    Сообщения:
    4.964
    По шаронову делал небось? Там рецепты красок некоторые неправильные.
  3. Илья 100500+1

    На форуме с:
    6 авг 2008
    Сообщения:
    314
    Адрес:
    Москва
    Ну да, по шаронову, лениво было в моррок идти. А вообще все рецепты красок хранятся в dyes.ini, так что каждый сможет отредактировать сам =)

    blue - Blue Herb
    green - Green Herb
    red - Red Herb
    yellow - Yellow Herb
    white - White Herb
    detri - Detrimindexta
    karvo - Karvodailnirol
    alco - Alcohol
    eb - Empty Bottle
    zeny - Zeny :)
  4. Hooligan Няшка Покемон! :P

    На форуме с:
    30 июн 2010
    Сообщения:
    848
    Клёвая штучка, спасибо, мне точно пригодится. :)
  5. Lillit Юля

    На форуме с:
    30 янв 2010
    Сообщения:
    174
    Адрес:
    Нижний Новгород
    спасибо, мне тоже пригодится.
  6. Илья 100500+1

    На форуме с:
    6 авг 2008
    Сообщения:
    314
    Адрес:
    Москва
    upd: Обновил первый пост. Слегка переделал внешний вид и прошелся по нпц и сверил рецепты.
  7. Ёжик Мягкий и Пушистый

    На форуме с:
    6 авг 2008
    Сообщения:
    2.128
    Адрес:
    Минск
    Зря альфа контролы используешь, очень много мусора в проекте идёт. В данном случае ты не используешь ничего того, чего нет в стандартном наборе Дэльфишных классов, а вот размер существенно вырос. Пользовался бы стандартными классами не пришлось бы использовать ASPack для упаковки, не тянулся бы в проект классы и формы калькулятора, календаря, формы выбора цвета, выбора директории и т.д.

    Ini файл мог бы расширить. Сделать одну инишку в качестве базы итемов, в которой бы итемы хранились в виде имя секции -- [id_итема], Name = Название итема, Img = ссылка на файл с изображением итема. Вторую инишку в качестве рецептов, где опять же [Id_изготавливаемого_итема], Name = Название изготавливаемого итема, Img = ссылка на файл с изображением итема, SubItemCount = кол-во используемых различных ингридиентов, si_n_id = id ингридиента, si_n_count = кол-во ингридиентов, где n - номер итема по счёту.
    Ну и соответственно в проге это всё загружать и формировать списки рецептов и подсчитывать кол-во нужных итемов. Получилась бы расширяемая прога в плане добавления/удаления рецептов без пересборки и изменения логики.
  8. Илья 100500+1

    На форуме с:
    6 авг 2008
    Сообщения:
    314
    Адрес:
    Москва
    Ты еще код не видел, govnokod.ru отдыхает) Работает и хрен бы с ним.

    А по теме: чую программу разобрал на составляющие... Из альфа-контрола только sAlphaImageList, чтоб фон у картинок был прозрачный.
  9. Ёжик Мягкий и Пушистый

    На форуме с:
    6 авг 2008
    Сообщения:
    2.128
    Адрес:
    Минск
    Не, код мне не интересен. Всё банально просто реализуется.
    Прозрачность и в обычном ImageList пахала вроде. Во всяком случае она там есть.
  10. Илья 100500+1

    На форуме с:
    6 авг 2008
    Сообщения:
    314
    Адрес:
    Москва
    Пахала бы - не стал бы трогать альфа-контрол вообще.
  11. TriangeR Amore Mio

    На форуме с:
    6 авг 2008
    Сообщения:
    506
    Адрес:
    Azerbaijan Republic
    Спасибо, нужная вещица))
  12. VibratorX кросы лохи

    На форуме с:
    3 ноя 2008
    Сообщения:
    288
    спасибо
  13. Ёжик Мягкий и Пушистый

    На форуме с:
    6 авг 2008
    Сообщения:
    2.128
    Адрес:
    Минск
    Вообще-то оно и сейчас работает.
    [IMG]

    Мне вот больше интересно, на кой нужна прозрачность, если область ListView белого цвета. Достаточно поменять фон картинки на белый и обойтись без использования левых вещей в проекте.
  14. Dancing with Aute Ты так умрёшь

    На форуме с:
    13 июн 2010
    Сообщения:
    902
    Адрес:
    /dev/urandom
    Мне кажется, эти ваши фразы немного противоречат друг другу.
  15. Илья 100500+1

    На форуме с:
    6 авг 2008
    Сообщения:
    314
    Адрес:
    Москва
    Оттачивать - не значит оптимизировать код, я учусь пользоваться разными компонентами. Хотя я видимо не то хотел сказать под словом "оттачивать".

    Ну как вариант, но вот хочу именно прозрачный.

    А да, вспомнил, почему прозрачный так упорно делал. Когда выделяешь - белая рамка у выделенной картинки некрасиво смотрится.
  16. Ёжик Мягкий и Пушистый

    На форуме с:
    6 авг 2008
    Сообщения:
    2.128
    Адрес:
    Минск
    2-мя постами выше скрин показывает, что прозрачность там есть и она работает. Картинка чёрная с красным пятном. Добавлена в imagelist и выбрана прозрачность для чёрного цвета.
  17. Илья 100500+1

    На форуме с:
    6 авг 2008
    Сообщения:
    314
    Адрес:
    Москва
    Сколько не бился, у меня не вышло сделать прозрачность в стандартном ImageList. Прозрачный фон менялся на черный.
  18. Alair right

    На форуме с:
    19 янв 2009
    Сообщения:
    2.837
    Адрес:
    Эльфийское гетто
    А картинка с прозрачным фоном по дефолту чем плоха?
  19. Ёжик Мягкий и Пушистый

    На форуме с:
    6 авг 2008
    Сообщения:
    2.128
    Адрес:
    Минск
    Тем, что в Bmp прозрачность не всунешь, а gif и прочие форматы, у которых есть прозрачность не катят для данных компонентов.
  20. Ёжик Мягкий и Пушистый

    На форуме с:
    6 авг 2008
    Сообщения:
    2.128
    Адрес:
    Минск
    В событие формы OnCreate вставь для теста такой код (на форме соответственно должен быть ImageList с картинками. Имя сменишь на своё):
    Код:
     
    var
      bmp:TBitmap;
      i : integer;
    begin
      bmp := TBitmap.Create();
      for i := 0 to ImageList1.Count - 1 do
      begin
        //  чуток подправил, лишнее действие было
        if (ImageList1.GetBitmap(i, bmp)) then
            ImageList1.ReplaceMasked(i, bmp, clBlack);
      end;
      bmp.Free;
    end;