EST - EVENT GRAPHIC SHIFT

Discussion in 'JS Plugin Releases (RMMV)' started by estriole, Oct 29, 2015.

  1. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
     ■ Information      ╒══════════════════════════╛
     EST - Event Graphic Shift NEO
     Version: 1.7
     By Estriole
     File name: EST_Event_Graphic_Shift.js

     ■ Introduction     ╒══════════════════════════╛
        Have charset that need the graphic to be shifted by x pixel?
     for example a building with the door not exactly in the middle of the
     event graphic. just use this plugin

     ■ Features         ╒══════════════════════════╛ 

      - shift graphic x
      - shift graphic y
      - shift graphic z
      - flip graphic horizontally
      - flip graphic vertically
      - rotate graphic
      - set graphic transparency
      - set graphic zoom / scale
      - set blend / tone color (NOT WORKING IF USING CHROME)
     

     ■ Changelog       ╒══════════════════════════╛

    older changelog inside spoiler

     v1.0 2015.10.29           Initial Release
     v1.1 2015.10.30           improved regexp so we can also use , to separate the x and y
                                fix bug when erasing event.
     v1.2 2015.11.01     -     fix crash when no event page met condition... v1.3 2015.11.12     -     add z to the graphic shift. so you can make event that on top of other event.
                               fix regexp so it recognize <graphic_shift: 1,2,3> (coma without spaces)
     v1.4 2015.11.23     -     ability to flip / rotate the graphic. using comment tag:
                               <graphic_flip_h> => flip graphic horizontally
                               <graphic_flip_v> => flip graphic vertically
                               <graphic_rotation: x> => rotate graphic by x degree
                               ability to flip / rotate the graphic using script call / plugin call:
                               script call:
                               this.thisEventChangeFlipH(true); //=> will flip graphic horizontally
                               this.thisEventChangeFlipH(false); //=> will cancel flip graphic horizontally
                               this.thisEventChangeFlipV(true); //=> will flip graphic vertically
                               this.thisEventChangeFlipV(false); //=> will cancel flip graphic vertically
                               this.thisEventChangeRotation(x); //=> will rotate graphic by x degree
                               plugin call:
                               this_event_change_fliph true //=> will flip graphic horizontally
                               this_event_change_fliph false //=> will cancel flip graphic horizontally
                               this_event_change_flipv true //=> will flip graphic vertically
                               this_event_change_flipv false //=> will cancel flip graphic vertically
                               this_event_change_rotation x //=> will rotate graphic by x degree
     v1.5 2015.11.23     -     ability to change graphic offset x and y using scriptcall / plugin call:
                               script call:
                               this.thisEventChangeOffsetX(value); //=> will set offset x to value
                               this.thisEventChangeOffsetY(value); //=> will set offset y to value
                               plugin call:
                               this_event_change_offsetx value; //=> will set offset x to value
                               this_event_change_offsety value; //=> will set offset y to value

     v1.6 2015.12.01     -     > ability to change graphic offset z using scriptcall / plugin call:
                               > Notetags/Commenttags to change event zoom (default zoom too), scale x, scale y
                               > ability to change event zoom / scale x / scale y using scriptcall / plugin call:
                               > ability to change event opacity
                               Below CAN be turned OFF if you don't use it...
                               > ability to change blend color(warning: chrome not supported)
                               > ability to change tone color (warning: chrome not supported)
     v1.7 2015.12.18     -     > fix bug with graphic opacity...

     ■ Plugin Download ╒══════════════════════════╛
     DOWNLOAD
     ■ Demo ╒══════════════════════════╛

     Demo Download

     (All EST - Build And Decor Series Conversion plugin will share same dropbox demo)

     ■ How to use       ╒══════════════════════════╛  

    see spoiler

     add Comment at the event page you want the graphic to shift
     <graphic_shift: offsetx offsety offset z>
         example:
         <graphic_shift: 32 -32, 2>
             <graphic_shift: 32, -32> (from v1.1 this work too)
             <graphic_shift: 32  , -32> (from v1.1 this work too)
             <graphic_shift: 32  ,-32> (from v1.1 this work too)

         will shift the graphic x by +32 pixel (go to right 32 pixel)
         will shift the graphic y by -32 pixel (go to down 32 pixel)
         will shift the graphic z by adding 2 z level so it will be on top of event with lower z value
     
     tips by default event z = event priority type * 2 + 1
         > below character = 0 => 0*2+1 = 3
         > same as character = 1 => 1*2+1 = 3
         > above character = 2 => 2*2+1 = 5
         > [Tile] Event (ignore above 3 setting) = 0 => 0*2+1 = 1
     so if you add 2... the final z level will be added by value from default event z
     if you want to reduce z level. use negative value.

     some z level references:
     shadow = 6
     balloon = 7
     animation = 8
     mouse destination sprite = 9
     source : rpg_sprites.js

     if you only want to shift x value you could do fine with not entering the offsety value
     or offset z.
         example:
         <graphic_shift: 32>
     > new comment tag for flipping / rotating event graphic
     give comment tag:
       <graphic_flip_h> => flip graphic horizontally
       <graphic_flip_v> => flip graphic vertically
       <graphic_rotation: x> => rotate graphic by x degree
     
     > ability to flip / rotate the graphic using script call / plugin call:
     script call:
        this.thisEventChangeFlipH(true); //=> will flip graphic horizontally
        this.thisEventChangeFlipH(false); //=> will cancel flip graphic horizontally
        this.thisEventChangeFlipV(true); //=> will flip graphic vertically
        this.thisEventChangeFlipV(false); //=> will cancel flip graphic vertically
        this.thisEventChangeRotation(x); //=> will rotate graphic by x degree
     plugin call:
        this_event_change_fliph true //=> will flip graphic horizontally
        this_event_change_fliph false //=> will cancel flip graphic horizontally
        this_event_change_flipv true //=> will flip graphic vertically
        this_event_change_flipv false //=> will cancel flip graphic vertically
        this_event_change_rotation x //=> will rotate graphic by x degree

     > ability to change graphic offset x and y using scriptcall / plugin call:
     script call:
        this.thisEventChangeOffsetX(value); //=> will set offset x to value
        this.thisEventChangeOffsetY(value); //=> will set offset y to value
     plugin call:
        this_event_change_offsetx value; //=> will set offset x to value
        this_event_change_offsety value; //=> will set offset y to value

     > ability to change graphic offset z using scriptcall / plugin call:
     script call:
        this.thisEventChangeOffsetZ(value); //=> will set offset z to value
     plugin call:
        this_event_change_offsetz value; //=> will set offset z to value
                               
     > Notetags/Commenttags to change event zoom (default zoom too), scale x, scale y
     to make all event in a map to have specific default zoom level...
     give notetags to MAP NOTE:
     <event_zoom: value>
     will zoom all map event [value] times from normal (can be changed individually
     by comment tag / script call / plugin call)
                               
     to change specific event page zoom level give comment tag:
     <graphic_zoom: value> -> will zoom event by [value] times (both x and y affected)
     <graphic_scalex: value> -> will only affect x zoom (become fat/thin :D )
     <graphic_scaley: value> -> will only affect y zoom (become short/tall :D )
                               
     > ability to change event zoom /scale x / scale y using scriptcall / plugin call:
     script call:
     this.thisEventChangeScaleX(value);
     this.thisEventChangeScaleY(value);
     this.thisEventChangeZoom(value);
     change value to any number. if you want to use decimal. use
     1.5 instead of 1,5

     plugin call:
     this_event_change_scalex value
     this_event_change_scaley value
     this_event_change_zoom value
     change value to any number. if you want to use decimal. use
     1.5 instead of 1,5

     > comment tag to set event page opacity
     <graphic_opacity: value>
     change value to number between 0-255 (255 is solid, 0 is transparent)
     
     > ability to change event opacity using script call / plugin call:
     script call:
     this.thisEventChangeOpacity(value);
     plugin call:
     this_event_change_opacity value

     will set event opacity to value

     WARNING !!! BELOW IS NOT SUPPORTED IN CHROME... it will show black image instead.
     THIS FEATURE CAN ALSO BE TURNED OFF IF YOU DON'T WANT TO USE IT... CHANGE IN PLUGIN PARAMETER
     IF YOU TURN IT OFF THAT MEAN LESS CHECK AND FASTER SPEED.

     > comment tag to set event page blend color (warning: chrome not supported)
     <graphic_blend: red, green, blue, alpha>
     red => 0-255 (need alpha to show effect)
     green => 0-255 (need alpha to show effect)
     blue => 0-255 (need alpha to show effect)
     alpha => 0-255 (strength of the blend... lower value will make it not seen)

     > ability to change blend color by script call / plugin call(warning: chrome not supported)
     script call:
     this.thisEventChangeBlend(red,green,blue,alpha)
     plugin call:
     this_event_change_blend red green blue alpha

     red => 0-255 (need alpha to show effect)
     green => 0-255 (need alpha to show effect)
     blue => 0-255 (need alpha to show effect)
     alpha => 0-255 (strength of the blend... lower value will make it not seen)

     > comment tag to set event page tone color (warning: chrome not supported)
     <graphic_tone: red, green, blue, alpha>
     red => 0-255 (need alpha to show effect)
     green => 0-255 (need alpha to show effect)
     blue => 0-255 (need alpha to show effect)
     alpha => 0-255 (strength of the blend... lower value will make it not seen)

     > ability to change tone color via script call / plugin call (warning: chrome not supported)
     script call:
     this.thisEventChangeTone(red,green,blue,alpha)
     plugin call:
     this_event_change_tone red green blue alpha
     red => 0-255 (need alpha to show effect)
     green => 0-255 (need alpha to show effect)
     blue => 0-255 (need alpha to show effect)
     alpha => 0-255 (strength of the blend... lower value will make it not seen)
     
     ■ Dependencies     ╒══════════════════════════╛
     None

     ■ Compatibility    ╒══════════════════════════╛
     I'm new in JS... and MV is new engine... so i cannot say for sure.
     but it should be compatible with most things.

     ■ Parameters       ╒══════════════════════════╛
    > RemoveBlendAndToneCheck
    if this set to true... will remove the blend and tone feature (true/false)
    default false

     ■ License          ╒══════════════════════════╛
     Free to use in all project (except the one containing pornography)
     as long as i credited (ESTRIOLE).

     ■ Support          ╒══════════════════════════╛
     While I'm flattered and I'm glad that people have been sharing and
     asking support for scripts in other RPG Maker communities, I would
     like to ask that you please avoid posting my scripts outside of where
     I frequent because it would make finding support and fixing bugs
     difficult for both of you and me.
       
     If you're ever looking for support, I can be reached at the following:
     [ http://forums.rpgmakerweb.com/ ]
     pm me : estriole

     
     ■ Author's Notes   ╒══════════════════════════╛
     This is part of the EST - DECOR AND BUILD SERIES.

      EST - SAVE MAP EVENTS

      EST - CLONE TRANSFORM DELETE EVENT

      EST - EVENT GRAPHIC SHIFT

      EST - EVENT SIZE AND TRIGGER

      EST - BUILD AND DECOR EX

      EST - REGIONMAPLOADER
     
    Last edited by a moderator: Dec 19, 2015
    #1
    Archeia, Volis, Fafs and 11 others like this.
  2. Makeratore

    Makeratore Veteran Veteran

    Messages:
    187
    Likes Received:
    51
    Location:
    Rome, Italy
    First Language:
    Italian
    Good Job! You're making plugins faster than I thought. 
     
    #2
  3. igormatias

    igormatias Villager Member

    Messages:
    13
    Likes Received:
    7
    First Language:
    Portuguese
    Excelent! I had to adjust every each one. Now I just set it in an event and let it go! Tks!
     
    #3
  4. Fernyfer775

    Fernyfer775 Veteran Veteran

    Messages:
    1,301
    Likes Received:
    804
    First Language:
    English
    Niiiiice! Vlue had a similar plug-in for ACE and it was invaluable for those who don't like to paralax map, thank you for this!
     
    #4
  5. igormatias

    igormatias Villager Member

    Messages:
    13
    Likes Received:
    7
    First Language:
    Portuguese
    [​IMG]
    I found a bug.
     
    When this event occurs, I have this messages "Cannot read the property 'list' or undefined".I ran some tests and found the error with the command "Erase Event".
     
    Last edited by a moderator: Oct 30, 2015
    #5
    estriole likes this.
  6. NightmareMMZero

    NightmareMMZero Warper Member

    Messages:
    4
    Likes Received:
    1
    First Language:
    English
    #6
    estriole likes this.
  7. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
    thanks for the bug report... it also break when you have event that don't have a page which have condition met.

    (all page have condition and that condition is not met thus become nothing in map)...

    since i'm new in JS. this kind of bug report is really helpful. thanks once again :D .

    i fix this in this new version update...

    also change the regexp a little bit so it will support:

    <graphic_shift: 32, 16> (using coma)

    using space like previous also still work... this only add alternative.

    and even will tolerate extra spaces

    <graphic_shift: 32      , 16> (using coma, extra spaces)

    <graphic_shift: 32         16> (extra spaces)

    etc.

    so a little mistake won't break the comment tags.

    (another level up on JS :D ).

    Estriole's [Javascript Masteries] LV 5

    updated the plugin to v.1.0

    changelog:

     v1.1 2015.10.30           improved regexp so we can also use , to separate the x and y

                                          fix bug when erasing event.

    download the plugin at the first post.

    either grab from plugin link / demo link.

    btw if anyone download the demo... there's a plugin EST - EVENT SIZE... please don't use it yet. it's still at prototype phase.

    when i update the demo... currently working on that plugin (so far so good...)
     
    Last edited by a moderator: Oct 30, 2015
    #7
    Chickenlump likes this.
  8. igormatias

    igormatias Villager Member

    Messages:
    13
    Likes Received:
    7
    First Language:
    Portuguese
    Thank you!
     
    #8
  9. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
    plugin updated to v1.2

    v1.2 2015.11.01     -     fix crash when no event page met condition...

    (random crash)

    fixed the demo link to point the right file (earlier point to older build so not updated)

    edit: event size plugin is almost finished. currently bugtesting it. and in process to add size trigger and extra trigger feature;
     
    Last edited by a moderator: Nov 1, 2015
    #9
    Makeratore likes this.
  10. MikeMakes

    MikeMakes Veteran Veteran

    Messages:
    163
    Likes Received:
    41
    First Language:
    English
    Thank you, estriole!

    This is really useful if we don't want to edit the charset's sprite frame positioning and dimensions.

    Edit: Is it possible to incorporate a feature that sets charset's sprite to simulate pixel movement such as:

      <graphic_shift: current x shift + 2>, wait 5 frame,   <graphic_shift: current x shift + 2> wait 5 frame,

    or  <graphic_shift: current x shift + 10, within certain Frame#> ?

    This would be useful if for example we wanted to make a Character come in close bodily contact with another Character without having to open up the spritesheet and adjust the frame pixels one by one.
     
    Last edited by a moderator: Nov 4, 2015
    #10
  11. tati light

    tati light Veteran Veteran

    Messages:
    160
    Likes Received:
    109
    First Language:
    English
    This is one of the best plugins hands down. This enables soft parallax mapping inside the editor, it's totally awesome!
     
    #11
  12. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
    updated the EST - Event Graphic Shift to v.1.3

    changelog:

     v1.3 2015.11.12     -     add z to the graphic shift. so you can make event that on top of other event.
                               fix regexp so it recognize <graphic_shift: 1,2,3> (coma without spaces)
     
    #12
    Makeratore likes this.
  13. tati light

    tati light Veteran Veteran

    Messages:
    160
    Likes Received:
    109
    First Language:
    English
    Holy ****, z dimension now? Just take my money!
     
    Last edited by a moderator: Nov 13, 2015
    #13
    estriole likes this.
  14. tati light

    tati light Veteran Veteran

    Messages:
    160
    Likes Received:
    109
    First Language:
    English
    Hey, I don't know if I can post again, my last post is like from a week ago, and if I edit it, I doubt anyone would see, so yeah... sorry if this is against the rules, but anyway... I wanted to thank you again for this wonderful plugin, I use it everyday, and it's probably my most used plugin...

    I wanted to make a suggestion, if possible, could you add a way to flip horizontally the event? For example, if the event is a sprite leaning to the left, it would lean to the right, like a mirror... if this could be possible, it would be wonderful.

    Thanks again for the amazing plugin!
     
    #14
  15. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
    can you explain a little bit more? do you mean move the image but to reverse position?

    ex:

    xxxx         xxxx

    xooo   to  ooox

    xooo        ooox

    can you explain what do you need that for?

    since you can have more than one page and shift each page differently...

    but maybe there's specific situation you need that cannot use that?
     
    #15
  16. tati light

    tati light Veteran Veteran

    Messages:
    160
    Likes Received:
    109
    First Language:
    English
    I mean invert the sprite horizontally like a mirror, like this:

    ex.png

    I think it would take the soft-parallaxing potential of this plugin to the next level, since RMMV allows us to use tons of events without losing performance. ;)
     
    #16
  17. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
    sorry for long reply... got to study a little bit first about this issue :D .

    but i think you will think the wait will worth it :D .

    EST - EVENT GRAPHIC SHIFT is evolving... it become EST - EVENT GRAPHIC SHIFT EVO !!!

    learned skill [Flipping Graphic Horizontally]

    learned skill [Flipping Graphic Vertically]

    learned skill [Rotating Graphic]

    lol... just kidding...

    in a way... updated plugin to v.1.4

    changelog:

     v1.4 2015.11.23     -     ability to flip / rotate the graphic. using comment tag:

                               <graphic_flip_h> => flip graphic horizontally

                               <graphic_flip_v> => flip graphic vertically

                               <graphic_rotation: x> => rotate graphic by x degree

                               ability to flip / rotate the graphic using script call / plugin call:

                               script call:

                               this.thisEventChangeFlipH(true); //=> will flip graphic horizontally

                               this.thisEventChangeFlipH(false); //=> will cancel flip graphic horizontally

                               this.thisEventChangeFlipV(true); //=> will flip graphic vertically

                               this.thisEventChangeFlipV(false); //=> will cancel flip graphic vertically

                               this.thisEventChangeRotation(x); //=> will rotate graphic by x degree

                               plugin call:

                               this_event_change_fliph true //=> will flip graphic horizontally

                               this_event_change_fliph false //=> will cancel flip graphic horizontally

                               this_event_change_flipv true //=> will flip graphic vertically

                               this_event_change_flipv false //=> will cancel flip graphic vertically

                               this_event_change_rotation x //=> will rotate graphic by x degree

    for more detail see the demo.
     
    #17
    Fafs, Makeratore and tati light like this.
  18. tati light

    tati light Veteran Veteran

    Messages:
    160
    Likes Received:
    109
    First Language:
    English
    OH MY GOD!!!! You, sir, are the LEGEND of the events!

    I will make sure to put your name in big letters in the credits!

    Striking while the iron is hot, any chance of your new features are using Pixi?

    I have a dream of having some graphical features in events like:

    thisevent.blur = 0.5;

    thisevent.hue + 30;

    thisevent.saturation - 30;

    thisevent.size = 1.7; (where 1 would be the original size)

    I would pay for that, just let me know!

    In any case, your plugin is super awesome! Thanks so much!
     
    #18
  19. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
    it's not exactly directly using pixi. but MV sprite have variable that i can change that in the end use pixi to draw it...

    i will see if i can do what you want or not... been trying to modify opacity. but it didn't change. :D .

    i have also seen blur and hue too in the parameter that i could change. i guess time to learn again :p .

    (maybe some trial run)

    btw... some small update:

    updated to v1.5

     v1.5 2015.11.23     -     ability to change graphic offset x and y using scriptcall / plugin call:

                               script call:

                               this.thisEventChangeOffsetX(value); //=> will set offset x to value

                               this.thisEventChangeOffsetY(value); //=> will set offset y to value

                               plugin call:

                               this_event_change_offsetx value; //=> will set offset x to value

                               this_event_change_offsety value; //=> will set offset y to value

    hopefully in v1.6 i can do the opacity and blur and hue...

    btw... soon released. (will post the plugin topic after posting this)

    EST - BATTLE ROYALE EVO

    want to have PLAYER + ALLIED ENEMY vs ENEMY vs ENEMY vs ENEMY vs ENEMY vs ENEMY ???

    complex battle where suddenly 3rd party join the battle. maybe some other country troop suddenly attack you and your enemy.

    or some ecosystem where tiger monster eat rabbit monster. it's up to your imagination.
     
    Last edited by a moderator: Nov 28, 2015
    #19
    tati light and Makeratore like this.
  20. estriole

    estriole Veteran Veteran

    Messages:
    1,030
    Likes Received:
    334
    First Language:
    indonesian
    i manage to do the size modification... i call it zoom.

    for blur, and saturnation... i cannot find where to edit that.

    but... i manage to do opacity modification (transparency). so you can have 'ghost' event.

    for hue... i found two coloring type...

    1) blend color

    2) tone color

    as you can see in this screenshot the diference between blend and tone...

    [​IMG]

    they both have same R:255, G:0, Y:255, A:100

    but the difference is like that... i'm not sure which one you consider a hue. but i will include both just in case. maybe combination of both could be nice too... :D .

    currently 2AM here... the code is finished but the documentation (how to use) is still not started yet... and i'm super sleepy. maybe i will released this plugin tomorrow if i'm not busy...
     
    #20

Share This Page