Knightwisp

Betrayal Source Code

Apr 15th, 2014
160
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Threading;
  5. using System.Collections;
  6.  
  7. namespace Betrayal
  8. {
  9.    /*
  10.      Ground-breaking SUPERCLASS,  
  11.      which is what we would call it,
  12.      if that wasn't theoretical heresy
  13.    */
  14.     public class Betrayal
  15.     {
  16.         /*properties and stuff*/
  17.         public string peasantsName { get; set; }
  18.         public string finalWords { get; set; }
  19.         private readonly List<string> yourBetrayals;
  20.         private static Random rnd;
  21.  
  22.         /*constructor, that totally works, Son*/
  23.         public Betrayal(string peasantsName)
  24.         {
  25.             this.peasantsName = peasantsName;
  26.             this.yourBetrayals = new List<string>(new string[]{"Puzzling from them days.",
  27.              "Aim low.",
  28.              "Nobody cares about your new shoes.",
  29.              "You have no idea what you're doing.",
  30.              "Oh, the Shame.",
  31.              "That's why your father left.",
  32.              "God loves you. I don't.",
  33.              "Do you even DJ?",
  34.              "No biscuits for you.",
  35.              "All your pot plants will die.",
  36.              "That dream you have is lame.",
  37.              "People make fun of you on BBM.",
  38.              "Your mother's maiden name."
  39.             });  //all the fun betrayals
  40.             rnd = new Random();          
  41.         }
  42.  
  43.         /*very lazy methods*/
  44.         public override string ToString()
  45.         {
  46.             return "Everyday is a new betrayal, " + this.peasantsName;
  47.         }
  48.  
  49.        
  50.         public void PersonalizedBetrayal()      
  51.         {
  52.             this.finalWords = (string)yourBetrayals[rnd.Next(yourBetrayals.Count)]; //random one to surprise and horrify you
  53.         }
  54.  
  55.     }
  56.  
  57.     class DailyMotivation //what a total slave class
  58.     {
  59.         static void UninspiringTimeWaster()
  60.         {
  61.             Console.Out.Write("Enter your stupid name: "); //fairly well-mannered user prompt/demand
  62.             string yourPeasantName = Console.In.ReadLine();
  63.  
  64.             Betrayal dailyBetrayal = new Betrayal(yourPeasantName); //some other things that are not your business
  65.  
  66.             Console.Out.WriteLine("\n{0}.\n", dailyBetrayal); //ta-da!
  67.  
  68.             for (int i = 0; i < 3; i++) //ominous silence
  69.             {
  70.                 Thread.Sleep(800);
  71.                 Console.Out.Write(".");
  72.             }
  73.  
  74.             dailyBetrayal.PersonalizedBetrayal(); //are you even excited?
  75.  
  76.             Console.Out.WriteLine("\n\n{0} \n", dailyBetrayal.finalWords); //disappointing conclusion
  77.  
  78.            
  79.             Console.Out.WriteLine("\nEnter R for another betrayal (standard SMS rates apply)");
  80.             Console.Out.Write("Or Enter to leave, Girly-man: "); //nondiscriminatory taunt
  81.             char r = Convert.ToChar(Console.In.Read());
  82.  
  83.             if (r.ToString().Equals("r", StringComparison.OrdinalIgnoreCase))
  84.             {
  85.                 Console.ReadLine(); //polishing the filthy buffer
  86.                 Console.Clear(); //nothing to see here
  87.                 DailyMotivation.UninspiringTimeWaster(); //deja vu
  88.             }
  89.             else
  90.                 Environment.Exit(0); //Run!
  91.         }
  92.        
  93.         /* seriously underrated Main method, that does all the work for zero recognition */
  94.         static void Main(string[] args)
  95.         {
  96.             DailyMotivation.UninspiringTimeWaster(); //take it easy, breathe
  97.         }
  98.     }
  99. }
RAW Paste Data