diff options
author | uruk | 2013-06-17 10:38:38 +0200 |
---|---|---|
committer | uruk | 2013-06-17 10:38:38 +0200 |
commit | a2adda516bdf790651283201a666f253a8bfcc49 (patch) | |
tree | bdc6479a6889d15d1b25e47e28f0c86f093a9610 /engines/avalanche/overlap.cpp | |
parent | 2f0e43bb2e402bbcf65175934d21ade6febaad60 (diff) | |
download | scummvm-rg350-a2adda516bdf790651283201a666f253a8bfcc49.tar.gz scummvm-rg350-a2adda516bdf790651283201a666f253a8bfcc49.tar.bz2 scummvm-rg350-a2adda516bdf790651283201a666f253a8bfcc49.zip |
AVALANCHE: Initial PtoC output.
Diffstat (limited to 'engines/avalanche/overlap.cpp')
-rw-r--r-- | engines/avalanche/overlap.cpp | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/engines/avalanche/overlap.cpp b/engines/avalanche/overlap.cpp new file mode 100644 index 0000000000..973bafb79f --- /dev/null +++ b/engines/avalanche/overlap.cpp @@ -0,0 +1,53 @@ +#include "ptoc.h" + + +#include "graph.h" +/*#include "Crt.h"*/ + +integer gd,gm; + +void flash(integer x1,integer y1,integer x2,integer y2) +{; + setcolor(14); rectangle(x1,y1,x2,y2); + sound(x1+x2); delay(100); nosound; delay(500); + setcolor( 9); rectangle(x1,y1,x2,y2); delay(500); +} + +boolean dropin(integer xc,integer yc,integer x1,integer y1,integer x2,integer y2) +/* Dropin returns True if the point xc,yc falls within the 1-2 rectangle. */ +{boolean dropin_result; +; + dropin_result=((xc>=x1) && (xc<=x2) && (yc>=y1) && (yc<=y2)); +return dropin_result; +} + +void test(integer x1,integer y1,integer x2,integer y2,integer x3,integer y3,integer x4,integer y4) +{; + cleardevice(); + rectangle(x1,y1,x2,y2); + rectangle(x3,y3,x4,y4); + flash(x1,y1,x2,y2); + flash(x3,y3,x4,y4); + + if (dropin(x3,y3,x1,y1,x2,y2) + || dropin(x3,y4,x1,y1,x2,y2) + || dropin(x4,y3,x1,y1,x2,y2) + || dropin(x4,y4,x1,y1,x2,y2)) + {; /* Overlaps */ + flash(x1,y1,x4,y4); + } else + {; /* Doesn't overlap- flash 'em both again */ + flash(x3,y3,x4,y4); /* backwards- why not...? */ + flash(x1,y1,x2,y2); + } +} + +int main(int argc, const char* argv[]) +{pio_initialize(argc, argv); +; + gd=3; gm=1; initgraph(gd,gm,""); setcolor(9); + test(100,50,200,100,400,200,600,250); + test(100,50,200,100,120, 70,220,120); + test(100,50,200,100,150, 50,250,100); +return EXIT_SUCCESS; +}
\ No newline at end of file |