rmxp_extractor 1.5 → 1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Data/Actors.rxdata +0 -0
- data/Data/Animations.rxdata +0 -0
- data/Data/Armors.rxdata +0 -0
- data/Data/Classes.rxdata +0 -0
- data/Data/CommonEvents.rxdata +0 -0
- data/Data/Enemies.rxdata +0 -0
- data/Data/Items.rxdata +0 -0
- data/Data/Map001.rxdata +0 -0
- data/Data/Map002.rxdata +0 -0
- data/Data/Map003.rxdata +0 -0
- data/Data/Map004.rxdata +0 -0
- data/Data/Map005.rxdata +0 -0
- data/Data/Map006.rxdata +0 -0
- data/Data/Map007.rxdata +0 -0
- data/Data/Map008.rxdata +0 -0
- data/Data/Map009.rxdata +0 -0
- data/Data/Map010.rxdata +0 -0
- data/Data/Map011.rxdata +0 -0
- data/Data/Map012.rxdata +0 -0
- data/Data/Map013.rxdata +0 -0
- data/Data/Map014.rxdata +0 -0
- data/Data/Map015.rxdata +0 -0
- data/Data/Map016.rxdata +0 -0
- data/Data/Map017.rxdata +0 -0
- data/Data/Map018.rxdata +0 -0
- data/Data/Map019.rxdata +0 -0
- data/Data/Map020.rxdata +0 -0
- data/Data/Map021.rxdata +0 -0
- data/Data/Map022.rxdata +0 -0
- data/Data/Map023.rxdata +0 -0
- data/Data/Map024.rxdata +0 -0
- data/Data/Map025.rxdata +0 -0
- data/Data/Map026.rxdata +0 -0
- data/Data/Map027.rxdata +0 -0
- data/Data/Map028.rxdata +0 -0
- data/Data/Map029.rxdata +0 -0
- data/Data/Map030.rxdata +0 -0
- data/Data/Map031.rxdata +0 -0
- data/Data/Map032.rxdata +0 -0
- data/Data/Map033.rxdata +0 -0
- data/Data/Map034.rxdata +0 -0
- data/Data/Map035.rxdata +0 -0
- data/Data/Map036.rxdata +0 -0
- data/Data/Map037.rxdata +0 -0
- data/Data/Map038.rxdata +0 -0
- data/Data/Map039.rxdata +0 -0
- data/Data/Map040.rxdata +0 -0
- data/Data/Map041.rxdata +0 -0
- data/Data/Map042.rxdata +0 -0
- data/Data/Map043.rxdata +0 -0
- data/Data/Map044.rxdata +0 -0
- data/Data/Map045.rxdata +0 -0
- data/Data/Map046.rxdata +0 -0
- data/Data/Map047.rxdata +0 -0
- data/Data/Map048.rxdata +0 -0
- data/Data/Map049.rxdata +0 -0
- data/Data/Map050.rxdata +0 -0
- data/Data/Map051.rxdata +0 -0
- data/Data/Map052.rxdata +0 -0
- data/Data/Map053.rxdata +0 -0
- data/Data/Map054.rxdata +0 -0
- data/Data/Map055.rxdata +0 -0
- data/Data/Map056.rxdata +0 -0
- data/Data/Map057.rxdata +0 -0
- data/Data/Map058.rxdata +0 -0
- data/Data/Map059.rxdata +0 -0
- data/Data/Map060.rxdata +0 -0
- data/Data/Map061.rxdata +0 -0
- data/Data/Map062.rxdata +0 -0
- data/Data/Map063.rxdata +0 -0
- data/Data/Map064.rxdata +0 -0
- data/Data/Map065.rxdata +0 -0
- data/Data/Map066.rxdata +0 -0
- data/Data/Map067.rxdata +0 -0
- data/Data/Map068.rxdata +0 -0
- data/Data/Map069.rxdata +0 -0
- data/Data/Map070.rxdata +0 -0
- data/Data/Map071.rxdata +0 -0
- data/Data/Map072.rxdata +0 -0
- data/Data/Map073.rxdata +0 -0
- data/Data/Map074.rxdata +0 -0
- data/Data/Map075.rxdata +0 -0
- data/Data/Map076.rxdata +0 -0
- data/Data/Map077.rxdata +0 -0
- data/Data/Map078.rxdata +0 -0
- data/Data/Map079.rxdata +0 -0
- data/Data/Map080.rxdata +0 -0
- data/Data/Map081.rxdata +0 -0
- data/Data/Map082.rxdata +0 -0
- data/Data/Map083.rxdata +0 -0
- data/Data/Map084.rxdata +0 -0
- data/Data/Map085.rxdata +0 -0
- data/Data/Map086.rxdata +0 -0
- data/Data/Map087.rxdata +0 -0
- data/Data/Map088.rxdata +0 -0
- data/Data/Map089.rxdata +0 -0
- data/Data/Map090.rxdata +0 -0
- data/Data/Map091.rxdata +0 -0
- data/Data/Map092.rxdata +0 -0
- data/Data/Map093.rxdata +0 -0
- data/Data/Map094.rxdata +0 -0
- data/Data/Map095.rxdata +0 -0
- data/Data/Map096.rxdata +0 -0
- data/Data/Map097.rxdata +0 -0
- data/Data/Map098.rxdata +0 -0
- data/Data/Map099.rxdata +0 -0
- data/Data/Map100.rxdata +0 -0
- data/Data/Map101.rxdata +0 -0
- data/Data/Map102.rxdata +0 -0
- data/Data/Map103.rxdata +0 -0
- data/Data/Map104.rxdata +0 -0
- data/Data/Map105.rxdata +0 -0
- data/Data/Map106.rxdata +0 -0
- data/Data/Map107.rxdata +0 -0
- data/Data/Map108.rxdata +0 -0
- data/Data/Map109.rxdata +0 -0
- data/Data/Map110.rxdata +0 -0
- data/Data/Map111.rxdata +0 -0
- data/Data/Map112.rxdata +0 -0
- data/Data/Map113.rxdata +0 -0
- data/Data/Map114.rxdata +0 -0
- data/Data/Map115.rxdata +0 -0
- data/Data/Map116.rxdata +0 -0
- data/Data/Map117.rxdata +0 -0
- data/Data/Map118.rxdata +0 -0
- data/Data/Map119.rxdata +0 -0
- data/Data/Map120.rxdata +0 -0
- data/Data/Map121.rxdata +0 -0
- data/Data/Map122.rxdata +0 -0
- data/Data/Map123.rxdata +0 -0
- data/Data/Map124.rxdata +0 -0
- data/Data/Map125.rxdata +0 -0
- data/Data/Map126.rxdata +0 -0
- data/Data/Map127.rxdata +0 -0
- data/Data/Map128.rxdata +0 -0
- data/Data/Map129.rxdata +0 -0
- data/Data/Map130.rxdata +0 -0
- data/Data/Map131.rxdata +0 -0
- data/Data/Map132.rxdata +0 -0
- data/Data/Map133.rxdata +0 -0
- data/Data/Map134.rxdata +0 -0
- data/Data/Map135.rxdata +0 -0
- data/Data/Map136.rxdata +0 -0
- data/Data/Map137.rxdata +0 -0
- data/Data/Map138.rxdata +0 -0
- data/Data/Map139.rxdata +0 -0
- data/Data/Map140.rxdata +0 -0
- data/Data/Map141.rxdata +0 -0
- data/Data/Map142.rxdata +0 -0
- data/Data/Map143.rxdata +0 -0
- data/Data/Map144.rxdata +0 -0
- data/Data/Map145.rxdata +0 -0
- data/Data/Map146.rxdata +0 -0
- data/Data/Map147.rxdata +0 -0
- data/Data/Map148.rxdata +0 -0
- data/Data/Map149.rxdata +0 -0
- data/Data/Map150.rxdata +0 -0
- data/Data/Map151.rxdata +0 -0
- data/Data/Map152.rxdata +0 -0
- data/Data/Map153.rxdata +0 -0
- data/Data/Map154.rxdata +0 -0
- data/Data/Map155.rxdata +0 -0
- data/Data/Map156.rxdata +0 -0
- data/Data/Map157.rxdata +0 -0
- data/Data/Map158.rxdata +0 -0
- data/Data/Map159.rxdata +0 -0
- data/Data/Map160.rxdata +0 -0
- data/Data/Map161.rxdata +0 -0
- data/Data/Map162.rxdata +0 -0
- data/Data/Map163.rxdata +0 -0
- data/Data/Map164.rxdata +0 -0
- data/Data/Map165.rxdata +0 -0
- data/Data/Map166.rxdata +0 -0
- data/Data/Map167.rxdata +0 -0
- data/Data/Map168.rxdata +0 -0
- data/Data/Map169.rxdata +0 -0
- data/Data/Map170.rxdata +0 -0
- data/Data/Map171.rxdata +0 -0
- data/Data/Map172.rxdata +0 -0
- data/Data/Map173.rxdata +0 -0
- data/Data/Map174.rxdata +0 -0
- data/Data/Map175.rxdata +0 -0
- data/Data/Map176.rxdata +0 -0
- data/Data/Map177.rxdata +0 -0
- data/Data/Map178.rxdata +0 -0
- data/Data/Map179.rxdata +0 -0
- data/Data/Map180.rxdata +0 -0
- data/Data/Map181.rxdata +0 -0
- data/Data/Map182.rxdata +0 -0
- data/Data/Map183.rxdata +0 -0
- data/Data/Map184.rxdata +0 -0
- data/Data/Map185.rxdata +0 -0
- data/Data/Map186.rxdata +0 -0
- data/Data/Map187.rxdata +0 -0
- data/Data/Map188.rxdata +0 -0
- data/Data/Map189.rxdata +0 -0
- data/Data/Map190.rxdata +0 -0
- data/Data/Map191.rxdata +0 -0
- data/Data/Map192.rxdata +0 -0
- data/Data/Map193.rxdata +0 -0
- data/Data/Map194.rxdata +0 -0
- data/Data/Map195.rxdata +0 -0
- data/Data/Map196.rxdata +0 -0
- data/Data/Map197.rxdata +0 -0
- data/Data/Map198.rxdata +0 -0
- data/Data/Map199.rxdata +0 -0
- data/Data/Map200.rxdata +0 -0
- data/Data/Map201.rxdata +0 -0
- data/Data/Map202.rxdata +0 -0
- data/Data/Map203.rxdata +0 -0
- data/Data/Map204.rxdata +0 -0
- data/Data/Map205.rxdata +0 -0
- data/Data/Map206.rxdata +0 -0
- data/Data/Map207.rxdata +0 -0
- data/Data/Map208.rxdata +0 -0
- data/Data/Map209.rxdata +0 -0
- data/Data/Map210.rxdata +0 -0
- data/Data/Map211.rxdata +0 -0
- data/Data/Map212.rxdata +0 -0
- data/Data/Map213.rxdata +0 -0
- data/Data/Map214.rxdata +0 -0
- data/Data/Map215.rxdata +0 -0
- data/Data/Map216.rxdata +0 -0
- data/Data/Map217.rxdata +0 -0
- data/Data/Map218.rxdata +0 -0
- data/Data/Map219.rxdata +0 -0
- data/Data/Map220.rxdata +0 -0
- data/Data/Map221.rxdata +0 -0
- data/Data/Map222.rxdata +0 -0
- data/Data/Map223.rxdata +0 -0
- data/Data/Map224.rxdata +0 -0
- data/Data/Map225.rxdata +0 -0
- data/Data/Map226.rxdata +0 -0
- data/Data/Map227.rxdata +0 -0
- data/Data/Map228.rxdata +0 -0
- data/Data/Map229.rxdata +0 -0
- data/Data/Map230.rxdata +0 -0
- data/Data/Map231.rxdata +0 -0
- data/Data/Map232.rxdata +0 -0
- data/Data/Map233.rxdata +0 -0
- data/Data/Map234.rxdata +0 -0
- data/Data/Map235.rxdata +0 -0
- data/Data/Map236.rxdata +0 -0
- data/Data/Map237.rxdata +0 -0
- data/Data/Map238.rxdata +0 -0
- data/Data/Map239.rxdata +0 -0
- data/Data/Map240.rxdata +0 -0
- data/Data/Map241.rxdata +0 -0
- data/Data/Map242.rxdata +0 -0
- data/Data/Map243.rxdata +0 -0
- data/Data/Map244.rxdata +0 -0
- data/Data/Map245.rxdata +0 -0
- data/Data/Map246.rxdata +0 -0
- data/Data/Map247.rxdata +0 -0
- data/Data/Map248.rxdata +0 -0
- data/Data/Map249.rxdata +0 -0
- data/Data/Map250.rxdata +0 -0
- data/Data/Map251.rxdata +0 -0
- data/Data/Map252.rxdata +0 -0
- data/Data/Map253.rxdata +0 -0
- data/Data/Map254.rxdata +0 -0
- data/Data/Map255.rxdata +0 -0
- data/Data/Map256.rxdata +0 -0
- data/Data/Map257.rxdata +0 -0
- data/Data/Map258.rxdata +0 -0
- data/Data/Map259.rxdata +0 -0
- data/Data/Map260.rxdata +0 -0
- data/Data/Map261.rxdata +0 -0
- data/Data/Map262.rxdata +0 -0
- data/Data/Map263.rxdata +0 -0
- data/Data/MapInfos.rxdata +0 -0
- data/Data/Scripts.rxdata +0 -0
- data/Data/Skills.rxdata +0 -0
- data/Data/States.rxdata +0 -0
- data/Data/System.rxdata +0 -0
- data/Data/Tilesets.rxdata +0 -0
- data/Data/Troops.rxdata +0 -0
- data/Data/Weapons.rxdata +0 -0
- data/Data/xScripts.rxdata +0 -0
- data/Scripts/Credits_Message.rb +259 -0
- data/Scripts/Data_FastTravel.rb +50 -0
- data/Scripts/Data_Footsteps.rb +77 -0
- data/Scripts/Data_Item.rb +50 -0
- data/Scripts/Data_SpecialEventData.rb +60 -0
- data/Scripts/Demo.rb +7 -0
- data/Scripts/Desktop_Message.rb +210 -0
- data/Scripts/Doc_Message.rb +273 -0
- data/Scripts/EdText.rb +50 -0
- data/Scripts/Ed_Message.rb +234 -0
- data/Scripts/FastTravel.rb +175 -0
- data/Scripts/Game_Actor.rb +156 -0
- data/Scripts/Game_Actors.rb +28 -0
- data/Scripts/Game_BattleAction.rb +145 -0
- data/Scripts/Game_Battler 1.rb +307 -0
- data/Scripts/Game_Battler 2.rb +294 -0
- data/Scripts/Game_Battler 3.rb +354 -0
- data/Scripts/Game_Character 1.rb +291 -0
- data/Scripts/Game_Character 2.rb +355 -0
- data/Scripts/Game_Character 3.rb +505 -0
- data/Scripts/Game_CommonEvent.rb +70 -0
- data/Scripts/Game_Enemy.rb +317 -0
- data/Scripts/Game_Event.rb +264 -0
- data/Scripts/Game_FastTravel.rb +40 -0
- data/Scripts/Game_Follower.rb +76 -0
- data/Scripts/Game_Light.rb +13 -0
- data/Scripts/Game_Map.rb +551 -0
- data/Scripts/Game_Oneshot.rb +83 -0
- data/Scripts/Game_Party.rb +380 -0
- data/Scripts/Game_Picture.rb +164 -0
- data/Scripts/Game_Player.rb +298 -0
- data/Scripts/Game_Screen.rb +148 -0
- data/Scripts/Game_SelfSwitches.rb +30 -0
- data/Scripts/Game_Switches.rb +45 -0
- data/Scripts/Game_System.rb +210 -0
- data/Scripts/Game_Temp.rb +145 -0
- data/Scripts/Game_Variables.rb +36 -0
- data/Scripts/Interpreter 1.rb +320 -0
- data/Scripts/Interpreter 2.rb +286 -0
- data/Scripts/Interpreter 3.rb +474 -0
- data/Scripts/Interpreter 4.rb +327 -0
- data/Scripts/Interpreter 5.rb +448 -0
- data/Scripts/Interpreter 6.rb +307 -0
- data/Scripts/Interpreter 7.rb +282 -0
- data/Scripts/Main.rb +46 -9
- data/Scripts/Particles.rb +141 -0
- data/Scripts/Persistent.rb +71 -0
- data/Scripts/Puzzle_Film.rb +14 -0
- data/Scripts/Puzzle_Pixel.rb +210 -0
- data/Scripts/Puzzle_Safe.rb +152 -0
- data/Scripts/Puzzle_Sokoban.rb +14 -0
- data/Scripts/RPG.rb +55 -0
- data/Scripts/SaveLoad.rb +275 -0
- data/Scripts/Scene_Debug.rb +190 -0
- data/Scripts/Scene_End.rb +108 -0
- data/Scripts/Scene_Equip.rb +222 -0
- data/Scripts/Scene_File.rb +111 -0
- data/Scripts/Scene_Item.rb +205 -0
- data/Scripts/Scene_Load.rb +106 -0
- data/Scripts/Scene_Map.rb +540 -0
- data/Scripts/Scene_Menu.rb +213 -0
- data/Scripts/Scene_Name.rb +113 -0
- data/Scripts/Scene_Save.rb +88 -0
- data/Scripts/Scene_Skill.rb +232 -0
- data/Scripts/Scene_Status.rb +78 -0
- data/Scripts/Scene_Title.rb +237 -0
- data/Scripts/Script.rb +780 -0
- data/Scripts/Sprite_Battler.rb +131 -0
- data/Scripts/Sprite_Character.rb +192 -0
- data/Scripts/Sprite_Footprint.rb +35 -0
- data/Scripts/Sprite_Footsplash.rb +54 -0
- data/Scripts/Sprite_Light.rb +18 -0
- data/Scripts/Sprite_MapText.rb +63 -0
- data/Scripts/Sprite_Picture.rb +72 -0
- data/Scripts/Sprite_Timer.rb +52 -0
- data/Scripts/Spriteset_Map.rb +370 -0
- data/Scripts/Window_Base.rb +327 -0
- data/Scripts/Window_BattleResult.rb +51 -0
- data/Scripts/Window_BattleStatus.rb +62 -0
- data/Scripts/Window_Command.rb +49 -0
- data/Scripts/Window_DebugLeft.rb +57 -0
- data/Scripts/Window_DebugRight.rb +69 -0
- data/Scripts/Window_EquipItem.rb +94 -0
- data/Scripts/Window_EquipLeft.rb +61 -0
- data/Scripts/Window_EquipRight.rb +56 -0
- data/Scripts/Window_Gold.rb +27 -0
- data/Scripts/Window_Help.rb +33 -0
- data/Scripts/Window_InputNumber.rb +111 -0
- data/Scripts/Window_Item.rb +229 -0
- data/Scripts/Window_MainMenu.rb +150 -0
- data/Scripts/Window_MenuStatus.rb +48 -0
- data/Scripts/Window_Message.rb +459 -0
- data/Scripts/Window_NameEdit.rb +108 -0
- data/Scripts/Window_NameInput.rb +262 -0
- data/Scripts/Window_PartyCommand.rb +42 -0
- data/Scripts/Window_PlayTime.rb +40 -0
- data/Scripts/Window_SaveFile.rb +91 -0
- data/Scripts/Window_Selectable.rb +203 -0
- data/Scripts/Window_Settings.rb +469 -0
- data/Scripts/Window_ShopBuy.rb +93 -0
- data/Scripts/Window_ShopCommand.rb +37 -0
- data/Scripts/Window_ShopNumber.rb +87 -0
- data/Scripts/Window_ShopSell.rb +94 -0
- data/Scripts/Window_ShopStatus.rb +107 -0
- data/Scripts/Window_Skill.rb +83 -0
- data/Scripts/Window_SkillStatus.rb +28 -0
- data/Scripts/Window_Status.rb +64 -0
- data/Scripts/Window_Steps.rb +26 -0
- data/Scripts/Window_Target.rb +49 -0
- data/Scripts/_scripts.txt +110 -0
- data/Scripts/i18n_English.rb +59 -0
- data/Scripts/i18n_Language.rb +130 -0
- data/lib/rmxp_extractor/classnames.rb +6 -0
- data/lib/rmxp_extractor/data_export.rb +4 -2
- data/lib/rmxp_extractor/version.rb +1 -1
- metadata +111 -125
- data/Data/Map-1.rxdata +0 -0
- data/Data/Map-327.rxdata +0 -0
- data/Data/Map264.rxdata +0 -0
- data/Data/Map265.rxdata +0 -0
- data/Data/Map266.rxdata +0 -0
- data/Data/Map267.rxdata +0 -0
- data/Data/Map268.rxdata +0 -0
- data/Data/Map269.rxdata +0 -0
- data/Data/Map270.rxdata +0 -0
- data/Data/Map271.rxdata +0 -0
- data/Data/Map272.rxdata +0 -0
- data/Data/Map273.rxdata +0 -0
- data/Data/Map274.rxdata +0 -0
- data/Data/Map275.rxdata +0 -0
- data/Data/Map276.rxdata +0 -0
- data/Data/Map277.rxdata +0 -0
- data/Data/Map278.rxdata +0 -0
- data/Data/Map279.rxdata +0 -0
- data/Data/Map280.rxdata +0 -0
- data/Data/Map281.rxdata +0 -0
- data/Data/Map282.rxdata +0 -0
- data/Data/Map283.rxdata +0 -0
- data/Data/Map284.rxdata +0 -0
- data/Data/Map285.rxdata +0 -0
- data/Data/Map286.rxdata +0 -0
- data/Data/Map287.rxdata +0 -0
- data/Data/Map288.rxdata +0 -0
- data/Data/Map289.rxdata +0 -0
- data/Data/Map290.rxdata +0 -0
- data/Data/Map291.rxdata +0 -0
- data/Data/Map292.rxdata +0 -0
- data/Data/Map293.rxdata +0 -0
- data/Data/Map294.rxdata +0 -0
- data/Data/Map295.rxdata +0 -0
- data/Data/Map296.rxdata +0 -0
- data/Data/Map297.rxdata +0 -0
- data/Data/Map298.rxdata +0 -0
- data/Data/Map299.rxdata +0 -0
- data/Data/Map300.rxdata +0 -0
- data/Data/Map301.rxdata +0 -0
- data/Data/Map302.rxdata +0 -0
- data/Data/Map303.rxdata +0 -0
- data/Data/Map304.rxdata +0 -0
- data/Data/Map305.rxdata +0 -0
- data/Data/Map306.rxdata +0 -0
- data/Data/Map307.rxdata +0 -0
- data/Data/Map308.rxdata +0 -0
- data/Data/Map309.rxdata +0 -0
- data/Data/Map310.rxdata +0 -0
- data/Data/Map311.rxdata +0 -0
- data/Data/Map312.rxdata +0 -0
- data/Data/Map313.rxdata +0 -0
- data/Data/Map314.rxdata +0 -0
- data/Data/Map315.rxdata +0 -0
- data/Data/Map316.rxdata +0 -0
- data/Data/Map317.rxdata +0 -0
- data/Data/Map318.rxdata +0 -0
- data/Data/Map319.rxdata +0 -0
- data/Data/Map320.rxdata +0 -0
- data/Data/Map321.rxdata +0 -0
- data/Data/Map322.rxdata +0 -0
- data/Data/Map323.rxdata +0 -0
- data/Data/Map324.rxdata +0 -0
- data/Data/Map325.rxdata +0 -0
- data/Data/Map326.rxdata +0 -0
- data/Data/Map327.rxdata +0 -0
- data/Data/Map328.rxdata +0 -0
- data/Data/Map329.rxdata +0 -0
- data/Data/Map330.rxdata +0 -0
- data/Data/Map331.rxdata +0 -0
- data/Data/Map332.rxdata +0 -0
- data/Data/Map333.rxdata +0 -0
- data/Data/Map334.rxdata +0 -0
- data/Data/Map335.rxdata +0 -0
- data/Data/Map336.rxdata +0 -0
- data/Data/Map337.rxdata +0 -0
- data/Data/Map338.rxdata +0 -0
- data/Data/Map339.rxdata +0 -0
- data/Data/Map340.rxdata +0 -0
- data/Data/Map341.rxdata +0 -0
- data/Data/Map342.rxdata +0 -0
- data/Data/Map343.rxdata +0 -0
- data/Data/Map344.rxdata +0 -0
- data/Data/Map345.rxdata +0 -0
- data/Data/Map346.rxdata +0 -0
- data/Data/Map347.rxdata +0 -0
- data/Data/Map348.rxdata +0 -0
- data/Data/Map349.rxdata +0 -0
- data/Data/Map350.rxdata +0 -0
- data/Data/Map351.rxdata +0 -0
- data/Data/Map352.rxdata +0 -0
- data/Data/Map353.rxdata +0 -0
- data/Data/Map354.rxdata +0 -0
- data/Data/Map355.rxdata +0 -0
- data/Data/Map356.rxdata +0 -0
- data/Data/Map357.rxdata +0 -0
- data/Data/Map358.rxdata +0 -0
- data/Data/Map359.rxdata +0 -0
- data/Data/Map360.rxdata +0 -0
- data/Data/Map361.rxdata +0 -0
- data/Data/Map362.rxdata +0 -0
- data/Data/Map363.rxdata +0 -0
- data/Data/Map364.rxdata +0 -0
- data/Data/Map365.rxdata +0 -0
- data/Data/Map366.rxdata +0 -0
- data/Data/Map367.rxdata +0 -0
- data/Data/Map368.rxdata +0 -0
- data/Data/Map369.rxdata +0 -0
- data/Data/Map370.rxdata +0 -0
- data/Data/Map371.rxdata +0 -0
- data/Data/Map372.rxdata +0 -0
- data/Data/Map373.rxdata +0 -0
- data/Data/Map374.rxdata +0 -0
- data/Data/Map375.rxdata +0 -0
- data/Data/Map376.rxdata +0 -0
- data/Data/Map377.rxdata +0 -0
- data/Data/Map378.rxdata +0 -0
- data/Data/Map379.rxdata +0 -0
- data/Data/Map380.rxdata +0 -0
- data/Data/Map381.rxdata +0 -0
- data/Data/Map382.rxdata +0 -0
- data/Data/Map383.rxdata +0 -0
- data/Data/Map384.rxdata +0 -0
- data/Data/Map385.rxdata +0 -0
@@ -0,0 +1,294 @@
|
|
1
|
+
#==============================================================================
|
2
|
+
# ** Game_Battler (part 2)
|
3
|
+
#------------------------------------------------------------------------------
|
4
|
+
# This class deals with battlers. It's used as a superclass for the Game_Actor
|
5
|
+
# and Game_Enemy classes.
|
6
|
+
#==============================================================================
|
7
|
+
|
8
|
+
class Game_Battler
|
9
|
+
#--------------------------------------------------------------------------
|
10
|
+
# * Check State
|
11
|
+
# state_id : state ID
|
12
|
+
#--------------------------------------------------------------------------
|
13
|
+
def state?(state_id)
|
14
|
+
# Return true if the applicable state is added.
|
15
|
+
return @states.include?(state_id)
|
16
|
+
end
|
17
|
+
#--------------------------------------------------------------------------
|
18
|
+
# * Determine if a state is full or not.
|
19
|
+
# state_id : state ID
|
20
|
+
#--------------------------------------------------------------------------
|
21
|
+
def state_full?(state_id)
|
22
|
+
# Return false if the applicable state is not added.
|
23
|
+
unless self.state?(state_id)
|
24
|
+
return false
|
25
|
+
end
|
26
|
+
# Return true if the number of maintenance turns is -1 (auto state).
|
27
|
+
if @states_turn[state_id] == -1
|
28
|
+
return true
|
29
|
+
end
|
30
|
+
# Return true if the number of maintenance turns is equal to the
|
31
|
+
# lowest number of natural removal turns.
|
32
|
+
return @states_turn[state_id] == $data_states[state_id].hold_turn
|
33
|
+
end
|
34
|
+
#--------------------------------------------------------------------------
|
35
|
+
# * Add State
|
36
|
+
# state_id : state ID
|
37
|
+
# force : forcefully added flag (used to deal with auto state)
|
38
|
+
#--------------------------------------------------------------------------
|
39
|
+
def add_state(state_id, force = false)
|
40
|
+
# For an ineffective state
|
41
|
+
if $data_states[state_id] == nil
|
42
|
+
# End Method
|
43
|
+
return
|
44
|
+
end
|
45
|
+
# If not forcefully added
|
46
|
+
unless force
|
47
|
+
# A state loop already in existance
|
48
|
+
for i in @states
|
49
|
+
# If a new state is included in the state change (-) of an existing
|
50
|
+
# state, and that state is not included in the state change (-) of
|
51
|
+
# a new state (example: an attempt to add poison during dead)
|
52
|
+
if $data_states[i].minus_state_set.include?(state_id) and
|
53
|
+
not $data_states[state_id].minus_state_set.include?(i)
|
54
|
+
# End Method
|
55
|
+
return
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
# If this state is not added
|
60
|
+
unless state?(state_id)
|
61
|
+
# Add state ID to @states array
|
62
|
+
@states.push(state_id)
|
63
|
+
# If option [regarded as HP 0]is effective
|
64
|
+
if $data_states[state_id].zero_hp
|
65
|
+
# Change HP to 0
|
66
|
+
@hp = 0
|
67
|
+
end
|
68
|
+
# All state loops
|
69
|
+
for i in 1...$data_states.size
|
70
|
+
# Dealing with a state change (+)
|
71
|
+
if $data_states[state_id].plus_state_set.include?(i)
|
72
|
+
add_state(i)
|
73
|
+
end
|
74
|
+
# Dealing with a state change (-)
|
75
|
+
if $data_states[state_id].minus_state_set.include?(i)
|
76
|
+
remove_state(i)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
# line change to a large rating order (if value is the same, then a
|
80
|
+
# strong restriction order)
|
81
|
+
@states.sort! do |a, b|
|
82
|
+
state_a = $data_states[a]
|
83
|
+
state_b = $data_states[b]
|
84
|
+
if state_a.rating > state_b.rating
|
85
|
+
-1
|
86
|
+
elsif state_a.rating < state_b.rating
|
87
|
+
+1
|
88
|
+
elsif state_a.restriction > state_b.restriction
|
89
|
+
-1
|
90
|
+
elsif state_a.restriction < state_b.restriction
|
91
|
+
+1
|
92
|
+
else
|
93
|
+
a <=> b
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
# If added forcefully
|
98
|
+
if force
|
99
|
+
# Set the natural removal's lowest number of turns to -1
|
100
|
+
@states_turn[state_id] = -1
|
101
|
+
end
|
102
|
+
# If not added forcefully
|
103
|
+
unless @states_turn[state_id] == -1
|
104
|
+
# Set the natural removal's lowest number of turns
|
105
|
+
@states_turn[state_id] = $data_states[state_id].hold_turn
|
106
|
+
end
|
107
|
+
# If unable to move
|
108
|
+
unless movable?
|
109
|
+
# Clear action
|
110
|
+
@current_action.clear
|
111
|
+
end
|
112
|
+
# Check the maximum value of HP and SP
|
113
|
+
@hp = [@hp, self.maxhp].min
|
114
|
+
@sp = [@sp, self.maxsp].min
|
115
|
+
end
|
116
|
+
#--------------------------------------------------------------------------
|
117
|
+
# * Remove State
|
118
|
+
# state_id : state ID
|
119
|
+
# force : forcefully removed flag (used to deal with auto state)
|
120
|
+
#--------------------------------------------------------------------------
|
121
|
+
def remove_state(state_id, force = false)
|
122
|
+
# If this state is added
|
123
|
+
if state?(state_id)
|
124
|
+
# If a forcefully added state is not forcefully removed
|
125
|
+
if @states_turn[state_id] == -1 and not force
|
126
|
+
# End Method
|
127
|
+
return
|
128
|
+
end
|
129
|
+
# If current HP is at 0 and options are effective [regarded as HP 0]
|
130
|
+
if @hp == 0 and $data_states[state_id].zero_hp
|
131
|
+
# Determine if there's another state [regarded as HP 0] or not
|
132
|
+
zero_hp = false
|
133
|
+
for i in @states
|
134
|
+
if i != state_id and $data_states[i].zero_hp
|
135
|
+
zero_hp = true
|
136
|
+
end
|
137
|
+
end
|
138
|
+
# Change HP to 1 if OK to remove incapacitation.
|
139
|
+
if zero_hp == false
|
140
|
+
@hp = 1
|
141
|
+
end
|
142
|
+
end
|
143
|
+
# Delete state ID from @states and @states_turn hash array
|
144
|
+
@states.delete(state_id)
|
145
|
+
@states_turn.delete(state_id)
|
146
|
+
end
|
147
|
+
# Check maximum value for HP and SP
|
148
|
+
@hp = [@hp, self.maxhp].min
|
149
|
+
@sp = [@sp, self.maxsp].min
|
150
|
+
end
|
151
|
+
#--------------------------------------------------------------------------
|
152
|
+
# * Get State Animation ID
|
153
|
+
#--------------------------------------------------------------------------
|
154
|
+
def state_animation_id
|
155
|
+
# If no states are added
|
156
|
+
if @states.size == 0
|
157
|
+
return 0
|
158
|
+
end
|
159
|
+
# Return state animation ID with maximum rating
|
160
|
+
return $data_states[@states[0]].animation_id
|
161
|
+
end
|
162
|
+
#--------------------------------------------------------------------------
|
163
|
+
# * Get Restriction
|
164
|
+
#--------------------------------------------------------------------------
|
165
|
+
def restriction
|
166
|
+
restriction_max = 0
|
167
|
+
# Get maximum restriction from currently added states
|
168
|
+
for i in @states
|
169
|
+
if $data_states[i].restriction >= restriction_max
|
170
|
+
restriction_max = $data_states[i].restriction
|
171
|
+
end
|
172
|
+
end
|
173
|
+
return restriction_max
|
174
|
+
end
|
175
|
+
#--------------------------------------------------------------------------
|
176
|
+
# * Determine [Can't Get EXP] States
|
177
|
+
#--------------------------------------------------------------------------
|
178
|
+
def cant_get_exp?
|
179
|
+
for i in @states
|
180
|
+
if $data_states[i].cant_get_exp
|
181
|
+
return true
|
182
|
+
end
|
183
|
+
end
|
184
|
+
return false
|
185
|
+
end
|
186
|
+
#--------------------------------------------------------------------------
|
187
|
+
# * Determine [Can't Evade] States
|
188
|
+
#--------------------------------------------------------------------------
|
189
|
+
def cant_evade?
|
190
|
+
for i in @states
|
191
|
+
if $data_states[i].cant_evade
|
192
|
+
return true
|
193
|
+
end
|
194
|
+
end
|
195
|
+
return false
|
196
|
+
end
|
197
|
+
#--------------------------------------------------------------------------
|
198
|
+
# * Determine [Slip Damage] States
|
199
|
+
#--------------------------------------------------------------------------
|
200
|
+
def slip_damage?
|
201
|
+
for i in @states
|
202
|
+
if $data_states[i].slip_damage
|
203
|
+
return true
|
204
|
+
end
|
205
|
+
end
|
206
|
+
return false
|
207
|
+
end
|
208
|
+
#--------------------------------------------------------------------------
|
209
|
+
# * Remove Battle States (called up during end of battle)
|
210
|
+
#--------------------------------------------------------------------------
|
211
|
+
def remove_states_battle
|
212
|
+
for i in @states.clone
|
213
|
+
if $data_states[i].battle_only
|
214
|
+
remove_state(i)
|
215
|
+
end
|
216
|
+
end
|
217
|
+
end
|
218
|
+
#--------------------------------------------------------------------------
|
219
|
+
# * Natural Removal of States (called up each turn)
|
220
|
+
#--------------------------------------------------------------------------
|
221
|
+
def remove_states_auto
|
222
|
+
for i in @states_turn.keys.clone
|
223
|
+
if @states_turn[i] > 0
|
224
|
+
@states_turn[i] -= 1
|
225
|
+
elsif rand(100) < $data_states[i].auto_release_prob
|
226
|
+
remove_state(i)
|
227
|
+
end
|
228
|
+
end
|
229
|
+
end
|
230
|
+
#--------------------------------------------------------------------------
|
231
|
+
# * State Removed by Shock (called up each time physical damage occurs)
|
232
|
+
#--------------------------------------------------------------------------
|
233
|
+
def remove_states_shock
|
234
|
+
for i in @states.clone
|
235
|
+
if rand(100) < $data_states[i].shock_release_prob
|
236
|
+
remove_state(i)
|
237
|
+
end
|
238
|
+
end
|
239
|
+
end
|
240
|
+
#--------------------------------------------------------------------------
|
241
|
+
# * State Change (+) Application
|
242
|
+
# plus_state_set : State Change (+)
|
243
|
+
#--------------------------------------------------------------------------
|
244
|
+
def states_plus(plus_state_set)
|
245
|
+
# Clear effective flag
|
246
|
+
effective = false
|
247
|
+
# Loop (added state)
|
248
|
+
for i in plus_state_set
|
249
|
+
# If this state is not guarded
|
250
|
+
unless self.state_guard?(i)
|
251
|
+
# Set effective flag if this state is not full
|
252
|
+
effective |= self.state_full?(i) == false
|
253
|
+
# If states offer [no resistance]
|
254
|
+
if $data_states[i].nonresistance
|
255
|
+
# Set state change flag
|
256
|
+
@state_changed = true
|
257
|
+
# Add a state
|
258
|
+
add_state(i)
|
259
|
+
# If this state is not full
|
260
|
+
elsif self.state_full?(i) == false
|
261
|
+
# Convert state effectiveness to probability,
|
262
|
+
# compare to random numbers
|
263
|
+
if rand(100) < [0,100,80,60,40,20,0][self.state_ranks[i]]
|
264
|
+
# Set state change flag
|
265
|
+
@state_changed = true
|
266
|
+
# Add a state
|
267
|
+
add_state(i)
|
268
|
+
end
|
269
|
+
end
|
270
|
+
end
|
271
|
+
end
|
272
|
+
# End Method
|
273
|
+
return effective
|
274
|
+
end
|
275
|
+
#--------------------------------------------------------------------------
|
276
|
+
# * Apply State Change (-)
|
277
|
+
# minus_state_set : state change (-)
|
278
|
+
#--------------------------------------------------------------------------
|
279
|
+
def states_minus(minus_state_set)
|
280
|
+
# Clear effective flag
|
281
|
+
effective = false
|
282
|
+
# Loop (state to be removed)
|
283
|
+
for i in minus_state_set
|
284
|
+
# Set effective flag if this state is added
|
285
|
+
effective |= self.state?(i)
|
286
|
+
# Set a state change flag
|
287
|
+
@state_changed = true
|
288
|
+
# Remove state
|
289
|
+
remove_state(i)
|
290
|
+
end
|
291
|
+
# End Method
|
292
|
+
return effective
|
293
|
+
end
|
294
|
+
end
|
@@ -0,0 +1,354 @@
|
|
1
|
+
#==============================================================================
|
2
|
+
# ** Game_Battler (part 3)
|
3
|
+
#------------------------------------------------------------------------------
|
4
|
+
# This class deals with battlers. It's used as a superclass for the Game_Actor
|
5
|
+
# and Game_Enemy classes.
|
6
|
+
#==============================================================================
|
7
|
+
|
8
|
+
class Game_Battler
|
9
|
+
#--------------------------------------------------------------------------
|
10
|
+
# * Determine Usable Skills
|
11
|
+
# skill_id : skill ID
|
12
|
+
#--------------------------------------------------------------------------
|
13
|
+
def skill_can_use?(skill_id)
|
14
|
+
# If there's not enough SP, the skill cannot be used.
|
15
|
+
if $data_skills[skill_id].sp_cost > self.sp
|
16
|
+
return false
|
17
|
+
end
|
18
|
+
# Unusable if incapacitated
|
19
|
+
if dead?
|
20
|
+
return false
|
21
|
+
end
|
22
|
+
# If silent, only physical skills can be used
|
23
|
+
if $data_skills[skill_id].atk_f == 0 and self.restriction == 1
|
24
|
+
return false
|
25
|
+
end
|
26
|
+
# Get usable time
|
27
|
+
occasion = $data_skills[skill_id].occasion
|
28
|
+
# If in battle
|
29
|
+
if $game_temp.in_battle
|
30
|
+
# Usable with [Normal] and [Only Battle]
|
31
|
+
return (occasion == 0 or occasion == 1)
|
32
|
+
# If not in battle
|
33
|
+
else
|
34
|
+
# Usable with [Normal] and [Only Menu]
|
35
|
+
return (occasion == 0 or occasion == 2)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
#--------------------------------------------------------------------------
|
39
|
+
# * Applying Normal Attack Effects
|
40
|
+
# attacker : battler
|
41
|
+
#--------------------------------------------------------------------------
|
42
|
+
def attack_effect(attacker)
|
43
|
+
# Clear critical flag
|
44
|
+
self.critical = false
|
45
|
+
# First hit detection
|
46
|
+
hit_result = (rand(100) < attacker.hit)
|
47
|
+
# If hit occurs
|
48
|
+
if hit_result == true
|
49
|
+
# Calculate basic damage
|
50
|
+
atk = [attacker.atk - self.pdef / 2, 0].max
|
51
|
+
self.damage = atk * (20 + attacker.str) / 20
|
52
|
+
# Element correction
|
53
|
+
self.damage *= elements_correct(attacker.element_set)
|
54
|
+
self.damage /= 100
|
55
|
+
# If damage value is strictly positive
|
56
|
+
if self.damage > 0
|
57
|
+
# Critical correction
|
58
|
+
if rand(100) < 4 * attacker.dex / self.agi
|
59
|
+
self.damage *= 2
|
60
|
+
self.critical = true
|
61
|
+
end
|
62
|
+
# Guard correction
|
63
|
+
if self.guarding?
|
64
|
+
self.damage /= 2
|
65
|
+
end
|
66
|
+
end
|
67
|
+
# Dispersion
|
68
|
+
if self.damage.abs > 0
|
69
|
+
amp = [self.damage.abs * 15 / 100, 1].max
|
70
|
+
self.damage += rand(amp+1) + rand(amp+1) - amp
|
71
|
+
end
|
72
|
+
# Second hit detection
|
73
|
+
eva = 8 * self.agi / attacker.dex + self.eva
|
74
|
+
hit = self.damage < 0 ? 100 : 100 - eva
|
75
|
+
hit = self.cant_evade? ? 100 : hit
|
76
|
+
hit_result = (rand(100) < hit)
|
77
|
+
end
|
78
|
+
# If hit occurs
|
79
|
+
if hit_result == true
|
80
|
+
# State Removed by Shock
|
81
|
+
remove_states_shock
|
82
|
+
# Substract damage from HP
|
83
|
+
self.hp -= self.damage
|
84
|
+
# State change
|
85
|
+
@state_changed = false
|
86
|
+
states_plus(attacker.plus_state_set)
|
87
|
+
states_minus(attacker.minus_state_set)
|
88
|
+
# When missing
|
89
|
+
else
|
90
|
+
# Set damage to "Miss"
|
91
|
+
self.damage = "Miss"
|
92
|
+
# Clear critical flag
|
93
|
+
self.critical = false
|
94
|
+
end
|
95
|
+
# End Method
|
96
|
+
return true
|
97
|
+
end
|
98
|
+
#--------------------------------------------------------------------------
|
99
|
+
# * Apply Skill Effects
|
100
|
+
# user : the one using skills (battler)
|
101
|
+
# skill : skill
|
102
|
+
#--------------------------------------------------------------------------
|
103
|
+
def skill_effect(user, skill)
|
104
|
+
# Clear critical flag
|
105
|
+
self.critical = false
|
106
|
+
# If skill scope is for ally with 1 or more HP, and your own HP = 0,
|
107
|
+
# or skill scope is for ally with 0, and your own HP = 1 or more
|
108
|
+
if ((skill.scope == 3 or skill.scope == 4) and self.hp == 0) or
|
109
|
+
((skill.scope == 5 or skill.scope == 6) and self.hp >= 1)
|
110
|
+
# End Method
|
111
|
+
return false
|
112
|
+
end
|
113
|
+
# Clear effective flag
|
114
|
+
effective = false
|
115
|
+
# Set effective flag if common ID is effective
|
116
|
+
effective |= skill.common_event_id > 0
|
117
|
+
# First hit detection
|
118
|
+
hit = skill.hit
|
119
|
+
if skill.atk_f > 0
|
120
|
+
hit *= user.hit / 100
|
121
|
+
end
|
122
|
+
hit_result = (rand(100) < hit)
|
123
|
+
# Set effective flag if skill is uncertain
|
124
|
+
effective |= hit < 100
|
125
|
+
# If hit occurs
|
126
|
+
if hit_result == true
|
127
|
+
# Calculate power
|
128
|
+
power = skill.power + user.atk * skill.atk_f / 100
|
129
|
+
if power > 0
|
130
|
+
power -= self.pdef * skill.pdef_f / 200
|
131
|
+
power -= self.mdef * skill.mdef_f / 200
|
132
|
+
power = [power, 0].max
|
133
|
+
end
|
134
|
+
# Calculate rate
|
135
|
+
rate = 20
|
136
|
+
rate += (user.str * skill.str_f / 100)
|
137
|
+
rate += (user.dex * skill.dex_f / 100)
|
138
|
+
rate += (user.agi * skill.agi_f / 100)
|
139
|
+
rate += (user.int * skill.int_f / 100)
|
140
|
+
# Calculate basic damage
|
141
|
+
self.damage = power * rate / 20
|
142
|
+
# Element correction
|
143
|
+
self.damage *= elements_correct(skill.element_set)
|
144
|
+
self.damage /= 100
|
145
|
+
# If damage value is strictly positive
|
146
|
+
if self.damage > 0
|
147
|
+
# Guard correction
|
148
|
+
if self.guarding?
|
149
|
+
self.damage /= 2
|
150
|
+
end
|
151
|
+
end
|
152
|
+
# Dispersion
|
153
|
+
if skill.variance > 0 and self.damage.abs > 0
|
154
|
+
amp = [self.damage.abs * skill.variance / 100, 1].max
|
155
|
+
self.damage += rand(amp+1) + rand(amp+1) - amp
|
156
|
+
end
|
157
|
+
# Second hit detection
|
158
|
+
eva = 8 * self.agi / user.dex + self.eva
|
159
|
+
hit = self.damage < 0 ? 100 : 100 - eva * skill.eva_f / 100
|
160
|
+
hit = self.cant_evade? ? 100 : hit
|
161
|
+
hit_result = (rand(100) < hit)
|
162
|
+
# Set effective flag if skill is uncertain
|
163
|
+
effective |= hit < 100
|
164
|
+
end
|
165
|
+
# If hit occurs
|
166
|
+
if hit_result == true
|
167
|
+
# If physical attack has power other than 0
|
168
|
+
if skill.power != 0 and skill.atk_f > 0
|
169
|
+
# State Removed by Shock
|
170
|
+
remove_states_shock
|
171
|
+
# Set to effective flag
|
172
|
+
effective = true
|
173
|
+
end
|
174
|
+
# Substract damage from HP
|
175
|
+
last_hp = self.hp
|
176
|
+
self.hp -= self.damage
|
177
|
+
effective |= self.hp != last_hp
|
178
|
+
# State change
|
179
|
+
@state_changed = false
|
180
|
+
effective |= states_plus(skill.plus_state_set)
|
181
|
+
effective |= states_minus(skill.minus_state_set)
|
182
|
+
# If power is 0
|
183
|
+
if skill.power == 0
|
184
|
+
# Set damage to an empty string
|
185
|
+
self.damage = ""
|
186
|
+
# If state is unchanged
|
187
|
+
unless @state_changed
|
188
|
+
# Set damage to "Miss"
|
189
|
+
self.damage = "Miss"
|
190
|
+
end
|
191
|
+
end
|
192
|
+
# If miss occurs
|
193
|
+
else
|
194
|
+
# Set damage to "Miss"
|
195
|
+
self.damage = "Miss"
|
196
|
+
end
|
197
|
+
# If not in battle
|
198
|
+
unless $game_temp.in_battle
|
199
|
+
# Set damage to nil
|
200
|
+
self.damage = nil
|
201
|
+
end
|
202
|
+
# End Method
|
203
|
+
return effective
|
204
|
+
end
|
205
|
+
#--------------------------------------------------------------------------
|
206
|
+
# * Application of Item Effects
|
207
|
+
# item : item
|
208
|
+
#--------------------------------------------------------------------------
|
209
|
+
def item_effect(item)
|
210
|
+
# Clear critical flag
|
211
|
+
self.critical = false
|
212
|
+
# If item scope is for ally with 1 or more HP, and your own HP = 0,
|
213
|
+
# or item scope is for ally with 0 HP, and your own HP = 1 or more
|
214
|
+
if ((item.scope == 3 or item.scope == 4) and self.hp == 0) or
|
215
|
+
((item.scope == 5 or item.scope == 6) and self.hp >= 1)
|
216
|
+
# End Method
|
217
|
+
return false
|
218
|
+
end
|
219
|
+
# Clear effective flag
|
220
|
+
effective = false
|
221
|
+
# Set effective flag if common ID is effective
|
222
|
+
effective |= item.common_event_id > 0
|
223
|
+
# Determine hit
|
224
|
+
hit_result = (rand(100) < item.hit)
|
225
|
+
# Set effective flag is skill is uncertain
|
226
|
+
effective |= item.hit < 100
|
227
|
+
# If hit occurs
|
228
|
+
if hit_result == true
|
229
|
+
# Calculate amount of recovery
|
230
|
+
recover_hp = maxhp * item.recover_hp_rate / 100 + item.recover_hp
|
231
|
+
recover_sp = maxsp * item.recover_sp_rate / 100 + item.recover_sp
|
232
|
+
if recover_hp < 0
|
233
|
+
recover_hp += self.pdef * item.pdef_f / 20
|
234
|
+
recover_hp += self.mdef * item.mdef_f / 20
|
235
|
+
recover_hp = [recover_hp, 0].min
|
236
|
+
end
|
237
|
+
# Element correction
|
238
|
+
recover_hp *= elements_correct(item.element_set)
|
239
|
+
recover_hp /= 100
|
240
|
+
recover_sp *= elements_correct(item.element_set)
|
241
|
+
recover_sp /= 100
|
242
|
+
# Dispersion
|
243
|
+
if item.variance > 0 and recover_hp.abs > 0
|
244
|
+
amp = [recover_hp.abs * item.variance / 100, 1].max
|
245
|
+
recover_hp += rand(amp+1) + rand(amp+1) - amp
|
246
|
+
end
|
247
|
+
if item.variance > 0 and recover_sp.abs > 0
|
248
|
+
amp = [recover_sp.abs * item.variance / 100, 1].max
|
249
|
+
recover_sp += rand(amp+1) + rand(amp+1) - amp
|
250
|
+
end
|
251
|
+
# If recovery code is negative
|
252
|
+
if recover_hp < 0
|
253
|
+
# Guard correction
|
254
|
+
if self.guarding?
|
255
|
+
recover_hp /= 2
|
256
|
+
end
|
257
|
+
end
|
258
|
+
# Set damage value and reverse HP recovery amount
|
259
|
+
self.damage = -recover_hp
|
260
|
+
# HP and SP recovery
|
261
|
+
last_hp = self.hp
|
262
|
+
last_sp = self.sp
|
263
|
+
self.hp += recover_hp
|
264
|
+
self.sp += recover_sp
|
265
|
+
effective |= self.hp != last_hp
|
266
|
+
effective |= self.sp != last_sp
|
267
|
+
# State change
|
268
|
+
@state_changed = false
|
269
|
+
effective |= states_plus(item.plus_state_set)
|
270
|
+
effective |= states_minus(item.minus_state_set)
|
271
|
+
# If parameter value increase is effective
|
272
|
+
if item.parameter_type > 0 and item.parameter_points != 0
|
273
|
+
# Branch by parameter
|
274
|
+
case item.parameter_type
|
275
|
+
when 1 # Max HP
|
276
|
+
@maxhp_plus += item.parameter_points
|
277
|
+
when 2 # Max SP
|
278
|
+
@maxsp_plus += item.parameter_points
|
279
|
+
when 3 # Strength
|
280
|
+
@str_plus += item.parameter_points
|
281
|
+
when 4 # Dexterity
|
282
|
+
@dex_plus += item.parameter_points
|
283
|
+
when 5 # Agility
|
284
|
+
@agi_plus += item.parameter_points
|
285
|
+
when 6 # Intelligence
|
286
|
+
@int_plus += item.parameter_points
|
287
|
+
end
|
288
|
+
# Set to effective flag
|
289
|
+
effective = true
|
290
|
+
end
|
291
|
+
# If HP recovery rate and recovery amount are 0
|
292
|
+
if item.recover_hp_rate == 0 and item.recover_hp == 0
|
293
|
+
# Set damage to empty string
|
294
|
+
self.damage = ""
|
295
|
+
# If SP recovery rate / recovery amount are 0, and parameter increase
|
296
|
+
# value is ineffective.
|
297
|
+
if item.recover_sp_rate == 0 and item.recover_sp == 0 and
|
298
|
+
(item.parameter_type == 0 or item.parameter_points == 0)
|
299
|
+
# If state is unchanged
|
300
|
+
unless @state_changed
|
301
|
+
# Set damage to "Miss"
|
302
|
+
self.damage = "Miss"
|
303
|
+
end
|
304
|
+
end
|
305
|
+
end
|
306
|
+
# If miss occurs
|
307
|
+
else
|
308
|
+
# Set damage to "Miss"
|
309
|
+
self.damage = "Miss"
|
310
|
+
end
|
311
|
+
# If not in battle
|
312
|
+
unless $game_temp.in_battle
|
313
|
+
# Set damage to nil
|
314
|
+
self.damage = nil
|
315
|
+
end
|
316
|
+
# End Method
|
317
|
+
return effective
|
318
|
+
end
|
319
|
+
#--------------------------------------------------------------------------
|
320
|
+
# * Application of Slip Damage Effects
|
321
|
+
#--------------------------------------------------------------------------
|
322
|
+
def slip_damage_effect
|
323
|
+
# Set damage
|
324
|
+
self.damage = self.maxhp / 10
|
325
|
+
# Dispersion
|
326
|
+
if self.damage.abs > 0
|
327
|
+
amp = [self.damage.abs * 15 / 100, 1].max
|
328
|
+
self.damage += rand(amp+1) + rand(amp+1) - amp
|
329
|
+
end
|
330
|
+
# Subtract damage from HP
|
331
|
+
self.hp -= self.damage
|
332
|
+
# End Method
|
333
|
+
return true
|
334
|
+
end
|
335
|
+
#--------------------------------------------------------------------------
|
336
|
+
# * Calculating Element Correction
|
337
|
+
# element_set : element
|
338
|
+
#--------------------------------------------------------------------------
|
339
|
+
def elements_correct(element_set)
|
340
|
+
# If not an element
|
341
|
+
if element_set == []
|
342
|
+
# Return 100
|
343
|
+
return 100
|
344
|
+
end
|
345
|
+
# Return the weakest object among the elements given
|
346
|
+
# * "element_rate" method is defined by Game_Actor and Game_Enemy classes,
|
347
|
+
# which inherit from this class.
|
348
|
+
weakest = -100
|
349
|
+
for i in element_set
|
350
|
+
weakest = [weakest, self.element_rate(i)].max
|
351
|
+
end
|
352
|
+
return weakest
|
353
|
+
end
|
354
|
+
end
|