Advanced Shake Screen suggestion

Started by , Tue 19/08/2003 12:33:28

Previous topic - Next topic

m0ds

CJ, I'm looking to see if we can get a more advanced version of the shake screen command.

As far as I'm aware, it is still a blocking function and there is no way of defining how long it lasts.

Therefore, I suggest a shake screen that we can set how much it shakes, how long it shakes for, and is not a blocking command.

For example;
ShakeScreen(1, 4);

Would shake the screen at shake setting 1 (so, a minor shake) for 4 x the current number of cycles. So, the default is 40 cycles to a second, 4 is 4 seconds.

ShakeScreen(1, 0);
Again, setting 1, but 0 would "Loop" it so it can continue on until

StopShakeScreen();
is called.

By not having it blocking, you can continue playing the game during an earthquake for example, or you can run a cut-scene with a shake through it, rather like in FoA.

Just an idea!

:)
m0ds

Scummbuddy

I believe I will need these functions too
- Oh great, I'm stuck in colonial times, tentacles are taking over the world, and now the toilets backing up.
- No, I mean it's really STUCK. Like adventure-game stuck.
-Hoagie from DOTT

m0ds

Tearaway Island needs them aswell.

:P
m0ds

Trapezoid

#3
Isn't ShakeScreenBackground non-blocking?

Edit: Why yes it is, in fact it does about everything you needed. RTFM, m0ds  ;D

m0ds

I never knew it existed :P And you can specify how long it lasts?

m0ds

Ishmael

Since when has it been there?? Me never knew... :P
I used to make games but then I took an IRC in the knee.

<Calin> Ishmael looks awesome all the time
\( Ö)/ ¬(Ö ) | Ja minähän en keskellä kirkasta päivää lähden minnekään juoksentelemaan ilman housuja.

Trapezoid

QuoteShakeScreenBackground (int delay, int amount, int length)

Shakes the screen to simulate, for example, an earthquake. The game is not paused while the screen shakes - it will continue in the background.
DELAY specifies the 'shakiness' of the shake - 2 is the lowest you can pass for this, and will create the most shaky screen.

AMOUNT specifies the ferociousness of the shake - ie. how much the screen moves by when it does shake. Here, 1 is a very tiny shake, up to about 30 for a ferocious shake.

LENGTH specifies how long the shake lasts for, in game loops. For example, 80 would be equivalent to 2 seconds at the default game speed.

You can abort any current background shake that is in progress by calling this command with the LENGTH parameter as zero.

Example:

ShakeScreenBackground (4, 10, 80);

will shake the screen a little for 2 seconds.

There ya go.

Pumaman

Well m0ds, looks like it's about time you upgraded from AGS 2.31  :P

m0ds

#8
I'm using 2.55 thank you very onion ring much!

:P

SSH

If you're using 2.55 then you should have read the manual, you n00b!  ;D

So, anyway, when is CJ going to add a Windows version of the editor?

D'oh!
12

TerranRich

On a similar note, I could use 800x600 resolution for my gaem!!11 Please implement it now, Punaman! :P
Status: Trying to come up with some ideas...

Pumaman

Look, I've got to implement OGG music support first!

Spyros

I think I found a bug in the latest version.
The make my game button didn't make me any game at all!!!!

Minimi

yes, and when I run AGS in XP it looks very weird. All buttons are blown up, and the taskbar is blue!?? :S Is that a virus or bug??? :P

Captain Mostly

wow! a shake screen command! I never knew there was one of these at all! Let alone a fancy one that I'm not going to use!

I wonder what event I should tie to a screen shake in vegetable patch extreem turbo...

Snake

#15
Spyros, you goof  ;)

Heh, I never knew the other one existed either...I guess the help file is getting too large for my lazy ass also :)

WHAT ABOUT SETPREVCURSOR();!!!@@@22?

:P
--Snake
Grim: "You're making me want to quit smoking... stop it!;)"
miguel: "I second Grim, stop this nonsense! I love my cigarettes!"

Ishmael

I have made SetPrevCursor(); command myself to my game... not hard...

int prevcurint;

function SetPrevCursor() {
 if (GetCursorMode()==0) {
   if (Character[GetPlayerCharacter()].activeinv > 0) {
     SetCursorMode(4);
   } else {
     SetCursorMode(3);
   }
 } else {
   prevcurint=GetCursorMode();
   prevcurint--;
   SetCursorMode(prevcurint);
 }
}

;D
I used to make games but then I took an IRC in the knee.

<Calin> Ishmael looks awesome all the time
\( Ö)/ ¬(Ö ) | Ja minähän en keskellä kirkasta päivää lähden minnekään juoksentelemaan ilman housuja.

Gilbert

#17
Pumaman, when will you implement the highly awaited hicolour support ?

;D

Hehe while this is funny, but to set a good example to N00bs, I think it's time to lock this thread. Ya know, if we "oldies" can continue posting such pointless things (I mean posting a lot, not just once or twice), why can't the others?

Moreover, this is the Technical Forum. ;)

SMF spam blocked by CleanTalk