You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

constants.py 9.2 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. class NoInstance:
  2. def __call__(self):
  3. raise TypeError("This class cannot be instantiated.")
  4. class Constants(NoInstance):
  5. numOfGridPerCell = 1000 # 单位坐标数
  6. rows = 50 # 地图行数
  7. cols = 50 # 地图列数
  8. numOfClassroom = 10 # 教室数量
  9. numOfChest = 8 # 宝箱数量
  10. maxClassroomProgress = 10000000 # 教室最大进度
  11. maxDoorProgress = 10000000 # 开关门最大进度
  12. maxChestProgress = 10000000 # 宝箱最大进度
  13. maxGateProgress = 18000 # 大门最大进度
  14. numOfRequiredClassroomForGate = 7 # 打开大门需要完成的教室数量
  15. numOfRequiredClassroomForHiddenGate = 3 # 打开隐藏门需要完成的教室数量
  16. # 人物属性相关
  17. basicEncourageSpeed = 100
  18. basicLearnSpeed = 123
  19. basicSpeedOfOpeningOrLocking = 4000
  20. basicStudentSpeedOfClimbingThroughWindows = 611
  21. basicTrickerSpeedOfClimbingThroughWindows = 1270
  22. basicSpeedOfOpenChest = 1000
  23. basicHp = 3000000
  24. basicMaxGamingAddiction = 60000
  25. basicEncouragementDegree = 1500000
  26. basicTimeOfRouse = 1000
  27. basicStudentSpeed = 1270
  28. basicTrickerSpeed = 1504
  29. basicConcealment = 1.0
  30. basicStudentAlertnessRadius = 15 * numOfGridPerCell
  31. basicTrickerAlertnessRadius = 17 * numOfGridPerCell
  32. basicStudentViewRange = 10 * numOfGridPerCell
  33. basicTrickerViewRange = 15 * numOfGridPerCell
  34. PinningDownRange = 5 * numOfPosGridPerCell
  35. maxNumOfProp = 3 # 人物道具栏容量
  36. # 攻击相关
  37. basicApOfTricker = 1500000
  38. basicCD = 3000 # 初始子弹冷却
  39. basicCastTime = 500 # 基本前摇时间
  40. basicBackswing = 800 # 基本后摇时间
  41. basicRecoveryFromHit = 3700 # 基本命中攻击恢复时长
  42. basicStunnedTimeOfStudent = 4300
  43. basicBulletMoveSpeed = 3700 # 基本子弹移动速度
  44. basicRemoteAttackRange = 3000 # 基本远程攻击范围
  45. basicAttackShortRange = 1100 # 基本近程攻击范围
  46. basicBulletBombRange = 1000 # 基本子弹爆炸范围
  47. # 道具相关
  48. apPropAdd = basicApOfTricker * 12 / 10
  49. apSpearAdd = basicApOfTricker * 6 / 10
  50. class Assassin:
  51. moveSpeed = 1.1*basicTrickerSpeed
  52. concealment = 1.5*basicConcealment
  53. alertnessRadius = 1.3*basicTrickerAlertnessRadius
  54. viewRange = 1.2*basicTrickerViewRange
  55. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  56. speedOfClimbingThroughWindows = 1.0*basicTrickerSpeedOfClimbingThroughWindows
  57. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  58. class Klee:
  59. moveSpeed = 1.0*basicTrickerSpeed
  60. concealment = 1.0*basicConcealment
  61. alertnessRadius = 1.0*basicTrickerAlertnessRadius
  62. viewRange = 1.0*basicTrickerViewRange
  63. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  64. speedOfClimbingThroughWindows = 1.0*basicTrickerSpeedOfClimbingThroughWindows
  65. speedOfOpenChest = 1.1*basicSpeedOfOpenChest
  66. class ANoisyPerson:
  67. moveSpeed = 1.07*basicTrickerSpeed
  68. concealment = 0.8*basicConcealment
  69. alertnessRadius = 0.9*basicTrickerAlertnessRadius
  70. viewRange = 1.0*basicTrickerViewRange
  71. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  72. speedOfClimbingThroughWindows = 1.1*basicTrickerSpeedOfClimbingThroughWindows
  73. speedOfOpenChest = 1.1*basicSpeedOfOpenChest
  74. class Idol:
  75. moveSpeed = 1.0*basicTrickerSpeed
  76. concealment = 0.75*basicConcealment
  77. alertnessRadius = 1.0*basicTrickerAlertnessRadius
  78. viewRange = 1.1*basicTrickerViewRange
  79. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  80. speedOfClimbingThroughWindows = 1.0*basicTrickerSpeedOfClimbingThroughWindows
  81. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  82. class Athlete:
  83. moveSpeed = 1.1*basicStudentSpeed
  84. maxHp = 1.0*basicHp
  85. maxAddiction = 0.9*basicMaxGamingAddiction
  86. LearnSpeed = 0.6*basicLearnSpeed
  87. EncourageSpeed = 0.8*basicEncourageSpeed
  88. concealment = 0.9*basicConcealment
  89. alertnessRadius = 1.0*basicStudentAlertnessRadius
  90. viewRange = 1.1*basicStudentViewRange
  91. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  92. speedOfClimbingThroughWindows = 1.2*basicStudentSpeedOfClimbingThroughWindows
  93. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  94. class Teacher:
  95. moveSpeed = 0.75*basicStudentSpeed
  96. maxHp = 10.0*basicHp
  97. maxAddiction = 10.0*basicMaxGamingAddiction
  98. LearnSpeed = 0.0*basicLearnSpeed
  99. EncourageSpeed = 0.7*basicEncourageSpeed
  100. concealment = 0.5*basicConcealment
  101. alertnessRadius = 0.5*basicStudentAlertnessRadius
  102. viewRange = 0.9*basicStudentViewRange
  103. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  104. speedOfClimbingThroughWindows = 0.5*basicStudentSpeedOfClimbingThroughWindows
  105. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  106. class StraightAStudent:
  107. moveSpeed = 0.8*basicStudentSpeed
  108. maxHp = 1.1*basicHp
  109. maxAddiction = 1.3*basicMaxGamingAddiction
  110. LearnSpeed = 1.1*basicLearnSpeed
  111. EncourageSpeed = 0.8*basicEncourageSpeed
  112. concealment = 0.9*basicConcealment
  113. alertnessRadius = 0.9*basicStudentAlertnessRadius
  114. viewRange = 0.9*basicStudentViewRange
  115. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  116. speedOfClimbingThroughWindows = 0.83333*basicStudentSpeedOfClimbingThroughWindows
  117. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  118. class Robot:
  119. moveSpeed = 1.0*basicStudentSpeed
  120. maxHp = 0.4*basicHp
  121. maxAddiction = 0.0*basicMaxGamingAddiction
  122. LearnSpeed = 1.0*basicLearnSpeed
  123. EncourageSpeed = 0.8*basicEncourageSpeed
  124. concealment = 1.0*basicConcealment
  125. alertnessRadius = 1.0*basicStudentAlertnessRadius
  126. viewRange = 1.0*basicStudentViewRange
  127. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  128. speedOfClimbingThroughWindows = 0.0016*basicStudentSpeedOfClimbingThroughWindows
  129. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  130. class TechOtaku:
  131. moveSpeed = 0.75*basicStudentSpeed
  132. maxHp = 0.9*basicHp
  133. maxAddiction = 1.1*basicMaxGamingAddiction
  134. LearnSpeed = 1.1*basicLearnSpeed
  135. EncourageSpeed = 0.9*basicEncourageSpeed
  136. concealment = 1.0*basicConcealment
  137. alertnessRadius = 1.0*basicStudentAlertnessRadius
  138. viewRange = 0.9*basicStudentViewRange
  139. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  140. speedOfClimbingThroughWindows = 0.75*basicStudentSpeedOfClimbingThroughWindows
  141. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  142. class Sunshine:
  143. moveSpeed = 1.0*basicStudentSpeed
  144. maxHp = 1.0667*basicHp
  145. maxAddiction = 1.1*basicMaxGamingAddiction
  146. LearnSpeed = 1.0*basicLearnSpeed
  147. EncourageSpeed = 2.0*basicEncourageSpeed
  148. concealment = 1.0*basicConcealment
  149. alertnessRadius = 1.0*basicStudentAlertnessRadius
  150. viewRange = 1.0*basicStudentViewRange
  151. speedOfOpeningOrLocking = 1.0*basicSpeedOfOpeningOrLocking
  152. speedOfClimbingThroughWindows = 1.0*basicStudentSpeedOfClimbingThroughWindows
  153. speedOfOpenChest = 1.0*basicSpeedOfOpenChest
  154. # 技能相关
  155. maxNumOfSkill = 3
  156. commonSkillCD = 30000 # 普通技能标准冷却时间
  157. commonSkillTime = 10000 # 普通技能标准持续时间
  158. timeOfTrickerStunnedWhenCharge = 7220
  159. timeOfStudentStunnedWhenCharge = 2090
  160. timeOfTrickerStunnedWhenPunish = 3070
  161. timeOfTrickerSwingingAfterHowl = 800
  162. timeOfStudentStunnedWhenHowl = 5500
  163. timeOfStunnedWhenJumpyDumpty = 3070
  164. addedTimeOfSpeedWhenInspire = 0.6
  165. timeOfAddingSpeedWhenInspire = 6000
  166. class CanBeginToCharge:
  167. skillCD = 0.8*commonSkillCD
  168. durationTime = 0.5*commonSkillTime
  169. class BecomeInvisible:
  170. skillCD = 4*commonSkillCD/3
  171. durationTime = commonSkillTime
  172. class Punish:
  173. skillCD = 1.0*commonSkillCD
  174. durationTime = 0.0*commonSkillTime
  175. class Rouse:
  176. skillCD = 2.0*commonSkillCD
  177. durationTime = 0.0*commonSkillTime
  178. class Encourage:
  179. skillCD = 2.0*commonSkillCD
  180. durationTime = 0.0*commonSkillTime
  181. class Inspire:
  182. skillCD = 2.0*commonSkillCD
  183. durationTime = 0.0*commonSkillTime
  184. class Howl:
  185. skillCD = 0.8333*commonSkillCD
  186. durationTime = 0*commonSkillTime
  187. class ShowTime:
  188. skillCD = 3.0*commonSkillCD
  189. durationTime = 1.0*commonSkillTime
  190. class JumpyBomb:
  191. skillCD = 0.5*commonSkillCD
  192. durationTime = 0.3*commonSkillTime
  193. class UseKnife:
  194. skillCD = 1.0*commonSkillCD
  195. durationTime = 0.1*commonSkillTime
  196. class UseRobot:
  197. skillCD = 0.0017*commonSkillCD
  198. durationTime = 0.0*commonSkillTime
  199. class WriteAnswers:
  200. skillCD = 1.0*commonSkillCD
  201. durationTime = 0.0*commonSkillTime
  202. class SummonGolem:
  203. skillCD = 1.0*commonSkillCD
  204. durationTime = 0.0*commonSkillTime