Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.65 KB | None | 0 0
  1. type Integer = i32;
  2. type Float = f32;
  3.  
  4. struct Penis {
  5. name :String,
  6. lengthCur :Float,
  7. lengthReal :Float,
  8. lengthMax :Float,
  9. insertions :Integer,
  10. sperms: Integer,
  11. flags: u32,
  12. //vagina: Option<&Vagina>,
  13. }
  14.  
  15. struct Vagina {
  16. name :String,
  17. profundidade :Integer,
  18. //penis: Option<&Penis>,
  19. }
  20.  
  21. struct Sex {
  22. startedAt :Integer,
  23. }
  24.  
  25. const NORMAL_SIZE: u32 = 0b000000001u32;
  26. const HUGEST_SIZE: u32 = 0b000000010u32;
  27.  
  28. impl Penis {
  29.  
  30. fn erection(&mut self) {
  31. if self.flags & HUGEST_SIZE != 0 {
  32. println!("{}: I'm so enormooous!!!", self.name);
  33. } else {
  34. self.flags &= !NORMAL_SIZE;
  35. self.lengthCur *= 1.2;
  36. if self.lengthCur > self.lengthMax {
  37. self.lengthCur = self.lengthMax;
  38. self.flags |= HUGEST_SIZE;
  39. println!("{}: It's in its hugest size!!!", self.name);
  40. }
  41. }
  42. }
  43.  
  44. fn reverse_erection(&mut self) {
  45. if self.flags & NORMAL_SIZE == 0 {
  46. self.flags &= !HUGEST_SIZE;
  47. self.lengthCur *= 0.9;
  48. if self.lengthCur <= self.lengthReal {
  49. self.lengthCur = self.lengthReal;
  50. self.flags |= NORMAL_SIZE;
  51. println!("{}: shrinked to it's normal size!!!", self.name);
  52. }
  53. }
  54. }
  55.  
  56. fn insert(&mut self) {
  57.  
  58. self.insertions += 1;
  59.  
  60. if self.insertions > 30 {
  61. self.insertions = 0;
  62. self.sperms -= 1;
  63. println!("{}: Ejaculating!!!", self.name);
  64. }
  65. }
  66.  
  67. fn new(name :&str) -> Penis {
  68.  
  69. let mut penis = Penis {
  70. name: String::from(name),
  71. lengthReal: 5.,
  72. lengthCur: 0.,
  73. lengthMax: 0.,
  74. insertions: 0,
  75. sperms: 1000,
  76. flags: 0u32,
  77. //vagina: None,
  78. };
  79.  
  80. penis.lengthCur = penis.lengthReal;
  81. penis.lengthMax = penis.lengthReal * 1.7;
  82.  
  83. penis
  84. }
  85.  
  86. }
  87.  
  88. impl Vagina {
  89.  
  90. fn new(name :&str) -> Vagina {
  91.  
  92. let mut vagina = Vagina {
  93. name: String::from(name),
  94. profundidade: 10,
  95. //penis: None,
  96. };
  97.  
  98. vagina
  99. }
  100. }
  101.  
  102. fn main() {
  103.  
  104. let mut penis = Penis::new("Men");
  105. let mut vagina = Vagina::new("Woman");
  106.  
  107. let mut sex = Sex {
  108. startedAt: 0,
  109. };
  110.  
  111. println!("Let's do it!!!");
  112.  
  113. println!("{} meets {}!!!", penis.name, vagina.name);
  114.  
  115. for _ in 0 .. 100 {
  116. penis.erection();
  117. penis.insert();
  118. }
  119.  
  120. for _ in 0 .. 20 {
  121. penis.reverse_erection();
  122. }
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement