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
ДОЛГОЖДАННЫЙ НАНЫТЫЙ ФИКС САПЁРА #11262
The head ref may contain hidden characters: "\u043D\u0430\u043D\u044B\u043B\u0438-\u0444\u0438\u043A\u0441"
ДОЛГОЖДАННЫЙ НАНЫТЫЙ ФИКС САПЁРА #11262
Conversation
Changelog status: ✔️ |
Этот запрос на слияние был упомянут в Tau Ceti Station Forum. Там могут быть соответствующие подробности: https://forum.taucetistation.org/t/kak-vskryvat-lutkrejty-spoilers-ahead/30758/18 |
что |
бля, напиши нормально, что первая НАЖАТАЯ клетка не может быть бомбой |
Написал |
Я против потому что ещё меньше шансов не получить лут, а получить мимека. Никогда не слышал об обязательной механике 1-я клетка != мина. Не считаю что рандом в беспроигрышной лотерее стоит каких-то фиксов чтобы было ещё скучнее |
Поиграй в игру |
Windows 7 сапёр без страховки |
Не проверялась первая кнопка на бомбезность. Теперь проверяется. |
populate_mine() | ||
|
||
/datum/minigame/minesweeper/proc/populate_mine(exclude_x = 0, exclude_y = 0) | ||
while(TRUE) |
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.
В чем заключается быстрота
@Deahaka если что сапёр доказуемо не беспроигрышный, и все равно будут ситуации где проигрываешь чисто из-за рандома. |
Беспроигрышная лотерея это когда ты в любом случае остаёшься в плюсе, а спавн мимика на штраф при возможности просто от него уйти за угол не слишком большая цена за рол на двуручный молоток или пачку блюспейс кристалов. |
if(firstpress) | ||
relocate_mine(y,x) | ||
firstpress = FALSE |
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.
можно же просто клетку сделать пустой, без перегенерации всего поля?
еще firstpress
тут будет работать не для первого нажатия, а для первого нажатия на мину
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.
ты вызываешь relocate_mine, который в свою очередь populate_mine, который в свою очередь делает полную регенерацию поля, брух.
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.
ладно, не совсем, код не очень хороший.
for(var/i = 1 to grid_mines) | ||
while(TRUE) | ||
var/y = rand(1,grid_y) | ||
var/x = rand(1,grid_x) | ||
var/list/L = grid[y][x] | ||
if(L["state"] == STATE_MINE) | ||
continue | ||
else | ||
L["state"] = STATE_MINE | ||
grid_blanks-- | ||
break | ||
populate_mine() |
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.
populate_mine стоит переименовать в какой-нибудь place_mine, и пусть он возвращает true/false и на основе этого ты можешь изменять размер grid_blanks.
Сейчас это нечитабельная фигня, когда ты входишь в массив по grid_blanks и потом дергаешь его непонятно где.
Данный ПР автоматически отмечен как застоявшийся по причине длительного отсутствия обновлений. Он будет закрыт через 7 дней, если никакой активности не будет проявлено. Если вы считаете, что ПР еще актуален, или что я (злобный робот) пристаю к вам зря - просто напишите любой комментарий. Спасибо за ваш вклад. |
нет |
С другой стороны да, Лижард прав. |
Описание изменений
Первая нажатая клетка в сапёре не может быть бомбой.
Почему и что этот ПР улучшит
Наныл на фикс
Авторство
AndreyGysev и все все все, кто помогал в дискорде.
Чеинжлог
🆑