Browse Source

Однажды по дороге в школу мне захотелось срать. Переборов в себе порывы, я решил добежать до школьного толкана и там извергнуть свое говно. Но каков был мой ужас, когда я обнаружил, что толкан не работает! А срать хотелось все больше.

Начался урок, но я не мог идти, я бы просто обосрался по дороге! Но, когда коридор опустел, я обнаружил рядом с собой чей-то портфель. Выбора у меня не оставалось, я расстегнул штаны, стянул труханы и начал срать в тот злосчастный портфель. Срал я очень долго и срал бы еще, если бы не послышались шаги. Все, что я успел сделать, это в спешке натянуть трусы и штаны на свою обосраную жопу, а затем встать по стойке смирно. Торопясь, я забыл застегнуть портфель и это станет огромной проблемой.

Тут передо мной оказалась хозяйка портфеля - тян из параллельного, на которую я дрочил уже больше года (назовем ее для удобства Катей). Я стоял между ней и ее портфелем, так что она не могла видеть мое говно.

Увидев меня, она покраснела и потупила взгляд. Я уже подумал было, что у меня ботинки или одежда в дрисне, но быстрый анализ происходящего дал понять, что, вроде бы, все нормально.

И вдруг Катя начала что-то говорить. Всерьез озабоченный своей проблемой, я практически не слушал ее, а говорила она что-то про какие-то чувства ко мне. Этого мне только не хватало! Надо было срочно придумывать выход из ситуации.

Еще мое положение несколько усложнялось тем, что мои штаны были не застегнуты и мне приходилось держать руки в карманах, чтобы они не спадали.

— "Так что ты скажешь?" - вдруг пробился в мой мозг ее голос.

— "Ну, э..." - старался я потянуть время - "Я влюблен в тебя второй уже второй год, и каждый день думаю только о тебе!" - с этого момента я начал нести какой-то бред, а она смотрела на меня взглядом, полным любви.

Но в какой-то момент моя жопа начала подавать признаки того, что процесс калоизвержения далеко не закончен! Мой живот скрутило, послышались ужасающие звуки. Я уже понимал, что через несколько минут я обосрусь, а тогда и фейл неизбежен.

Но в этот момент у Кати зазвонил телефон, а лежал он... В портфеле!

А еще в портфеле лежала здоровенная куча моего дерьма. Это была самая хуевая и безвыходная ситуация в моей жизни. Тян устремилась к портфелю, но я пошел на последний отчаянный шаг.

Подбежав к ней, я обнял ее, и наши губы слились в поцелуе! В этот же момент у меня встал член, и он на некоторое время задержал падение штанов с моей жопы.

Катя прижалась ко мне, и я чудом смог спрятать стояк. От всей охуенности происходящего мне даже расхотелось срать. Я целуюсь с тян моей мечты, а в ее портфеле лежит мое говно. А еще шел урок. И в этот момент меня спас какой-то препод, который решил сходить в соседний кабинет. А так как мы прогуливали, нам с Катей оставалось только ретироваться на лестницу. Под шумок я застегнул штаны, но мы стояли уже на первом этаже.

И тут Катя заявляет:

— "Может, пойдем ко мне домой?"

Я был всей душой за, но нужно было что-то сделать с портфелем!

Я высказал свое согласие, и тогда Катя без предупреждения пошла вверх за своим рюкзаком! Я молчал, как партизан, мысленно готовясь к полному краху своего счастья.

Мы поднялись на этаж вверх, где лежал злосчастный портфель. И тут нас уже встречал тот препод.

Началась немая сцена. Учитель с непониманием смотрел на нас с Катей, а та, в свою очередь, смотрела внутрь своего портфеля.

Мы так стояли где-то минуту, пока я не спизданул преподу:

— "Зачем вы насрали в портфель?"

И тут начался пиздец.

— "Вы неправильно поняли! Там уже было наложено!"

Катя молча охуевала, потом схватила меня за руку и начала плакать. Я уже хотел было давать по съебкам, как моя жопа снова начала хотеть извергнуть очередную порцию говна.

Преодолев и этот позыв, я начал съебывать, утягивая за собой Катю. Препод же настолько охреневал, что не мог даже пошевелиться и трясся.

Через несколько секунд мы уже стояли в раздевалке и готовились к побегу. Я уже переобулся и был готов, как моя жопа будто сказала - не так быстро, чувак!

Это был девятый вал. Я схватил первый попавшийся пакет от сменки и начал срать в него.

В это время Катя искала свой пакет. На мое счастье, этот залп жопа произвела почти моментально. Я быстро повесил пакет на место, и, найдя Катю, хотел было съебывать из школы, как она спросила, не видел ли я желтый пакет с красными кружками. Тот самый, в который я только что насрал.

Естественно, я ответил, что не видел, а сам, под видом того, что помогал его искать, быстро нашел его и перекинул через перегородку раздевалки. Но за перегородкой был коридор и выход из школы! Это я понял слишком поздно.

И именно в этот момент Катя предложила мне свалить без пакета. Через секунду мы уже бежали к выходу, я надеялся, что она не заметит пакет.

Но! Когда, казалось, все обошлось, мы увидели того самого препода, а вдобавок директора, завуча и охранника Петровича, смотрящих на обосранный пакет.

И тут я ощутил охуенное дежавю и спизданул:

— "Зачем вы насрали в пакет?"

Препода тут же хватил удар, и он упал. Все начали вызывать скорую, а мы с Катей по тихому свалили.

Она верила в то, что все засрал препод, и это было охуенно. Впереди был прекрасный день...
Tigran 4 years ago
parent
commit
3e612b0af5

+ 10 - 0
MafiaTelegramBot/DataBase/Entity/OpenedRolesEntity.cs

@@ -48,5 +48,15 @@ namespace MafiaTelegramBot.DataBase.Entity
                    && Elder && Fool && Hooker && Journalist
                    && Lawyer && Necromancer && Parasite && Werewolf;
         }
+
+        public void OpenBodyguard()
+        {
+            Bodyguard = true;
+        }
+
+        public void OpenNecromancer()
+        {
+            Necromancer = true;
+        }
     }
 }

+ 6 - 1
MafiaTelegramBot/Game/GameRoles/DoctorRole.cs

@@ -37,7 +37,12 @@ namespace MafiaTelegramBot.Game.GameRoles
                 if (Room.Players.ContainsKey(NightTargetId))
                 {
                     Room.Players[NightTargetId].CanBeHealed = false;
-                    if (!Room.Players[NightTargetId].IsAlive) Room.Players[NightTargetId].IsAlive = true;
+                    if (!Room.Players[NightTargetId].IsAlive)
+                    {
+                        Room.Players[NightTargetId].IsAlive = true;
+                        Player.NecromancerRoleAchievementEvent();
+                        Player.BodyguardRoleAchievementEvent();
+                    }
                 }
             }
         }

+ 18 - 6
MafiaTelegramBot/Game/Player.cs

@@ -7,6 +7,7 @@ using MafiaTelegramBot.CustomCollections;
 using MafiaTelegramBot.DataBase.Entity;
 using MafiaTelegramBot.DataBase.EntityDao;
 using MafiaTelegramBot.Game.GameRoles;
+using MafiaTelegramBot.Models;
 using MafiaTelegramBot.Resources;
 using Microsoft.EntityFrameworkCore;
 using Newtonsoft.Json;
@@ -143,22 +144,33 @@ namespace MafiaTelegramBot.Game
 
         public void BodyguardRoleAchievementEvent()
         {
-            Task.Run(() =>
+            Task.Run(async() =>
             {
-                if (!OpenedRoles.Bodyguard)
+                Achievements.DoctorHeals++;
+                if (Achievements.DoctorHeals == 50)
                 {
-                    
-                } 
+                    await Bot.SendWithMarkdown2(ChatId,
+                        $"{strings.congrats} {roles.Bodyguard}! {strings.you_can_use}");
+                    await Bot.SendStickerAsync(ChatId, Stickers.Sticker[Roles.Bodyguard.ToString()]);
+                    OpenedRoles.OpenNecromancer();
+                }
             });
         }
 
         public void NecromancerRoleAchievementEvent()
         {
-            Task.Run(() =>
+            Task.Run(async() =>
             {
                 if (!OpenedRoles.Necromancer)
                 {
-                    
+                    Achievements.DoctorHeals++;
+                    if (Achievements.DoctorHeals == 50)
+                    {
+                        await Bot.SendWithMarkdown2(ChatId,
+                            $"{strings.congrats} {roles.Necromancer}! {strings.you_can_use}");
+                        await Bot.SendStickerAsync(ChatId, Stickers.Sticker[Roles.Necromancer.ToString()]);
+                        OpenedRoles.OpenNecromancer();
+                    }
                 } 
             });
         }

+ 12 - 0
MafiaTelegramBot/Resources/strings.Designer.cs

@@ -1124,5 +1124,17 @@ namespace MafiaTelegramBot {
                 return ResourceManager.GetString("mafia_decided_not_kill", resourceCulture);
             }
         }
+        
+        internal static string congrats {
+            get {
+                return ResourceManager.GetString("congrats", resourceCulture);
+            }
+        }
+        
+        internal static string you_can_use {
+            get {
+                return ResourceManager.GetString("you_can_use", resourceCulture);
+            }
+        }
     }
 }

+ 6 - 0
MafiaTelegramBot/Resources/strings.resx

@@ -558,4 +558,10 @@
     <data name="mafia_decided_not_kill" xml:space="preserve">
         <value>Мафия решила никого не убивать</value>
     </data>
+    <data name="congrats" xml:space="preserve">
+        <value>Поздравляем, вы выполнили достижение для получения роли</value>
+    </data>
+    <data name="you_can_use" xml:space="preserve">
+        <value>Теперь вы можете использовать эту роль в расширенной игре</value>
+    </data>
 </root>