How to end segment show immediately(!!)? #141
Replies: 3 comments
-
From the sound of it this is expected behavior. The thing with shows is that a "show" is really a series of events being fired at specified times, so once a show step happens and the step's events are fired off (e.g. changing a light, updating a segment display), those events are forgotten and the "show" is just waiting for its next step. For your segment display scenario, the solution should be to play your incoming show at a higher |
Beta Was this translation helpful? Give feedback.
-
Good idea, but doesn't work, from above example I changed to
In addition I saw that for mpf 0.80 the time: values need to be quoted, I did that as well. No change at all. Any other idea? In general, I am really sure that there is some issue in mpf for the segment displays, I have so many strange behaviors I am not able to explain (okay that doesn't have to mean anything...). But some of them are very obvious, e.g.
I am happy to help to test, to debug, to document, whatever I can contribute to make this better I am willing to do. |
Beta Was this translation helpful? Give feedback.
-
Use of replace with missionpinball/mpf#1820 and the need to overwrite the display with "" at the same time as the stop command is sent. (or rather in show_player right afterwards) |
Beta Was this translation helpful? Give feedback.
-
Hello,
mpf 0.80 with Cobra segment displays. I show the typical things on my segment display, score, ball, player.
For example on the
player_added
event I set the corresponding score display to 0Once the game ended I play some kind of animation on my display segment, like scrolling the text "GAME OVER" from left to right. That all works (more or less) fine. That animation (show) loops forever. Now of course the player presses the start button again to play the next game, with that the
player_added
event is triggered and the score field is set to 0. The show still runs and overwrites that 0 with some text. Thus I need to stop the show before.The first event which is fired when the user presses the start button is
request_to_start_game
, so with that I want to stop mygame_end_animation
:It does stop my animation, but not immediately it seems to finish the current step, so if I have a transistion_out animation that is fully played to the end (as it seems). I have set
events_when_stopped
:I do see that event
reset_segments
being fired, I listen to that event to set the initial values for the first player (e.g. player=1, score player 1=0, etc) The values flash up for the fraction of a second, then the animation continues until the current step is done. After that the display is all blank. So theevents_when_stopped
seems to be fired when the show gets the request to stop, but not when it has stopped. I either need the show to stop immediately, notransition_out
anymore or I need an event which is only fired once the show has really stopped.Anyone an idea how I can achieve this?
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions