-
Notifications
You must be signed in to change notification settings - Fork 0
/
RAIN.C
142 lines (137 loc) · 2.48 KB
/
RAIN.C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
#include<graphics.h>
#include<stdlib.h>
#include<time.h>
main()
{
int mode1=HERCMONO,mode2=HERCMONOHI,i,j,k,
sky1[5],sky2[10],x[11][5],treex[5][4],treey[5],
sky1x[5]={-60,150,360,570,780},
sky2x[10]={-185,-75,35,145,255,365,475,585,695,805};
randomize();
clrscr();
initgraph(&mode1,&mode2,"c:\\tc");
if(graphresult()!=grOk)
{
printf("\7\7%s",grapherrormsg(graphresult()));
exit(1);
}
for(i=0;i<5;i++)
{
for(j=0;j<11;j++)
{
x[j][i]=-100;
}
for(j=0;j<4;j++)
{
treex[i][j]=-1;
}
}
setfillstyle(EMPTY_FILL,0);
for(i=0;!kbhit();i=!i)
{
setactivepage(i);
setfillstyle(0,0);
bar(0,0,getmaxx(),getmaxy());
for(j=0;j<5;j++)
{
x[10][j]=x[9][j];
}
for(j=9;j>0;j--)
{
for(k=0;k<5;k++)
{
x[j][k]=x[j-1][k]-12;
}
}
for(j=0;j<5;j++)
{
x[0][j]=random(1000);
}
for(j=0;j<4;j++)
{
sky1[j]=sky1[j+1];
}
sky1[4]=random(4);
for(j=0;j<9;j++)
{
sky2[j]=sky2[j+1];
}
sky2[9]=random(3);
for(j=0;j<10;j++)
{
for(k=0;k<2;k++)
{
line(x[j][k],30*j,x[j][k]-20,30*j+50);
}
for(k=2;k<5;k++)
{
line(x[j][k],30*j+20,x[j][k]-20,30*j+70);
}
}
for(j=0;j<2;j++)
{
ellipse(x[9][j]-20,320,0,360,20,5);
ellipse(x[10][j]-20,320,0,360,40,10);
}
for(j=2;j<5;j++)
{
ellipse(x[9][j]-20,340,0,360,20,5);
ellipse(x[10][j]-20,340,0,360,40,10);
}
line(0,305,720,305);
setfillstyle(10,0);
for(j=0;j<10;j++)
{
if(sky2[j])
{
sector(sky2x[j],-5,180,360,100,40);
}
}
nosound();
if(x[0][0]+x[0][1]+x[0][2]+x[0][3]+x[0][4]<2200 &&
x[0][0]+x[0][1]+x[0][2]+x[0][3]+x[0][4]>1400 )
{
treey[4]=random(4);
treey[1]=treey[2]=treey[3]=0;
treey[4]=random(4);
if(treey[4])
{
treey[3]=random(treey[4]);
if(treey[3])
{
treey[2]=random(treey[3]);
if(treey[2])
{
treey[1]=random(treey[2]);
}
}
}
treex[4][0]=random(1020);
treex[3][0]=treex[4][0]-100+random(200);
treex[2][0]=treex[3][0]-100+random(200);
treex[1][0]=treex[2][0]-50+random(100);
treex[0][0]=treex[1][0]-50+random(100);
for(j=1;j<treey[4];j++)
{
treex[4][j]=random(100);
}
line(treex[4][0],320,treex[3][0],240);
line(treex[3][0],240,treex[2][0],160);
setlinestyle(0,0,3);
line(treex[2][0],160,treex[1][0],80);
line(treex[1][0],80,treex[0][0],0);
setlinestyle(0,0,0);
sound(19);
}
for(j=0;j<5;j++)
{
if(!sky1[j])
{
sector(sky1x[j],-1,180,360,150,20);
}
}
setvisualpage(i);
}
nosound();
closegraph();
}