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

Add restricted roles for assassinate contract, add contracts number limit #12750

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

Animusin
Copy link
Contributor

Контракты на убийство выдаются только на глав, квартермейстера и старших офицеров СБ. Общее количество доступных контрактов не может превысить лимит (6 + количество игроков/5).

Чейнджлог
🆑
balance: Контракты на убийство выдаются только на глав и СБ. Общее число активных контрактов ограничено.
/🆑
  • Pull Request полностью завершен, мне не нужна помощь чтобы его закончить.
  • Я внимательно прочитал(-а) все свои изменения и багов в них не нашёл(-ла).
  • Я запускал(-а) сервер со своими изменениями локально и все протестировал(-а).
  • Я ознакомился(-ась) c Guide to Contribute.

@Animusin Animusin requested a review from a team as a code owner August 23, 2024 10:29
@github-actions github-actions bot added the 📜 Есть CL Чейнджлог в наличии и не содержит ошибок label Aug 23, 2024
@Animusin Animusin added the 🌌геймдизайн Затрагивает игровую логику label Aug 23, 2024
@@ -103,6 +104,16 @@ GLOBAL_LIST_INIT(syndicate_factions, list(
return FALSE
return !!(H.species.species_flags & SPECIES_FLAG_NO_ANTAG_TARGET)

/datum/antag_contract/proc/skip_unwanted_job(datum/mind/H)
var/datum/job/title = job_master.GetJob(H.assigned_role)
if(wanted_jobs.len)
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
if(wanted_jobs.len)
if(length(wanted_jobs))

set_next_think(world.time + time_to_next_contract)
if(!contract_list_overfilled())
create_random_contract(1)
set_next_think(world.time + time_to_next_contract)
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
set_next_think(world.time + time_to_next_contract)
set_next_think(world.time + time_to_next_contract)

set_next_think(world.time + time_to_next_contract)

/datum/contract_fixer/proc/contract_list_overfilled()
if(GLOB.all_contracts.len > (6 + round(SSticker.minds.len / 5)))
Copy link
Member

Choose a reason for hiding this comment

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

Может переделаешь на то, что контракты закрыты?
И да length

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📜 Есть CL Чейнджлог в наличии и не содержит ошибок 🌌геймдизайн Затрагивает игровую логику
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants