Jump to content

Tuckie

Member
  • Content Count

    94
  • Joined

  • Last visited

About Tuckie

  • Rank
    "aficionado"
  • Birthday June 9

Contact Methods

  • Website URL
    tuckie.zone

Profile Information

  • Gender
    Male

RPG Maker Information

  • RM Skill -
    Other

Recent Profile Visitors

2,529 profile views
  1. Tuckie

    animation of draw_text() ?

    that's probably a better solution The version of the script I posted here is more or less adapted from a custom visual replacement of rpgmaker text box - so i think as i was coding that i wasnt so worried about the original placement of everything. so it seems there were some discrepancies left over from trying to re-adapt it to be more general purpose?
  2. Tuckie

    animation of draw_text() ?

    the "squish" for letters is usually just an RPGMaker thing - it doesn't like to handle characters in tiny spaces (every letter is it's own bitmap here) but if you used a text caching script like Mithran's it would fix that
  3. Tuckie

    animation of draw_text() ?

    hmm. id have to take a look at yanfly's system to see how it handles changing the width. my best guess right now is that yanfly's circumvents the traditional position data hash for something else. A quick temporary fix on your end would be to simply add a value to the calculation on line 224: letter.x = pos[:x] + self.standard_padding + 9 + $game_variables[79] it's a little hacky, but with this it will take the number stored in game variable 79 (set this thru events) and shift all the letters of your text box by that many pixels to the right.
  4. Tuckie

    animation of draw_text() ?

    maybe im thinking about this wrong but it seems like a bit more effort than its worth to dynamically put together a huge image and blt() all the letters in? or do you mean just have a preset rainbow gradient "Limit" image and just change the color of that? actually now that you say that it wouldnt be too hard at all
  5. Tuckie

    animation of draw_text() ?

    Hello! I'm glad you like this script! I would be glad if you translated this script for others to use! I have an updated version of it which you can download from here. When you credit the author I think you should also mention Kayzee who helped me make it in the first place.
  6. Tuckie

    animation of draw_text() ?

    aaaaaaaaaa its been like forever since i've even been on here ive updated this a few times since i last posted here so heres a pastebin link to that or whatever it might be kind of hard to implement the rainbow text effect I use with how you draw the text. what makes it easy for me to do all these wacky effects is by drawing out each letter as its own object, which meant rewriting the textbox code to place each letter one by one and set up variables that control what effects each letter has. so if you wanted to do what i do you'd need to use a method to parse the text that sets up all the objects in position etc. look around line ~214 in that pastebin generally for what does that. the actual rainbow effect is pretty simple. im just using the bitmap color function where i use 3 sinewaves to set the R,G,B values of otherwise white text. each letter has a time value that goes inside of the Math.sin() that is slightly different from the last which is why each is a different color. heres what i do for that: self.color = Color.new(128 + Math.sin(@time) * 127, #R value 128 + Math.sin(@time + 2*Math::PI/3) * 127, #G value 128 + Math.sin(@time + 4*Math::PI/3) * 127, #B value 255) #Alpha #you probably wanna remove those comments before you put this in ur code if you just wanted to do rainbow effect and only on a few letters it shouldn't really have any performance effects. honestly the whole text animation script isnt that laggy. hope this helps?
  7. Tuckie

    animation of draw_text() ?

    Looking more into performance, I thought I'd mention that I tested this system in MKXP (Open source rgss3 implementation) which renders via OpenGL has no performance issues whatsoever. One way I'm thinking about increasing speed is to potentially "pre-render" the sine-waves on initialization. So instead of calculating 100+ sin functions each frame each character just advances to the next entry on an array? In the meantime I fixed a bug where letters would not be deleted when the name-entry screen was opened.
  8. Tuckie

    animation of draw_text() ?

    Okay, I must have read incorrectly into fibers then. The script doesn't crash even without galvs script, I tested that. It just seems to give all the default characters a slow waving animation. That's also why I made the option in there. I love random pitch variance for the sounds; I had to add it in to the one I currently use, and it would be cool to change sound mid message- to give accent to a specific word or something. I've also seen one where there's a bit of randomness to whether or not it plays sound at all, I think that makes it feel a little more "speech" ey.
  9. Tuckie

    animation of draw_text() ?

    What do you mean by 'installed'? I didn't have to modify any of galv's script to get that to work, just method aliasing(which is why it has to go under). Performance is definitely a concern. A full page of letters with animation and rainbow dips down to 45 fps. I'm not sure if this is how it works, but could handling the animation with fibers (thus putting it on a new thread?) Improve speed? Text sound is very important, too. Though I have seen a few scripts for that already, and this script works fine with the one I use. If you don't mind me asking, what else would yours do? Maybe better support for switching sound effects?
  10. Tuckie

    animation of draw_text() ?

    Hmm, that could make some very interesting results. In the meantime, I fixed an issue where text wouldn't clear when a new page was opened. If you had two show text events right after each other, the letters wouldn't clear away. I also changed the rainbow effect so you could make it on any animation, by using \RAN and turning off with \BLN or \OFF. Also, an option to let regular letters drop in on entrance! This does mean that I replaced all characters in the textbox with these bitmaps. \ANI[7] creates characters without animation. Just for fun, I tried replicating the paper mario text box using Galv's custom message background script. I also added an option that extends Galv's script to make the background subtly float, and all the text follows it's movement in addition to their own animations. You have to put the script under Galv's. Eventually I'd like to extend this to work with RPGMaker's text boxes as well. I'd also like to add a little more control over the icon that pops up when the text box finishes, like putting it in a corner or having it rotate. I've been updating the code in the spoiler as I go. New edit: I made a lot of additions to process_anim_character() based on my needs, but now decided to move them all to a seperate method for visual clarity.
  11. Tuckie

    animation of draw_text() ?

    OH! So the self.oy error was that when I disposed each letter, it was still an array of disposed Sprites? That makes a lot of sense now. When I first started to figure out the stuff with arrays of objects, a friend of mine told me to use stacks, I just didn't know enough at the time. Also, that is weird. I wasn't getting any errors for the capitalized aliased methods. I should probably go back to my other scripts and change that. Wow, that's very different! And a lot simpler to add additional animations. That would have been my next step, a more streamlined way of drawing the characters that didn't involve tons of copy and pasting. Just looking at all the differences, I can tell I have a ways to go with Ruby. You've changed so much in this, is it still alright for me to use this? EDIT: This is so cool! I can't thank you enough for all this! I went in and added several more animations.
  12. Tuckie

    animation of draw_text() ?

    Here's an example of what happens when I have wait_for_one_character at the beginning of process_wave_character(). I'll also not that wait_for_one_character already does happen, I'm pretty sure. Because process_normal_character() which is in the default script never had it, its probably being called beforehand. In addition to the animation not looking the same, there seems to be interference when I open up a second box. Feel free to play around if you want. I didn't need to use global variables for the array of wave characters, but I changed them to that when I was trying to include the update in other classes.
  13. Tuckie

    animation of draw_text() ?

    Here is what I have. It's really messy as I've been doing a lot of changing recently. wait_for_one_character there is something I actually tried. While that does draw it frame by frame, it doesn't seem to animate it correctly (potentially calling 2 changes in position per frame?). It also seems to interfere with how I dispose the characters, because when I open up a second text box, it shows an error (the Sprite object doesn't have an associated oy). I know for sure that it IS drawing one character at a time. I overwrote process_character to go to a different letter drawing method depending on what a variabe, @animation is. @animation is controlled within the escape code method. I was putting Graphics.update at the beginning of process_wave_character()
  14. Tuckie

    animation of draw_text() ?

    Hmm, I tried that, process_character, even fiber_main, to no luck. Interestingly, on wait_for_one_character, while it doesn't update until they are all on-screen, the animation plays faster for the first few frames. Even Game_Interpreter's update doesn't fire off when it's drawing characters? UPDATE: Alright, after messing around a bit, I seemed to have found a partial fix. In the method that creates each waving character I call Graphics.update() so that the characters 'scroll' onto the screen like the normal characters. When I get rid of that, The characters animate while text scrolls, but each waving character comes out on the same frame. I can't find anywhere to put a Graphics.update that works. I tried adding a Graphics.update to the wave() method that I added to Sprite, so it updates once every time the letter is called to move. This achieves the scrolling effect, but the whole text scrolling slows down even more which is not desireable.
  15. Tuckie

    animation of draw_text() ?

    Hello, again... I became very busy and hadn't gotten a chance to continue working on this for a while, but now I am very close to being done. I got really halted for a while on being able to manage and store each character. I didn't realize you could just make an array of objects until recently, which made the rest really easy. As the GIF shows, I have pretty much everything working, except for one small bug. The text doesn't begin to animate until all the text in the box has been drawn. This seems to be some sort of issue with Window_Message's fiber system. I added a method to the sprite class that changes it's position based on a sine wave, and i call that method on every letter on Window_Message's update method, which is how it changes every frame. But it doesn't call the update method at all until all text has appeared in the box. I can post all the code if needed, but if someone knows shorthand how i could call my method during that process, it would help me a lot. Thanks one more time.
×