Main Menu
  • Welcome to The RPG Maker Resource Kit.

[XP] Camera Pan 3

Started by Punk, November 06, 2007, 10:55:05 PM

0 Members and 1 Guest are viewing this topic.

Punk

Camera Pan Control System
Version: 3


Introduction
The Camera Pan System allows you, the player, or creator to scroll through your map with the press of a button and arrow keys.

Features

  • Allows the player to scroll through the map no problem.
  • (NEW!) The camera no longer returns to you by teleport. Instead, it returns to you by camera pan.
  • (NEW!) Don't like holding down the Q button? Now you have the option to either hold the Q button to activate the camera pan (hold) or tap the Q button to activate and tap again to deactivate it (toggle).
  • (NEW!) This is a feature that many members have requested time and time again and it's something I've never got around doing. You, now have the ability to limit how far you want the camera to pan! How's that?
Screenshots

Standing there...


Moving the camera around.


Camera returning to me. (Although you may not see that happening since the picture's not in motion of course, that's what is happening.)

Demo
It's a bit complex so I'll have it up for download. Read the bulletin for more details on how to use this system in the demo.
Left click! Demo here.
System
[spoiler=Requires]
6 Common Events
2 Switches
3 Variables
[/spoiler]
[spoiler=The Variables]
1: Player Screen X (Keeping track of Player Screen X coordinate.)
2: Player Screen Y (Keeping track of Player Screen Y coordinate.)
3: Hold or Toggle (It's better than using some switch to do this imo.)
[/spoiler]
[spoiler=The Switches]
1: Camera Pan Control System (The trigger switch for all common events of this event system)
2: Camera Panning (Meant for camera pan.)
[/spoiler]
[spoiler=Coordinates]
This common event keeps track of the player's screen coordinates.
Trigger: Parallel
Switch: Camera Pan Control System
---------------------------------------------------------------

@>Control Variables: [Player Screen X] = Player's Screen X
@>Control Variables: [Player Screen Y] = Player's Screen Y
[/spoiler]
[spoiler=Activate Camera Pan]
Trigger: Parallel
Switch: Same as above.
------------------------------------------------------

@>Conditional Branch: Variable: [Hold or Toggle] == 0
@@>Conditional Branch: Script: Input.press?(Input::L)
@@@>Control Switches: [Camera Panning] = ON
@@>Else
@@@>Control Switches: [Camera Panning] = OFF
@@>Branch End
@>Branch End
@>Conditional Branch: Variable: [Hold or Toggle] == 1
@@>Conditional Branch: Script: Input.trigger?(Input::L)
@@@>Conditional Branch: Switch: [Camera Panning] == ON
@@@@>Control Switches: [Camera Panning] = OFF
@@@>Else
@@@@>Conditional Branch: Switch: [Camera Panning] == OFF
@@@@@>Control Switches: [Camera Panning] = ON
@@@@>Branch End
@@@>Branch End
@@>Branch End
@>Branch End
[/spoiler]
[spoiler=Stop Player Movement]
Trigger and switch: Same as above.

@>Conditional Branch: Switch: [Camera Panning] == ON
@@>Set Move Route: Player: Wait 1 Frames
@>Else
@>Branch End
[/spoiler]
[spoiler=Camera Pan]
Trigger and switch, same as above

@>Conditional Branch: Switch [Camera Panning] == ON
@@>Conditional Branch: Script: Input.press?(Input::LEFT)
@@@> Scroll Map: Direction Left, Space 1, Speed 5
@@>Branch End
@@>Conditional Branch: Script: Input.press?(Input::RIGHT)
@@@> Scroll Map: Direction Right, Space 1, Speed 5
@@>Branch End
@@>Conditional Branch: Script: Input.press?(Input::UP)
@@@> Scroll Map: Direction Up, Space 1, Speed 5
@@>Branch End
@@>Conditional Branch: Script: Input.press?(Input::DOWN)
@@@> Scroll Map: Direction Down, Space 1, Speed 5
@@>Branch End
@>Branch End
@>Conditional Branch: Switch: [Camera Panning] == OFF
@@>Conditional Branch: Variable: [Player Screen X] <= 300
@@@>Scroll Map: Direction Left, Space 1, Speed 6
@@>Else
@@@>Conditional Branch: Variable: [Player Screen X] >= 340
@@@@>Scroll Map: Direction Right, Space 1, Speed 6
@@@>Else
@@@@>Conditional Branch: Variable: [Player Screen Y] <= 220
@@@@@>Scroll Map: Direction Up, Space 1, Speed 6
@@@@>Else
@@@@@>Conditional Branch: Variable: [Player Screen Y] >= 260
@@@@@@>Scroll Map: Direction Down, Space 1, Speed 6
@@@@@>Branch End
@@@@>Branch End
@@@>Branch End
@@>Branch End
@>Branch End
[/spoiler]
[spoiler=Limit Camera Pan (This is just an add-on. Optional to include.)]
A feature members have requested for a long time. Check it out!

@>Conditional Branch: Switch: [Camera Panning] == ON
@@>Conditional Branch: Variable: [Player Screen X] <= 0
@@@>Scroll Map: Left, 1, 6
@@>Branch End
@@>Conditional Branch: Variable: [Player Screen X] >= 800
@@@>Scroll Map: Right, 1, 6
@@>Branch End
@@>Conditional Branch: Variable: [Player Screen Y] <= 0
@@@>Scroll Map: Up, 1, 6
@@>Branch End
@@>Conditional Branch: Variable: [Player Screen Y] >= 600
@@@>Scroll Map: Down, 1, 6
@@>Branch End
@>Branch End
[/spoiler]
[spoiler=Pictures (Optional but recommended.)]

@>Conditional Branch: Switch: [Camera Panning] = ON
@@>Show Picture: 'arrows.png' Upper Left, (0,0)
@>Else
@@>Erase Picture
@>Branch End
[/spoiler]

Instructions
Download this image below!


FAQ
If you are looking for support for this event system then ask away in this thread or find me in a place where I can give better support.

Credits and Thanks
Twilight, Q-Man, Zero, Dorito, and ParkAvenger for putting their thoughts into this.

Terms and Conditions
Just credit Punk.

bulls84

This awesome! I was trying to make something like this for my game, and now here it is. Perfect timing. I noticed one glitch though. In the bottom left corner the camera doesn't come back down once you move it up.