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

Comparing deliantra/server/server/player.C (file contents):
Revision 1.60 by root, Sat Dec 23 09:41:55 2006 UTC vs.
Revision 1.61 by root, Sat Dec 23 13:56:25 2006 UTC

34#include <functional> 34#include <functional>
35 35
36player * 36player *
37find_player (const char *plname) 37find_player (const char *plname)
38{ 38{
39 player *pl; 39 for_all_players (pl)
40
41 for (pl = first_player; pl; pl = pl->next)
42 if (pl->ob && !strcmp (query_name (pl->ob), plname)) 40 if (pl->ob && !strcmp (query_name (pl->ob), plname))
43 return pl; 41 return pl;
44 42
45 return 0; 43 return 0;
46} 44}
391 389
392object * 390object *
393get_nearest_player (object *mon) 391get_nearest_player (object *mon)
394{ 392{
395 object *op = NULL; 393 object *op = NULL;
396 player *pl = NULL;
397 objectlink *ol; 394 objectlink *ol;
398 unsigned lastdist; 395 unsigned lastdist;
399 rv_vector rv; 396 rv_vector rv;
400 397
401 for (ol = first_friendly_object, lastdist = 1000; ol != NULL; ol = ol->next) 398 for (ol = first_friendly_object, lastdist = 1000; ol != NULL; ol = ol->next)
433 { 430 {
434 op = ol->ob; 431 op = ol->ob;
435 lastdist = rv.distance; 432 lastdist = rv.distance;
436 } 433 }
437 } 434 }
438 for (pl = first_player; pl != NULL; pl = pl->next) 435
439 { 436 for_all_players (pl)
440 if (can_detect_enemy (mon, pl->ob, &rv)) 437 if (can_detect_enemy (mon, pl->ob, &rv))
441 {
442
443 if (lastdist > rv.distance) 438 if (lastdist > rv.distance)
444 { 439 {
445 op = pl->ob; 440 op = pl->ob;
446 lastdist = rv.distance; 441 lastdist = rv.distance;
447 } 442 }
448 } 443
449 }
450#if 0 444#if 0
451 LOG (llevDebug, "get_nearest_player() finds player: %s\n", op ? &op->name : "(null)"); 445 LOG (llevDebug, "get_nearest_player() finds player: %s\n", op ? &op->name : "(null)");
452#endif 446#endif
453 return op; 447 return op;
454} 448}
3070 */ 3064 */
3071 3065
3072void 3066void
3073fix_weight (void) 3067fix_weight (void)
3074{ 3068{
3075 for (player *pl = first_player; pl; pl = pl->next) 3069 for_all_players (pl)
3076 { 3070 {
3077 int old = pl->ob->carrying, sum = sum_weight (pl->ob); 3071 int old = pl->ob->carrying, sum = sum_weight (pl->ob);
3078 3072
3079 if (old == sum) 3073 if (old == sum)
3080 continue; 3074 continue;
3084} 3078}
3085 3079
3086void 3080void
3087fix_luck (void) 3081fix_luck (void)
3088{ 3082{
3089 for (player *pl = first_player; pl; pl = pl->next) 3083 for_all_players (pl)
3090 if (!pl->ob->contr->ns->state) 3084 if (!pl->ob->contr->ns->state)
3091 pl->ob->change_luck (0); 3085 pl->ob->change_luck (0);
3092} 3086}
3093 3087
3094/* cast_dust() - handles op throwing objects of type 'DUST'. 3088/* cast_dust() - handles op throwing objects of type 'DUST'.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines