ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/socket/request.C
(Generate patch)

Comparing deliantra/server/socket/request.C (file contents):
Revision 1.62 by root, Wed Jan 10 01:16:54 2007 UTC vs.
Revision 1.66 by root, Thu Feb 15 04:04:23 2007 UTC

1/* 1/*
2 CrossFire, A Multiplayer game for X-windows 2 * CrossFire, A Multiplayer game for X-windows
3 3 *
4 Copyright (C) 2005, 2006, 2007 Marc Lehmann & Crossfire+ Development Team 4 * Copyright (C) 2005, 2006, 2007 Marc Lehmann & Crossfire+ Development Team
5 Copyright (C) 2001 Mark Wedel 5 * Copyright (C) 2001 Mark Wedel
6 Copyright (C) 1992 Frank Tore Johansen 6 * Copyright (C) 1992 Frank Tore Johansen
7 7 *
8 This program is free software; you can redistribute it and/or modify 8 * This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by 9 * it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2 of the License, or 10 * the Free Software Foundation; either version 2 of the License, or
11 (at your option) any later version. 11 * (at your option) any later version.
12 12 *
13 This program is distributed in the hope that it will be useful, 13 * This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details. 16 * GNU General Public License for more details.
17 17 *
18 You should have received a copy of the GNU General Public License 18 * You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software 19 * along with this program; if not, write to the Free Software
20 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 21 *
22 The author can be reached via e-mail to <crossfire@schmorp.de> 22 * The author can be reached via e-mail to <crossfire@schmorp.de>
23*/ 23 */
24 24
25/** 25/**
26 * \file 26 * \file
27 * Client handling. 27 * Client handling.
28 * 28 *
147 pl->ns->send_packet ("newmap"); 147 pl->ns->send_packet ("newmap");
148 148
149 pl->ns->floorbox_reset (); 149 pl->ns->floorbox_reset ();
150} 150}
151 151
152/** check for map change and send new map data */ 152/** check for map/region change and send new map data */
153static void 153static void
154check_map_change (player *pl) 154check_map_change (player *pl)
155{ 155{
156 client &socket = *pl->ns; 156 client &socket = *pl->ns;
157 object *ob = pl->ob; 157 object *ob = pl->ob;
201 } 201 }
202 } 202 }
203 203
204 socket.current_x = ob->x; 204 socket.current_x = ob->x;
205 socket.current_y = ob->y; 205 socket.current_y = ob->y;
206
207 region *reg = ob->region ();
208 if (socket.current_region != reg)
209 {
210 socket.current_region = reg;
211 socket.send_packet_printf ("drawinfo 0 You are now %s.\n(use whereami for more details)", &reg->longname);
212 }
206} 213}
207 214
208/** 215/**
209 * RequestInfo is sort of a meta command. There is some specific 216 * RequestInfo is sort of a meta command. There is some specific
210 * request of information, but we call other functions to provide 217 * request of information, but we call other functions to provide
798 * commands. 805 * commands.
799 */ 806 */
800 pl->count = 0; 807 pl->count = 0;
801 808
802 //TODO: schmorp thinks whatever this calculates, it makes no sense at all 809 //TODO: schmorp thinks whatever this calculates, it makes no sense at all
803 int time = FABS (pl->ob->speed) < 0.001 810 int time = fabs (pl->ob->speed) < 0.001
804 ? time = MAX_TIME * 100 811 ? time = MAX_TIME * 100
805 : time = (int) (MAX_TIME / FABS (pl->ob->speed)); 812 : time = (int) (MAX_TIME / fabs (pl->ob->speed));
806 813
807 /* Send confirmation of command execution now */ 814 /* Send confirmation of command execution now */
808 packet sl ("comc"); 815 packet sl ("comc");
809 sl << uint16 (cmdid) << uint32 (time); 816 sl << uint16 (cmdid) << uint32 (time);
810 pl->ns->send_packet (sl); 817 pl->ns->send_packet (sl);
1992void 1999void
1993draw_client_map (object *pl) 2000draw_client_map (object *pl)
1994{ 2001{
1995 int i, j; 2002 int i, j;
1996 sint16 ax, ay, nx, ny; /* ax and ay goes from 0 to max-size of arrays */ 2003 sint16 ax, ay, nx, ny; /* ax and ay goes from 0 to max-size of arrays */
1997 New_Face *face, *floor; 2004 facetile *face, *floor;
1998 New_Face *floor2; 2005 facetile *floor2;
1999 int d, mflags; 2006 int d, mflags;
2000 struct Map newmap; 2007 struct Map newmap;
2001 maptile *m, *pm; 2008 maptile *m, *pm;
2002 2009
2003 if (pl->type != PLAYER) 2010 if (pl->type != PLAYER)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines