Im working on a script and have run into a small dilema. Im trying to balance functionality and ease of use. What I want to do is allow a Player to get on and off a ride at any valid location. It will require an Event on a map that I use for the Graphic of the ride when the player isnt riding it. They can trigger the ride with the enter key while not riding it and hop on. But while riding, I need to let them off anywhere. Scriptwise, Im thinking doing this by a Trigger ID, which will cause an Event to run. The Event that is triggered will simply move the Graphic to the Player's location by Event Commands so the ride is at the location the player hopped off. Basically, the user presses Enter while on a ride and they can hop off, and doesnt matter where the Event is at. Script will start the Event based on the Event ID per map after making sure there is a valid location and nothing else is running or triggered from within the Script. I havent built this in yet as I think this may be too confusing for people.
The alternative that I dont like is to only allow Players to get on and off rides at specific locations. Fine for Boats at Docks with Mooring Cletes (where you tie up a boat), but thats not the only one Im building into the script. Im also going for Horses and Magic Carpets. If I can do a Map Loop, I may do an Airship also, but thats in the future. For now Im just working on the Land based non map looping types of rides. So this is what I am thinking for a trigger to hop on and off anywhere valid:
Script: (this part not yet built, subject to change)
if Input.trigger(Input::ENTER)
if $game_system.enable_vehicle and $game_system.vehicle_trigger_id and $game_system.vehicle_trigger_id > 0 and
$game_
map.events[$game_system.vehicle_trigger_id] and not $game_
system.map_interpreter.running?
# Starts the Event regardless of Location
$game_
map.events[$game_system.vehicle_trigger_id].start
end
end
When entering a Map:
# Run this Event when User presses Enter if Valid
$game_system.vehicle_trigger_id = 12
In the Event 12 that is called when user presses Enter:
Conditional Branch: Script: vehicle_trigger?
# Do stuff to hop off vehicle, Switches, and move the Event to Player, other Animations, etc
End Conditional Branch
Do you think this is too confusing, or have any other suggestions? Im NOT looking for an Event solution as Im using Boats and other Oversized Graphics that require scripts already. Yes, the boat flaots and is movable on water...
Or do you think whatever "Floats my Boat"? Is this too confusing to the Non Scripter to use?