rmxp_extractor 1.8 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (411) hide show
  1. checksums.yaml +4 -4
  2. data/CODE_OF_CONDUCT.md +74 -74
  3. data/Gemfile +13 -13
  4. data/Gemfile.lock +40 -40
  5. data/LICENSE.txt +21 -21
  6. data/README.md +37 -35
  7. data/Rakefile +6 -6
  8. data/bin/rmxp_extractor +13 -13
  9. data/bin/setup +8 -8
  10. data/diff_check.rb +13 -13
  11. data/lib/rmxp_extractor/classnames.rb +227 -245
  12. data/lib/rmxp_extractor/data_export.rb +80 -82
  13. data/lib/rmxp_extractor/data_import.rb +74 -69
  14. data/lib/rmxp_extractor/ron.rb +144 -144
  15. data/lib/rmxp_extractor/script_handler.rb +85 -85
  16. data/lib/rmxp_extractor/version.rb +3 -3
  17. data/lib/rmxp_extractor.rb +46 -46
  18. data/rmxp_extractor.gemspec +30 -30
  19. data/spec/spec_helper.rb +100 -100
  20. metadata +2 -393
  21. data/Data/Actors.rxdata +0 -0
  22. data/Data/Animations.rxdata +0 -0
  23. data/Data/Armors.rxdata +0 -0
  24. data/Data/Classes.rxdata +0 -0
  25. data/Data/CommonEvents.rxdata +0 -0
  26. data/Data/Enemies.rxdata +0 -0
  27. data/Data/Items.rxdata +0 -0
  28. data/Data/Map001.rxdata +0 -0
  29. data/Data/Map002.rxdata +0 -0
  30. data/Data/Map003.rxdata +0 -0
  31. data/Data/Map004.rxdata +0 -0
  32. data/Data/Map005.rxdata +0 -0
  33. data/Data/Map006.rxdata +0 -0
  34. data/Data/Map007.rxdata +0 -0
  35. data/Data/Map008.rxdata +0 -0
  36. data/Data/Map009.rxdata +0 -0
  37. data/Data/Map010.rxdata +0 -0
  38. data/Data/Map011.rxdata +0 -0
  39. data/Data/Map012.rxdata +0 -0
  40. data/Data/Map013.rxdata +0 -0
  41. data/Data/Map014.rxdata +0 -0
  42. data/Data/Map015.rxdata +0 -0
  43. data/Data/Map016.rxdata +0 -0
  44. data/Data/Map017.rxdata +0 -0
  45. data/Data/Map018.rxdata +0 -0
  46. data/Data/Map019.rxdata +0 -0
  47. data/Data/Map020.rxdata +0 -0
  48. data/Data/Map021.rxdata +0 -0
  49. data/Data/Map022.rxdata +0 -0
  50. data/Data/Map023.rxdata +0 -0
  51. data/Data/Map024.rxdata +0 -0
  52. data/Data/Map025.rxdata +0 -0
  53. data/Data/Map026.rxdata +0 -0
  54. data/Data/Map027.rxdata +0 -0
  55. data/Data/Map028.rxdata +0 -0
  56. data/Data/Map029.rxdata +0 -0
  57. data/Data/Map030.rxdata +0 -0
  58. data/Data/Map031.rxdata +0 -0
  59. data/Data/Map032.rxdata +0 -0
  60. data/Data/Map033.rxdata +0 -0
  61. data/Data/Map034.rxdata +0 -0
  62. data/Data/Map035.rxdata +0 -0
  63. data/Data/Map036.rxdata +0 -0
  64. data/Data/Map037.rxdata +0 -0
  65. data/Data/Map038.rxdata +0 -0
  66. data/Data/Map039.rxdata +0 -0
  67. data/Data/Map040.rxdata +0 -0
  68. data/Data/Map041.rxdata +0 -0
  69. data/Data/Map042.rxdata +0 -0
  70. data/Data/Map043.rxdata +0 -0
  71. data/Data/Map044.rxdata +0 -0
  72. data/Data/Map045.rxdata +0 -0
  73. data/Data/Map046.rxdata +0 -0
  74. data/Data/Map047.rxdata +0 -0
  75. data/Data/Map048.rxdata +0 -0
  76. data/Data/Map049.rxdata +0 -0
  77. data/Data/Map050.rxdata +0 -0
  78. data/Data/Map051.rxdata +0 -0
  79. data/Data/Map052.rxdata +0 -0
  80. data/Data/Map053.rxdata +0 -0
  81. data/Data/Map054.rxdata +0 -0
  82. data/Data/Map055.rxdata +0 -0
  83. data/Data/Map056.rxdata +0 -0
  84. data/Data/Map057.rxdata +0 -0
  85. data/Data/Map058.rxdata +0 -0
  86. data/Data/Map059.rxdata +0 -0
  87. data/Data/Map060.rxdata +0 -0
  88. data/Data/Map061.rxdata +0 -0
  89. data/Data/Map062.rxdata +0 -0
  90. data/Data/Map063.rxdata +0 -0
  91. data/Data/Map064.rxdata +0 -0
  92. data/Data/Map065.rxdata +0 -0
  93. data/Data/Map066.rxdata +0 -0
  94. data/Data/Map067.rxdata +0 -0
  95. data/Data/Map068.rxdata +0 -0
  96. data/Data/Map069.rxdata +0 -0
  97. data/Data/Map070.rxdata +0 -0
  98. data/Data/Map071.rxdata +0 -0
  99. data/Data/Map072.rxdata +0 -0
  100. data/Data/Map073.rxdata +0 -0
  101. data/Data/Map074.rxdata +0 -0
  102. data/Data/Map075.rxdata +0 -0
  103. data/Data/Map076.rxdata +0 -0
  104. data/Data/Map077.rxdata +0 -0
  105. data/Data/Map078.rxdata +0 -0
  106. data/Data/Map079.rxdata +0 -0
  107. data/Data/Map080.rxdata +0 -0
  108. data/Data/Map081.rxdata +0 -0
  109. data/Data/Map082.rxdata +0 -0
  110. data/Data/Map083.rxdata +0 -0
  111. data/Data/Map084.rxdata +0 -0
  112. data/Data/Map085.rxdata +0 -0
  113. data/Data/Map086.rxdata +0 -0
  114. data/Data/Map087.rxdata +0 -0
  115. data/Data/Map088.rxdata +0 -0
  116. data/Data/Map089.rxdata +0 -0
  117. data/Data/Map090.rxdata +0 -0
  118. data/Data/Map091.rxdata +0 -0
  119. data/Data/Map092.rxdata +0 -0
  120. data/Data/Map093.rxdata +0 -0
  121. data/Data/Map094.rxdata +0 -0
  122. data/Data/Map095.rxdata +0 -0
  123. data/Data/Map096.rxdata +0 -0
  124. data/Data/Map097.rxdata +0 -0
  125. data/Data/Map098.rxdata +0 -0
  126. data/Data/Map099.rxdata +0 -0
  127. data/Data/Map100.rxdata +0 -0
  128. data/Data/Map101.rxdata +0 -0
  129. data/Data/Map102.rxdata +0 -0
  130. data/Data/Map103.rxdata +0 -0
  131. data/Data/Map104.rxdata +0 -0
  132. data/Data/Map105.rxdata +0 -0
  133. data/Data/Map106.rxdata +0 -0
  134. data/Data/Map107.rxdata +0 -0
  135. data/Data/Map108.rxdata +0 -0
  136. data/Data/Map109.rxdata +0 -0
  137. data/Data/Map110.rxdata +0 -0
  138. data/Data/Map111.rxdata +0 -0
  139. data/Data/Map112.rxdata +0 -0
  140. data/Data/Map113.rxdata +0 -0
  141. data/Data/Map114.rxdata +0 -0
  142. data/Data/Map115.rxdata +0 -0
  143. data/Data/Map116.rxdata +0 -0
  144. data/Data/Map117.rxdata +0 -0
  145. data/Data/Map118.rxdata +0 -0
  146. data/Data/Map119.rxdata +0 -0
  147. data/Data/Map120.rxdata +0 -0
  148. data/Data/Map121.rxdata +0 -0
  149. data/Data/Map122.rxdata +0 -0
  150. data/Data/Map123.rxdata +0 -0
  151. data/Data/Map124.rxdata +0 -0
  152. data/Data/Map125.rxdata +0 -0
  153. data/Data/Map126.rxdata +0 -0
  154. data/Data/Map127.rxdata +0 -0
  155. data/Data/Map128.rxdata +0 -0
  156. data/Data/Map129.rxdata +0 -0
  157. data/Data/Map130.rxdata +0 -0
  158. data/Data/Map131.rxdata +0 -0
  159. data/Data/Map132.rxdata +0 -0
  160. data/Data/Map133.rxdata +0 -0
  161. data/Data/Map134.rxdata +0 -0
  162. data/Data/Map135.rxdata +0 -0
  163. data/Data/Map136.rxdata +0 -0
  164. data/Data/Map137.rxdata +0 -0
  165. data/Data/Map138.rxdata +0 -0
  166. data/Data/Map139.rxdata +0 -0
  167. data/Data/Map140.rxdata +0 -0
  168. data/Data/Map141.rxdata +0 -0
  169. data/Data/Map142.rxdata +0 -0
  170. data/Data/Map143.rxdata +0 -0
  171. data/Data/Map144.rxdata +0 -0
  172. data/Data/Map145.rxdata +0 -0
  173. data/Data/Map146.rxdata +0 -0
  174. data/Data/Map147.rxdata +0 -0
  175. data/Data/Map148.rxdata +0 -0
  176. data/Data/Map149.rxdata +0 -0
  177. data/Data/Map150.rxdata +0 -0
  178. data/Data/Map151.rxdata +0 -0
  179. data/Data/Map152.rxdata +0 -0
  180. data/Data/Map153.rxdata +0 -0
  181. data/Data/Map154.rxdata +0 -0
  182. data/Data/Map155.rxdata +0 -0
  183. data/Data/Map156.rxdata +0 -0
  184. data/Data/Map157.rxdata +0 -0
  185. data/Data/Map158.rxdata +0 -0
  186. data/Data/Map159.rxdata +0 -0
  187. data/Data/Map160.rxdata +0 -0
  188. data/Data/Map161.rxdata +0 -0
  189. data/Data/Map162.rxdata +0 -0
  190. data/Data/Map163.rxdata +0 -0
  191. data/Data/Map164.rxdata +0 -0
  192. data/Data/Map165.rxdata +0 -0
  193. data/Data/Map166.rxdata +0 -0
  194. data/Data/Map167.rxdata +0 -0
  195. data/Data/Map168.rxdata +0 -0
  196. data/Data/Map169.rxdata +0 -0
  197. data/Data/Map170.rxdata +0 -0
  198. data/Data/Map171.rxdata +0 -0
  199. data/Data/Map172.rxdata +0 -0
  200. data/Data/Map173.rxdata +0 -0
  201. data/Data/Map174.rxdata +0 -0
  202. data/Data/Map175.rxdata +0 -0
  203. data/Data/Map176.rxdata +0 -0
  204. data/Data/Map177.rxdata +0 -0
  205. data/Data/Map178.rxdata +0 -0
  206. data/Data/Map179.rxdata +0 -0
  207. data/Data/Map180.rxdata +0 -0
  208. data/Data/Map181.rxdata +0 -0
  209. data/Data/Map182.rxdata +0 -0
  210. data/Data/Map183.rxdata +0 -0
  211. data/Data/Map184.rxdata +0 -0
  212. data/Data/Map185.rxdata +0 -0
  213. data/Data/Map186.rxdata +0 -0
  214. data/Data/Map187.rxdata +0 -0
  215. data/Data/Map188.rxdata +0 -0
  216. data/Data/Map189.rxdata +0 -0
  217. data/Data/Map190.rxdata +0 -0
  218. data/Data/Map191.rxdata +0 -0
  219. data/Data/Map192.rxdata +0 -0
  220. data/Data/Map193.rxdata +0 -0
  221. data/Data/Map194.rxdata +0 -0
  222. data/Data/Map195.rxdata +0 -0
  223. data/Data/Map196.rxdata +0 -0
  224. data/Data/Map197.rxdata +0 -0
  225. data/Data/Map198.rxdata +0 -0
  226. data/Data/Map199.rxdata +0 -0
  227. data/Data/Map200.rxdata +0 -0
  228. data/Data/Map201.rxdata +0 -0
  229. data/Data/Map202.rxdata +0 -0
  230. data/Data/Map203.rxdata +0 -0
  231. data/Data/Map204.rxdata +0 -0
  232. data/Data/Map205.rxdata +0 -0
  233. data/Data/Map206.rxdata +0 -0
  234. data/Data/Map207.rxdata +0 -0
  235. data/Data/Map208.rxdata +0 -0
  236. data/Data/Map209.rxdata +0 -0
  237. data/Data/Map210.rxdata +0 -0
  238. data/Data/Map211.rxdata +0 -0
  239. data/Data/Map212.rxdata +0 -0
  240. data/Data/Map213.rxdata +0 -0
  241. data/Data/Map214.rxdata +0 -0
  242. data/Data/Map215.rxdata +0 -0
  243. data/Data/Map216.rxdata +0 -0
  244. data/Data/Map217.rxdata +0 -0
  245. data/Data/Map218.rxdata +0 -0
  246. data/Data/Map219.rxdata +0 -0
  247. data/Data/Map220.rxdata +0 -0
  248. data/Data/Map221.rxdata +0 -0
  249. data/Data/Map222.rxdata +0 -0
  250. data/Data/Map223.rxdata +0 -0
  251. data/Data/Map224.rxdata +0 -0
  252. data/Data/Map225.rxdata +0 -0
  253. data/Data/Map226.rxdata +0 -0
  254. data/Data/Map227.rxdata +0 -0
  255. data/Data/Map228.rxdata +0 -0
  256. data/Data/Map229.rxdata +0 -0
  257. data/Data/Map230.rxdata +0 -0
  258. data/Data/Map231.rxdata +0 -0
  259. data/Data/Map232.rxdata +0 -0
  260. data/Data/Map233.rxdata +0 -0
  261. data/Data/Map234.rxdata +0 -0
  262. data/Data/Map235.rxdata +0 -0
  263. data/Data/Map236.rxdata +0 -0
  264. data/Data/Map237.rxdata +0 -0
  265. data/Data/Map238.rxdata +0 -0
  266. data/Data/Map239.rxdata +0 -0
  267. data/Data/Map240.rxdata +0 -0
  268. data/Data/Map241.rxdata +0 -0
  269. data/Data/Map242.rxdata +0 -0
  270. data/Data/Map243.rxdata +0 -0
  271. data/Data/Map244.rxdata +0 -0
  272. data/Data/Map245.rxdata +0 -0
  273. data/Data/Map246.rxdata +0 -0
  274. data/Data/Map247.rxdata +0 -0
  275. data/Data/Map248.rxdata +0 -0
  276. data/Data/Map249.rxdata +0 -0
  277. data/Data/Map250.rxdata +0 -0
  278. data/Data/Map251.rxdata +0 -0
  279. data/Data/Map252.rxdata +0 -0
  280. data/Data/Map253.rxdata +0 -0
  281. data/Data/Map254.rxdata +0 -0
  282. data/Data/Map255.rxdata +0 -0
  283. data/Data/Map256.rxdata +0 -0
  284. data/Data/Map257.rxdata +0 -0
  285. data/Data/Map258.rxdata +0 -0
  286. data/Data/Map259.rxdata +0 -0
  287. data/Data/Map260.rxdata +0 -0
  288. data/Data/Map261.rxdata +0 -0
  289. data/Data/Map262.rxdata +0 -0
  290. data/Data/Map263.rxdata +0 -0
  291. data/Data/MapInfos.rxdata +0 -0
  292. data/Data/Scripts.rxdata +0 -0
  293. data/Data/Skills.rxdata +0 -0
  294. data/Data/States.rxdata +0 -0
  295. data/Data/System.rxdata +0 -0
  296. data/Data/Tilesets.rxdata +0 -0
  297. data/Data/Troops.rxdata +0 -0
  298. data/Data/Weapons.rxdata +0 -0
  299. data/Data/xScripts.rxdata +0 -0
  300. data/Scripts/Credits_Message.rb +0 -259
  301. data/Scripts/Data_FastTravel.rb +0 -50
  302. data/Scripts/Data_Footsteps.rb +0 -77
  303. data/Scripts/Data_Item.rb +0 -50
  304. data/Scripts/Data_SpecialEventData.rb +0 -60
  305. data/Scripts/Demo.rb +0 -7
  306. data/Scripts/Desktop_Message.rb +0 -210
  307. data/Scripts/Doc_Message.rb +0 -273
  308. data/Scripts/EdText.rb +0 -50
  309. data/Scripts/Ed_Message.rb +0 -234
  310. data/Scripts/FastTravel.rb +0 -175
  311. data/Scripts/Game_Actor.rb +0 -156
  312. data/Scripts/Game_Actors.rb +0 -28
  313. data/Scripts/Game_BattleAction.rb +0 -145
  314. data/Scripts/Game_Battler 1.rb +0 -307
  315. data/Scripts/Game_Battler 2.rb +0 -294
  316. data/Scripts/Game_Battler 3.rb +0 -354
  317. data/Scripts/Game_Character 1.rb +0 -291
  318. data/Scripts/Game_Character 2.rb +0 -355
  319. data/Scripts/Game_Character 3.rb +0 -505
  320. data/Scripts/Game_CommonEvent.rb +0 -70
  321. data/Scripts/Game_Enemy.rb +0 -317
  322. data/Scripts/Game_Event.rb +0 -264
  323. data/Scripts/Game_FastTravel.rb +0 -40
  324. data/Scripts/Game_Follower.rb +0 -76
  325. data/Scripts/Game_Light.rb +0 -13
  326. data/Scripts/Game_Map.rb +0 -551
  327. data/Scripts/Game_Oneshot.rb +0 -83
  328. data/Scripts/Game_Party.rb +0 -380
  329. data/Scripts/Game_Picture.rb +0 -164
  330. data/Scripts/Game_Player.rb +0 -298
  331. data/Scripts/Game_Screen.rb +0 -148
  332. data/Scripts/Game_SelfSwitches.rb +0 -30
  333. data/Scripts/Game_Switches.rb +0 -45
  334. data/Scripts/Game_System.rb +0 -210
  335. data/Scripts/Game_Temp.rb +0 -145
  336. data/Scripts/Game_Variables.rb +0 -36
  337. data/Scripts/Interpreter 1.rb +0 -320
  338. data/Scripts/Interpreter 2.rb +0 -286
  339. data/Scripts/Interpreter 3.rb +0 -474
  340. data/Scripts/Interpreter 4.rb +0 -327
  341. data/Scripts/Interpreter 5.rb +0 -448
  342. data/Scripts/Interpreter 6.rb +0 -307
  343. data/Scripts/Interpreter 7.rb +0 -282
  344. data/Scripts/Main.rb +0 -50
  345. data/Scripts/Particles.rb +0 -141
  346. data/Scripts/Persistent.rb +0 -71
  347. data/Scripts/Puzzle_Film.rb +0 -14
  348. data/Scripts/Puzzle_Pixel.rb +0 -210
  349. data/Scripts/Puzzle_Safe.rb +0 -152
  350. data/Scripts/Puzzle_Sokoban.rb +0 -14
  351. data/Scripts/RPG.rb +0 -55
  352. data/Scripts/SaveLoad.rb +0 -275
  353. data/Scripts/Scene_Debug.rb +0 -190
  354. data/Scripts/Scene_End.rb +0 -108
  355. data/Scripts/Scene_Equip.rb +0 -222
  356. data/Scripts/Scene_File.rb +0 -111
  357. data/Scripts/Scene_Item.rb +0 -205
  358. data/Scripts/Scene_Load.rb +0 -106
  359. data/Scripts/Scene_Map.rb +0 -540
  360. data/Scripts/Scene_Menu.rb +0 -213
  361. data/Scripts/Scene_Name.rb +0 -113
  362. data/Scripts/Scene_Save.rb +0 -88
  363. data/Scripts/Scene_Skill.rb +0 -232
  364. data/Scripts/Scene_Status.rb +0 -78
  365. data/Scripts/Scene_Title.rb +0 -237
  366. data/Scripts/Script.rb +0 -780
  367. data/Scripts/Sprite_Battler.rb +0 -131
  368. data/Scripts/Sprite_Character.rb +0 -192
  369. data/Scripts/Sprite_Footprint.rb +0 -35
  370. data/Scripts/Sprite_Footsplash.rb +0 -54
  371. data/Scripts/Sprite_Light.rb +0 -18
  372. data/Scripts/Sprite_MapText.rb +0 -63
  373. data/Scripts/Sprite_Picture.rb +0 -72
  374. data/Scripts/Sprite_Timer.rb +0 -52
  375. data/Scripts/Spriteset_Map.rb +0 -370
  376. data/Scripts/Window_Base.rb +0 -327
  377. data/Scripts/Window_BattleResult.rb +0 -51
  378. data/Scripts/Window_BattleStatus.rb +0 -62
  379. data/Scripts/Window_Command.rb +0 -49
  380. data/Scripts/Window_DebugLeft.rb +0 -57
  381. data/Scripts/Window_DebugRight.rb +0 -69
  382. data/Scripts/Window_EquipItem.rb +0 -94
  383. data/Scripts/Window_EquipLeft.rb +0 -61
  384. data/Scripts/Window_EquipRight.rb +0 -56
  385. data/Scripts/Window_Gold.rb +0 -27
  386. data/Scripts/Window_Help.rb +0 -33
  387. data/Scripts/Window_InputNumber.rb +0 -111
  388. data/Scripts/Window_Item.rb +0 -229
  389. data/Scripts/Window_MainMenu.rb +0 -150
  390. data/Scripts/Window_MenuStatus.rb +0 -48
  391. data/Scripts/Window_Message.rb +0 -459
  392. data/Scripts/Window_NameEdit.rb +0 -108
  393. data/Scripts/Window_NameInput.rb +0 -262
  394. data/Scripts/Window_PartyCommand.rb +0 -42
  395. data/Scripts/Window_PlayTime.rb +0 -40
  396. data/Scripts/Window_SaveFile.rb +0 -91
  397. data/Scripts/Window_Selectable.rb +0 -203
  398. data/Scripts/Window_Settings.rb +0 -469
  399. data/Scripts/Window_ShopBuy.rb +0 -93
  400. data/Scripts/Window_ShopCommand.rb +0 -37
  401. data/Scripts/Window_ShopNumber.rb +0 -87
  402. data/Scripts/Window_ShopSell.rb +0 -94
  403. data/Scripts/Window_ShopStatus.rb +0 -107
  404. data/Scripts/Window_Skill.rb +0 -83
  405. data/Scripts/Window_SkillStatus.rb +0 -28
  406. data/Scripts/Window_Status.rb +0 -64
  407. data/Scripts/Window_Steps.rb +0 -26
  408. data/Scripts/Window_Target.rb +0 -49
  409. data/Scripts/_scripts.txt +0 -111
  410. data/Scripts/i18n_English.rb +0 -59
  411. data/Scripts/i18n_Language.rb +0 -130
data/Scripts/Script.rb DELETED
@@ -1,780 +0,0 @@
1
- PROTO_TEXT = "put me in the big portal"
2
- CEDRIC_TEXT = "put me in the big portal"
3
- RUE_TEXT = "put me in the big portal"
4
-
5
- SUPPORTED_DE = ["cinnamon", "gnome", "mate", "kde", "xfce"]
6
-
7
- module Script
8
- def self.px
9
- logpos($game_player.x, $game_player.real_x, $game_player.direction == 6)
10
- end
11
-
12
- def self.py
13
- logpos($game_player.y, $game_player.real_y, $game_player.direction == 2)
14
- end
15
-
16
- def self.is_name_swear
17
- test_string = $game_oneshot.player_name.downcase
18
- if ["fuck", "shit", "ass", "cock", "damn", "penis", "tiddy", "titty", "cunt", "fag", "whore"].any? { |swear| test_string.include? swear }
19
- return true
20
- end
21
- return false
22
- end
23
-
24
- def self.is_name_niko
25
- test_string = $game_oneshot.player_name.downcase
26
- if test_string == "niko"
27
- return true
28
- end
29
- return false
30
- end
31
-
32
- def self.is_name_like_niko
33
- test_string = $game_oneshot.player_name.downcase
34
- if ["nico", "nikko", "nicco", "nikoh", "nicoh"].any? { |name| test_string == name }
35
- return true
36
- end
37
- return false
38
- end
39
-
40
- def self.is_name_like_mom_dad
41
- test_string = $game_oneshot.player_name.downcase
42
- if ["mom", "dad", "mommy", "daddy", "mama", "papa"].any? { |name| test_string == name }
43
- return true
44
- end
45
- return false
46
- end
47
-
48
- def self.is_name_gross
49
- test_string = $game_oneshot.player_name.downcase
50
- if ["poo", "pee", "fart", "stinky", "piss", "shit", "slimy"].any? { |name| test_string == name }
51
- return true
52
- end
53
- return false
54
- end
55
-
56
- def self.start_bruteforce
57
- $game_oneshot.bruteforce_start = Graphics.frame_count
58
- end
59
-
60
- def self.check_bruteforce
61
- if($game_oneshot.bruteforce_start == nil)
62
- $game_oneshot.bruteforce_start = Graphics.frame_count
63
- end
64
- time_passed = Graphics.frame_count - $game_oneshot.bruteforce_start
65
- if(time_passed > (2 * 60 * 63014))
66
- return true
67
- else
68
- return false
69
- end
70
- end
71
-
72
- def self.skip_bruteforce
73
- $game_oneshot.bruteforce_start -= 62800*2*60
74
- end
75
-
76
- def self.lose_all_items
77
- for i in 1..99
78
- $game_party.lose_item(i, 99)
79
- end
80
- end
81
-
82
- def self.bruteforce_vars
83
- if($game_oneshot.bruteforce_start == nil)
84
- $game_oneshot.bruteforce_start = Graphics.frame_count
85
- end
86
- time_passed = Graphics.frame_count - $game_oneshot.bruteforce_start
87
- counts_tried = time_passed / (2 * 60)
88
- digit1 = counts_tried % 10;
89
- digit2 = ((counts_tried % 100) - digit1) / 10
90
- digit3 = ((counts_tried % 1000) - (digit2 * 10) - digit1) / 100
91
- digit4 = ((counts_tried % 10000) - (digit3 * 100) - (digit2 * 10) - digit1) / 1000
92
- digit5 = ((counts_tried % 100000) - (digit4 * 1000) - (digit3 * 100) - (digit2 * 10) - digit1) / 10000
93
- $game_variables[26] = digit5
94
- $game_variables[27] = digit4
95
- $game_variables[28] = digit3
96
- $game_variables[29] = digit2
97
- $game_variables[30] = digit1
98
- end
99
-
100
- def self.fix_footsplashes(xDelta, yDelta)
101
- $scene.fix_footsplashes(xDelta, yDelta)
102
- end
103
-
104
- def self.move_player_relative(x, y)
105
- $game_player.x += x
106
- $game_player.y += y
107
- $game_player.real_x += x * 4 * 32
108
- $game_player.real_y += y * 4 * 32
109
- $game_map.display_x += x * 4 * 32
110
- $game_map.display_y += y * 4 * 32
111
- end
112
-
113
- def self.move_player(x, y)
114
- xDelta = x - $game_player.x
115
- yDelta = y - $game_player.y
116
- Script.move_player_relative(xDelta, yDelta)
117
- end
118
-
119
- def self.eve_x(name)
120
- for event in $game_map.events.values
121
- if event.name == name
122
- return logpos(event.x, event.real_x, event.direction == 6)
123
- end
124
- end
125
- return 0
126
- end
127
-
128
- def self.eve_y(name)
129
- for event in $game_map.events.values
130
- if event.name == name
131
- return logpos(event.y, event.real_y, event.direction == 2)
132
- end
133
- end
134
- return 0
135
- end
136
-
137
- def self.countdown_over
138
- equinox = Time.new(2017, 03, 27)
139
- diff = equinox - Time.now
140
- if(diff <= 0)
141
- return true
142
- end
143
- return false
144
- end
145
-
146
- def self.countdown_extend_over
147
- equinox = Time.new(2017, 03, 27)
148
- diff = equinox - Time.now
149
- if(diff <= 0)
150
- return true
151
- end
152
- return false
153
- end
154
-
155
- def self.cdown_update(equinox)
156
- diff = equinox - Time.now
157
- if(diff < 0)
158
- diff = 0
159
- end
160
- seconds = diff % 60
161
- minutes = ((diff - seconds)/ 60) % 60
162
- hours = ((((diff - seconds)/ 60) - minutes) / 60) % 24
163
- days = (((((diff - seconds)/ 60) - minutes) / 60) - hours) / 24
164
- secs1 = seconds % 10
165
- secs2 = (seconds - secs1) / 10
166
- mins1 = minutes % 10
167
- mins2 = (minutes - mins1) / 10
168
- hrs1 = hours % 10
169
- hrs2 = (hours - hrs1) / 10
170
- dys1 = days % 10
171
- dys2 = ((days - dys1) / 10) % 10
172
- dys3 = ((days - dys1 - (dys2*10)) / 100) % 10
173
- dys4 = ((days - dys1 - (dys2*10) - (dys3*100)) / 1000) % 10
174
- secs1 = secs1.floor
175
- change = false
176
- if secs1 != $game_variables[101]
177
- $game_variables[101] = secs1
178
- change = true
179
- end
180
- if secs2 != $game_variables[102]
181
- $game_variables[102] = secs2
182
- change = true
183
- end
184
- if mins1 != $game_variables[103]
185
- $game_variables[103] = mins1
186
- change = true
187
- end
188
- if mins2 != $game_variables[104]
189
- $game_variables[104] = mins2
190
- change = true
191
- end
192
- if hrs1 != $game_variables[105]
193
- $game_variables[105] = hrs1
194
- change = true
195
- end
196
- if hrs2 != $game_variables[106]
197
- $game_variables[106] = hrs2
198
- change = true
199
- end
200
- if dys1 != $game_variables[107]
201
- $game_variables[107] = dys1
202
- change = true
203
- end
204
- if dys2 != $game_variables[108]
205
- $game_variables[108] = dys2
206
- change = true
207
- end
208
- if dys3 != $game_variables[109]
209
- $game_variables[109] = dys3
210
- change = true
211
- end
212
- if dys4 != $game_variables[110]
213
- $game_variables[110] = dys4
214
- change = true
215
- end
216
- return change
217
- end
218
-
219
- def self.countdown_update
220
- return cdown_update(Time.new(2017, 03, 27))
221
- end
222
-
223
- def self.countdown_extend_update
224
- return cdown_update(Time.new(2017, 03, 27))
225
- end
226
-
227
- def self.countdown_update_rue
228
- if @rue_equinox == nil
229
- @rue_equinox = Time.now + 6
230
- end
231
- return cdown_update(@rue_equinox)
232
- end
233
-
234
- def self.niko_reflection_update
235
- for event in $game_map.events.values
236
- if event.name == "niko reflection"
237
- event.real_y = 27*128/2 - ($game_player.real_y - 27*128/2)
238
- event.real_x = $game_player.real_x
239
- event.y = 14 - (($game_player.y - 13))
240
- event.x = $game_player.x
241
- if event.y > 14
242
- event.y = 14
243
- end
244
- if event.real_y > 14*128
245
- event.real_y = 14*128
246
- end
247
- event.direction = $game_player.direction
248
- event.pattern = $game_player.pattern
249
- case event.direction
250
- when 2
251
- event.direction = 8
252
- when 8
253
- event.direction = 2
254
- end
255
- return
256
- end
257
- end
258
- end
259
-
260
- def self.niko_reflection_enc_update
261
- for event in $game_map.events.values
262
- if event.name == "niko reflection"
263
- event.real_y = 20*128 - ($game_player.real_y - 20*128)
264
- event.real_x = $game_player.real_x
265
- event.y = 20 - (($game_player.y - 20))
266
- event.x = $game_player.x
267
- if event.y > 19
268
- event.y = 19
269
- end
270
- if event.real_y > 19*128
271
- event.real_y = 19*128
272
- end
273
-
274
- if event.x > 14
275
- event.x = 14
276
- elsif event.x < 6
277
- event.x = 6
278
- end
279
- if event.real_x > (14*128) - 32
280
- event.real_x = (14*128) - 32
281
- elsif event.real_x < (6*128) + 32
282
- event.real_x = (6*128) + 32
283
- end
284
-
285
- event.direction = $game_player.direction
286
- event.pattern = $game_player.pattern
287
- case event.direction
288
- when 2
289
- event.direction = 8
290
- when 8
291
- event.direction = 2
292
- end
293
- return
294
- end
295
- end
296
- end
297
-
298
-
299
- def self.niko_reflection_peng_update
300
- for event in $game_map.events.values
301
- if event.name == "niko reflection"
302
- event.real_y = 20*128 - ($game_player.real_y - 20*128)
303
- event.real_x = $game_player.real_x
304
- event.y = 20 - (($game_player.y - 20))
305
- event.x = $game_player.x
306
- if event.y > 19
307
- event.y = 19
308
- end
309
- if event.real_y > 19*128
310
- event.real_y = 19*128
311
- end
312
-
313
- if event.x > 14
314
- event.x = 14
315
- elsif event.x < 6
316
- event.x = 6
317
- end
318
- if event.real_x > (14*128) - 32
319
- event.real_x = (14*128) - 32
320
- elsif event.real_x < (6*128) + 32
321
- event.real_x = (6*128) + 32
322
- end
323
-
324
- return
325
- end
326
- end
327
- end
328
-
329
- # Temporary switch assignment
330
- def self.tmp_s1=(val)
331
- $game_switches[TMP_INDEX+0] = val
332
- end
333
-
334
- def self.tmp_s2=(val)
335
- $game_switches[TMP_INDEX+1] = val
336
- end
337
-
338
- def self.tmp_s3=(val)
339
- $game_switches[TMP_INDEX+2] = val
340
- end
341
-
342
- def self.tmp_v1=(val)
343
- $game_variables[TMP_INDEX+0] = val
344
- end
345
-
346
- def self.tmp_v2=(val)
347
- $game_variables[TMP_INDEX+1] = val
348
- end
349
-
350
- def self.tmp_v3=(val)
351
- $game_variables[TMP_INDEX+2] = val
352
- end
353
-
354
- private
355
- TMP_INDEX = 22
356
-
357
- def self.logpos(pos, realpos, positive)
358
- bigpos = pos * 128
359
- if realpos < bigpos
360
- return pos - 1 if positive
361
- elsif realpos > bigpos
362
- return pos + 1 if positive
363
- end
364
- return pos
365
- end
366
-
367
- def self.set_cam(x, y)
368
- $game_map.display_x = x
369
- $game_map.display_y = y
370
- end
371
-
372
- def self.fadein_bgm(target, speed)
373
- $game_temp.target_bgm_vol_level = target
374
- $game_temp.bgm_fadein_speed = speed
375
- end
376
-
377
- def self.copy_journal
378
- # If the required directories don't exist, create them
379
- Dir.mkdir(Oneshot::GAME_PATH) unless File.exists?(Oneshot::GAME_PATH)
380
- Dir.mkdir(Oneshot::GAME_PATH + "/Oneshot") unless File.exists?(Oneshot::GAME_PATH + "/Oneshot")
381
- begin
382
- # If we're on a supported Linux DE, make a .desktop file
383
- # so the clover icon can be properly shown
384
- if Oneshot::OS == "linux" and SUPPORTED_DE.include? Oneshot::DE
385
- path = "#{Oneshot::GAME_PATH}/Oneshot/#{Oneshot::JOURNAL}.desktop"
386
- File.open(path, "wb") do |output|
387
- output.write("[Desktop Entry]\n")
388
- output.write("Comment=...\n")
389
- output.write("Terminal=false\n")
390
- output.write("Name=_______\n")
391
- output.write("Exec=#{Dir.pwd}/#{Oneshot::JOURNAL}\n")
392
- output.write("Type=Application\n")
393
- output.write("Icon=#{Dir.pwd}/images/icon.png\n")
394
- end
395
- File.chmod(0777, path)
396
- # If the journal is a file, copy it to Documents
397
- elsif File.file?(Oneshot::JOURNAL)
398
- File.open(Oneshot::JOURNAL, "rb") do |input|
399
- File.open("#{Oneshot::GAME_PATH}/Oneshot/#{Oneshot::JOURNAL}", "wb") do |output|
400
- while buff = input.read(4096)
401
- output.write(buff)
402
- end
403
- end
404
- end
405
- # If the journal isn't a file, symlink it
406
- else
407
- File.symlink "#{Dir.pwd}/#{Oneshot::JOURNAL}", "#{Oneshot::GAME_PATH}/Oneshot/#{Oneshot::JOURNAL}"
408
- end
409
- rescue Errno::EACCES => e
410
- # this probably means the clover.exe already exists and is running, so no need to create it again
411
- rescue Errno::EEXIST => e
412
- # this means that the journal file already exists, so no need to create it again
413
- end
414
- if File.exists?("README.txt")
415
- File.open("README.txt", "rb") do |input|
416
- File.open(Oneshot::GAME_PATH + "/Oneshot/README.txt","wb") do |output|
417
- while buff = input.read(4096)
418
- output.write(buff)
419
- end
420
- end
421
- end
422
- end
423
- end
424
-
425
- def self.create_boxes
426
- Dir.mkdir(Oneshot::GAME_PATH) unless File.exists?(Oneshot::GAME_PATH)
427
- Dir.mkdir(Oneshot::GAME_PATH + "/Oneshot") unless File.exists?(Oneshot::GAME_PATH + "/Oneshot")
428
- Dir.mkdir(Oneshot::GAME_PATH + "/Oneshot/Portal1") unless File.exists?(Oneshot::GAME_PATH + "/Oneshot/Portal1")
429
- Dir.mkdir(Oneshot::GAME_PATH + "/Oneshot/Portal2") unless File.exists?(Oneshot::GAME_PATH + "/Oneshot/Portal2")
430
- Dir.mkdir(Oneshot::GAME_PATH + "/Oneshot/Portal3") unless File.exists?(Oneshot::GAME_PATH + "/Oneshot/Portal3")
431
- Dir.mkdir(Oneshot::GAME_PATH + "/Oneshot/BigPortal") unless File.exists?(Oneshot::GAME_PATH + "/Oneshot/BigPortal")
432
- end
433
-
434
- def self.delete_if_exists(f_name)
435
- File.delete(f_name) unless !File.exists?(f_name)
436
- end
437
-
438
- def self.clear_boxes
439
- for i in 1..3
440
- portal_path = Oneshot::GAME_PATH + "/Oneshot/Portal" + i.to_s
441
- case i
442
- when 1
443
- delete_if_exists(portal_path + "/blue_npc_prototype.png")
444
- delete_if_exists(portal_path + "/proto1.png")
445
- delete_if_exists(portal_path + "/keyB.txt")
446
- when 2
447
- delete_if_exists(portal_path + "/green_npc_cedric.png")
448
- delete_if_exists(portal_path + "/cedric.png")
449
- delete_if_exists(portal_path + "/keyG.txt")
450
- when 3
451
- delete_if_exists(portal_path + "/red_rue.png")
452
- delete_if_exists(portal_path + "/rue.png")
453
- delete_if_exists(portal_path + "/keyR.txt")
454
- end
455
- end
456
- delete_if_exists(Oneshot::GAME_PATH + "/Oneshot/BigPortal/keyB.txt")
457
- delete_if_exists(Oneshot::GAME_PATH + "/Oneshot/BigPortal/keyG.txt")
458
- delete_if_exists(Oneshot::GAME_PATH + "/Oneshot/BigPortal/keyR.txt")
459
- end
460
-
461
- def self.copy_file(src, dst)
462
- begin
463
- File.open(src, "rb") do |input|
464
- File.open(dst,"wb") do |output|
465
- while buff = input.read(4096)
466
- output.write(buff)
467
- end
468
- end
469
- end
470
- rescue Errno::EACCES => e
471
- #this probably means the file already exists and is open, so no need to create it again
472
- rescue Errno::EEXIST => e
473
- #this probably means the file already exists, so no need to create it again
474
- end
475
- end
476
-
477
- def self.write_key(dst, str)
478
- File.open(dst, 'w') do |file|
479
- file.puts(str)
480
- end
481
- end
482
-
483
- def self.put_key_in_box(numb)
484
- portal_path = Oneshot::GAME_PATH + "/Oneshot/Portal" + numb.to_s
485
- case numb
486
- when 1
487
- copy_file("Graphics/Characters/blue_npc_prototype.png", portal_path + "/blue_npc_prototype.png")
488
- copy_file("Graphics/Faces/proto1.png", portal_path + "/proto1.png")
489
- write_key(portal_path + "/keyB.txt", tr(PROTO_TEXT))
490
- when 2
491
- copy_file("Graphics/Characters/green_npc_cedric.png", portal_path + "/green_npc_cedric.png")
492
- copy_file("Graphics/Faces/cedric.png", portal_path + "/cedric.png")
493
- write_key(portal_path + "/keyG.txt", tr(CEDRIC_TEXT))
494
- when 3
495
- copy_file("Graphics/Characters/red_rue.png", portal_path + "/red_rue.png")
496
- copy_file("Graphics/Faces/rue.png", portal_path + "/rue.png")
497
- write_key(portal_path + "/keyR.txt", tr(RUE_TEXT))
498
- end
499
-
500
- end
501
-
502
- def self.password1
503
- locale = $persistent.langcode
504
- if !Language::LANGUAGES.include? locale
505
- locale = 'en'
506
- end
507
- source_dir = "Graphics/Fogs/_/scenario1/" + locale.downcase
508
- Dir.mkdir(Oneshot::DOCS_PATH) unless File.exists?(Oneshot::DOCS_PATH)
509
- copy_file(source_dir + "/pw1.png", Oneshot::DOCS_PATH + "/ONESHOT_password1.png")
510
- copy_file(source_dir + "/pw2.png", Oneshot::DOCS_PATH + "/ONESHOT_password2.png")
511
- copy_file(source_dir + "/pw3.png", Oneshot::DOCS_PATH + "/ONESHOT_password3.png")
512
- copy_file(source_dir + "/pw4.png", Oneshot::DOCS_PATH + "/ONESHOT_password4.png")
513
- end
514
-
515
- def self.password2
516
- locale = $persistent.langcode
517
- if !Language::LANGUAGES.include? locale
518
- locale = 'en'
519
- end
520
- source_dir = "Graphics/Fogs/_/scenario2/#{locale.downcase}"
521
- Dir.mkdir(Oneshot::DOCS_PATH) unless File.exists?(Oneshot::DOCS_PATH)
522
- copy_file("#{source_dir}/pw1.png", "#{Oneshot::DOCS_PATH}/ONESHOT_password1.png")
523
- copy_file("#{source_dir}/pw2.png", "#{Oneshot::DOCS_PATH}/ONESHOT_password2.png")
524
- copy_file("#{source_dir}/pw3.png", "#{Oneshot::DOCS_PATH}/ONESHOT_password3.png")
525
- copy_file("#{source_dir}/pw4.png", "#{Oneshot::DOCS_PATH}/ONESHOT_password4.png")
526
- end
527
-
528
- =begin
529
- def self.take_key_out_of_box(numb)
530
- if File.exists?(Oneshot::GAME_PATH + "/Oneshot/Box" + numb.to_s + "/key" + numb.to_s + ".png")
531
- File.delete(Oneshot::GAME_PATH + "/Oneshot/Box" + numb.to_s + "/key" + numb.to_s + ".png")
532
- end
533
- if File.exists?(Oneshot::GAME_PATH + "/Oneshot/BigBox/key" + numb.to_s + ".png")
534
- File.delete(Oneshot::GAME_PATH + "/Oneshot/BigBox/key" + numb.to_s + ".png")
535
- end
536
- end
537
- =end
538
-
539
- def self.is_key_in_box(numb)
540
- portal_path = Oneshot::GAME_PATH + "/Oneshot/Portal" + numb.to_s
541
- case numb
542
- when 1
543
- return File.exists?(portal_path + "/keyB.txt")
544
- when 2
545
- return File.exists?(portal_path + "/keyG.txt")
546
- when 3
547
- return File.exists?(portal_path + "/keyR.txt")
548
- end
549
- return false
550
- end
551
-
552
- def self.is_key_in_bigbox(numb)
553
- portal_path = Oneshot::GAME_PATH + "/Oneshot/BigPortal"
554
- case numb
555
- when 1
556
- return File.exists?(portal_path + "/keyB.txt")
557
- when 2
558
- return File.exists?(portal_path + "/keyG.txt")
559
- when 3
560
- return File.exists?(portal_path + "/keyR.txt")
561
- end
562
- return false
563
- end
564
-
565
- end
566
-
567
- def has_lightbulb?
568
- $game_party.item_number(1) > 0
569
- end
570
-
571
- def button_pressed?
572
- (1..18).each do |i|
573
- return true if Input.trigger?(i)
574
- end
575
- return false
576
- end
577
-
578
- def enter_name
579
- $game_temp.name_calling = true
580
- end
581
-
582
- def check_exit(min, max, x: -1, y: -1)
583
- result = false
584
- if x >= 0
585
- if $game_player.x == x
586
- if $game_player.y >= min && $game_player.y <= max
587
- result = true
588
- end
589
- end
590
- elsif y >= 0
591
- if $game_player.y == y
592
- if $game_player.x >= min && $game_player.x <= max
593
- result = true
594
- end
595
- end
596
- end
597
- Script.tmp_s1 = $game_switches[11] ? false : result
598
- end
599
-
600
- def loadQASave(fname)
601
- filename = "testing_saves/" + fname + ".rxdata"
602
- # If file doesn't exist
603
- unless FileTest.exist?(filename)
604
- filename = "testing_saves_postgame/" + fname + ".rxdata"
605
- unless FileTest.exist?(filename)
606
- # Play buzzer SE
607
- $game_system.se_play($data_system.buzzer_se)
608
- return
609
- end
610
- end
611
- # Play load SE
612
- $game_system.se_play($data_system.load_se)
613
-
614
- # Read save data
615
- file = File.open(filename, "rb")
616
- # Read character data for drawing save file
617
- characters = Marshal.load(file)
618
- # Read frame count for measuring play time
619
- Graphics.frame_count = Marshal.load(file)
620
- # Read each type of game object
621
- $game_system = Marshal.load(file)
622
- $game_switches = Marshal.load(file)
623
- $game_variables = Marshal.load(file)
624
- $game_self_switches = Marshal.load(file)
625
- $game_screen = Marshal.load(file)
626
- $game_actors = Marshal.load(file)
627
- $game_party = Marshal.load(file)
628
- $game_troop = Marshal.load(file)
629
- $game_map = Marshal.load(file)
630
- $game_player = Marshal.load(file)
631
- $game_followers = Marshal.load(file)
632
- $game_oneshot = Marshal.load(file)
633
- $game_fasttravel = Marshal.load(file)
634
- $game_temp.footstep_sfx = Marshal.load(file)
635
-
636
- # If magic number is different from when saving
637
- # (if editing was added with editor)
638
- if $game_system.magic_number != $data_system.magic_number
639
- # Load map
640
- $game_map.setup($game_map.map_id)
641
- $game_player.center($game_player.x, $game_player.y)
642
- end
643
- # Refresh party members
644
- $game_party.refresh
645
-
646
- f_prev = $game_player
647
- for f in $game_followers
648
- f.leader = f_prev
649
- f.moveto($game_player.x, $game_player.y)
650
- f_prev = f
651
- end
652
- file.close
653
- # Restore BGM and BGS
654
- $game_system.bgm_play($game_system.playing_bgm)
655
- $game_system.bgs_play($game_system.playing_bgs)
656
- # Update map (run parallel process event)
657
- $game_map.update
658
- # Switch to map screen
659
- $scene = Scene_Map.new
660
- end
661
-
662
- def kill_perma_flags
663
- for i in 151..175
664
- $game_switches[i] = false
665
- end
666
- for i in 76..100
667
- $game_variables[i] = 0
668
- end
669
- end
670
-
671
- def bg(name)
672
- $game_map.bg_name = name
673
- end
674
-
675
- def particles(type)
676
- $game_map.particles_type = type
677
- end
678
-
679
- def ambient(r, g, b, gray = 0)
680
- $game_map.ambient.set(r, g, b, gray)
681
- end
682
-
683
- def clear_ambient
684
- $game_map.ambient.set(0, 0, 0, 0)
685
- end
686
-
687
- def add_light(id, file, intensity, x, y)
688
- #$scene.add_light(id, file, intensity, x, y)
689
- end
690
-
691
- def del_light(id)
692
- #$scene.del_light(id)
693
- end
694
-
695
- def clear_lights
696
- #$scene.clear_lights
697
- end
698
-
699
- def wrap_map
700
- $game_map.wrapping = true
701
- end
702
-
703
- def pan_offset_y(val)
704
- $game_map.pan_offset_y = val
705
- end
706
-
707
- # Map specific settings
708
- def green_ambient
709
- ambient(-30, -20, -30)
710
- end
711
-
712
- def blue_ambient
713
- ambient(-40, -40, -40)
714
- end
715
-
716
- def house_ambient
717
- ambient(-15, -15, -15)
718
- end
719
-
720
- # Travel
721
- def enable_travel
722
- $game_fasttravel.enabled = true
723
- end
724
-
725
- def disable_travel
726
- $game_fasttravel.enabled = false
727
- end
728
-
729
- def unlock_map(zone, map, dir)
730
- # Find the coordinate of the calling event
731
- e = $game_map.events.values.find { |e| e.name == 'FAST TRAVEL' }
732
- raise 'could not find event named FAST TRAVEL' if !e
733
- case dir
734
- when :down
735
- newdir = 2
736
- when :left
737
- newdir = 4
738
- when :right
739
- newdir = 6
740
- when :up
741
- newdir = 8
742
- else
743
- raise "invalid direction: #{dir}"
744
- end
745
- $game_fasttravel.enabled = true
746
- $game_fasttravel.zone = zone
747
- $game_fasttravel.unlock(map, $game_map.map_id, e.x, e.y, newdir)
748
- end
749
-
750
- # Misc
751
- def watcher_tell_time
752
- hour = Time.now.hour
753
- if hour >= 6 && hour < 12
754
- Script.tmp_v1 = 0
755
- elsif hour >= 12 && hour < 17
756
- Script.tmp_v1 = 1
757
- elsif hour >= 17
758
- Script.tmp_v1 = 2
759
- else
760
- Script.tmp_v1 = 3
761
- end
762
- end
763
-
764
- def plight_start_timer
765
- $game_oneshot.plight_timer = Time.now
766
- end
767
-
768
- def plight_update_timer
769
- if $game_oneshot.plight_timer == nil
770
- plight_start_timer
771
- end
772
- Script.tmp_v1 = ((Time.now - $game_oneshot.plight_timer) / 60).to_i
773
- end
774
-
775
- def activate_balcony?(ypos)
776
- !$scene.menu_open? &&
777
- $game_player.y == ypos &&
778
- $game_player.direction == 8 &&
779
- Input.trigger?(Input::ACTION) && !$game_system.map_interpreter.running? && !$game_temp.menus_visible
780
- end