Skip to content
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

Бутылочка #3865

Merged
merged 20 commits into from
Sep 19, 2019
Merged

Бутылочка #3865

merged 20 commits into from
Sep 19, 2019

Conversation

KIBORG04
Copy link
Member

Описание изменений

Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.

Почему и что этот ПР улучшит

Этот способ добавляет игру помимо кубика выбирать случайного персонажа.

Авторство

Я

Чеинжлог

🆑

  • tweak: Добавлена возможность раскрутить бутылку.

Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.
Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.
Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.
Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.
@TauKitty
Copy link
Contributor

Changelog status: ✔️

@TauKitty TauKitty added the Tweak label Aug 22, 2019
@KIBORG04 KIBORG04 changed the title Бутылочка [WiP]Бутылочка Aug 22, 2019
@ZVee
Copy link
Contributor

ZVee commented Aug 22, 2019

Кстати, еще очень может быть, что смогут госты или крутить бутылку или останавливать, и там трупы, мыши и т.д. Что конечно прикольно, но вспоминая ситуацию со стульями - не прикольно.

Использовал советы ревьюверов, улучшена анимация.
@KIBORG04 KIBORG04 changed the title [WiP]Бутылочка [WIP]Бутылочка Aug 23, 2019
Теперь достаточно просто взять бутылку, что бы она вернулась в изачальное положение
Теперь бутылка падает из инвентаря на пол
@KIBORG04 KIBORG04 changed the title [WIP]Бутылочка Бутылочка Aug 24, 2019
Изменена проверка на человека, улучшение читаемости кода, напитки в пакетиках нельзя крутить
Доп. проверки на статусы, убрана вторая проверка на человека, сделан дроп бутылки под себя, больше нельзя настакивать кручение, поменял буквы с цифрами местами, где я захотел, добивил verb -= в atom_init
Верб убирается в родителе-атомините,  бутылка начинает вереться только из рук, на полу
@ZVee
Copy link
Contributor

ZVee commented Sep 5, 2019

На всякий случай про мерж - не знаю дождусь ли следующих фиксов в этом ПРе, но скорее всего автор не справится, поэтому возможно ему нужна будет помощь в этом вопросе.

теперь бутылку крутит прок(поэтому добавлены: случайная скорость, обороты, направление), убран плавный доворот
get_activ_hands заменено на is_in_hands
Бутылка не должна теперь крутиться из кармана. Убрал маленьние скорости, что бы не был так заметен некрасивый переход от анимации к результату. Не нужное убрал
return

if(stop_spin_bottle == 0)
if(src == usr.get_active_hand() || src == usr.get_inactive_hand())
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Теперь все правильно, если конечно понял почему именно так. Единственное, надо было наоборот - сначала прок, а потом == src, потому что так уже всюду в коде и немного бросается в глаза.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Что бы используемый предмет принадлежал какой-то из рук?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Нет, оно читается как - равен ли результат прока src (или в твоем изначальном варианте - равен ли src тому, что вернул прок - если ничего не понятно, изучи что такое return и как он работает, а потом между ходом и операторы, и в завершении можно еще изучить приоритеты операторов - все это основы без которых никуда) и никакого иного смысла. А что первое или второе, никакой разницы не играет по факту в данных условиях, но в коде обычно у нас пишут сначала get_active/inactive, а потом сравнение, вот и все (понимаю что тебе может показаться что это неважно, т.к на работу не влияет).

@ZVee
Copy link
Contributor

ZVee commented Sep 10, 2019

@TauCetiStation/maintainers я тут закончил, т.к вроде бы все нюансы утрясли. Остальное там возможно что из стайл гайда или типа того, в общем стандартные процедуры, и это уже надеюсь сами осмотрите.

Уменьшил кол-во скоростей
stop_spin_bottle = 0

/obj/item/weapon/reagent_containers/food/drinks/bottle/pickup(mob/living/user)
animate(src, transform = null, 1) //Restore bottle to its original position
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

А вот этот момент я упустил, почему тут теперь 1 в третьем аргументе? Не говорил менять дефайн на цифру, речь была про то, как это видит человек который читает код и как интерпретирует компилятор.
Сама суть же была в том, что сейчас третий аргумент непонятно к чему, что тогда.

Copy link
Member Author

@KIBORG04 KIBORG04 Sep 10, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

К тайму же, обязательно писать time = 1, или это для других читателей нужно? Какой смысл от дефайна, если он тут не нужен, тем более без flags =?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Скорее всего обязательно, потому что после первого аргумента идет перечисление того, что мы хотим модифицировать, а после них уже аргументы самого прока с настройками - тут все аргументы после первого используются как named arguments (прочти про это тоже кстати).

Если это был time, тогда сделать как animate(src, transform = null, time = 0). Здесь нет смысла в анимации с какой либо продолжительностью. А просто цифра 1 голая - компилятор не придаст этому значений, для него это выглядит норма (в бъенде вообще на самом деле тот еще ад для кодеров и он не самый хороший вариант первого языка для изучения, много вещей познаешь исключительно только через практику, не ожидая что за тебя машина найдет ошибки, плюс отсутствие нормального дебаг инструментария, документации и много вещей которые не задокументированы и можно узнать только от других кодеров и так далее). Поэтому во всем где есть сомнение, надо брать и писать тестовый код, проверять работы - просто вписать в код что-то, скомпилировать и не увидеть ошибок - это частая ловушка для неопытных (тут очень много ерунды позволено вписать и компилятор даже в ус не подует).

цифры заменены на тру и фолс, другая проверка на состояния.
@SpaiR SpaiR merged commit 084f72b into TauCetiStation:master Sep 19, 2019
TauKitty added a commit to TauCetiStation/ClassicChangelog that referenced this pull request Sep 19, 2019
DarthSidiousPalpatine pushed a commit to DarthSidiousPalpatine/TauCetiClassic that referenced this pull request Sep 21, 2019
* Добавлена бутылочка

Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.

* Добавлена бутылочка

Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.

* Добавлена бутылочка

Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.

* Добавлена бутылочка

Бутылку можно раскрутить и она повернется в случайном направлении. Можно вернуть изначальное положение.

* Улучшение механики

Использовал советы ревьюверов, улучшена анимация.

* Упрощение взаимодействия

Теперь достаточно просто взять бутылку, что бы она вернулась в изачальное положение

* Тайпкастинг дропа

Теперь бутылка падает из инвентаря на пол

* Улучшения

Изменена проверка на человека, улучшение читаемости кода, напитки в пакетиках нельзя крутить

* Путь к идеальному спину.

Доп. проверки на статусы, убрана вторая проверка на человека, сделан дроп бутылки под себя, больше нельзя настакивать кручение, поменял буквы с цифрами местами, где я захотел, добивил verb -= в atom_init

* Дорога к идеальному коду

Верб убирается в родителе-атомините,  бутылка начинает вереться только из рук, на полу

* Кардинальные изменения

теперь бутылку крутит прок(поэтому добавлены: случайная скорость, обороты, направление), убран плавный доворот

* Изменения

* забыл удалить строчку

get_activ_hands заменено на is_in_hands

* Изменена опять проверка бутылку в руке

Бутылка не должна теперь крутиться из кармана. Убрал маленьние скорости, что бы не был так заметен некрасивый переход от анимации к результату. Не нужное убрал

* Проверка стала читаемой

* Баланс

* Так выглядит лучше

Уменьшил кол-во скоростей

* Time = 0

* Улучшение вида

цифры заменены на тру и фолс, другая проверка на состояния.
@TauKitty
Copy link
Contributor

TauKitty commented Jan 5, 2020

This pull request has been mentioned on Tau Ceti Station Forum. There might be relevant details there:

https://forum.taucetistation.org/t/kakie-est-unikalnye-veshhi-na-tau-kite/14937/14

@KIBORG04 KIBORG04 deleted the Bytilochka branch May 26, 2023 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants