Jump to content

FPLaunch MOD: Pause and Loading screens...


samwyze

Recommended Posts

no, there is no way to disable flyer key

there is no way to disable any key, you must have all keys in config file, if you delete them defaults will be added on next run

but you can change flyer key

any way - pressing flyer key CAN'T get you out of the game, flyer key invokes flyer, it does not exit from the game

in other words - you have something else going on there

Link to comment
Share on other sites

I can't wait to upgrade to the new version - might have to wait for xmas break though - all the flyer/instruction stuff looks great and PinMemHi support looks superb. My kids always say why can't they see the high scores in VP like they can in FP, but with this they can!!!! Thanks so much to everyone Blur, DNA, etc. for your massive efforts.

:beerglass:

Link to comment
Share on other sites

hi scores are still in development - i have a code (from dna i think) that draws hiscore text on screen in any font you choose - but it doesn't rotate it - so i can't put it on playfield (same place as fp scores), but as soon as we find a way to rotate it - it goes to new fplaunch

Link to comment
Share on other sites

this is window with border and all (though text is rotated)

i was thinking more like this (try it):

Gui, Destroy

Gui, Color, EEAA99

Gui, Margin, 0, 0

contents =

(

GRAND CHAMPION

KEF 75.000.000

HIGHEST SCORES

#1 G G 60.000.000

#2 C G 50.000.000

#3 XAQ 45.000.000

#4 M G 40.000.000

DESTROY RING CHAMPION

EYE - 10:00.00

)

Gui, Font, s25, Quartz

Gui, Add, Text, gExit C15DD15 Center, %contents%

Gui +AlwaysOnTop -Caption +Lastfound

WinSet, TransColor, EEAA99

Gui, Show, AutoSize Center, pauseScreen

Return

Exit:

ExitApp

only i don't know where to put rotation?

Link to comment
Share on other sites

Thanx for trying to help me blur, but i think this is too advanced for me.

I just want to exit a game and it go back to hyperpin menu, that is all i want to do.

I tried changing the ipac to an E instead of esc, but it still fails for me. I need you to fly over to my house and do it for me :) It shows the change, but doesn't work in HP, so i don't know what else to do.

Thanx anyways!

ps. My VP configuration is set to E for exiting!

pss... it seems perhaps my greatest problem is remapping the button i use on my cab to exit. When i am in the ipac config, no matter what i do, it always makes this button "esc" although i tried to map it to E .....this is why when i am in hyperpin it wont work. I don't remember having maping issues like this before, it has been a while since i set this cab up...

no no no

you said you went to service mode (i guess service menu - edit table) and then closed vp - i see that you did that from log - so i did not understand you wrong

that is no no - after editing you must get back with play

and now for another problem - vp exit menu - you can't get vp exit menu in any way except by pressing esc key - you can't even configure vp to use some other key

and i never send esc key - so you are using esc key

and settings will be used for ever - i see no reason to change it, you'll always need to set some things - i could use hyperpin sections - but then i can't know what people are using - keyboard part or gamepad part (pinball wizard) - so instead of guessing - i use my own section

Edited by maceman
Link to comment
Share on other sites

this is window with border and all (though text is rotated)

i was thinking more like this (try it):

Gui, Destroy

Gui, Color, EEAA99

Gui, Margin, 0, 0

contents =

(

GRAND CHAMPION

KEF 75.000.000

HIGHEST SCORES

#1 G G 60.000.000

#2 C G 50.000.000

#3 XAQ 45.000.000

#4 M G 40.000.000

DESTROY RING CHAMPION

EYE - 10:00.00

)

Gui, Font, s25, Quartz

Gui, Add, Text, gExit C15DD15 Center, %contents%

Gui +AlwaysOnTop -Caption +Lastfound

WinSet, TransColor, EEAA99

Gui, Show, AutoSize Center, pauseScreen

Return

Exit:

ExitApp

only i don't know where to put rotation?

It looks really nice like that- i spent over an hour searching around on how to rotate but couldn't find anything. Is there away of taking a font and creating a rotated version of it. Ie: a new font? Maybe there is a simpler method?

Link to comment
Share on other sites

yeah, me to

it's not easy to rotate text

bleasby from madrid did something with tab2 type of gui, i saw that example on ahk forum also - but don't know how to use it without borders, and don't even know what happens in that example - will have to analyze it

don't know if you can have more lines of text that way

i will probably go with drawing text to some bitmap with gdiplus and then rotating it and displaying on screen

Link to comment
Share on other sites

yeah, me to

it's not easy to rotate text

bleasby from madrid did something with tab2 type of gui, i saw that example on ahk forum also - but don't know how to use it without borders, and don't even know what happens in that example - will have to analyze it

don't know if you can have more lines of text that way

i will probably go with drawing text to some bitmap with gdiplus and then rotating it and displaying on screen

Nice idea with the bitmap. What i suggested earlier about a rotated font would be a pain to implement because letters would need to be displayed in a different order - i didn't think it through properly.

Link to comment
Share on other sites

I am able to put the text in vertical without any windows borders using the tab2 and some winset properties.

The problem is that by using the tab trick I am unable to write more than one line at each time (as the text is written as a tab title, and not as a normal text).

So if we keep in this path, I would need to make a group of GUIs, one for each line to write the entire hiscore text. That is not a very elegant solution and maybe represents too much lines of script.

Right now I am without time to see if I am able to develop any alternative because i have to make a trip in the next 3 days.

If nobody reaches a solution until the next week, i Will try to develop something.

Link to comment
Share on other sites

come on testers, does this work for every body that noticed this bug?

Hey blur, I can confirm that commenting out all references to WinHide, ahk_class VPinball fixed my issues with Visual Pinball not exiting sometimes. I don't have FP setup yet so I haven't tested it there, but VP is no working properly for me.

Thanks for building this and thanks for continuing to evolve it!

Link to comment
Share on other sites

Actually, its a failure to exit.

I hope I didn't miss this solution somewhere in all these pages, but I updated my launcher to the latest 1.295WIP8, I think it is, and now when I'm in a table, and I long press my exit button, which is Pinball wizard button 8, it appears to exit, gives me the Hyperpin screen again, but it hasn't really exited cleanly. flippers will not rotate through tables. However, if I hit P, and use the keyboard to scroll down and select EXIT, Hyperpin will once again function, and flippers scroll through the tables as normal.

I'm using a Nanotech digital plunger, and accelerometer board, ie..Pinball Wizard hardware.

I thought it was annoying before..lol..it seemed to be hanging up on exit only on the B2S tables...now it seems to be all tables..??

I love the new look of the menus and such, though..the ball rolling back and forth in the progress bar...nice! :)

Peace,

Lynny

Link to comment
Share on other sites

I did a first version of what could be the HiScore script with the rotated text.

To run the example, just put the ahk in the same folder of the GDIP.ahk, or adjust the path in the #include.

#include gdip.ahk
#SingleInstance Force
pToken := Gdip_Startup()

Gui, Destroy

contents =
(
GRAND CHAMPION
KEF 75.000.000

HIGHEST SCORES
#1 G G 60.000.000
#2 C G 50.000.000
#3 XAQ 45.000.000
#4 M G 40.000.000

DESTROY RING CHAMPION
EYE - 10:00.00
)

;vertical distance of Hiscore window
HiScoreTopDistance := 100

;Gui 1 - hidden horizontal Gui
Gui, 1: Color, 0b40e4
Gui, 1: Font, s15, Quartz
Gui, 1: Add, Text, Cffffff Center, %contents%
Gui, 1: +AlwaysOnTop -Caption +Lastfound
hwnd := WinExist()
Gui, 1: Show, NA
WinGetPos,scorex,scorey, scorew, scoreh, ahk_id %hwnd%
pBitmap := Gdip_BitmapFromScreen("hwnd:" hwnd)
Gui, 1: Show, Hide

;Gui 2 - hiscore background image
imageW := scoreh+20, imageH := scorew+40
Gui, 2: -Caption +E0x80000 +LastFound +OwnDialogs +Owner +AlwaysOnTop
Gui, 2: Show, NA
hwnd1 := WinExist()
hbm := CreateDIBSection(imageW, imageH)
hdc := CreateCompatibleDC()
obm := SelectObject(hdc, hbm)
G := Gdip_GraphicsFromHDC(hdc)
Gdip_SetSmoothingMode(G, 4)
pBrush1 := Gdip_BrushCreateSolid(0xff0ffffff)
pBrush2 := Gdip_BrushCreateSolid(0xff00C32A5)
pBrush3 := Gdip_BrushCreateSolid(0xff0b40e4)
Gdip_FillRoundedRectangle(G, pBrush1, 0, 0, imageW, imageH, 20)
Gdip_FillRoundedRectangle(G, pBrush2, 5, 5, imageW-10, imageH-10, 15)
Gdip_FillRoundedRectangle(G, pBrush3, 10, 10, imageW-20, imageH-20, 10)
Gdip_DeleteBrush(pBrush1)
Gdip_DeleteBrush(pBrush2)
Gdip_DeleteBrush(pBrush3)
UpdateLayeredWindow(hwnd1, hdc, HiScoreTopDistance, (A_ScreenHeight-imageH)//2, imageW, imageH)
SelectObject(hdc, obm)
DeleteObject(hbm)
DeleteDC(hdc)
Gdip_DeleteGraphics(G)

;Gui 3 - rotated vertical Gui
Gui, 3: -Caption +E0x80000 +LastFound +OwnDialogs +Owner +AlwaysOnTop
Gui, 3: Show, NA
hwnd2 := WinExist()
bitmapW := scoreh, bitmapH := scoreW
hbm := CreateDIBSection(bitmapW, bitmapH)
hdc := CreateCompatibleDC()
obm := SelectObject(hdc, hbm)
G := Gdip_GraphicsFromHDC(hdc)
UpdateLayeredWindow(hwnd2, hdc, HiScoreTopDistance+10, (A_ScreenHeight-bitmapH)//2, bitmapW, bitmapH)
Gdip_ImageRotateFlip(pBitmap, 3)
Gdip_DrawImage(G, pBitmap)
UpdateLayeredWindow(hwnd2, hdc)
Gdip_DisposeImage(pBitmap)
SelectObject(hdc, obm)
DeleteObject(hbm)
DeleteDC(hdc)
Gdip_DeleteGraphics(G)

return

I used GDI+ rectangles to construct the appearance. This could be a faster way to construct the hiscore window. I really do not know. If you want i can adjust the code to use a pre made png file. Blur, you decide. The only thing more important is that by using the GDI+ rectangles, I made the HiScore windows resizable depending of the hiscore contents lines (as different pinball tables have a different number of hiscore categories).

I hope that this is what you had in mind. I do not have the future pinball in my computer, so I do not know how it is the hiscore visualization under it, so I tried to keep the same appearance of the pause menu in a HiScore menu to be put above it.

My first idea was also to use the transparency in the rotated text to put it directly above the table image when in pause menu. But I am having problems with setting the transparency in the rotated bitmap created. If I, or someone else, solve this, we could do any kind of presentation for the hiscores.

It is also possible to do many animations or use GDI+ advanced text with the score in the way that I present here. However i decided to keep it simple in order to avoid using too much resources. Any animation requires a loop in rotated bitmaps that could use something of the computer resources. If any of you have in mind something specific, just tell me and I can try to implement in the HiScore menu.

Please give me your opinions.

PS: It is a not revised code, so it is possible, and very probable, to have some unnecessary lines in the middle of the code.

Link to comment
Share on other sites

Actually, its a failure to exit.

I hope I didn't miss this solution somewhere in all these pages, but I updated my launcher to the latest 1.295WIP8, I think it is, and now when I'm in a table, and I long press my exit button, which is Pinball wizard button 8, it appears to exit, gives me the Hyperpin screen again, but it hasn't really exited cleanly. flippers will not rotate through tables. However, if I hit P, and use the keyboard to scroll down and select EXIT, Hyperpin will once again function, and flippers scroll through the tables as normal.

I'm using a Nanotech digital plunger, and accelerometer board, ie..Pinball Wizard hardware.

I thought it was annoying before..lol..it seemed to be hanging up on exit only on the B2S tables...now it seems to be all tables..??

I love the new look of the menus and such, though..the ball rolling back and forth in the progress bar...nice! :)

Peace,

Lynny

That "exit bug" is fixed few weeks ago - only thing is you have to change the code a little as described in recent posts and recompile (with basic version).

Edited by blur
Link to comment
Share on other sites

I did a first version of what could be the HiScore script with the rotated text.

To run the example, just put the ahk in the same folder of the GDIP.ahk, or adjust the path in the #include.

I used GDI+ rectangles to construct the appearance. This could be a faster way to construct the hiscore window. I really do not know. If you want i can adjust the code to use a pre made png file. Blur, you decide. The only thing more important is that by using the GDI+ rectangles, I made the HiScore windows resizable depending of the hiscore contents lines (as different pinball tables have a different number of hiscore categories).

I hope that this is what you had in mind. I do not have the future pinball in my computer, so I do not know how it is the hiscore visualization under it, so I tried to keep the same appearance of the pause menu in a HiScore menu to be put above it.

My first idea was also to use the transparency in the rotated text to put it directly above the table image when in pause menu. But I am having problems with setting the transparency in the rotated bitmap created. If I, or someone else, solve this, we could do any kind of presentation for the hiscores.

It is also possible to do many animations or use GDI+ advanced text with the score in the way that I present here. However i decided to keep it simple in order to avoid using too much resources. Any animation requires a loop in rotated bitmaps that could use something of the computer resources. If any of you have in mind something specific, just tell me and I can try to implement in the HiScore menu.

Please give me your opinions.

PS: It is a not revised code, so it is possible, and very probable, to have some unnecessary lines in the middle of the code.

thank you very much bleasby, this code is great!!!, it could be even used for dynamically drawing all menus on the screen!

my idea was also to just put transparent text over the table (that's how FP does it)

so no images in the back

too bad that gdi+ makes problems with transparency on rotated images

but i'm sure we will find some solution for that :beer:

Link to comment
Share on other sites

oh by the way - I tested a little with ahk_L 32bit, non unicode compiler

and it makes few problems

first one - very often on exit i get some invisible window emwin or dllwin or something like that and i have to close it with alt-f4 to continue

second one - drawing instruction cards over the visible end of the screen doesn't work, reports some error in attributes - but this could be done different in ahk_L - if I could be sure that first problem is solved - then I can change the code to support only ahk_L, but can't do that if I still often have inexplicable bugs

so did any body tried to compile fplaunch with ahk_L and what are your results? too many bugs or it works great?

Link to comment
Share on other sites

:beer:

:beer:

my idea was also to just put transparent text over the table (that's how FP does it)

so no images in the back

too bad that gdi+ makes problems with transparency on rotated images

The transparency problem happens because bitmaps do not support natively transparency information. If I am able to use a png, this would be solved. However I do not know if I would have to rewrite the Gdip_BitmapFromScreen or if there is a easier way of doing it.

Rewriting the Gdip_BitmapFromScreen is a little of my league. :-) We have to ask somebody from the autohotkey forum if it is possible to put the transparency on the rotated bitmap by some other way.

it could be even used for dynamically drawing all menus on the screen!

My idea with the rectangles was exactly to draw dynamicaly the menus, so we could put animations at buttom presses, and etc. If you need help with that, it is just ask. Whenever I have a free time, I love to play with some scripts.

so did any body tried to compile fplaunch with ahk_L and what are your results? too many bugs or it works great?

Sorry, but I never tried ahk_L.

Edited by bleasby
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...