added man walking in rain
This commit is contained in:
parent
ebe8918dbe
commit
f0243bfccb
62
ManWalkinInRain.cpp
Normal file
62
ManWalkinInRain.cpp
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
#include<stdio.h>
|
||||||
|
#include<conio.h>
|
||||||
|
#include<graphics.h>
|
||||||
|
#include<stdlib.h>
|
||||||
|
#include<dos.h>
|
||||||
|
|
||||||
|
#define ScreenWdith getmaxx()
|
||||||
|
#define ScreenHeight getmaxy()
|
||||||
|
#define GroundY ScreenHeight*0.75
|
||||||
|
|
||||||
|
int ldisp=0;
|
||||||
|
|
||||||
|
void DrawManAndUmbrella(int x,int ldisp)
|
||||||
|
{
|
||||||
|
circle(x,GroundY-90,10);
|
||||||
|
line(x,GroundY-80,x,GroundY-30);
|
||||||
|
|
||||||
|
line(x,GroundY-70,x+10,GroundY-60);
|
||||||
|
line(x,GroundY-65,x+10,GroundY-55);
|
||||||
|
line(x+10,GroundY-60,x+20,GroundY-70);
|
||||||
|
line(x+10,GroundY-55,x+20,GroundY-70);
|
||||||
|
|
||||||
|
line(x,GroundY-30,x+ldisp,GroundY);
|
||||||
|
line(x,GroundY-30,x-ldisp,GroundY);
|
||||||
|
|
||||||
|
pieslice(x+20,GroundY-120,0,180,40);
|
||||||
|
line(x+20,GroundY-120,x+20,GroundY-70);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void Rain(int x)
|
||||||
|
{
|
||||||
|
int i,rx,ry;
|
||||||
|
for(int i=0;i<400;i++)
|
||||||
|
{
|
||||||
|
rx = rand() % ScreenWdith;
|
||||||
|
ry = rand() % ScreenHeight;
|
||||||
|
|
||||||
|
if(ry<GroundY-4)
|
||||||
|
{
|
||||||
|
if(ry < GroundY-120 || (ry > GroundY-120 && (rx < x-20 || rx > x+60)))
|
||||||
|
line(rx,ry,rx+0.5,ry+4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(){
|
||||||
|
int gd=DETECT, gm;
|
||||||
|
int x=0;
|
||||||
|
initgraph(&gd, &gm,NULL);
|
||||||
|
while(!kbhit())
|
||||||
|
{
|
||||||
|
line(0,GroundY,ScreenWdith,GroundY);
|
||||||
|
Rain(x);
|
||||||
|
ldisp = (ldisp+2)%20;
|
||||||
|
DrawManAndUmbrella(x,ldisp);
|
||||||
|
delay(25);
|
||||||
|
cleardevice();
|
||||||
|
x=(x+2)%ScreenWdith;
|
||||||
|
}
|
||||||
|
getch();
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user