PLK_ImageManager
A downloadable game
Buy Now$8.00 USD or more
* Terms of Use * No duplication or distribution is permitted. Can be used in commercial games I ask you to specify "Palatkorn" in your game credits only
The order of this plugin is
1.PLK_Effects.js (Open code and customize it)
2.PLK_ImageManager.js
3.PLK_CursorImage.js
4.Read_Window_Name.js
This 4th plugin can read all window titles.
Read_Window_Name
Press CTRL to show all window titles while holding down the key.
Our properties will read the window name of other plugins that created windows but we don't know the name or don't want to waste time searching in the js file.
* Hold CTRL in the scene to make the name appear
* Make sure to disable this in the final version of the game!
* To avoid it from merging with the main game, remove it after use.
Parameter | Type | Description | Default | Notes/Options |
windowName | select | The name of the window class where the background will be applied. | Window_TitleCommand | Options include: Window_MenuCommand, Window_ItemList, Window_Message, etc. |
imageFile | file | The name of the background image file (located in the img/pictures folder). | actor_status_bg.png | Specify the image file name. |
x | number | The X position within the window where the background image will be placed. | 0 | |
y | number | The Y position within the window where the background image will be placed. | 0 | |
scaleX | number | The horizontal scale of the image (1 = 100%). | 1 | E.g., 1, 1.5, 0.5 |
scaleY | number | The vertical scale of the image (1 = 100%). | 1 | |
opacity | number | The opacity of the background image (0–255). | 255 | |
backOpacity | number | The opacity of the window background (window skin). When set to 0, the window becomes transparent. | 255 | |
windowOpacity | number | The opacity of the window itself (this.opacity). | 255 | |
contentsOpacity | number | The opacity of the window’s contents (this.contentsOpacity). | 255 | |
disableItemBackground | boolean | If set to true, the item background/frame within the window will not be drawn. | FALSE | |
windowSlide | boolean | If true, the window will slide in from the edge (adds a slide effect to the window itself). | FALSE | |
windowSlideDirection | select | The direction from which the window slides in. | left | Options: left, right, up, down |
windowSlideDuration | number | The duration for the window slide effect (in frames). | 60 | |
effectType | select | The type of effect applied to the background image. | none | Options: none, fade, slide, zoom, rotate, shake, pulsate, scroll, colorShift, blink, spin, swing, pulseColor, flip, glitch, shimmer, wave, jitter, spinZoom, fadeCycle, flicker, rainbow, split, scatter, custom |
customEffectIndex | number | The index number for a custom effect (used when effectType = custom). | 0 | Used in conjunction with PLK_Effects.customEffects. |
2. Effect Settings
Note: Each setting is provided as a JSON (struct) and is used only when the corresponding effectType
is selected.
Parameter | Type | Description | Default | Notes |
fadeSettings | struct | Settings for the fade effect (starts transparent and fades in). | {"effectDuration":"60"} | Used when effectType = fade |
slideSettings | struct | Settings for the slide effect (slides in from the specified direction). | {"effectDuration":"60","effectDirection":"left"} | Used when effectType = slide |
zoomSettings | struct | Settings for the zoom effect (starts at scale 0 and zooms to the defined scale). | {"effectDuration":"60"} | Used when effectType = zoom |
rotateSettings | struct | Settings for the rotate effect (rotates from a specified angle back to 0). | {"effectDuration":"60"} | Used when effectType = rotate |
shakeSettings | struct | Settings for the shake effect (creates a slight shaking effect). | {"shakeIntensity":"5","shakeSpeed":"1"} | Used when effectType = shake |
pulsateSettings | struct | Settings for the pulsate effect (smoothly expands and contracts). | {"pulseAmplitude":"0.2","pulseSpeed":"0.1"} | Used when effectType = pulsate |
scrollSettings | struct | Settings for the scroll effect (continuously scrolls the image). | {"scrollSpeedX":"1","scrollSpeedY":"0"} | Used when effectType = scroll |
colorShiftSettings | struct | Settings for the colorShift effect (changes the image’s hue). | {"hueShiftSpeed":"1"} | Used when effectType = colorShift |
blinkSettings | struct | Settings for the blink effect (alternates between high and low opacity). | {"blinkMinOpacity":"50","blinkMaxOpacity":"255","blinkSpeed":"0.1"} | Used when effectType = blink |
spinSettings | struct | Settings for the spin effect (rotates the image). | {"spinSpeed":"0.05"} | Used when effectType = spin |
swingSettings | struct | Settings for the swing effect (swings the image back and forth). | {"swingAmplitude":"0.1","swingSpeed":"0.1"} | Used when effectType = swing |
pulseColorSettings | struct | Settings for the pulseColor effect (alternates between defined colors). | {"pulseColorMin":"16777215","pulseColorMax":"16711680","pulseColorSpeed":"0.05"} | Used when effectType = pulseColor |
flipSettings | struct | Settings for the flip effect (flips the image). | {"flipInterval":"30"} | Used when effectType = flip |
glitchSettings | struct | Settings for the glitch effect (applies slight distortions). | {"glitchIntensity":"10","glitchFrequency":"0.1"} | Used when effectType = glitch |
shimmerSettings | struct | Settings for the shimmer effect (creates a subtle light shimmer). | {"shimmerSpeed":"0.1","shimmerAmount":"0.2"} | Used when effectType = shimmer |
waveSettings | struct | Settings for the wave effect (moves the image up and down like a wave). | {"waveAmplitude":"5","waveFrequency":"0.2"} | Used when effectType = wave |
jitterSettings | struct | Settings for the jitter effect (creates a jumpy motion). | {"jitterIntensity":"3","jitterProbability":"0.5"} | Used when effectType = jitter |
spinZoomSettings | struct | Settings for the spinZoom effect (rotates while zooming). | {"spinZoomSpeed":"0.03","spinZoomAmplitude":"0.2"} | Used when effectType = spinZoom |
fadeCycleSettings | struct | Settings for the fadeCycle effect (cycles between fading in and out). | {"fadeCycleDuration":"120"} | Used when effectType = fadeCycle |
flickerSettings | struct | Settings for the flicker effect (creates random flickering). | {"flickerMinOpacity":"100","flickerMaxOpacity":"255","flickerProbability":"0.3"} | Used when effectType = flicker |
rainbowSettings | struct | Settings for the rainbow effect (changes the image colors in a rainbow pattern). | {"rainbowSpeed":"1"} | Used when effectType = rainbow |
splitSettings | struct | Settings for the split effect (divides the image into parts and then reassembles them). | {"effectDuration":"60","splitType":"horizontal"} | Used when effectType = split |
scatterSettings | struct | Settings for the scatter effect (disperses the image from the center). | {"effectDuration":"60","scatterIntensity":"10"} | Used when effectType = scatter |
Basic Usage
- Install the Plugin:
Place the plugin file into the
js/plugins
folder of your RPG Maker MZ project and enable it in the Plugin Manager. - Set the Basic Parameters:
- Open the PLK_ImageManager settings in the Plugin Manager.
- In the
backgrounds
parameter, add each struct WindowBackground entry one by one. - To have more than one background image in the same window, use the same
windowName
in multiple entries.
- Adjust the Settings:
- Set the position (x, y) and scale (scaleX, scaleY) as desired.
- Adjust the opacity, backOpacity, windowOpacity, and contentsOpacity to suit your needs.
- If you want to apply an effect, set the
effectType
accordingly (e.g., fade, slide, zoom, etc.) and adjust the corresponding JSON (struct) settings for that effect.
- Save and Test: Save your settings and test your game. When the specified window is created, the system will add the background images and effects as configured.
PLK_Effects Overview
Effect Type | Description | Key Properties | Additional Notes |
fade | Gradually increases the sprite’s opacity from 0 until it reaches a target value. | sprite._targetOpacity, sprite._fadeSpeed, sprite.opacity | Called every frame until sprite.opacity reaches _targetOpacity. |
slide | Moves the sprite from a starting position to a target position. | sprite._targetX, sprite._targetY, sprite._slideSpeedX, sprite._slideSpeedY | The sprite’s X and Y positions are adjusted incrementally toward their target values. |
zoom | Increases the sprite’s scale from 0 to a defined target scale. | sprite._targetScale, sprite._zoomSpeed | Note: The code uses a single _targetScale value instead of separate X and Y targets. |
rotate | Rotates the sprite gradually until it reaches a specified angle. | sprite._targetRotation, sprite._rotateSpeed, sprite.rotation | Rotation is incremented until reaching _targetRotation. |
shake | Creates a shaking effect by oscillating the sprite’s position. | sprite._shakeAngle, sprite._shakeSpeed, sprite._shakeIntensity, sprite._originalX, sprite._originalY | Uses sine and cosine functions to offset the position from its original coordinates. |
pulsate | Makes the sprite smoothly grow and shrink by altering its scale. | sprite._pulseAngle, sprite._pulseSpeed, sprite._pulseAmplitude | The scale is set to a factor computed from a sine wave, producing a pulsating effect. |
scroll | Continuously moves the sprite in a fixed direction. | sprite._scrollSpeedX, sprite._scrollSpeedY | The sprite’s position is updated each frame by adding the speed values. |
colorShift | Gradually shifts the hue of the sprite using a color filter. | sprite._colorAngle, sprite._hueShiftSpeed, sprite._colorFilter | Requires PIXI’s ColorMatrixFilter to adjust the hue value. |
blink | Alternates the sprite’s opacity between a minimum and maximum value. | sprite._blinkTimer, sprite._blinkSpeed, sprite._blinkMinOpacity, sprite._blinkMaxOpacity | Uses a sine function to smoothly vary opacity, creating a blinking effect. |
spin | Continuously rotates the sprite at a constant speed. | sprite._spinSpeed | Rotation is simply increased each frame by _spinSpeed. |
swing | Oscillates the sprite’s rotation to create a swinging motion. | sprite._swingTimer, sprite._swingSpeed, sprite._swingAmplitude | The rotation is set to the sine of a timer multiplied by an amplitude. |
pulseColor | Alternates the sprite’s tint between two defined colors. | sprite._pulseColorTimer, sprite._pulseColorSpeed, sprite._pulseColorMin, sprite._pulseColorMax | The tint is interpolated based on a sine wave value, smoothly shifting between two colors. |
flip | Flips the sprite horizontally at set intervals. | sprite._flipTimer, sprite._flipInterval | When the timer exceeds the interval, the sprite’s scale.x is negated to create a flip. |
glitch | Applies small random displacements to the sprite’s position. | sprite._glitchIntensity, sprite._glitchFrequency, sprite._originalX, sprite._originalY | A random chance each frame determines whether the sprite is offset from its original position. |
shimmer | Creates a subtle shimmering effect by modulating the sprite’s alpha. | sprite._shimmerTimer, sprite._shimmerSpeed, sprite._shimmerAmount | The sprite’s alpha is adjusted using a sine function to simulate light reflection. |
wave | Oscillates the sprite’s vertical position in a wave-like motion. | sprite._waveTimer, sprite._waveFrequency, sprite._waveAmplitude, sprite._originalY | Uses a sine wave to vary the sprite’s Y position around its original value. |
jitter | Randomly displaces the sprite for a jumpy or erratic motion effect. | sprite._jitterIntensity, sprite._jitterProbability, sprite._originalX, sprite._originalY | Similar to glitch but typically uses a defined probability to determine movement each frame. |
spinZoom | Combines rotation with a pulsing scale effect simultaneously. | sprite._spinZoomTimer, sprite._spinZoomSpeed, sprite._spinZoomAmplitude, sprite._baseScaleX, sprite._baseScaleY | The sprite rotates while its scale oscillates based on a sine wave. |
fadeCycle | Continuously cycles the sprite’s opacity from fully transparent to fully opaque. | sprite._fadeCycleTimer, sprite._fadeCycleDuration | Uses a sine function to create a smooth fade in and out loop. |
flicker | Randomly changes the sprite’s opacity to create a flickering effect. | sprite._flickerProbability, sprite._flickerMinOpacity, sprite._flickerMaxOpacity | Each frame, the opacity may change based on a random chance. |
rainbow | Applies a dynamic rainbow hue effect via a color filter. | sprite._rainbowTimer, sprite._rainbowSpeed, sprite._colorFilter | The hue is continuously adjusted; requires PIXI’s ColorMatrixFilter. |
split | Splits the sprite by gradually reducing its scale in one dimension. | sprite._splitTimer, sprite._splitDuration, sprite._splitType | For a "horizontal" split, the sprite’s X-scale is reduced; for "vertical," the Y-scale is reduced. |
scatter | Randomly disperses the sprite from its original position temporarily. | sprite._scatterTimer, sprite._scatterDuration, sprite._scatterIntensity | The sprite is randomly offset from its original position and then returns, simulating a scattering effect. |
custom | Executes a custom effect defined by the developer. | sprite._customEffectIndex | When the effect type is “custom,” the update function retrieves a custom effect from PLK_Effects.customEffects based on _customEffectIndex. |
Custom Effects
- How They Work:
If a sprite’s
_effectType
is set to"custom"
, thePLK_Effects.updateEffect(sprite)
method will use the value ofsprite._customEffectIndex
to select and run a custom effect function from thePLK_Effects.customEffects
array. - Adding Custom Effects:
Developers can add custom functions to the
PLK_Effects.customEffects
array. For example:js PLK_Effects.customEffects.push(function(sprite) { // Custom effect example: Gradually change tint over time. sprite._customTimer = (sprite._customTimer || 0) + 0.1; let r = Math.floor(128 + 127 * Math.sin(sprite._customTimer)); let g = Math.floor(128 + 127 * Math.sin(sprite._customTimer + 2)); let b = Math.floor(128 + 127 * Math.sin(sprite._customTimer + 4)); sprite.tint = (r << 16) + (g << 8) + b; });
Another example might apply slight random movement:
js PLK_Effects.customEffects.push(function(sprite) { sprite._customTimer2 = (sprite._customTimer2 || 0) + 0.2; let dx = Math.sin(sprite._customTimer2) * 3; let dy = Math.cos(sprite._customTimer2) * 3; sprite.x += dx; sprite.y += dy; });
- Usage in PLK_ImageManager:
When you configure a background image in PLK_ImageManager with an
effectType
of"custom"
, set the correspondingcustomEffectIndex
parameter. During each update cycle,PLK_Effects.updateEffect(sprite)
will call the designated custom effect function to modify the sprite as needed.
Published | 10 hours ago |
Status | Released |
Author | Palatkorn |
Tags | RPG Maker MZ |
Purchase
Buy Now$8.00 USD or more
In order to download this game you must purchase it at or above the minimum price of $8 USD. You will get access to the following files:
PLK_Effects.js 11 kB
PLK_ImageManager.js 143 kB
PLK_CursorImage.js 151 kB
Read_Window_Name.js 3.3 kB
Leave a comment
Log in with itch.io to leave a comment.