pack costs are calculated at runtime.#11082
Conversation
Changelog status: ✔️ |
|
Если мне разрешат это сделать прямо в этом ПР-е, то я готов ещё всему прикрутить экспорт кост. Единственное чего опасаюсь я это что остановит Карго от продавания абсолютно всего на станции. |
|
Кто-нибудь помогите придумать как нормально вообще реализовать /datum/export Мне нужно:
|
есть вот такая мысль, так как цены на паки собираются раундстартом и всего 1 раз то может это будет разумней даже... |
|
/datum/export звучит как какая-то фигня, для каждого предмета создавать заебешься |
|
И у теяб будет type.cost_contraband, type.cost_emag, type.cost? |
|
почему при ПРОДАЖЕ должны быть разные цены? |
|
почему нет?... другие покупатели/продавцы... |
| return TRUE | ||
| return FALSE | ||
|
|
||
| /proc/is_path_in_list(t, list/L) |
There was a problem hiding this comment.
is_type_in_typecache делает почти то же самое, только с объектами. Можно обновление с тг взять
///Checks for specific types in specifically structured (Assoc "type" = TRUE|FALSE) lists ('typecaches')
#define is_type_in_typecache(A, L) (A && length(L) && L[(ispath(A) ? A : A:type)])
There was a problem hiding this comment.
Можешь почитать обсуждение в ПР-е по поводу того как вообще выпилить /datum/export ?
Чтобы цена была функцией у объекта и переменной у типа к примеру
тогда вообще не надо будет тайпкеша...
There was a problem hiding this comment.
Предложенный выше initial возможно, но я не знаю что за проблема с контрабандой и прочими ценами.
Цены можно было бы еще отдельным файлом назначать, вида
/atom/var/price_something
/atom/obj/type/price_something = 123
/atom/obj/type2/price_something = 123
Если более глобально, то у объектов и даже мобов уже есть/были разные ценностные характеристики. Была стоимость объектов для пиратов, возможно воксов, есть стоимость в очках исследований. Это всё можно было бы оторвать от объектов в датумы, хранить их в атоме только путем, и initial-ом добывать стоимость. Т.е. для цен был бы почти текущий /datum/export, только в более глобальном смысле.
There was a problem hiding this comment.
проблема в том что к примеру кожу Яна можно продавать только если консоль карго взломана.
если цены будут записаны просто как переменная... ?
There was a problem hiding this comment.
Это всё можно было бы оторвать от объектов в датумы, хранить их в атоме только путем, и initial-ом добывать стоимость. Т.е. для цен был бы почти текущий /datum/export, только в более глобальном смысле.
вот это уже абсолютно не понял.
ты имеешь ввиду
/datum/price
var/vox_price
var/pirate_price
var/export_price
var/export_contraband_price
/datum/price/magboots
export_price = 200
pirate_price = 2000
/obj/magboots
price_type = /datum/price/magboots
?
There was a problem hiding this comment.
либо флаг (можно бинарный) в каких условиях продавать, либо действительно как выше упоминалось, можно указывать несколько цен на каждую ситуацию
There was a problem hiding this comment.
ты имеешь ввиду
да. Потом можно искать цену типо initial(price_type.export_price)
There was a problem hiding this comment.
Смотря, какой вариант тебе кажется удобнее.
There was a problem hiding this comment.
не уверен чем это лучше экспорт датума в плане того что очень много бойлерплейта чтобы указать цену...
This reverts commit facd68a.
Описание изменений
tl;dr: Цены на абсолютно всё кроме оружия и еды теперь 1000 кредитов потому-что нет цены продажи
Принципиально реворкнуто то как считается стоимость карго-ящика на заказ. Отныне в эту стоимость всегда входит ящик в котором придёт заказ, манифест за который можно получить деньги, наценка 10% потому-что я так захотел (на контрабанду 50%, её типо тяжелее сбагрить), и по желанию левой пятки кодера additional_costs, можно сделать чтобы оно рандомилось в какой-то степени чтобы каргонцы могли искать неэффективности в рыночке.
Прошёлся по всем существующим ящикам и выпилил (или не совсем) им cost по следующим принципам:
В остальных случаях просто выпилен
cost, если кто-то хочет чтобы тот или иной набор стоял не столько сколько он стоит в результате этих изменений (минимальная цена набора 1000 кредитов) - пускай добавляет export статью на предметы из набора.В будущем в идеале кто-то подобавляет имеющие смысл export статьи для оружия и рефиллов вендоматов (чтобы они учитывали наполненность рефилла...)
А пока-что живём с тем с чем живём.
Почему и что этот ПР улучшит
В корне решает возможность дюпать деньги заказывая-отправляя что-то
Позволяет регулировать всю ресурсную экономику Исхода меняя лишь одно значение (export статью предмета, она теперь влияет и на "минимальную цену" ГрузТорга(ЦК с него скупает вещи), и на цену ящиков (карго же тоже должно в пределах рыночной цены оперировать, и на собственно экспорт.)
Авторство
Гетап1 очевидно.
Чеинжлог
🆑 Luduk