Large events stop animating while still on the screen

Joined
May 18, 2016
Messages
11
Reaction score
13
First Language
English
Primarily Uses
RMMV
I'm using Maru's windmill from this post




and the windmill blades stop animating when you are 14 tiles to the north of the event. The blades graphic is eleven 48x48 tiles tall, so there are still 3 visible tiles of the blade at that point. The blades' event anchor point is the bottom (as would make sense with doors), instead of the center (as would make sense with a rotating sprite). Is there a way to either tell the engine to keep animating this event (now 8 tiles off-screen to the south), or to change the anchor point of the event to the center of the graphic? My game window is 17x13 standard 48x48 tiles.
 

Engr. Adiktuzmiko

Chemical Engineer, Game Developer, Using BlinkBoy'
Veteran
Joined
May 15, 2012
Messages
14,682
Reaction score
3,003
First Language
Tagalog
Primarily Uses
RMVXA
This windwill will not move anywhere right? 


You can probably try to "chop up" the sprite so that the lower 3-tile part of your windwill will be put as another event. This way your actual rotating windwill will have it's anchor 3 parts "higher". So basically, split this windwill graphics into two. 


Or use a parallel process event in that map to "animate" the event manually instead but whether or not that will work depends on how the graphics was made. If it's set up to animate using Step Animation setting, then you need to modify it and work like a door instead so that you can manually animate it via telling it to face a certain direction.


EDIT: I just checked the graphics, it is setup for step animation so you will need to modify it if you want to use either methods. 
 
Last edited by a moderator:
Joined
May 18, 2016
Messages
11
Reaction score
13
First Language
English
Primarily Uses
RMMV
You can probably try to "chop up" the sprite so that the lower 3-tile part of your windwill will be put as another event. This way your actual rotating windwill will have it's anchor 3 parts "higher". So basically, split this windwill graphics into two. 
That's clever. How do you keep the two events in sync? You'd need one parallel process to control them both, right? I'm using door-ish custom route animation instead of stepping (interestingly, stepping animation doesn't have this problem) because I like the look of the 4 frames better than 2.


I found what's ultimately causing my the problem in the source code. Game_CharacterBase.prototype.isNearTheScreen (rpg_objects.js) does not take isBigCharacter into account. While the size of the BigCharacter is known by patternWidth and patternHeight of Sprite_Character (rpg_sprites.js), Sprite_Character has a reference to Game_CharacterBase, not the other way around.
 

Engr. Adiktuzmiko

Chemical Engineer, Game Developer, Using BlinkBoy'
Veteran
Joined
May 15, 2012
Messages
14,682
Reaction score
3,003
First Language
Tagalog
Primarily Uses
RMVXA
That's clever. How do you keep the two events in sync? You'd need one parallel process to control them both, right? I'm using door-ish custom route animation instead of stepping (interestingly, stepping animation doesn't have this problem) because I like the look of the 4 frames better than 2.


Unless you're having framerate issues, doing something like this in a single parallel process event shouldn't have noticeable difference in the flow of the two sheets


Custom Move Route: Event 1 -> Face Direction


Custom Move Route: Event 2 -> Face Direction


Probably add a wait of some frame here


That is as long as you don't check the box that says wait for completion (for both of them). This way, your control event will tell Event 1 to change direction then directly go to Event 2 and tell it to change it direction too, almost in the same instant as Event 1, then wait some frame and repeat


Though if ur using parallel process, you shouldn't even need to chop up the event graphics into two because the single event should still work even outside of the screen since it's parallel, meaning you should be able to make the windmill rotate continuously as long as ur in that map. If it doesn't work with the single graphic + parallel, then maybe it's just the graphic changes that doesn't push thru since Face direction only changes direction but doesn't call sprite update I think (and since out of screen events don't get called their sprite update too during map update, even if internally the direction of your event has changed it doesn't show graphically). On that case, just do the 2 event method and it should work fine if you set it up correctly.


Can you show me the event setup that you right now? Are you controlling the windwill from the windmill event itself or from another event?
 
Last edited by a moderator:
Joined
May 18, 2016
Messages
11
Reaction score
13
First Language
English
Primarily Uses
RMMV
Can you show me the event setup that you right now? Are you controlling the windwill from the windmill event itself or from another event?


This is what I had

windmillEvent.png



and this is the parallel process method in a third event (with EV003 renamed to westWindmill)

parallelProcessWindmills.png



The parallel process way works, so I'll stick with that.


Thanks for your help.
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

"You can thank my later", "But you haven't done anything", "Well, that's why ..."
Are we allowed to post about non-RPG Maker games?
I should realize that error was produced by a outdated version of MZ so that's why it pop up like that
Ami
i can't wait to drink some ice after struggling with my illness in 9 days. 9 days is really bad for me,i can't focus with my shop and even can't do something with my project
How many hours have you got in mz so far?

Forum statistics

Threads
105,884
Messages
1,017,242
Members
137,609
Latest member
shododdydoddy
Top