コード例 #1
0
ファイル: input.c プロジェクト: Kinniken/naev
/**
 * @brief Performs an appropriate action when a jump point is clicked.
 *
 *    @param jp Index of the jump point.
 *    @param autonav Whether to autonav to the target.
 *    @return Whether the click was used.
 */
int input_clickedJump( int jump, int autonav )
{
   JumpPoint *jp;
   jp = &cur_system->jumps[ jump ];

   if (!jp_isUsable(jp))
      return 0;

   /* Update map path. */
   if (player.p->nav_hyperspace != jump)
      map_select( jp->target, 0 );

   if (autonav) {
      player_targetHyperspaceSet( jump );
      player_autonavStart();
      return 1;
   }

   if (jump == player.p->nav_hyperspace && input_isDoubleClick( (void*)jp )) {
      if (space_canHyperspace(player.p))
         player_jump();
   }
   else
      player_targetHyperspaceSet( jump );

   input_clicked( (void*)jp );
   return 1;
}
コード例 #2
0
ファイル: hooks.c プロジェクト: r-maury/Wolf3D
int		key_hook(int keycode, t_mlx *mlx)
{
	if (keycode == 53)
	{
		if (mlx->init == 1)
			free(mlx->map);
		mlx_destroy_image(mlx->mlx, mlx->img);
		mlx_destroy_window(mlx->mlx, mlx->win);
		free(mlx);
		exit(0);
	}
	if (keycode >= 83 && keycode <= 86)
	{
		switch_map(mlx, keycode);
		if (mlx->init == 0 || (mlx->init == -1 && keycode == 83))
		{
			mlx->map = map_select(mlx);
			draw_map(mlx);
		}
	}
	if (mlx->init == 1)
		move(mlx, keycode);
	if (keycode == 17)
		respawn(mlx);
	return (0);
}
コード例 #3
0
ファイル: map.c プロジェクト: pegue/naev
/**
 * @brief Map custom widget mouse handling.
 *
 *    @param wid Window sending events.
 *    @param event Event window is sending.
 *    @param mx Mouse X position.
 *    @param my Mouse Y position.
 *    @param w Width of the widget.
 *    @param h Height of the widget.
 */
static void map_mouse( unsigned int wid, SDL_Event* event, double mx, double my,
      double w, double h )
{
   (void) wid;
   int i;
   double x,y, t;
   StarSystem *sys;

   t = 15.*15.; /* threshold */

   mx -= w/2 - map_xpos;
   my -= h/2 - map_ypos;

   switch (event->type) {
      
      case SDL_MOUSEBUTTONDOWN:
         /* zooming */
         if (event->button.button == SDL_BUTTON_WHEELUP)
            map_buttonZoom( 0, "btnZoomIn" );
         else if (event->button.button == SDL_BUTTON_WHEELDOWN)
            map_buttonZoom( 0, "btnZoomOut" );

         /* selecting star system */
         else {
            for (i=0; i<systems_nstack; i++) {
               sys = system_getIndex( i );

               /* must be reachable */
               if (!space_sysReachable(sys))
                  continue;

               /* get position */
               x = sys->pos.x * map_zoom;
               y = sys->pos.y * map_zoom;

               if ((pow2(mx-x)+pow2(my-y)) < t) {

                  map_select( sys );
                  break;
               }
            }
            map_drag = 1;
         }
         break;

      case SDL_MOUSEBUTTONUP:
         if (map_drag) map_drag = 0;
         break;

      case SDL_MOUSEMOTION:
         if (map_drag) {
            /* axis is inverted */
            map_xpos -= event->motion.xrel;
            map_ypos += event->motion.yrel;
         }
         break;
   }
}
コード例 #4
0
ファイル: map_select.c プロジェクト: Yukariko/is_proj_15
int main()
{
	map_type();
	map_select();
	return 0;
}
コード例 #5
0
ファイル: test_6.c プロジェクト: Yukariko/is_proj_15
void game_start() //게임 실행
{
	system("cls");					//게임 시작전 화면 초기화 

	char c;

	init();

	print_map(map_select());  //현준이 메뉴이동을 리턴값으로 수정 요망  

	while(1) //개임 시작중  
	{
		if (kbhit()) 
		{   //키 받기 
			//gotoxy(get_x(p1.x),get_y(p1.y));
			//printf("%s",get_shape(GROUND));

			c=getch();
			if(c==P1_UP) 
			{
				if(map[p1.y-1][p1.x]==GROUND || map[p1.y-1][p1.x]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
					gaming_print_map(p1.y,p1.x);
					p1.origin=map[p1.y-1][p1.x];
					--p1.y;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}


			}
			else if(c==P1_DOWN)
			{
				if(map[p1.y+1][p1.x]==GROUND ||   map[p1.y+1][p1.x]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
					gaming_print_map(p1.y,p1.x);
					p1.origin=map[p1.y+1][p1.x];
					++p1.y;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}

			}
			else if(c==P1_RIGHT)
			{

				if(map[p1.y][p1.x+1]==GROUND ||  map[p1.y][p1.x+1]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
					gaming_print_map(p1.y,p1.x);
					p1.origin=map[p1.y][p1.x+1];
					++p1.x;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}

			}
			else if(c==P1_LEFT)
			{
				if( map[p1.y][p1.x-1]==GROUND ||  map[p1.y][p1.x-1]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
					gaming_print_map(p1.y,p1.x);
					p1.origin=map[p1.y][p1.x-1];
					--p1.x;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}

			}
			else if(c==P2_UP)
			{
				if(map[p2.y-1][p2.x]==GROUND || map[p2.y-1][p2.x]==GRASS)
				{
					map[p2.y][p2.x]=p2.origin;
					gaming_print_map(p2.y,p2.x);
					p2.origin=map[p2.y-1][p2.x];
					--p2.y;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}


			}
			else if(c==P2_DOWN)
			{
				if(map[p2.y+1][p2.x]==GROUND ||   map[p2.y+1][p2.x]==GRASS)
				{
					map[p2.y][p2.x]=p2.origin;
					gaming_print_map(p2.y,p2.x);
					p2.origin=map[p2.y+1][p2.x];
					++p2.y;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}

			}
			else if(c==P2_RIGHT)
			{

				if(map[p2.y][p2.x+1]==GROUND ||  map[p2.y][p2.x+1]==GRASS)
				{
					map[p2.y][p2.x]=p2.origin;
					gaming_print_map(p2.y,p2.x);
					p2.origin=map[p2.y][p2.x+1];
					++p2.x;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}

			}
			else if(c==P2_LEFT)
			{
				if( map[p2.y][p2.x-1]==GROUND ||  map[p2.y][p2.x-1]==GRASS)
				{
					map[p2.y][p2.x]=p2.origin;
					gaming_print_map(p2.y,p2.x);
					p2.origin=map[p2.y][p2.x-1];
					--p2.x;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}
			}
			else if(c==BULLET_P1_UP)
			{
				bp1.count = 0;
				bp1.vector=BULLET_P1_UP;
				bp1.on=1;
				bp1.x = p1.x;
				bp1.y = p1.y-1;
			}
			else if(c==BULLET_P1_DOWN)
			{
				bp1.count = 0;
				bp1.vector=BULLET_P1_DOWN;
				bp1.on=1;
				bp1.x = p1.x;
				bp1.y = p1.y+1;
			}
			else if(c==BULLET_P1_LEFT)
			{
				bp1.count = 0;
				bp1.vector=BULLET_P1_LEFT;
				bp1.on=1;
				bp1.x = p1.x-1;
				bp1.y = p1.y;
			}
			else if(c==BULLET_P1_RIGHT)
			{
				bp1.count = 0;
				bp1.vector=BULLET_P1_RIGHT;
				bp1.on=1;
				bp1.x = p1.x+1;
				bp1.y = p1.y;
			}
			else if(c==BULLET_P2_UP)
			{
				bp2.count = 0;
				bp2.vector=BULLET_P2_UP;
				bp2.on=1;
				bp2.x = p2.x;
				bp2.y = p2.y-1;
			}
			else if(c==BULLET_P2_DOWN)
			{
				bp2.count = 0;
				bp2.vector=BULLET_P2_DOWN;
				bp2.on=1;
				bp2.x = p2.x;
				bp2.y = p2.y+1;
			}
			else if(c==BULLET_P2_LEFT)
			{
				bp2.count = 0;
				bp2.vector=BULLET_P2_LEFT;
				bp2.on=1;
				bp2.x = p2.x-1;
				bp2.y = p2.y;
			}
			else if(c==BULLET_P2_RIGHT)
			{
				bp2.count = 0;
				bp2.vector=BULLET_P2_RIGHT;
				bp2.on=1;
				bp2.x = p2.x+1;
				bp2.y = p2.y;
			}

		}
		if(bp1.on == 1 )
		{
			bp1.count++;
			if(bp1.count==2000)
			{
				bp1.count = 0;
				if(bp1.vector==BULLET_P1_UP)
				{
					if(map[bp1.y][bp1.x]==BUILDING1)
						continue;
					else if(map[bp1.y-1][bp1.x]==GROUND || map[bp1.y-1][bp1.x]==GRASS)
					{
						bp1.origin=map[bp1.y-1][bp1.x];
						--bp1.y;							
						map[bp1.y][bp1.x]=BULLET;
						map[bp1.y+1][bp1.x]=bp1.origin;
						gaming_print_map(bp1.y,bp1.x);
						gaming_print_map(bp1.y+1,bp1.x);
						
						//map[p1.y][p1.x]=p1.origin;
						//gaming_print_map(p1.y,p1.x);
						//p1.origin=map[p1.y-1][p1.x];
						//--p1.y;
						//map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
						if(map[bp1.y-1][bp1.x]==PLAYER_P2)
							break;
						if(map[bp2.y-1][bp2.x]==PLAYER_P1) 
							break;
						if(map[bp1.y-1][bp1.x]==BUILDING1)
						{
							bp1.on=0;
							map[bp1.y][bp1.x]=bp1.origin;
							gaming_print_map(bp1.y,bp1.x);
						}
					}
				}
				else if(bp1.vector==BULLET_P1_DOWN)
				{
					if(map[bp1.y][bp1.x]==BUILDING1)
						continue;
					else if(map[bp1.y+1][bp1.x]==GROUND || map[bp1.y+1][bp1.x]==GRASS)
					{
						bp1.origin=map[bp1.y+1][bp1.x];
						++bp1.y;							
	
						map[bp1.y][bp1.x]=BULLET;
						map[bp1.y-1][bp1.x]=bp1.origin;
						gaming_print_map(bp1.y,bp1.x);
						gaming_print_map(bp1.y-1,bp1.x);
						if(map[bp1.y+1][bp1.x]==PLAYER_P2) 
							break;
						if(map[bp2.y+1][bp2.x]==PLAYER_P1) 
							break;
						if(map[bp1.y+1][bp1.x]==BUILDING1)
						{
							bp1.on=0;
							map[bp1.y][bp1.x]=bp1.origin;
							gaming_print_map(bp1.y,bp1.x);
						}
					}

				}
				else if(bp1.vector==BULLET_P1_LEFT)
				{
					if(map[bp1.y][bp1.x]==BUILDING1)
						continue;
					if(map[bp1.y][bp1.x-1]==GROUND || map[bp1.y][bp1.x-1]==GRASS)
					{
						bp1.origin=map[bp1.y][bp1.x-1];
						--bp1.x;							
	
						map[bp1.y][bp1.x]=BULLET;
						map[bp1.y][bp1.x+1]=bp1.origin;
						gaming_print_map(bp1.y,bp1.x);
						gaming_print_map(bp1.y,bp1.x+1);
						if(map[bp1.y][bp1.x-1]==PLAYER_P2)
							break;
						if(map[bp2.y][bp2.x-1]==PLAYER_P1) 
							break;
						if(map[bp1.y][bp1.x-1]==BUILDING1)
						{
							bp1.on=0;
							map[bp1.y][bp1.x]=bp1.origin;
							gaming_print_map(bp1.y,bp1.x);
						}
					}
				}
				else if(bp1.vector==BULLET_P1_RIGHT)
				{
					if(map[bp1.y][bp1.x]==BUILDING1)
						continue;
					else if(map[bp1.y][bp1.x+1]==GROUND || map[bp1.y][bp1.x+1]==GRASS)
					{
						bp1.origin=map[bp1.y][bp1.x+1];
						++bp1.x;							
	
						map[bp1.y][bp1.x]=BULLET;
						map[bp1.y][bp1.x-1]=bp1.origin;
						gaming_print_map(bp1.y,bp1.x-1);
						gaming_print_map(bp1.y,bp1.x);
						if(map[bp1.y][bp1.x+1]==PLAYER_P2) 
							break;
						if(map[bp2.y][bp2.x+1]==PLAYER_P1) 
							break;
						if(map[bp1.y][bp1.x+1]==BUILDING1)
						{
							bp1.on=0;
							map[bp1.y][bp1.x]=bp1.origin;
							gaming_print_map(bp1.y,bp1.x);
						}
					}

				}


			}
		}
		else if(bp2.on == 1) 
		{
			bp2.count++;
			if(bp2.count==2000)
			{
				bp2.count = 0;

				if(bp2.vector==BULLET_P2_UP)
				{
					if(map[bp2.y][bp2.x]==BUILDING1)
						continue;
					else if(map[bp2.y-1][bp2.x]==GROUND || map[bp2.y-1][bp2.x]==GRASS)
					{
						bp2.origin=map[bp2.y-1][bp2.x];
						--bp2.y;							
	
						map[bp2.y][bp2.x]=BULLET;
						map[bp2.y+1][bp2.x]=bp2.origin;
						gaming_print_map(bp2.y,bp2.x);
						gaming_print_map(bp2.y+1,bp2.x);
						if(map[bp2.y-1][bp2.x]==PLAYER_P1) 
							break;
						else if(map[bp1.y-1][bp1.x]==PLAYER_P2) 
							break;
						else if(map[bp2.y-1][bp2.x]==BUILDING1)
						{
							bp2.on=0;
							map[bp2.y][bp2.x]=bp2.origin;
							gaming_print_map(bp2.y,bp2.x);
						}
					}
				}
				else if(bp2.vector==BULLET_P2_DOWN)
				{
					if(map[bp2.y][bp2.x]==BUILDING1)
						continue;
					else if(map[bp2.y+1][bp2.x]==GROUND || map[bp2.y+1][bp2.x]==GRASS)
					{
						bp2.origin=map[bp2.y+1][bp2.x];
						++bp2.y;							
	
						map[bp2.y][bp2.x]=BULLET;
						map[bp2.y-1][bp2.x]=bp2.origin;
						gaming_print_map(bp2.y,bp2.x);
						gaming_print_map(bp2.y-1,bp2.x);
						if(map[bp2.y+1][bp2.x]==PLAYER_P1) 
							break;
						else if(map[bp1.y+1][bp1.x]==PLAYER_P2) 
							break;
						else if(map[bp2.y+1][bp2.x]==BUILDING1)
						{
							bp2.on=0;
							map[bp2.y][bp2.x]=bp2.origin;
							gaming_print_map(bp2.y,bp2.x);
						}
					}

				}
				else if(bp2.vector==BULLET_P2_LEFT)
				{
					if(map[bp2.y][bp2.x]==BUILDING1)
						continue;
					else if(map[bp1.y][bp2.x-1]==GROUND || map[bp2.y][bp2.x-1]==GRASS)
					{
						bp2.origin=map[p2.y][p2.x-1];
						--bp2.x;	
						map[bp2.y][bp2.x]=BULLET;
						map[bp2.y][bp2.x+1]=bp2.origin;
						
						gaming_print_map(bp2.y,bp2.x+1);
						gaming_print_map(bp2.y,bp2.x);
						if(map[bp2.y][bp2.x-1]==PLAYER_P1) 
							break;
						else if(map[bp1.y][bp1.x-1]==PLAYER_P2) 
							break;
						else if(map[bp2.y][bp2.x-1]==BUILDING1)
						{
							bp2.on=0;
							map[bp2.y][bp2.x]=bp2.origin;
							gaming_print_map(bp2.y,bp2.x);
						}
					}
				}
				else if(bp2.vector==BULLET_P2_RIGHT)
				{
					if(map[bp2.y][bp2.x]==BUILDING1)
						continue;
					else if(map[bp2.y][bp2.x+1]==GROUND || map[bp2.y][bp2.x+1]==GRASS)
					{
						bp2.origin=map[bp2.y][bp2.x+1];
						++bp2.x;							
						map[bp2.y][bp2.x]=BULLET;
						map[bp2.y][bp2.x-1]=bp2.origin;
						gaming_print_map(bp2.y,bp2.x-1);
						gaming_print_map(bp2.y,bp2.x);
						if(map[bp2.y][bp2.x+1]==PLAYER_P1) 
							break;
						else if(map[bp1.y][bp1.x+1]==PLAYER_P2)
							break;
						else if(map[bp2.y][bp2.x+1]==BUILDING1)
						{
							bp2.on=0;
							map[bp2.y][bp2.x]=bp2.origin;
							gaming_print_map(bp2.y,bp2.x);
						}
					}
				}
			}
		}
	}
}
コード例 #6
0
ファイル: map.c プロジェクト: isfos/naev
/**
 * @brief Map custom widget mouse handling.
 *
 *    @param wid Window sending events.
 *    @param event Event window is sending.
 *    @param mx Mouse X position.
 *    @param my Mouse Y position.
 *    @param w Width of the widget.
 *    @param h Height of the widget.
 */
static void map_mouse( unsigned int wid, SDL_Event* event, double mx, double my,
                       double w, double h, void *data )
{
    (void) wid;
    (void) data;
    int i;
    double x,y, t;
    StarSystem *sys;

    t = 15.*15.; /* threshold */

    switch (event->type) {

    case SDL_MOUSEBUTTONDOWN:
        /* Must be in bounds. */
        if ((mx < 0.) || (mx > w) || (my < 0.) || (my > h))
            return;

        /* Zooming */
        if (event->button.button == SDL_BUTTON_WHEELUP)
            map_buttonZoom( 0, "btnZoomIn" );
        else if (event->button.button == SDL_BUTTON_WHEELDOWN)
            map_buttonZoom( 0, "btnZoomOut" );

        /* selecting star system */
        else {
            mx -= w/2 - map_xpos;
            my -= h/2 - map_ypos;

            for (i=0; i<systems_nstack; i++) {
                sys = system_getIndex( i );

                /* must be reachable */
                if (!sys_isFlag(sys, SYSTEM_MARKED | SYSTEM_CMARKED)
                        && !space_sysReachable(sys))
                    continue;

                /* get position */
                x = sys->pos.x * map_zoom;
                y = sys->pos.y * map_zoom;

                if ((pow2(mx-x)+pow2(my-y)) < t) {

                    map_select( sys, (SDL_GetModState() & KMOD_SHIFT) );
                    break;
                }
            }
            map_drag = 1;
        }
        break;

    case SDL_MOUSEBUTTONUP:
        if (map_drag)
            map_drag = 0;
        break;

    case SDL_MOUSEMOTION:
        if (map_drag) {
            /* axis is inverted */
            map_xpos -= event->motion.xrel;
            map_ypos += event->motion.yrel;
        }
        break;
    }
}
コード例 #7
0
ファイル: test_3.c プロジェクト: Yukariko/is_proj_15
void game_start()
{
	system("cls");					//게임 시작전 화면 초기화 

	char c;

	init();

	print_map(map_select());  //현준이 메뉴이동을 리턴값으로 수정 요망  

	while(1) //개임 시작중  
	{
		//print_status();
		//print_monster();             //시간조건필요 
		//print_player();
		//print_potion();              //시간조건필요  

		if (kbhit()) 
		{   //키 받기 
			//gotoxy(get_x(p1.x),get_y(p1.y));
			//printf("%s",get_shape(GROUND));
			
			c=getch();
			if(c==P1_UP)
			{
				if(map[p1.y-1][p1.x]==GROUND || map[p1.y-1][p1.x]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
                    gaming_print_map(p1.y,p1.x);
                    p1.origin=map[p1.y-1][p1.x];
					--p1.y;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}
				

			}
			else if(c==P1_DOWN)
			{
				if(map[p1.y+1][p1.x]==GROUND ||   map[p1.y+1][p1.x]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
					gaming_print_map(p1.y,p1.x);
					p1.origin=map[p1.y+1][p1.x];
					++p1.y;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}
				
			}
			else if(c==P1_RIGHT)
			{

				if(map[p1.y][p1.x+1]==GROUND ||  map[p1.y][p1.x+1]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
					gaming_print_map(p1.y,p1.x);
                    p1.origin=map[p1.y][p1.x+1];
					++p1.x;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}
				
			}
			else if(c==P1_LEFT)
			{
				if( map[p1.y][p1.x-1]==GROUND ||  map[p1.y][p1.x-1]==GRASS)
				{
					map[p1.y][p1.x]=p1.origin;
					gaming_print_map(p1.y,p1.x);
                    p1.origin=map[p1.y][p1.x-1];
					--p1.x;
					map[p1.y][p1.x]=PLAYER_P1;
					if(p1.origin!=GRASS) gaming_print_map(p1.y,p1.x);
				}
				
			}
			if(c==P2_UP)
			{
				if(map[p2.y-1][p2.x]==GROUND || map[p2.y-1][p2.x]==GRASS)
				{
                    map[p2.y][p2.x]=p2.origin;
                    gaming_print_map(p2.y,p2.x);
                    p2.origin=map[p2.y-1][p2.x];
					--p2.y;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}
				

			}
			else if(c==P2_DOWN)
			{
				if(map[p2.y+1][p2.x]==GROUND ||   map[p2.y+1][p2.x]==GRASS)
				{
					map[p2.y][p2.x]=p2.origin;
					gaming_print_map(p2.y,p2.x);
					p2.origin=map[p2.y+1][p2.x];
					++p2.y;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}
				
			}
			else if(c==P2_RIGHT)
			{

				if(map[p2.y][p2.x+1]==GROUND ||  map[p2.y][p2.x+1]==GRASS)
				{
					map[p2.y][p2.x]=p2.origin;
					gaming_print_map(p2.y,p2.x);
                    p2.origin=map[p2.y][p2.x+1];
					++p2.x;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}
				
			}
			else if(c==P2_LEFT)
			{
				if( map[p2.y][p2.x-1]==GROUND ||  map[p2.y][p2.x-1]==GRASS)
				{
					map[p2.y][p2.x]=p2.origin;
					gaming_print_map(p2.y,p2.x);
                    p2.origin=map[p2.y][p2.x-1];
					--p2.x;
					map[p2.y][p2.x]=PLAYER_P2;
					if(p2.origin!=GRASS) gaming_print_map(p2.y,p2.x);
				}
				
			}
		}
		if (kbhit())
		{
			c=getch();
			if(c==BULLET_P1_UP)
			{
				while(map[p1.y-1][p1.x]!=BUILDING1)
				{
					bp1.y=p1.y;
					bp1.x=p1.x;
					map[bp1.y][bp1.x]=BULLET;
					//	gaming_print_map(p1.y,p1.x);
					bp1.origin=map[bp1.y-1][bp1.x];

					--bp1.y;
					map[bp1.y][bp1.x]=BULLET;

					if(bp1.origin!=GRASS) 
						gaming_print_map(bp1.y,bp1.x);
				}
			}
			else if(c==BULLET_P1_DOWN)
			{
				
			}
			else if(c==BULLET_P1_LEFT)
			{
				
			}
			else if(c==BULLET_P1_RIGHT)
			{
				
			}
		}
	}
}