More Self-Switches
Authors: game_guy
Version: 1.3
Type: Event Modification
Key Term: Environment Add-on
IntroductionEver need more than 4 self switches? With this small script, you can now have as many self switches you want. You aren't just limited to letters either. You can have names for them.
Features
- More Self Switches
- Name them whatever
Screenshots[spoiler](https://rmrk.net/proxy.php?request=http%3A%2F%2Fdecisive-media.net%2Fgameguy%2Fswitch.png&hash=f81afcc7c75f0513041bb93b05a4908aa9c6c892)[/spoiler]
Demohttp://decisive-media.net/gameguy/switches.exe (http://decisive-media.net/gameguy/switches.exe)
Script[SPOILER]
#===============================================================================
# More Self-Switches
# Version 1.3
# Author game_guy
#-------------------------------------------------------------------------------
# Intro:
# Ever need more than 4 self switches? With this small script, you can now
# have as many self switches you want. You aren't just limited to letters
# either. You can have names for them.
#
# Features:
# -More Self Switches
# -Name them whatever
#
# Instructions:
# -First, lets create a self switch for our event. Anywhere in the event, add
# a comment and type this,
# Switch:switch_name.
# switch_name can be whatever you want to name the switch. Thats all you have
# to do to create a self switch for that page.
# There cannot be any spaces between the colon and the switch name.
# e.g. Switch: switch - Does not work.
# e.g. Switch:switch - Does work.
# You also need the Self-Switch box on the page checked.
#
# -Now to turn this switch of or on, call this in a script call.
# self_switch("switch", true/false)
# switch is the switch name, this must be in double " " or single ' ' quotes.
# true/false tells the script whether to turn it off or on. true = on,
# false = off.
#
# -If you want to see if a self switch is on/off, use this script in a
# condtional branch.
# self_switch_state("switch") == true/false
# switch is the switch name, this must be in double " " or single ' ' quotes.
# true = on, false = off
#
# Compatibility:
# Not tested with SDK.
# Should work with anything.
#
# Credits:
# game_guy ~ For creating it.
#===============================================================================
class Game_Event < Game_Character
alias gg_init_more_switches_lat initialize
def initialize(map_id, event)
gg_init_more_switches_lat(map_id, event)
@event.pages.each {|page| page.list.each {|command|
if [108, 408].include?(command.code)
command.parameters.each {|p| check_custom_switch(page, p) }
end
}}
refresh
end
def check_custom_switch(page, code)
a = code.split(':')
if a[0].downcase == "switch" && a[1] != nil
page.condition.self_switch_ch = a[1]
end
end
end
class Interpreter
def self_switch(switch, state)
if @event_id > 0
key = [$game_map.map_id, @event_id, switch]
$game_self_switches[key] = state
end
$game_map.need_refresh = true
end
def self_switch_state(switch)
key = [$game_map.map_id, @event_id, switch]
return $game_self_switches[key]
end
end
[/SPOILER]
VX Version Here (http://rmrk.net/index.php/topic,42822.new.html#new)
InstructionsIn the script.
Place above main, below Scene_Debug, the normal.
CompatibilityNot tested with SDK.
Should work with anything.
Credits and Thanks
- game_guy ~ For creating it.
Author's NotesEnjoy! :)