Jump to content

prospeed


jpam
 Share

Recommended Posts

Hi Jpam,

I have a question about the sound's in the demo prospeed program.

which what program have you have record that sound? ("Special effect {Rotate}")

--

mijn engels is vet kut :S.. maja

effe als je het niet begrijpt. met welke programma heb je het opgenomen? ik vind het mooi klinken drm.

--

Peter

Link to comment
Share on other sites

  • Replies 511
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

BubbleBreaker v1.01 replaced by version v1.1 :)

http://members.chello.nl/~b.bergsma5/BubbleBreaker1_1.zip

- multiple bugfixes

- added lots of effects and nice pictures, most importantly to make all choices in nice effects on $hDC

- added showing of score and next score in GUI

- improved sound handling: all sounds that need to finish can now be broken off by the ESC key

Roses are FF0000, violets are 0000FF... All my base are belong to you.

Link to comment
Share on other sites

Created some nice png alphachannel txt effets

Updated the prospeed udf

And put a new prospeed.dll online (bug fixed memory leak fxtopng)

working on nice helpfile for udf in .chm fomat.

When you download the source files , you can simple change the pictures to get another effect in the text !

download source and exe files @ http://prospeed-jan.xprofan.com/

The exe files contains the pictures and last prospeed.dll

png_text_effect.exe

png_text_merge_effect.exe

source--png_text_effect.au3

source--png_text_merge_effect.au3

Kind Regards

jpam

Link to comment
Share on other sites

it's a game from Sadbunny

when you move the window a little bit out of the screen, all sprites disappears

normaly sprites have there own screenbuffer for refreshing,

i think Sadbunny's game has a bug :)

Link to comment
Share on other sites

The game's default resolution is 700x700. Moving the window around shouldn't have impact on the window's contents. At least it doesn't in my tests.

Scrolling shouldn't be possible at all. Or do you have a 800x600 (or lower) display by any chance? I haven't tested with that, that might be the only situation where scrolling is relevant?

If you meant something else by 'scrolling' then please elaborate so I can try and reproduce.

I do have big problems with ProSpeed-generated graphics in general when other windows are active and/or over the windows with the ProSpeed graphics. As far as my quite extensive experiments with these situations went, it's not my programming but a prospeed-related thingy. (Also, other prospeed apps I tested, most importantly my psclock from earlier in this thread, and also JPAM's major demo, suffer from the same problems.)

So I created a number of workarounds like taking a backup snapshot of the $hDC in every run of the main loop and then detecting when the bubblebreaker window is not the active window and more (and then wait-looping until it is active again and then replacing the backup picture). This might not always work because these are some very quick&dirty workarounds where window finding is concerned.

Roses are FF0000, violets are 0000FF... All my base are belong to you.

Link to comment
Share on other sites

I do have big problems with ProSpeed-generated graphics in general when other windows are active and/or over the windows with the ProSpeed graphics. As far as my quite extensive experiments with these situations went, it's not my programming but a prospeed-related thingy. (Also, other prospeed apps I tested, most importantly my psclock from earlier in this thread, and also JPAM's major demo, suffer from the same problems.)

There's nothing wrong with your psclock,

it is refreshing fine when you put a new window over it, or move it out of screen.

the bubblebreaker game lose all spritespictures when you move the window out of screen

i think your sprites have a wrong screenbuffer loaded.

For pictures and sprites you can use CreateBuffer() and Setbuffer() to create screenbuffers for WM_PAINT

or use Function Background() ,it creates automatic the nessery Buffers for sprites and background picture.

I am wondering where peter123 is getting the scrollbars from :)

Link to comment
Share on other sites

Thanks for thinking for me! :) And yes, I can reproduce (the off-screen part, not the scrollbars! :) ).

Anyway, happy as I would be to implement your suggestions, I am not sure what a screenbuffer is. Better said, I don't know what it can be used for and your UDF doesn't actually explain it, short from mentioning "screen buffer for WM_Paint to redraw the screen". What do I do to repaint? When and why do I need to repaint at all? What is WM_Paint? The PaintNew() doesn't seem to do anything but destroy all by bitmaps so I never used it in bubblebreaker, never had to it seemed...

I use background() as one of the first commands right after creating the GUI, then I constantly refer to it by using $hDC and copying ExtBmp's to it. I made psclock in about the same way except I used only sprites there, no extbmp or extfx or advanced stuff like that at all (so also no $hDC usage at all in psclock). The only sprites used in the psclock code are the two red numbers for the gridsize choice. But they are ugly since they cancel the blur effect so I'll be removing them again. (Your answer seems to say that my sprite usage is the problem, but the thing is I just am not using sprites... :party: What am I missing?)

About your prospeed.au3... It is quite confusing on many points since the comments conflict heavily with the functions. I mean function call syntax with different arguments in the example, and different spellings of the same words, little things like that but they add up. It is very useful, but it would be so much better if the information would be written in a default format and would support the syntax used in the code itself. But maybe since you're writing a help file you're already working on that?

Edited by SadBunny

Roses are FF0000, violets are 0000FF... All my base are belong to you.

Link to comment
Share on other sites

By the way, I can read through any documentation and try to fix your English if you want. I should be sufficiently adept. No insult intended!

Roses are FF0000, violets are 0000FF... All my base are belong to you.

Link to comment
Share on other sites

Anyway, happy as I would be to implement your suggestions, I am not sure what a screenbuffer is. Better said, I don't know what it can be used for and your UDF doesn't actually explain it, short from mentioning "screen buffer for WM_Paint to redraw the screen". What do I do to repaint? When and why do I need to repaint at all? What is WM_Paint? The PaintNew() doesn't seem to do anything but destroy all by bitmaps so I never used it in bubblebreaker, never had to it seemed...

screenbuffer is a copy from a bitmap or a snapshot of the current screen

prospeed udf catch the WM_PAINT message from windows with GUIRegisterMsg(0x000F, "PaintNew")

PaintNew() copy the screenbuffer back to the current window

thats why i created the Createbuffer() and Setbuffer()

Createbuffer(700,700) creates a new bitmap in memory, but is still empty

Setbuffer($new_background.jpg) copies a new image to the screen buffer

when you drag the game window out of screen and back , windows send the WM_PAINT message

the GUIRegisterMsg(0x000F, "PaintNew") function catch that message and calls the PaintNew() function

PaintNew() copy the screenbuffer back to your game window

So with Setbuffer() you decide what to copy back on screen if windows send the WM_PAINT message.

(Your answer seems to say that my sprite usage is the problem, but the thing is I just am not using sprites... :) What am I missing?)

If you don't use sprites then it's defently a WM_PAINT issue

you must copy every change on the screen to the screenbuffer

Set this at the begin of the game

CreateBuffer(700,700)

$screen = CreateExtBmp(700,700)

and use this in the mainloop

CopyExtBmp($screen, 0, 0, 700, 700, $hdc, 0, 0, 0) ; makes a snapshot of the game window

Setbuffer($screen) ; copy to the screenbuffer

About your prospeed.au3... It is quite confusing on many points since the comments conflict heavily with the functions. I mean function call syntax with different arguments in the example, and different spellings of the same words, little things like that but they add up. It is very useful, but it would be so much better if the information would be written in a default format and would support the syntax used in the code itself. But maybe since you're writing a help file you're already working on that?

Yes i know it's sometimes confusing, i am working on several projects and the prospeed.udf has no top priority

sometimes i change a function and forget to change the comments :)

the helpfile i make is in chm format, but it's going very slow !

and my english is not so good !

PM me i you want to help :party:

Kind Regards

jpam

Link to comment
Share on other sites

Thanks for this post! This clears things up bigtime! :)

I think I get it now, nicely explained. I think I got halfway already with experimenting, I already fill a user-defined ExtBmp in every main loop only I don't use it right. Now that I know what to repaint I can fix it, thank you!

Using ProSpeed.au3 gave me lots of fun, so I'd be glad to do something in return. I'll PM you about it.

Roses are FF0000, violets are 0000FF... All my base are belong to you.

Link to comment
Share on other sites

I've just started playing with the UDF. Both the UDF and DLL nice job guys. ... wow it's awesome. I was playing with the size func in the UDF and noticed the explanation does not match:

####################################################################################################

###############################

; Size

; syntax : Size($S_Destination, $N_WIDTH, $N_HEIGHT, $S_Source, $O_WIDTH, $O_HEIGHT)

; Note ; $S_Destination = $hdc (window) or bitmap in memmory created with function CreateExtBmp()

; if $S_Destination = 0 then the resized image data stays in memmory

; $N_WIDTH, $N_HEIGHT = new width and height for picture

; $O_WIDTH, $O_HEIGHT = old width and height from picture

; example; sizeQuick($hdc, 600, 400, $bitmap1, 800, 600)

;###################################################################################################

################################

Func Size($S_Destination, $S_X1=0, $S_Y1=0, $N_WIDTH=0, $N_HEIGHT=0, $S_Source=0, $S_X2=0, $S_Y2=0, $O_WIDTH=0, $O_HEIGHT=0, $S_Mode=0)

I just downloaded yesterday, so the version should be up to date. I assume the x1,y1 is offset in destination and the x2,y2 is offset in source... is that correct? Also what is the mode?

Again, awesome job.

-Stampy

Link to comment
Share on other sites

Thanks for pointing me to the wrong syntax of the Size() function

i have corrected the comment's about Size()

uploaded the new udf

correct one ;

;   Size
;   syntax : Size($S_Destination, $N_WIDTH, $N_HEIGHT, $S_Source, $O_WIDTH, $O_HEIGHT, $S_Mode)
;   Note ;  $S_Destination = $hdc (window) or bitmap in memory created with function CreateExtBmp()
;           if $S_Destination = 0 then the resized image data stays in memory
;           $S_X1 = X offset in destination
;           $S_Y1 = Y offset in destination
;           $N_WIDTH  = new width for picture
;           $N_HEIGHT = new height for picture
;           $S_Source = Source picture
;           $S_X2 = X offset in source picture
;           $S_Y2 = Y offset in source picture
;           $O_WIDTH  = old width of picture
;           $O_HEIGHT = old height of picture
;           $S_Mode = 
;           0 = normal copy 
;           1 = source and destination linked with AND 
;           2 = source and target linked with OR 
;           3 = source and destination linked with XOR
;           4 = Target invert (source is not taken into account) 
;           5 - 12 = further linking techniques 
;           13 = black (default) Delete 
;           14 = white (default) Delete                  
;   example; size($hdc, 600, 400, $bitmap1, 800, 600, 0)
;            resize a picture with 800x600 to 600x400 and copy to hDC window with copy mode 0
Link to comment
Share on other sites

  • 2 weeks later...

Everytime there are people who use my webpage with download content in a very wrong way !

like putting avertisements in the guestbook, using automatic file downloaders to download a couple of hundred times

the same file to produce unneccessary serverload or with the intention to crash the webpage.

i have had it with this kind of people and that is why i have dicided to remove all files

and to close my webpage.

jpam

Link to comment
Share on other sites

Everytime there are people who use my webpage with download content in a very wrong way !

like putting avertisements in the guestbook, using automatic file downloaders to download a couple of hundred times

the same file to produce unneccessary serverload or with the intention to crash the webpage.

i have had it with this kind of people and that is why i have dicided to remove all files

and to close my webpage.

jpam

I'm very sorry to hear that.

Hope you can host the prospeed files somewhere else since you have made a great job with it :D

Edited by monoceres

Broken link? PM me and I'll send you the file!

Link to comment
Share on other sites

  • 2 weeks later...

Hi,

nice work you do here jpam, keep going, there will always be black sheeps.

To my question:

How can i color Lines made with the Curve function?

didnt find anything in the source comments.

Looked in the german pdf from Frank Abbing and found this (translated):

The color of the Curve is adjusted with the normal graphics commands.

What does that mean?

Cant there be just additional parameters for color and (that would be awesome) for line width of the Curve?

If its possible, could you provide a small sample, as you did here

I also want to animate those curves. Well basically i want circles in different colors and different line widths, and want to change the radius on the fly.

Please dont force me to mix up GDI Plus with prospeed, that already gave me horrible headaces in the past :D

For the future it would be useful to add "line" and "circle" UDF's, of course only if anyone with the knowledge is willing to do it.

Edited by qsek
Teamspeak 3 User Viewer - Quick and functional TS3 Query script, which shows online users.Cached Screenshot Deleter - Deletes older Fraps Screenshots if they exceed a specified limit.Unresolved Topics:Intercept and modify dragdrop text behaviour in scite
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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...