Graveyard Script [RESOLVED]

Started by ojp2010, August 29, 2010, 12:46:10 am

Previous topic - Next topic

ojp2010

August 29, 2010, 12:46:10 am Last Edit: August 29, 2010, 01:13:37 am by ojp2010
1. Addon

2. Scripts I am using and in current order
Spoiler: ShowHide

MapLinks
MAW 1.2
Mouse Menu
Skill Shop
MOG - Location_Name
MOG - Treasure_Name
MOG - Item Limit
Ton 0f Addons (1)
Ton 0f Addons (2)
Ton 0f Addons (3)
RMX-OS Options
RMX-OS Script
RMX-OS Global Switches & Variables
RMX-OS Versioning
Blizz ABS (1)
Blizz ABS (2)
Blizz ABS (3)
ABS HUD made by nathmatt
Blizz ABS Controller
Critical Sounds for ABS
Auto-Targeting for ABS
Advanced Time and Environment
Global Day-Night System
Mouse Controller
Mouse Controller Enhancement
Mouse Drop Down Menu
RMX-OS Main


3. When players die they are to transfered to a map with 50% HP and SP.

Shalaren

Spoiler: ShowHide
#==============================================================================
# ■ Jackolas Advance GameOver Script
#==============================================================================
# script by:            Jackolas
# Version number:       V 1.1
# Last edit date:       17-12-09
#
# Thanks:               macht102 (for requesting)
#                       elementisland (asking for options)
#                       winkio (for example script)
#==============================================================================
# Introduction:
#   The Advance Game-Over Script gives you the option to add almost every possible
#   game-over from popular games. from the respawn in pokemon centres till the
#   show menu where you can check to respawn, reload or restart in NWN.
# ====================
# Compatibility:
#   95% compatible with SDK v1.x. 80% compatible with SDK 2.x.
#   Will not work with scripts that edit the Scene_Gameover
# ====================
# Current Features:
#   - Fixed Spawn location / Variable spawn location
#   - Map id / Variable of map id
#   - Map x / Variable of map x
#   - Map y / Variable of map y
#   - Able to lose gold on death (true/false)
#   - How much gold to lose (can be in % or in fixed number)
#   - Able to lose exp on death (true/false)
#   - Able to lose lvls on death (true/false)
#   - how much exp to lose (can be in % or in fixed number)
#   - Auto-heal on respawn (true/false)
# ====================
# To be added in later versions:
#   - Better instructions
#   - Show Game Over screen with option to continue, load or main menu (true/false)
#   - Able to lose items in backpack (true/false)
#   - Likelihood you will lose item from backpack (in %)
#   - Able to lose equipped items (true/false)
#   - Likelihood you will lose item equipped (in %)
# ====================
# Instructions:
#   Place the script above Main and below any other custom scripts.
#   Edit the Configuration to your likings.
#   Play the game and die
# ====================
# Notes:
#   - Do not edit anything else than the configuration.
#   - If you find any bugs, please report them here:
#     http://forum.chaos-project.com
#==============================================================================
module Jackolas_GameOver
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# START Configuration below
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 Fixed_Spawn = true     # true / false
 VarID = 1               # Var number for map id / fixed map ID location
 VarX = 19                # var number for map x / fixed map x location
 VarY = 11                # var number for map y / fixed map y location
#  Show_gameover = false  # true / false (not build in yet)
 LoseGold = true        # true / false
 GoldAmount = 0.10          # Above 1 = fixed amount / Below 1 = % of total
 LoseExp = false         # true / false
 LoseLvl = false         # true / false
 ExpAmount = 0           # Above 1 = fixed amount / Below 1 = % amount
 Autoheal = false        # true / false
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# END Configuration above
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
end

class Game_Actor
 attr_accessor :exp_list
end

class Scene_Gameover
 #--------------------------------------------------------------------------
 # * Main Processing
 #--------------------------------------------------------------------------
   def main
   # Set game over flag
   $game_temp.gameover = false
   # Return to BGM before battle starts
   $game_system.bgm_play($game_temp.map_bgm)
   # Clear in battle flag
   $game_temp.in_battle = false
   # Clear entire party actions flag
   $game_party.clear_actions
   # Clear enemies
   $game_troop.enemies.clear
   # Call battle callback
   if $game_temp.battle_proc != nil
     $game_temp.battle_proc.call(2)
     $game_temp.battle_proc = nil
   end
   # Execute transition
   Graphics.transition(120)
   # Main loop
   loop do
     # Update game screen
     Graphics.update
     # Update input information
     Input.update
     # Start special options
     auto_heal
     remove_gold
     remove_exp
     remove_item
     # start transport
     start_transport
     # Abort loop if screen is changed
     if $scene != self
       break
     end
   end
   # Prepare for transition
   Graphics.freeze
   # Execute transition
   Graphics.transition(120)
   # Prepare for transition
   Graphics.freeze
   # If battle test
   if $BTEST
     $scene = nil
   end
 end
 #--------------------------------------------------------------------------
 # * Auto heal Processing
 #--------------------------------------------------------------------------
 def auto_heal
   for actor in $game_party.actors
     actor.remove_states_battle
   end
   if Jackolas_GameOver::Autoheal
     for actor in $game_party.actors
       actor.recover_all
     end
   else
     for actor in $game_party.actors
       actor.hp = 1
     end
   end
 end
 #--------------------------------------------------------------------------
 # * Remove Gold Processing
 #--------------------------------------------------------------------------
 def remove_gold
   if Jackolas_GameOver::LoseGold
     if Jackolas_GameOver::GoldAmount >=1
       if Jackolas_GameOver::GoldAmount >= $game_party.gold
         goldlose = $game_party.gold
       else
         goldlose = Jackolas_GameOver::GoldAmount
       end
       else
       goldlose = $game_party.gold * Jackolas_GameOver::GoldAmount
     end
     $game_party.gain_gold(-goldlose.to_i)
   else
     return
   end
 end
 #--------------------------------------------------------------------------
 # * Remove EXP Processing
 #--------------------------------------------------------------------------
 #This works, Do never touch any of these or the script WILL crash!!!
 #The reason for the many "if" is to make sure you won't get -exp
 def remove_exp
   if Jackolas_GameOver::LoseExp
     if Jackolas_GameOver::ExpAmount >= 1
       for actor in $game_party.actors
         if Jackolas_GameOver::LoseLvl
           if Jackolas_GameOver::ExpAmount >= actor.exp
             explose = Jackolas_GameOver::ExpAmount
           else
             explose = actor.exp
           end
         else
           if (actor.exp - actor.exp_list[actor.level]) >= Jackolas_GameOver::ExpAmount
             explose = Jackolas_GameOver::ExpAmount
           else
             explose = actor.exp - actor.exp_list[actor.level]
           end            
         end
         actor.exp -= explose
         actor.exp = actor.exp.to_i
       end
     else
       for actor in $game_party.actors
         if Jackolas_GameOver::LoseLvl
           explose = actor.exp * Jackolas_GameOver::ExpAmount
         else
           explose = (actor.exp - actor.exp_list[actor.level]) * Jackolas_GameOver::ExpAmount
         end
         actor.exp -= explose
         actor.exp = actor.exp.to_i
       end
     end
   else
     return
   end
 end
 #--------------------------------------------------------------------------
 # * Remove item Processing
 #--------------------------------------------------------------------------
 def remove_item
   return
 end
 #--------------------------------------------------------------------------
 # * start_transport
 #--------------------------------------------------------------------------
 def start_transport
   # Set variables
   if Jackolas_GameOver::Fixed_Spawn
     @MapID = Jackolas_GameOver::VarID
     @MapX = Jackolas_GameOver::VarX
     @MapY = Jackolas_GameOver::VarY
   else
     @MapID = $game_variables[Jackolas_GameOver::VarID]
     @MapX = $game_variables[Jackolas_GameOver::VarX]
     @MapY = $game_variables[Jackolas_GameOver::VarY]
   end
   # Transport player
   $game_map.setup(@MapID)
   $game_player.moveto(@MapX, @MapY)
   # Refresh map
   $game_player.refresh
   $game_map.autoplay
   $game_map.update
   $scene = Scene_Map.new  
 end
end

here, just read the scripit and config it the way you want.
its easy.

Wizered67

August 29, 2010, 01:00:55 am #2 Last Edit: August 29, 2010, 01:02:10 am by Wizered67
Aw man! I wrote out the whole event system and someone posted before me!

Shalaren

well sorry xD, but thats a scripit request :V:

Wizered67

lol. I guess the script would be easier than events, but there's really no need for a script since with Blizz-ABS you can turn auto gameover to false. Then all you have to do is have a common event check if your hp is 0.

ojp2010


Shalaren

Quote from: Wizered67 on August 29, 2010, 01:09:52 am
lol. I guess the script would be easier than events, but there's really no need for a script since with Blizz-ABS you can turn auto gameover to false. Then all you have to do is have a common event check if your hp is 0.

true, but with the scripit, you can make it so everytime you die, you lose 10% exp, or gold,
and with eventing, its harder D:.

@ojp2010 <3 face to you too

Blizzard

August 29, 2010, 03:43:18 am #7 Last Edit: August 29, 2010, 03:44:19 am by Blizzard
winkio also made one: http://forum.chaos-project.com/index.php?topic=428.0

BTW, it would be better if you linked to the topic rather than posting the script: http://forum.chaos-project.com/index.php?topic=5173.0
Check out our game brands:

Daygames
Game Night Games
Chugnar Games

Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Shalaren

I would O:, but I took the scripit right off the scripit editor.