|
3 | 3 | ////////////////////////////////////////////////////////////////////////////////
|
4 | 4 | /obj/item/reagent_containers/food/drinks
|
5 | 5 | name = "drink"
|
6 |
| - desc = "yummy" |
| 6 | + desc = "Вкусняшка." |
7 | 7 | icon = 'icons/obj/drinks.dmi'
|
8 | 8 | icon_state = null
|
9 | 9 | container_type = OPENCONTAINER
|
|
35 | 35 | . = ATTACK_CHAIN_PROCEED
|
36 | 36 |
|
37 | 37 | if(!reagents || !reagents.total_volume)
|
38 |
| - to_chat(user, span_warning("None of [src] left, oh no!")) |
| 38 | + balloon_alert(user, "пусто!") |
39 | 39 | return .
|
40 | 40 |
|
41 | 41 | if(!is_drainable())
|
42 |
| - to_chat(user, span_warning("You need to open [src] first!")) |
| 42 | + balloon_alert(user, "сначала откройте!") |
43 | 43 | return .
|
44 | 44 |
|
45 | 45 | if(!get_location_accessible(target, BODY_ZONE_PRECISE_MOUTH))
|
46 | 46 | if(target == user)
|
47 |
| - to_chat(user, span_warning("Your face is obscured.")) |
| 47 | + balloon_alert(user, "ваш рот закрыт!") |
48 | 48 | else
|
49 |
| - to_chat(user, span_warning("[target]'s face is obscured.")) |
| 49 | + balloon_alert(user, "рот цели закрыт!") |
50 | 50 | return .
|
51 | 51 |
|
52 | 52 | if(!target.eat(src, user))
|
|
77 | 77 | var/mob/living/silicon/robot/bro = user
|
78 | 78 | var/chargeAmount = max(30,4*trans)
|
79 | 79 | bro.cell.use(chargeAmount)
|
80 |
| - to_chat(user, "<span class='notice'>Now synthesizing [trans] units of cocktail...</span>") |
| 80 | + to_chat(user, span_notice("Синтез [trans] единиц[pluralize_ru(trans, "ы", "", "")] вещества...")) |
81 | 81 | addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, add_reagent_list), ids_data), 30 SECONDS)
|
82 |
| - addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, user, "<span class='notice'>Cyborg [src] refilled.</span>"), 30 SECONDS) |
| 82 | + addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, user, span_notice("Ваш[genderize_ru(gender, "", "а", "е", "и")] [declent_ru(NOMINATIVE)] снова пол[genderize_ru(gender, "он", "на", "но", "ны")].")), 30 SECONDS) |
83 | 83 | else
|
84 | 84 | reagents.add_reagent_list(ids_data)
|
85 | 85 | else
|
|
90 | 90 | return ..()
|
91 | 91 | var/mob/living/carbon/chugger = over_object
|
92 | 92 | if(!(container_type & DRAINABLE))
|
93 |
| - to_chat(chugger, "<span class='notice'>You need to open [src] first!</span>") |
| 93 | + balloon_alert(chugger, "сначала откройте!") |
94 | 94 | return
|
95 | 95 | if(!get_location_accessible(chugger, BODY_ZONE_PRECISE_MOUTH))
|
96 |
| - to_chat(chugger, "<span class='notice'>Your face is obscured, so you cant [pick("chugging","gulping")].</span>") |
| 96 | + balloon_alert(user, "ваш рот закрыт!") |
97 | 97 | return
|
98 | 98 | if(reagents.total_volume && loc == chugger && src == chugger.get_active_hand())
|
99 |
| - chugger.visible_message("<span class='notice'>[chugger] raises [src] to [chugger.p_their()] mouth and starts [pick("chugging","gulping")] it down like [pick("a savage","a mad beast","it's going out of style","there's no tomorrow")]!</span>", |
100 |
| - "<span class='notice'>You start chugging [src].</span>", |
101 |
| - "<span class='notice'>You hear what sounds like gulping.</span>") |
| 99 | + chugger.visible_message(span_notice("[chugger] поднос[pluralize_ru(chugger.gender, "ит", "ят")] [declent_ru(ACCUSATIVE)] к своему рту и начина[pluralize_ru(chugger.gender, "ет", "ют")] [pick("цедить", "прихлёбывать", "медленно пить", "пить", "попивать", "хлебать", "потягивать")] содержимое."), |
| 100 | + span_notice("Вы подносите [declent_ru(ACCUSATIVE)] к своему рту и начинаете [pick("цедить", "прихлёбывать", "медленно пить", "пить", "попивать", "хлебать", "потягивать")] содержимое."), |
| 101 | + span_notice("Вы слышите звуки, походящие на питьё чего-то.")) |
102 | 102 | chugging = TRUE
|
103 | 103 | while(do_after(chugger, 4 SECONDS, chugger, progress = FALSE, max_interact_count = 1, cancel_on_max = TRUE, cancel_message = span_warning("You stop chugging [src].")))
|
104 | 104 | chugger.eat(src, chugger, 25) //Half of a glass, quarter of a bottle.
|
105 | 105 | if(!reagents.total_volume) //Finish in style.
|
106 | 106 | chugger.emote("gasp")
|
107 |
| - chugger.visible_message("<span class='notice'>[chugger] [pick("finishes","downs","polishes off","slams")] the entire [src], what a [pick("savage","monster","champ","beast")]!</span>", |
108 |
| - "<span class='notice'>You finish off [src]![prob(50) ? " Maybe that wasn't such a good idea..." : ""]</span>", |
109 |
| - "<span class='notice'>You hear a gasp and a clink.</span>") |
| 107 | + chugger.visible_message(span_notice("[chugger] [pick("залпом", "за раз", "в один присест", "не отрываясь от горла", "полностью", "досуха")] выпива[pluralize_ru(chugger.gender, "ет", "ют")] содержимое [declent_ru(GENITIVE)]."), |
| 108 | + span_notice("Вы [pick("залпом", "за раз", "в один присест", "не отрываясь от горла", "полностью", "досуха")] выпиваете содержимое [declent_ru(GENITIVE)]."), |
| 109 | + span_notice("Вы слышите громкие глотки и последующий громкий выдох.")) |
110 | 110 | break
|
111 | 111 | chugging = FALSE
|
112 | 112 |
|
|
119 | 119 |
|
120 | 120 | if(target.is_refillable() && is_drainable()) //Something like a glass. Player probably wants to transfer TO it.
|
121 | 121 | if(!reagents.total_volume)
|
122 |
| - to_chat(user, "<span class='warning'> [src] is empty.</span>") |
| 122 | + balloon_alert(user, "пусто!") |
123 | 123 | return FALSE
|
124 | 124 |
|
125 | 125 | if(target.reagents.holder_full())
|
126 |
| - to_chat(user, "<span class='warning'> [target] is full.</span>") |
| 126 | + balloon_alert(user, "нет места!") |
127 | 127 | return FALSE
|
128 | 128 |
|
129 | 129 | var/list/transfer_data = reagents.get_transferred_reagents(target, amount_per_transfer_from_this)
|
|
132 | 132 | if(isrobot(user))
|
133 | 133 | SynthesizeDrinkFromTransfer(user, transfer_data)
|
134 | 134 |
|
135 |
| - to_chat(user, "<span class='notice'> You transfer [trans] units of the solution to [target].</span>") |
| 135 | + to_chat(user, span_notice("Вы переливаете [trans] единиц[declension_ru(trans, "у", "ы", "")] вещества в [target.declent_ru(ACCUSATIVE)].")) |
136 | 136 |
|
137 | 137 | else if(target.is_drainable()) //A dispenser. Transfer FROM it TO us.
|
138 | 138 | if(!is_refillable())
|
139 |
| - to_chat(user, "<span class='warning'>[src]'s tab isn't open!</span>") |
| 139 | + balloon_alert(user, "закрыто!") |
140 | 140 | return FALSE
|
141 | 141 | if(!target.reagents.total_volume)
|
142 |
| - to_chat(user, "<span class='warning'>[target] is empty.</span>") |
| 142 | + balloon_alert(user, "пусто!") |
143 | 143 | return FALSE
|
144 | 144 |
|
145 | 145 | if(reagents.holder_full())
|
146 |
| - to_chat(user, "<span class='warning'>[src] is full.</span>") |
| 146 | + balloon_alert(user, "нет места!") |
147 | 147 | return FALSE
|
148 | 148 |
|
149 | 149 | var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this)
|
150 |
| - to_chat(user, "<span class='notice'>You fill [src] with [trans] units of the contents of [target].</span>") |
| 150 | + to_chat(user, span_notice("Вы наполняете [declent_ru(ACCUSATIVE)] [trans] единиц[declension_ru(trans, "ей", "ами", "ами")] вещества из содержимого [target.declent_ru(ACCUSATIVE)].")) |
151 | 151 |
|
152 | 152 | return FALSE
|
153 | 153 |
|
154 | 154 | /obj/item/reagent_containers/food/drinks/examine(mob/user)
|
155 | 155 | . = ..()
|
156 | 156 | if(in_range(user, src))
|
157 | 157 | if(!reagents || reagents.total_volume == 0)
|
158 |
| - . += "<span class='notice'> \The [src] is empty!</span>" |
| 158 | + . += span_notice("Пусто.") |
159 | 159 | else if(reagents.total_volume <= volume/4)
|
160 |
| - . += "<span class='notice'> \The [src] is almost empty!</span>" |
| 160 | + . += span_notice("Почти пусто.") |
161 | 161 | else if(reagents.total_volume <= volume*0.66)
|
162 |
| - . += "<span class='notice'> \The [src] is half full!</span>"// We're all optimistic, right?! |
| 162 | + . += span_notice("Наполовину заполнено.")// We're all optimistic, right?! |
163 | 163 |
|
164 | 164 | else if(reagents.total_volume <= volume*0.90)
|
165 |
| - . += "<span class='notice'> \The [src] is almost full!</span>" |
| 165 | + . += span_notice("Почти заполнено.") |
166 | 166 | else
|
167 |
| - . += "<span class='notice'> \The [src] is full!</span>" |
| 167 | + . += span_notice("Заполнено.") |
168 | 168 |
|
169 | 169 | ////////////////////////////////////////////////////////////////////////////////
|
170 | 170 | /// Drinks. END
|
|
0 commit comments