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

Восстановление перевода #624

Merged
merged 2 commits into from
Nov 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
142 changes: 71 additions & 71 deletions code/datums/ai_law_sets.dm

Large diffs are not rendered by default.

16 changes: 8 additions & 8 deletions code/datums/revision.dm
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ GLOBAL_PROTECT(revision_info) // Dont mess with this
/datum/code_revision/proc/get_testmerge_chatmessage(header = FALSE)
var/list/msg = list()
if(header)
msg += "<span class='notice'>The following PRs are currently testmerged:</span>"
msg += "<span class='notice'>Следующие ПРы на данный момент тестируются:</span>"

for(var/pr in GLOB.revision_info.testmerges)
var/datum/tgs_revision_information/test_merge/tm = pr
Expand All @@ -83,14 +83,14 @@ GLOBAL_PROTECT(revision_info) // Dont mess with this
return msg.Join("<br>")

/client/verb/get_revision_info()
set name = "Get Revision Info"
set name = "Получить тех. информацию"
set category = "OOC"
set desc = "Retrieve technical information about the server"
set desc = "Получить техническую информацию о сервере"

var/list/msg = list()
msg += "<span class='notice'><b>Server Revision Info</b></span>"
msg += "<span class='notice'><b>Информация о сервере</b></span>"
// Round ID first
msg += "<b>Round ID:</b> [GLOB.round_id ? GLOB.round_id : "NULL"]"
msg += "<b>Номер раунда:</b> [GLOB.round_id ? GLOB.round_id : "NULL"]"

// Commit info
if(GLOB.revision_info.commit_hash && GLOB.revision_info.commit_date && GLOB.configuration.url.github_url)
Expand All @@ -101,12 +101,12 @@ GLOBAL_PROTECT(revision_info) // Dont mess with this
msg += "<b>Server Commit:</b> <i>Unable to determine</i>"

if(world.TgsAvailable() && length(GLOB.revision_info.testmerges))
msg += "<b>Active Testmerges:</b>"
msg += "<b>Активные тестовые обновления:</b>"
msg += GLOB.revision_info.get_testmerge_chatmessage(FALSE)

// Show server BYOND version
msg += "<b>Server BYOND Version:</b> [world.byond_version].[world.byond_build]"
msg += "<b>Версия серверного BYOND:</b> [world.byond_version].[world.byond_build]"
// And the clients for good measure
msg += "<b>Client (your) BYOND Version:</b> [byond_version].[byond_build]"
msg += "<b>Версия клиентского (твоего) BYOND:</b> [byond_version].[byond_build]"

to_chat(usr, msg.Join("<br>"))
2 changes: 1 addition & 1 deletion code/modules/mob/dead/observer/observer_base.dm
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
..()
if(statpanel("Status"))
show_stat_emergency_shuttle_eta()
stat(null, "Respawnability: [HAS_TRAIT(src, TRAIT_RESPAWNABLE) ? "Yes" : "No"]")
stat(null, "Возможность респавна: [HAS_TRAIT(src, TRAIT_RESPAWNABLE) ? "Да" : "Нет"]")

/mob/dead/observer/verb/reenter_corpse()
set category = "Ghost"
Expand Down
12 changes: 6 additions & 6 deletions code/modules/mob/mob.dm
Original file line number Diff line number Diff line change
Expand Up @@ -998,13 +998,13 @@ GLOBAL_LIST_INIT(slot_equipment_priority, list( \
show_stat_turf_contents()

if(statpanel("Status"))
stat(null, "Round ID: [GLOB.round_id ? GLOB.round_id : "NULL"]")
stat(null, "Номер раунда: [GLOB.round_id ? GLOB.round_id : "NULL"]")
stat(null, "Map: [SSmapping.map_datum.fluff_name]")
if(SSmapping.next_map)
stat(null, "Next Map: [SSmapping.next_map.fluff_name]")
stat(null, "Следующая карта: [SSmapping.next_map.fluff_name]")
if(SSticker)
show_stat_station_time()
stat(null, "Players Connected: [length(GLOB.clients)]")
stat(null, "Игроков подключено: [length(GLOB.clients)]")

if(length(mob_spell_list))
for(var/obj/effect/proc_holder/spell/S in mob_spell_list)
Expand Down Expand Up @@ -1070,9 +1070,9 @@ GLOBAL_LIST_INIT(slot_equipment_priority, list( \

// this function displays the station time in the status panel
/mob/proc/show_stat_station_time()
stat(null, "Server Uptime: [worldtime2text()]")
stat(null, "Round Time: [ROUND_TIME ? time2text(ROUND_TIME, "hh:mm:ss") : "N/A"]")
stat(null, "Station Time: [station_time_timestamp()]")
stat(null, "Время работы сервера: [worldtime2text()]")
stat(null, "Длительность раунда: [ROUND_TIME ? time2text(ROUND_TIME, "hh:mm:ss") : "N/A"]")
stat(null, "Станционное время: [station_time_timestamp()]")
stat(null, "Time Dilation: [round(SStime_track.time_dilation_current,1)]% " + \
"AVG:([round(SStime_track.time_dilation_avg_fast,1)]%, " + \
"[round(SStime_track.time_dilation_avg,1)]%, " + \
Expand Down
84 changes: 42 additions & 42 deletions code/modules/mob/new_player/new_player.dm
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,10 @@
// Dont blank out the other window. This one is read only.
if(!GLOB.configuration.system.external_tos_handler)
src << browse(null, "window=playersetup")
output += "<p><a href='byond://?src=[UID()];consent_signed=SIGNED'>I consent</A>"
output += "<p><a href='byond://?src=[UID()];consent_rejected=NOTSIGNED'>I DO NOT consent</A>"
output += "<p><a href='byond://?src=[UID()];consent_signed=SIGNED'>Я согласен</A>"
output += "<p><a href='byond://?src=[UID()];consent_rejected=NOTSIGNED'>Я не согласен</A>"
src << browse(output,"window=privacy_consent;size=500x300")
var/datum/browser/popup = new(src, "privacy_consent", "<div align='center'>Privacy Consent</div>", 500, 400)
var/datum/browser/popup = new(src, "privacy_consent", "<div align='center'>Соглашение о конфиденциальности</div>", 500, 400)
// Let them close it here, this is a read only pane
if(!GLOB.configuration.system.external_tos_handler)
popup.set_window_options("can_close=0")
Expand All @@ -54,36 +54,36 @@
set waitfor = FALSE
var/real_name = client.prefs.active_character.real_name
if(client.prefs.toggles2 & PREFTOGGLE_2_RANDOMSLOT)
real_name = "Random Character Slot"
var/output = "<center><p><a href='byond://?src=[UID()];show_preferences=1'>Setup Character</A><br /><i>[real_name]</i></p>"
real_name = "Случайный персонаж"
var/output = "<center><p><a href='byond://?src=[UID()];show_preferences=1'>Настройка персонажа</A><br /><i>[real_name]</i></p>"

if(!SSticker || SSticker.current_state <= GAME_STATE_PREGAME)
if(!ready) output += "<p><a href='byond://?src=[UID()];ready=1'>Declare Ready</A></p>"
else output += "<p><b>You are ready</b> (<a href='byond://?src=[UID()];ready=2'>Cancel</A>)</p>"
if(!ready) output += "<p><a href='byond://?src=[UID()];ready=1'>Нажмите, если готовы</A></p>"
else output += "<p><b>Вы готовы</b> (<a href='byond://?src=[UID()];ready=2'>Отмена</A>)</p>"
else
output += "<p><a href='byond://?src=[UID()];manifest=1'>View the Crew Manifest</A></p>"
output += "<p><a href='byond://?src=[UID()];late_join=1'>Join Game!</A></p>"
output += "<p><a href='byond://?src=[UID()];manifest=1'>Просмотр списка экипажа</A></p>"
output += "<p><a href='byond://?src=[UID()];late_join=1'>Присоединиться к игре!</A></p>"

var/list/antags = client.prefs.be_special
if(antags && antags.len)
if(!client.skip_antag) output += "<p><a href='byond://?src=[UID()];skip_antag=1'>Global Antag Candidacy</A>"
if(!client.skip_antag) output += "<p><a href='byond://?src=[UID()];skip_antag=1'>Глобальная настройка антагов</A>"
else output += "<p><a href='byond://?src=[UID()];skip_antag=2'>Global Antag Candidacy</A>"
output += "<br /><small>You are <b>[client.skip_antag ? "ineligible" : "eligible"]</b> for all antag roles.</small></p>"
output += "<br /><small>Вы <b>[client.skip_antag ? "не готовы" : "готовы"]</b> для всех антаг ролей.</small></p>"

if(!SSticker || SSticker.current_state == GAME_STATE_STARTUP)
output += "<p>Observe (Please wait...)</p>"
output += "<p>Наблюдать (Ожидайте...)</p>"
else
output += "<p><a href='byond://?src=[UID()];observe=1'>Observe</A></p>"
output += "<p><a href='byond://?src=[UID()];observe=1'>Наблюдать</A></p>"

if(GLOB.join_tos)
output += "<p><a href='byond://?src=[UID()];tos=1'>Terms of Service</A></p>"
output += "<p><a href='byond://?src=[UID()];tos=1'>Условия использования</A></p>"

if(length(GLOB.configuration.system.region_map))
output += "<p><a href='byond://?src=[UID()];setregion=1'>Set region (reduces ping)</A></p>"

output += "</center>"

var/datum/browser/popup = new(src, "playersetup", "<div align='center'>New Player Options</div>", 240, 340)
var/datum/browser/popup = new(src, "playersetup", "<div align='center'>Новый игрок</div>", 240, 340)
popup.set_window_options("can_close=0")
popup.set_content(output)
popup.open(0)
Expand All @@ -93,24 +93,24 @@
..()
if(statpanel("Status") && SSticker)
if(!SSticker.hide_mode)
stat("Game Mode: [GLOB.master_mode]")
stat("Режим: [GLOB.master_mode]")
else
stat("Game Mode: Secret")
stat("Режим: Секрет")

if(SSticker.current_state == GAME_STATE_PREGAME)
if(SSticker.ticker_going)
stat("Time To Start: [round(SSticker.pregame_timeleft/10)]")
stat("Начало через: [round(SSticker.pregame_timeleft/10)]")
else
stat("Time To Start:", "DELAYED")
stat("Начало через:", "УДЕРЖАНИЕ")

stat("Players: [totalPlayers]")
stat("Игроки: [totalPlayers]")
if(check_rights(R_ADMIN, 0, src))
stat("Players Ready: [totalPlayersReady]")
stat("Готово: [totalPlayersReady]")
totalPlayers = 0
totalPlayersReady = 0
for(var/mob/new_player/player in GLOB.player_list)
if(check_rights(R_ADMIN, 0, src))
stat("[player.key] [(player.ready) ? ("(Playing)") : (null)]")
stat("[player.key] [(player.ready) ? ("(В игре)") : (null)]")
totalPlayers++
if(player.ready)
totalPlayersReady++
Expand All @@ -133,7 +133,7 @@
new_player_panel_proc()
if(href_list["consent_rejected"])
client.tos_consent = FALSE
to_chat(usr, "<span class='warning'>You must consent to the terms of service before you can join!</span>")
to_chat(usr, "<span class='warning'>Перед тем как присоединиться, вы должны согласиться с условиями использования!</span>")
var/datum/db_query/query = SSdbcore.NewQuery("REPLACE INTO privacy (ckey, datetime, consent) VALUES (:ckey, Now(), 0)", list(
"ckey" = ckey
))
Expand All @@ -147,13 +147,13 @@

if(href_list["ready"])
if(!client.tos_consent)
to_chat(usr, "<span class='warning'>You must consent to the terms of service before you can join!</span>")
to_chat(usr, "<span class='warning'>Перед тем как присоединиться, вы должны согласиться с условиями использования!</span>")
return FALSE
if(client.version_blocked)
client.show_update_notice()
return FALSE
if(!ready && !client.prefs.active_character.check_any_job() && (client.prefs.active_character.alternate_option == RETURN_TO_LOBBY))
to_chat(usr, "<span class='danger'>You have no jobs enabled, along with return to lobby if job is unavailable. This makes you ineligible for any round start role, please update your job preferences.</span>")
to_chat(usr, "<span class='danger'>Вы не выбрали ни одну должность, а также включена функция возврата в лобби в случае недоступности должности. Это не даёт вам получить раунд-стартовую роль, проверьте ваши настройки должностей.</span>")
ready = FALSE
return FALSE

Expand All @@ -173,16 +173,16 @@

if(href_list["observe"])
if(!client.tos_consent)
to_chat(usr, "<span class='warning'>You must consent to the terms of service before you can join!</span>")
to_chat(usr, "<span class='warning'>Перед тем как присоединиться, вы должны согласиться с условиями использования!</span>")
return FALSE
if(client.version_blocked)
client.show_update_notice()
return FALSE
if(!SSticker || SSticker.current_state == GAME_STATE_STARTUP)
to_chat(usr, "<span class='warning'>You must wait for the server to finish starting before you can join!</span>")
to_chat(usr, "<span class='warning'>Вы должны дождаться окончания запуска сервера, прежде чем сможете присоединиться к нему!</span>")
return FALSE

if(alert(src,"Are you sure you wish to observe? You cannot normally join the round after doing this!","Player Setup","Yes","No") == "Yes")
if(alert(src,"Вы уверены, что хотите наблюдать? <br> После этого Вы не сможете присоединиться к раунду!","Настройка игрока","Да","Нет") == "Да")
if(!client)
return 1
var/mob/dead/observer/observer = new(src)
Expand All @@ -194,7 +194,7 @@
observer.started_as_observer = 1
close_spawn_windows()
var/obj/O = locate("landmark*Observer-Start")
to_chat(src, "<span class='notice'>Now teleporting.</span>")
to_chat(src, "<span class='notice'>Телепортация...</span>")
observer.forceMove(O.loc)
observer.timeofdeath = world.time // Set the time of death so that the respawn timer works correctly.
client.prefs.active_character.update_preview_icon(1)
Expand All @@ -220,16 +220,16 @@

if(href_list["late_join"])
if(!client.tos_consent)
to_chat(usr, "<span class='warning'>You must consent to the terms of service before you can join!</span>")
to_chat(usr, "<span class='warning'>Перед тем как присоединиться, вы должны согласиться с условиями использования!</span>")
return FALSE
if(client.version_blocked)
client.show_update_notice()
return FALSE
if(!SSticker || SSticker.current_state != GAME_STATE_PLAYING)
to_chat(usr, "<span class='warning'>The round is either not ready, or has already finished...</span>")
to_chat(usr, "<span class='warning'>Раунд либо не готов, либо уже завершился...</span>")
return
if(!can_use_species(src, client.prefs.active_character.species))
to_chat(src, alert("You are currently not whitelisted to play [client.prefs.active_character.species]."))
to_chat(src, alert("В настоящее время вы не включены в белый список для игры на [client.prefs.active_character.species]."))
return FALSE

if(!check_tts_seed_ready()) // SS220 ADDITION
Expand All @@ -243,14 +243,14 @@
if(href_list["SelectedJob"])

if(!GLOB.enter_allowed)
to_chat(usr, "<span class='notice'>There is an administrative lock on entering the game!</span>")
to_chat(usr, "<span class='notice'>Администратор запретил входить в игру!</span>")
return

if(client.prefs.toggles2 & PREFTOGGLE_2_RANDOMSLOT)
client.prefs.load_random_character_slot(client)

if(!can_use_species(src, client.prefs.active_character.species))
to_chat(src, alert("You are currently not whitelisted to play [client.prefs.active_character.species]."))
to_chat(src, alert("В настоящее время вы не включены в белый список для игры на [client.prefs.active_character.species]."))
return FALSE

AttemptLateSpawn(href_list["SelectedJob"])
Expand Down Expand Up @@ -315,20 +315,20 @@
if(src != usr)
return 0
if(!SSticker || SSticker.current_state != GAME_STATE_PLAYING)
to_chat(usr, "<span class='warning'>The round is either not ready, or has already finished...</span>")
to_chat(usr, "<span class='warning'>Раунд либо не готов, либо уже завершился...</span>")
return 0
if(!GLOB.enter_allowed)
to_chat(usr, "<span class='notice'>There is an administrative lock on entering the game!</span>")
to_chat(usr, "<span class='notice'>Администратор запретил входить в игру!</span>")
return 0
if(!IsJobAvailable(rank))
to_chat(src, alert("[rank] is not available. Please try another."))
to_chat(src, alert("[rank] не доступен. Попробуйте другую должность."))
return 0
var/datum/job/thisjob = SSjobs.GetJob(rank)
if(thisjob.barred_by_disability(client))
to_chat(src, alert("[rank] is not available due to your character's disability. Please try another."))
to_chat(src, alert("[rank] недоступен из-за инвалидности вашего персонажа. Попробуйте другую должность."))
return 0
if(thisjob.barred_by_missing_limbs(client))
to_chat(src, alert("[rank] is not available due to your character having amputated limbs without a prosthetic replacement. Please try another."))
to_chat(src, alert("[rank] недоступен из-за того, что у вашего персонажа ампутированы конечности и отсутствуют протезы. Попробуйте другую должность."))
return 0

SSjobs.AssignRole(src, rank, 1)
Expand Down Expand Up @@ -510,7 +510,7 @@
categorizedJobs["Miscellaneous"]["jobs"] += job

if(num_jobs_available)
dat += "Choose from the following open positions:<br><br>"
dat += "Выберите одну из следующих открытых вакансий:<br><br>"
dat += "<table><tr><td valign='top'>"
for(var/jobcat in categorizedJobs)
if(categorizedJobs[jobcat]["colBreak"])
Expand All @@ -529,11 +529,11 @@

dat += "</td></tr></table></center>"
else
dat += "<br><br><center>Unfortunately, there are no job slots free currently.<BR>Wait a few minutes, then try again.<BR>Or, try observing the round.</center>"
dat += "<br><br><center>К сожалению, в настоящее время свободных вакансий нет.<BR>Попробуйте снова через несколько минут<BR>Или попробуйте понаблюдать за раундом.</center>"
// Removing the old window method but leaving it here for reference
// src << browse(dat, "window=latechoices;size=300x640;can_close=1")
// Added the new browser window method
var/datum/browser/popup = new(src, "latechoices", "Choose Profession", 900, 600)
var/datum/browser/popup = new(src, "latechoices", "Выберите должность", 900, 600)
popup.add_stylesheet("playeroptions", 'html/browser/playeroptions.css')
popup.add_script("delay_interactivity", 'html/browser/delay_interactivity.js')
popup.set_content(dat)
Expand Down
Loading