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

Comparing deliantra/server/server/plugins.c (file contents):
Revision 1.12 by elmex, Sat Jul 15 11:57:02 2006 UTC vs.
Revision 1.13 by elmex, Sat Aug 12 11:51:38 2006 UTC

1/* 1/*
2 * static char *rcsid_plugins_c = 2 * static char *rcsid_plugins_c =
3 * "$Id: plugins.c,v 1.12 2006/07/15 11:57:02 elmex Exp $"; 3 * "$Id: plugins.c,v 1.13 2006/08/12 11:51:38 elmex Exp $";
4 */ 4 */
5 5
6/*****************************************************************************/ 6/*****************************************************************************/
7/* CrossFire, A Multiplayer game for X-windows */ 7/* CrossFire, A Multiplayer game for X-windows */
8/* */ 8/* */
416 if (cp->gevent[eventcode] != NULL) 416 if (cp->gevent[eventcode] != NULL)
417 cp->gevent[eventcode](&rt, eventcode, op, buf); 417 cp->gevent[eventcode](&rt, eventcode, op, buf);
418 } 418 }
419 break; 419 break;
420 420
421 case EVENT_FIND_UNARMED_SKILL: 421 case EVENT_FIND_UNARMED_SKILL:
422 op = va_arg(args, object*); 422 op = va_arg(args, object*);
423 for (cp = plugins_list; cp != NULL; cp = cp->next) { 423 for (cp = plugins_list; cp != NULL; cp = cp->next) {
424 if (cp->gevent[eventcode] != NULL) 424 if (cp->gevent[eventcode] != NULL)
425 if ((tmpretval = cp->gevent[eventcode](&rt, eventcode, op)) && *tmpretval > 0) { 425 if ((tmpretval = cp->gevent[eventcode](&rt, eventcode, op)) && *tmpretval > 0) {
426 retval = *tmpretval; 426 retval = *tmpretval;
427 }
428 } 427 }
428 }
429 break; 429 break;
430 430
431 case EVENT_PLAYER_USE_SKILL: 431 case EVENT_PLAYER_USE_SKILL:
432 case EVENT_MONSTER_USE_SKILL: 432 case EVENT_MONSTER_USE_SKILL:
433 op = va_arg(args, object*); 433 op = va_arg(args, object*);
434 op2 = va_arg(args, object*); 434 op2 = va_arg(args, object*);
435 op3 = va_arg(args, object*); 435 op3 = va_arg(args, object*);
436 fix = va_arg(args, int); 436 fix = va_arg(args, int);
437 buf = va_arg(args, char*); 437 buf = va_arg(args, char*);
438 for (cp = plugins_list; cp != NULL; cp = cp->next) { 438 for (cp = plugins_list; cp != NULL; cp = cp->next) {
439 if (cp->gevent[eventcode] != NULL) 439 if (cp->gevent[eventcode] != NULL)
440 if ((tmpretval = cp->gevent[eventcode](&rt, eventcode, op, op2, op3, fix, buf)) && *tmpretval != 0) { 440 if ((tmpretval = cp->gevent[eventcode](&rt, eventcode, op, op2, op3, fix, buf)) && *tmpretval != 0) {
441 retval = *tmpretval; 441 retval = *tmpretval;
442 }
443 } 442 }
443 }
444 break; 444 break;
445
446 case EVENT_CAST_SPELL:
447 op = va_arg(args, object*);
448 op2 = va_arg(args, object*);
449 op3 = va_arg(args, object*);
450 fix = va_arg(args, int);
451 buf = va_arg(args, char*);
452 for (cp = plugins_list; cp != NULL; cp = cp->next) {
453 if (cp->gevent[eventcode] != NULL)
454 if ((tmpretval = cp->gevent[eventcode](&rt, eventcode, op, op2, op3, fix, buf)) && *tmpretval != 0) {
455 retval = *tmpretval;
456 break; /* The first who did something wins! */
457 }
458 }
459 break;
445 460
446 case EVENT_EXTCMD: 461 case EVENT_EXTCMD:
447 /*KICK: op, parms*/ 462 /*KICK: op, parms*/
448 pl = va_arg (args, player *); 463 pl = va_arg (args, player *);
449 buf = va_arg (args, char *); 464 buf = va_arg (args, char *);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines