Advertisement
Guest User

Untitled

a guest
Nov 21st, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.15 KB | None | 0 0
  1. // Tamagotchi.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. enum State { FELIZ, HAMBRIENTO, ABURRIDO, TRISTE, MUERTO };
  6. enum Sigma { JUGAR, ALIMENTAR, ACARICIAR, TIEMPO };
  7.  
  8. int Vitalidad = 100;
  9. int Stamina = 100;
  10. int Felicidad = 100;
  11. int Minimo(int a, int b)
  12. {
  13. return a < b ? a : b;
  14. }
  15.  
  16.  
  17. State Delta(State s, Sigma a)
  18. {
  19. State Siguiente = s;
  20. switch (s)
  21. {
  22. case FELIZ:
  23. switch (a)
  24. {
  25. case JUGAR:
  26. Vitalidad -= 5;
  27. Stamina -= 10;
  28. Felicidad += 10;
  29. if (Stamina == 0) Felicidad -= 10;
  30. if (Vitalidad < 20) Siguiente = HAMBRIENTO;
  31. if (Felicidad > 150) Siguiente = MUERTO;
  32. break;
  33. case ALIMENTAR:
  34. Vitalidad += 5;
  35. Felicidad += 5;
  36. if (Felicidad > 150) Siguiente = MUERTO;
  37. break;
  38. case ACARICIAR:
  39. Stamina += 5;
  40. Felicidad += 10;
  41. if (Felicidad > 150) Siguiente = MUERTO;
  42. break;
  43. case TIEMPO:
  44. Vitalidad -= 1;
  45. Stamina = Minimo(100, Stamina + 1);
  46. Felicidad -= 1;
  47. if (Felicidad < 50) Siguiente = ABURRIDO;
  48. if (Vitalidad == 0) Siguiente = MUERTO;
  49. if (Felicidad < 25) Siguiente = TRISTE;
  50. break;
  51. }
  52. break;
  53. case HAMBRIENTO:
  54. switch (a)
  55. {
  56. case JUGAR:
  57. Vitalidad -= 10;
  58. Stamina -= 15;
  59. Felicidad += 5;
  60. if (Vitalidad == 0) Siguiente = MUERTO;
  61. if (Stamina == 0) Vitalidad -= 10;
  62. if (Felicidad > 150) Siguiente = MUERTO;
  63. break;
  64. case ALIMENTAR:
  65. Vitalidad += 5;
  66. Felicidad += 5;
  67. if (Felicidad > 50) Siguiente = FELIZ;
  68. if (Vitalidad > 20) Siguiente = FELIZ;
  69. break;
  70. case ACARICIAR:
  71. Stamina += 5;
  72. Felicidad += 5;
  73. if (Felicidad > 150)Siguiente = MUERTO;
  74. break;
  75. case TIEMPO:
  76. Vitalidad -= 5;
  77. Stamina = Minimo(100, Stamina + 1);
  78. Felicidad -= 5;
  79. if (Vitalidad == 0) Siguiente = MUERTO;
  80. if (Felicidad < 25) Siguiente = TRISTE;
  81. break;
  82. }
  83. break;
  84. case TRISTE:
  85. switch (a)
  86. {
  87. case JUGAR:
  88. Vitalidad -= 5;
  89. Felicidad += 10;
  90. Stamina -= 5;
  91. if (Felicidad == 0)Siguiente = MUERTO;
  92. if (Stamina == 0) Vitalidad -= 10;
  93. case ALIMENTAR:
  94. Vitalidad += 5;
  95. Felicidad += 1;
  96. if (Felicidad > 50) Siguiente = FELIZ;
  97. if (Vitalidad > 20) Siguiente = FELIZ;
  98. break;
  99. case ACARICIAR:
  100. Stamina += 5;
  101. Felicidad += 10;
  102. if (Felicidad > 150)Siguiente = MUERTO;
  103. if (Felicidad > 50) Siguiente = FELIZ;
  104. break;
  105. case TIEMPO:
  106. Vitalidad -= 5;
  107. Stamina = Minimo(100, Stamina + 1);
  108. Felicidad -= 10;
  109. if (Vitalidad == 0) Siguiente = MUERTO;
  110. if (Felicidad < 25) Siguiente = TRISTE;
  111. break;
  112. }
  113. break;
  114. case MUERTO:
  115. switch (a)
  116. {
  117. case JUGAR:
  118. case ALIMENTAR:
  119. case ACARICIAR:
  120. case TIEMPO:
  121. }
  122. break;
  123.  
  124.  
  125. }
  126.  
  127. return Siguiente;
  128.  
  129. }
  130.  
  131.  
  132.  
  133. void PrintState(State s)
  134. {
  135.  
  136. switch (s)
  137. {
  138. case FELIZ:
  139. printf(":)");
  140. break;
  141. case TRISTE:
  142. printf(":(");
  143. break;
  144. case ABURRIDO:
  145. printf(":/");
  146. break;
  147. case MUERTO:
  148. printf("X.X ded");
  149. break;
  150. case HAMBRIENTO:
  151. printf("Hammmbrreee");
  152. break;
  153.  
  154.  
  155.  
  156. }
  157. printf(" Vitalidad:%d,Stamina:%d,Felicidad:%d",
  158. Vitalidad, Stamina, Felicidad);
  159.  
  160. }
  161. #include <conio.h>}
  162. #include <Windows.h>
  163.  
  164.  
  165.  
  166. int main()
  167. {
  168. return 0;
  169. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement