ss220club / Bandastation

SS220 TG repository
https://discord.gg/ss220
GNU Affero General Public License v3.0
30 stars 34 forks source link

Merge upstream [29.07.2024] #466

Closed Gaxeer closed 2 months ago

Gaxeer commented 2 months ago

About The Pull Request

Merge upstream [29.07.2024]

github-actions[bot] commented 2 months ago

This pr causes following conflicts on translate branch:

++<<<<<<< HEAD
 +  speech_commands = list("heel", "follow")
 +  callout_type = /datum/callout_option/move
++=======
+   speech_commands = list("heel", "follow", "за мной", "след", "охран", "к ноге", "ко мне")
++>>>>>>> origin/translate
++<<<<<<< HEAD
 +  callout_type = /datum/callout_option/attack
 +  speech_commands = list("attack", "sic", "kill")
++=======
+   speech_commands = list("attack", "sic", "kill", "апорт", "фас", "бить", "атак")
++>>>>>>> origin/translate
++<<<<<<< HEAD
 +  name = "Fish"
 +  description = "We need fish to populate our aquariums with. Fishes that are dead or bought from cargo will only be paid half as much."
 +  reward = CARGO_CRATE_VALUE * 9.5
++=======
+   name = "Рыба"
+   description = "Нам нужна рыба для заполнения наших аквариумов. Мёртвые или купленные из отдела поставок рыбы будут оплачены лишь наполовину."
+   reward = CARGO_CRATE_VALUE * 9
++>>>>>>> origin/translate
++<<<<<<< HEAD
++=======
+ 
+ ///A subtype of the fish bounty that requires specific fish types. The higher their rarity, the better the pay.
+ /datum/bounty/item/assistant/fish/specific
+   description = "В нашей престижной рыбной коллекции на данный момент не хватает нескольких специфичных видов. Мёртвые или купленные в отделе поставок рыбы будут оплачены лишь наполовину."
+   reward = CARGO_CRATE_VALUE * 16
+   required_count = 3
+   wanted_types = list(/obj/item/storage/fish_case = TRUE)
+ 
+ /datum/bounty/item/assistant/fish/specific/New()
+   var/static/list/choosable_fishes
+   if(isnull(choosable_fishes))
+       choosable_fishes = list()
+       for(var/obj/item/fish/prototype as anything in subtypesof(/obj/item/fish))
+           if(initial(prototype.experisci_scannable) && initial(prototype.show_in_catalog))
+               choosable_fishes += prototype
+ 
+   var/list/fishes_copylist = choosable_fishes.Copy()
+   ///Used to calculate the extra reward
+   var/total_rarity = 0
+   var/list/name_list = list()
+   var/num_paths = rand(2,3)
+   for(var/i in 1 to num_paths)
+       var/obj/item/fish/chosen_path = pick_n_take(fishes_copylist)
+       wanted_types[chosen_path] = TRUE
+       name_list += initial(chosen_path.name)
+       total_rarity += initial(chosen_path.random_case_rarity) / num_paths
+   name = english_list(name_list)
+ 
+   switch(total_rarity)
+       if(FISH_RARITY_NOPE to FISH_RARITY_GOOD_LUCK_FINDING_THIS)
+           reward += CARGO_CRATE_VALUE * 14
+       if(FISH_RARITY_GOOD_LUCK_FINDING_THIS to FISH_RARITY_VERY_RARE)
+           reward += CARGO_CRATE_VALUE * 6.5
+       if(FISH_RARITY_VERY_RARE to FISH_RARITY_RARE)
+           reward += CARGO_CRATE_VALUE * 3
+       if(FISH_RARITY_RARE to FISH_RARITY_BASIC-1)
+           reward += CARGO_CRATE_VALUE * 1
+ 
+   ..()
++>>>>>>> origin/translate
++<<<<<<< HEAD
 +  var/class_to_announce = fake ? pick(1, 2, 3, 4) : surge_class
 +  priority_announce("The Crystal Integrity Monitoring System has detected unusual atmospheric properties in the supermatter chamber, energy output from the supermatter crystal has increased significantly. Engineering intervention is required to stabilize the engine.", "Class [class_to_announce] Supermatter Surge Alert", 'sound/machines/engine_alert3.ogg')
++=======
+   priority_announce("Система мониторинга целостности кристала обнаружила необычные атмосферные параметры в камере суперматерии, выходная мощность кристалла суперматерии значительно увеличилась Требуется инженерное вмешательство для стабилизации работы двигателя.", "Всплеск суперматерии класса [surge_class]", 'sound/machines/engine_alert3.ogg')
++>>>>>>> origin/translate
++<<<<<<< HEAD
 +          the = FALSE
 +  result += span_notice("The [span_bold("[name]")] is aligned with [the ? "the " : ""]<span class='[team_span]'>[team_desc]</span>")
 +  result += "<span class='bold notice'>\"[initial(desc)]\"</span>"
 +  result += span_notice("[name] wins when they [win_condition]")
++=======
+   result += span_notice("[span_bold("[name]")] является <span class='[team_span]'>[team_desc]</span>")
+   result += "<span class='bold notice'>\"[desc]\"</span>"
+   result += span_notice("[name] выигрывает если [win_condition]")
++>>>>>>> origin/translate
++<<<<<<< HEAD
 +      if(item_for_cavity || ((tool.w_class > WEIGHT_CLASS_NORMAL) && !is_type_in_typecache(tool, GLOB.heavy_cavity_implants)) || HAS_TRAIT(tool, TRAIT_NODROP) || isorgan(tool))
 +          to_chat(user, span_warning("You can't seem to fit [tool] in [target]'s [target_zone]!"))
++=======
+       if(item_for_cavity || tool.w_class > WEIGHT_CLASS_NORMAL || HAS_TRAIT(tool, TRAIT_NODROP) || isorgan(tool))
+           to_chat(user, span_warning("Кажется, вы не можете поместить [tool.name] в <i>[target_zone]</i> у [target]!"))
++>>>>>>> origin/translate