Skip to content

Commit

Permalink
Merge branch 'bounty_translate' of https://github.com/Chorden523/Band…
Browse files Browse the repository at this point in the history
…astation220 into bounty_translate
  • Loading branch information
Chorden523 committed Jul 8, 2024
2 parents 96594f7 + 2143993 commit 987672d
Show file tree
Hide file tree
Showing 14 changed files with 77 additions and 70 deletions.
8 changes: 4 additions & 4 deletions code/modules/mafia/abilities/investigative/thoughtfeed.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,16 @@
* During the night, thoughtfeeding will reveal the person's exact role.
*/
/datum/mafia_ability/thoughtfeeder
name = "Мысленная пища"
ability_action = "наслаждайтесь воспоминаниями"
name = "Поглотить мысли"
ability_action = "насладиться воспоминаниями"

/datum/mafia_ability/thoughtfeeder/perform_action_target(datum/mafia_controller/game, datum/mafia_role/day_target)
. = ..()
if(!.)
return FALSE

if((target_role.role_flags & ROLE_UNDETECTABLE))
host_role.send_message_to_player(span_warning("[target_role.body.real_name], его воспоминания показывают, что он [pick(game.all_roles - target_role)]."))
host_role.send_message_to_player(span_warning("Воспоминания [target_role.body.real_name] показывают, что он [pick(game.all_roles - target_role)]."))
else
host_role.send_message_to_player(span_warning("[target_role.body.real_name], его Воспоминания показывают, что он [target_role.name]."))
host_role.send_message_to_player(span_warning("Воспоминания [target_role.body.real_name] показывают, что он [target_role.name]."))
return TRUE
2 changes: 1 addition & 1 deletion code/modules/mafia/abilities/killing/alert.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
*/
/datum/mafia_ability/attack_visitors
name = "Предупреждение"
ability_action = "Сегодня вечером отправьте всех посетителей домой картечью."
ability_action = "сегодня вечером накормить всех посетителей картечью"
use_flags = CAN_USE_ON_SELF

/datum/mafia_ability/attack_visitors/set_target(datum/mafia_controller/game, datum/mafia_role/new_target)
Expand Down
4 changes: 2 additions & 2 deletions code/modules/mafia/abilities/killing/flicker_rampage.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/
/datum/mafia_ability/flicker_rampage
name = "Мерцание/Буйство"
ability_action = "попытка нападения или омрачения"
ability_action = "попробовать напасть или омрачить"
action_priority = COMSIG_MAFIA_NIGHT_KILL_PHASE

///List of all players in the dark, which we can rampage.
Expand All @@ -26,7 +26,7 @@
darkened_players += target_role
else
for(var/datum/mafia_role/dead_players as anything in darkened_players)
dead_players.send_message_to_player(span_userdanger("Из темноты появляется тень.!"))
dead_players.send_message_to_player(span_userdanger("Из темноты появляется тень!"))
dead_players.kill(game, host_role, FALSE)
darkened_players -= dead_players
return TRUE
Expand Down
8 changes: 4 additions & 4 deletions code/modules/mafia/abilities/killing/kill.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
*/
/datum/mafia_ability/attack_player
name = "Нападение"
ability_action = "попытка нападения"
ability_action = "попробовать напасть"
action_priority = COMSIG_MAFIA_NIGHT_KILL_PHASE
///The message told to the player when they are killed.
var/attack_action = "убит"
Expand All @@ -20,7 +20,7 @@
if(!target_role.kill(game, host_role, FALSE))
host_role.send_message_to_player(span_danger("Твоя попытка убить [target_role.body.real_name] был предотвращёна!"))
else
target_role.send_message_to_player(span_userdanger("Вы были [attack_action] \a [host_role.name]!"))
target_role.send_message_to_player(span_userdanger("Вы были [attack_action]ы [host_role.name]!"))
if(honorable && (target_role.team != MAFIA_TEAM_TOWN))
host_role.send_message_to_player(span_userdanger("Вы убили невинного члена экипажа. Вы умрете завтра ночью."))
RegisterSignal(game, COMSIG_MAFIA_SUNDOWN, PROC_REF(internal_affairs))
Expand All @@ -34,6 +34,6 @@

/datum/mafia_ability/attack_player/execution
name = "Казнь"
ability_action = "попытка казни"
attack_action = "казнён"
ability_action = "попробовать казнить"
attack_action = "казнен"
honorable = TRUE
4 changes: 2 additions & 2 deletions code/modules/mafia/abilities/protective/heal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/
/datum/mafia_ability/heal
name = "Исцеление"
ability_action = "Исцеление"
ability_action = "исцелить"
action_priority = COMSIG_MAFIA_NIGHT_ACTION_PHASE
use_flags = CAN_USE_ON_OTHERS | CAN_USE_ON_SELF

Expand Down Expand Up @@ -51,7 +51,7 @@
*/
/datum/mafia_ability/heal/defend
name = "Защита"
ability_action = "защита"
ability_action = "защитить"
saving_message = "охрана отбила нападавшего"

/datum/mafia_ability/heal/defend/prevent_kill(datum/source, datum/mafia_controller/game, datum/mafia_role/attacker, lynch)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/mafia/abilities/protective/vest.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
*/
/datum/mafia_ability/vest
name = "Жилет"
ability_action = "Защитите себя жилетом"
ability_action = "защитить себя жилетом"
use_flags = CAN_USE_ON_SELF
///Amount of vests that can be used until the power deletes itself.
var/charges = STARTING_VEST_AMOUNT
Expand Down
2 changes: 1 addition & 1 deletion code/modules/mafia/abilities/support/self_reveal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/
/datum/mafia_ability/self_reveal
name = "Откровение"
ability_action = "раскройте свою роль"
ability_action = "раскрыть свою роль"
action_priority = null
valid_use_period = MAFIA_PHASE_DAY
use_flags = CAN_USE_ON_SELF
Expand Down
4 changes: 2 additions & 2 deletions code/modules/mafia/abilities/voting/changeling_kill.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
* The attacker will always be the first person in the list, killing them will go to the next.
*/
/datum/mafia_ability/changeling_kill
name = "Голос на убийство"
ability_action = "попытка поглощения"
name = "Голос за убийство"
ability_action = "попробовать поглотить"
action_priority = COMSIG_MAFIA_NIGHT_KILL_PHASE
///Boolean on whether a Changeling has been sent to attack someone yet.
var/static/ling_sent = FALSE
Expand Down
54 changes: 27 additions & 27 deletions code/modules/mafia/controller.dm
Original file line number Diff line number Diff line change
Expand Up @@ -190,8 +190,8 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
create_bodies()
SEND_GLOBAL_SIGNAL(COMSIG_MAFIA_GAME_START, src)
start_day(can_vote = FALSE)
send_message(span_notice("<b>The selected map is [current_map.name]!</b></br> [current_map.description]"))
send_message("<b>Day [turn] started! There is no voting on the first day. Say hello to everybody!</b>")
send_message(span_notice("<b>Текущая карта [current_map.name]!</b></br> [current_map.description]"))
send_message("<b>[turn] день начался! В первый день голосование не проводится. Скажите всем привет!</b>")
next_phase_timer = addtimer(CALLBACK(src, PROC_REF(check_trial), FALSE), (FIRST_DAY_PERIOD_LENGTH / time_speedup), TIMER_STOPPABLE) //no voting period = no votes = instant night
for(var/datum/mafia_role/roles as anything in all_roles)
var/obj/item/modular_computer/modpc = roles.player_pda
Expand Down Expand Up @@ -219,7 +219,7 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
send_message("<span class='bold notice'>With only [living_roles.len] living players left, the game timers have been sped up.</span>")

if(can_vote)
send_message("<b>Day [turn] started! Voting will start in 1 minute.</b>")
send_message("<b>[turn] день начался! Голосование начнется через 1 минуту.</b>")
next_phase_timer = addtimer(CALLBACK(src, PROC_REF(start_voting_phase)), (DAY_PERIOD_LENGTH / time_speedup), TIMER_STOPPABLE)

/**
Expand All @@ -232,7 +232,7 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
/datum/mafia_controller/proc/start_voting_phase()
phase = MAFIA_PHASE_VOTING
next_phase_timer = addtimer(CALLBACK(src, PROC_REF(check_trial), TRUE), (VOTING_PERIOD_LENGTH / time_speedup), TIMER_STOPPABLE) //be verbose!
send_message("<b>Voting started! Vote for who you want to see on trial today.</b>")
send_message("<b>Голосование началось! Проголосуйте за того, кого вы хотите видеть на суде сегодня.</b>")

/**
* Players have voted someone up, and now the person must defend themselves while the town votes innocent or guilty.
Expand All @@ -258,7 +258,7 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
for(var/datum/mafia_role/voters as anything in living_roles)
if(voters == loser)
continue
voters.mafia_alert.update_text("[loser.body.real_name] wins the day vote, Listen to their defense and vote INNOCENT or GUILTY!")
voters.mafia_alert.update_text("[loser.body.real_name] был выбран голосованием, выслушайте его защиту и проголосуйте за НЕВИНОВЕН или ВИНОВЕН!")
judgement_abstain_votes += voters

on_trial = loser
Expand All @@ -269,7 +269,7 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
else
lockdown()
if(verbose)
send_message("<b>Not enough people have voted to put someone on trial, nobody will be lynched today.</b>")
send_message("<b>Недостаточно людей проголосовало, чтобы отдать кого-то под суд. Никто не будет линчеван сегодня.</b>")

/**
* Players have voted innocent or guilty on the person on trial, and that person is now killed or returned home.
Expand All @@ -280,24 +280,24 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
*/
/datum/mafia_controller/proc/lynch()
for(var/datum/mafia_role/role as anything in judgement_abstain_votes)
send_message(span_comradio("[role.body.real_name] abstained."))
send_message(span_comradio("[role.body.real_name] воздержался."))

var/total_innocent_votes
for(var/datum/mafia_role/role as anything in judgement_innocent_votes)
send_message(span_green("[role.body.real_name] voted innocent."))
send_message(span_green("[role.body.real_name] проголосовал за невиновность."))
total_innocent_votes += role.vote_power

var/total_guilty_votes
for(var/datum/mafia_role/role as anything in judgement_guilty_votes)
send_message(span_red("[role.body.real_name] voted guilty."))
send_message(span_red("[role.body.real_name] проголосовал за виновность."))
total_guilty_votes += role.vote_power

if(total_guilty_votes > total_innocent_votes) //strictly need majority guilty to lynch
send_message(span_red("<b>Guilty wins majority, [on_trial.body.real_name] has been lynched.</b>"))
send_message(span_red("<b>Голосовавшие за виновность победили, [on_trial.body.real_name] будет линчеван.</b>"))
on_trial.kill(src, lynch = TRUE)
next_phase_timer = addtimer(CALLBACK(src, PROC_REF(send_home), on_trial), (LYNCH_PERIOD_LENGTH / time_speedup), TIMER_STOPPABLE)
else
send_message(span_green("<b>Innocent wins majority, [on_trial.body.real_name] has been spared.</b>"))
send_message(span_green("<b>Голосовавшие за невиновность победили, [on_trial.body.real_name] пощажен.</b>"))
on_trial.body.forceMove(get_turf(on_trial.assigned_landmark))
on_trial = null
if(!check_victory())
Expand Down Expand Up @@ -357,20 +357,20 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
var/victory_message

if(living_mafia.len + living_town.len <= 0)
victory_message = "Draw!</span>" //this is in-case no neutrals won, but there's no town/mafia left.
victory_message = "Ничья!</span>" //this is in-case no neutrals won, but there's no town/mafia left.
for(var/datum/mafia_role/solo as anything in neutral_killers)
victory_message = "[uppertext(solo.name)] VICTORY!</span>"
victory_message = "[uppertext(solo.name)] ПОБЕДИЛ!</span>"
if(!early_start)
award_role(solo.winner_award, solo)

else if(!living_mafia.len && !neutral_killers.len)
victory_message = "TOWN VICTORY!</span>"
victory_message = "ПОБЕДА ГОРОДА!</span>"
if(!early_start)
for(var/datum/mafia_role/townie as anything in living_town)
award_role(townie.winner_award, townie)

else if((living_mafia.len >= anti_mafia_power) && !town_can_kill && !neutral_killers.len)
victory_message = "MAFIA VICTORY!</span>"
victory_message = "ПОБЕДА МАФИИ!</span>"
if(!early_start)
for(var/datum/mafia_role/changeling as anything in living_mafia)
award_role(changeling.winner_award, changeling)
Expand Down Expand Up @@ -456,7 +456,7 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
*/
/datum/mafia_controller/proc/start_night()
phase = MAFIA_PHASE_NIGHT
send_message("<b>Night [turn] started! Lockdown will end in 40 seconds.</b>")
send_message("<b>[turn] ночь началась! Блокировка закончится через 40 секунд.</b>")
SEND_SIGNAL(src, COMSIG_MAFIA_SUNDOWN)
next_phase_timer = addtimer(CALLBACK(src, PROC_REF(resolve_night)), (NIGHT_PERIOD_LENGTH / time_speedup), TIMER_STOPPABLE)

Expand Down Expand Up @@ -502,13 +502,13 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
voter.body.maptext_x = initial(voter.body.maptext_x)
voter.body.maptext_width = initial(voter.body.maptext_width)
voter.body.maptext = null
send_message(span_notice("[voter.body.real_name] retracts their vote for [target.body.real_name]!"), team = teams)
send_message(span_notice("[voter.body.real_name] отказывается от своего голоса за [target.body.real_name]!"), team = teams)
else
voter.body.maptext_y = 12
voter.body.maptext_x = -16
voter.body.maptext_width = 64
voter.body.maptext = "<span class='maptext' style='text-align: center; vertical-align: top'>[target.body.real_name]</span>"
send_message(span_notice("[voter.body.real_name] voted for [target.body.real_name]!"), team = teams)
send_message(span_notice("[voter.body.real_name] проголосовал за [target.body.real_name]!"), team = teams)
if(!teams)
target.body.update_appearance() //Update the vote display if it's a public vote
var/datum/mafia_role/old = old_vote
Expand Down Expand Up @@ -637,25 +637,25 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
*/
/datum/mafia_controller/proc/signup_mafia(mob/user, client/ghost_client, obj/item/modular_computer/modpc)
if(!SSticker.HasRoundStarted())
to_chat(user, span_warning("Wait for the round to start."))
to_chat(user, span_warning("Дождитесь начала раунда."))
return FALSE
if(isnull(modpc))
if(GLOB.mafia_signup[ghost_client.ckey])
GLOB.mafia_signup -= ghost_client.ckey
GLOB.mafia_early_votes -= ghost_client.ckey //Remove their early start vote as well
to_chat(user, span_notice("You unregister from Mafia."))
to_chat(user, span_notice("Вы вышли из мафии."))
else
GLOB.mafia_signup[ghost_client.ckey] = TRUE
to_chat(user, span_notice("You sign up for Mafia."))
to_chat(user, span_notice("Вы вошли в мафию."))
else
if(GLOB.pda_mafia_signup[modpc])
GLOB.pda_mafia_signup -= modpc
GLOB.mafia_early_votes -= modpc //Remove their early start vote as well
to_chat(user, span_notice("You unregister from Mafia."))
to_chat(user, span_notice("Вы вышли из мафии."))
return TRUE
else
GLOB.pda_mafia_signup[modpc] = TRUE
to_chat(user, span_notice("You sign up for Mafia."))
to_chat(user, span_notice("Вы вошли в мафию."))
if(phase == MAFIA_PHASE_SETUP)
check_signups()
try_autostart()
Expand Down Expand Up @@ -797,8 +797,8 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
if(!(unpicked in GLOB.mafia_signup))
continue
var/client/unpicked_client = GLOB.directory[unpicked]
to_chat(unpicked_client, span_danger("Sorry, the starting mafia game has too many players and you were not picked."))
to_chat(unpicked_client, span_warning("You're still signed up, getting messages from the current round, and have another chance to join when the one starting now finishes."))
to_chat(unpicked_client, span_danger("Извините, в начинающейся игре слишком много игроков, и вы не были включены в игру."))
to_chat(unpicked_client, span_warning("Вы все еще остаетесь зарегистрированным, получаете сообщения от текущего раунда и имеете шанс присоединиться, когда закончится рунд который начался сейчас."))

return filtered_keys_and_pdas

Expand Down Expand Up @@ -836,8 +836,8 @@ GLOBAL_LIST_INIT(mafia_role_by_alignment, setup_mafia_role_by_alignment())
#endif

/datum/action/innate/mafia_panel
name = "Mafia Panel"
desc = "Use this to play."
name = "Панель мафии"
desc = "Используйте, чтобы играть."
button_icon = 'icons/obj/mafia.dmi'
button_icon_state = "board"
///The mafia controller that the button will use the UI of.
Expand Down
Loading

0 comments on commit 987672d

Please sign in to comment.