-
-
Notifications
You must be signed in to change notification settings - Fork 418
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
4 Стикера #13652
base: master
Are you sure you want to change the base?
The head ref may contain hidden characters: "4\u0421\u0442\u0438\u043A\u0435\u0440\u0430"
4 Стикера #13652
Conversation
Changelog status: ✔️ |
Добавлена забытая пустая строчка на конце файла.
Гусев респект. Да просто декор, но хоть что-то |
Это кусок моего старого ПРа годовой давности. Там просили разделить на несколько. Вот, спустя год и рост над собой, пришёл и просто разделил. |
срочно мерж это ахуенно |
code/modules/paperwork/stickers.dm
Outdated
data = "[infolinks ? info_links : info][stamp_text]" | ||
|
||
if(view) | ||
var/datum/browser/popup = new(user, "window=[name]", "[name]", 200, 200, ntheme = theme_color) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Мб просто вынести эти параметры в /obj/item/weapon/paper, а не копипастить прок? Я про тему и размеры окошка
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
оки
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Сделано
transform = M | ||
user.drop_from_inventory(src, target.loc, text2num(click_params[ICON_X]) + target.pixel_x - world.icon_size / 2, text2num(click_params[ICON_Y]) + target.pixel_y - world.icon_size / 2) | ||
|
||
AddComponent(/datum/component/bounded, target, 0, 0, CALLBACK(src, PROC_REF(resolve_stranded))) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А точно компонента нужна? Оно точно нормально перемещается вместе с объектами?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Да, я тестил, норм перемещается с объектами.
code/modules/paperwork/stickers.dm
Outdated
if(!proximity) return | ||
if(!istype(target, /obj/structure) && !ismachinery(target)) return | ||
if(src.loc != user) return |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if(!proximity) return | |
if(!istype(target, /obj/structure) && !ismachinery(target)) return | |
if(src.loc != user) return | |
if(!proximity) | |
return | |
if(!istype(target, /obj/structure) && !ismachinery(target)) | |
return | |
if(loc != user) | |
return |
Вроде как, проверка loc != user лишняя, так как афтер аттак только так и вызывается, но не уверен.
Ну и, а если я хочу прилепить стикер к моей любимой корове и назвать её "Бетси", почему нельзя? Почему к мобам нельзя приклеивать и к любым и темам?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
К айтемам нельзя клеить, я так понимаю, из-за компоненты, которая заставляет следовать стикер за таргетом, но это же кринж? Может вместо компоненты, у всем /obj будет лист стикеров, а сами стикеры добавляются через vis_contents (чтобы были кликабельными) ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
звучит замудрённо. Да и мой стикер, например, может от ветра улететь. Норм. Ну и сгореть может, и вообще, существует в мире как бумажка.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Почему там эти проверки? По факту, код нагло скопирован у бумажки. Там есть эти проверки. Вот и себе забрал в стикер.
Наследовать не вышло бы потому что, ну, стикером вытирать кровь не хочу.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А на мобов нельзя вешать потому что тогда имбазавешался стикерами и у тебя мегаброня от мили ударов. Или у моба. Крч, не оч.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
а у меня почему-то, есть, хм, стой, я перепутал чтоль.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Да, путаю. В любом случае, я не вижу где у афтераттак есть проверка на то что итем не в юзере.
Я уберу и проверю, мб это я так баг фиксил.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А на мобов нельзя вешать потому что тогда имбазавешался стикерами и у тебя мегаброня от мили ударов. Или у моба. Крч, не оч.
почему нельзя сделать чтоб клик по стикеру засчитывался как клик по мобу.....
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А, да, забыл написать. Я убрал проверку на лок == юзер и ничего не сломалось. Хз зачем она существовала тогда, я потестил и так, и эдак - всё норм. Крч, вот, сделано, получается.
if(dist >= bounds.min_dist && dist <= bounds.max_dist) | ||
return TRUE | ||
|
||
qdel(GetComponent(/datum/component/bounded)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А как же RemoveComponent() ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Прикол в том что у нас везде в билде "qdel(GetComponent", потому я и выбрал абсолютно такую же вещь.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Точно RemoveComponent работает так как мне надо?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
removecomponent это другое
на тг уже споткнулись об это и переименовали в ClearFromParent()
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
пепец
code/modules/paperwork/stickers.dm
Outdated
var/prev_intent = user.a_intent | ||
user.set_a_intent(INTENT_GRAB) | ||
attack_hand(user) | ||
user.set_a_intent(prev_intent) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Убери это переключение интентов.. Это же 💀. Я думаю сам поймешь как
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
та прост параметр у атакхенда добавлю форсграб или тип того
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
На самом деле я просто скопировал свой код годовалой давности в этих ПРах и сам в афиге зачем тут сет интент...
Почему мне тогда казалось это хорошей идеей...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Сделано
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ты не пон, мне надо чтобы если... ай ладно, пофиг, я перепишу просто на другой функционал, видимо.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
без вызова аттак_хенд из маус_дроп
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Переписал
Убрано насильное изменение интента игрока на Граб чтобы поднять пачку стикеров путём добавления переменной forceGrab что обходит проверку на граб в функции attack_hand
Убран копипаст функции show_content путём добавления трёх переменных в /obj/item/weapon/paper. windowX, windowY, windowTheme для ширины, высоты и темы окошка соответственно.
Переписал маусдроп на попытку положить стопку стикеров в руку вместо вызова аттак_хенд. Не берите, дети, легасикод в свои фичи. Может легасикод быть по-дебильному написан и замержен легасимейнтейнером.
Описание изменений
Добавлены 4 стикера которые можно клеить на всякое и писать на них надписи.
Почему и что этот ПР улучшит
Начинаю парад атомизации своих непропущенных ПРов.
Авторство
AndreyGysev
Чеинжлог
🆑