fork download
  1. # coding: utf-8
  2. class Body():
  3. def __init__(self, height, tits):
  4. self.height = height
  5. self.parts = {
  6. 'грудь':tits
  7. }
  8.  
  9. class Dummy():
  10. def __init__(self):
  11. self.body = Body(165, 3)
  12.  
  13. def fullName(self):
  14. return 'Васян'
  15.  
  16. char = Dummy()
  17. player = None
  18. sex = 'female'
  19.  
  20. age = 15
  21. inClass = 2
  22. loyality = 60
  23.  
  24. def getBodyDesc(sex, height, heights=[150, 175, 300], hdesc=['маленького роста', 'среднего роста', 'высокий'], femalefix={('female', 'высокий'): 'высокая'}):
  25. r = ''
  26. for i, d in enumerate(heights):
  27. if height < d:
  28. r = hdesc[i]
  29. break
  30.  
  31. if (r, sex) in femalefix:
  32. return femalefix[r, sex]
  33. return r
  34.  
  35. def getSexDesc(age, loyality, sex):
  36. # без паттерн-матчинга эта часть действительно сильно лучше не получится
  37. tmp = {
  38. 'futa': [['девочка', 'женщина'],['футанари', 'футанари']],
  39. 'female': [['девочка', 'женщина'],['девочка', 'женщина']]
  40. }
  41. if sex == 'male':
  42. return 'мужчина' if age > 20 else 'мальчик'
  43. #if sex == 'futa':
  44. # return ('футанари' if loyality >= 50 else
  45. # 'женщина' if age > 20 else 'девочка')
  46. #return 'женщина' if age > 20 else 'девочка'
  47. return tmp[sex][loyality > 50][age > 20]
  48.  
  49. print getSexDesc(20, 51, 'futa'), 'футанари'
  50. print getSexDesc(20, 50, 'futa'), 'девочка'
  51. print getSexDesc(21, 50, 'female'), 'женщина'
  52. print getSexDesc(20, 50, 'female'), 'девочка'
  53. print getSexDesc(21, 50, 'futa'), 'женщина'
  54.  
  55.  
  56. boobs = [None, 'почти отсутствуют', 'маленькие', 'небольшие', 'неплохие']
  57. def getDescription(char, sex, age, loyality, inClass):
  58. description = []
  59. if char != player:
  60. description.append('Перед вами')
  61. description.append(char.fullName())
  62. description.append('\n')
  63. description.append('Это')
  64.  
  65. description.append(getBodyDesc(sex, char.body.height))
  66.  
  67. description.append(getSexDesc(age, loyality, sex))
  68.  
  69. description.append(str(age))
  70. description.append('лет.')
  71.  
  72. if inClass > 0:
  73. description.append('Учится в')
  74. description.append(str(inClass))
  75. description.append('классе.')
  76.  
  77. if boobs[char.body.parts['грудь']] != None:
  78. description.append('Сиськи')
  79. description.append(boobs[char.body.parts['грудь']])
  80.  
  81. return ' '.join(description)
  82.  
  83. print getDescription(char, sex, age, loyality, inClass)
Success #stdin #stdout 0.01s 8968KB
stdin
Standard input is empty
stdout
футанари футанари
девочка девочка
женщина женщина
девочка девочка
женщина женщина
Перед вами Васян 
 Это среднего роста девочка 15 лет. Учится в 2 классе. Сиськи небольшие