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

Comparing deliantra/server/socket/item.C (file contents):
Revision 1.11 by root, Wed Dec 13 21:27:09 2006 UTC vs.
Revision 1.12 by root, Thu Dec 14 00:01:37 2006 UTC

659 player_apply (pl->ob, op, 0, 0); 659 player_apply (pl->ob, op, 0, 0);
660} 660}
661 661
662/** Client wants to apply some object. Lets do so. */ 662/** Client wants to apply some object. Lets do so. */
663void 663void
664LockItem (uint8 * data, int len, player *pl) 664LockItem (uint8 *data, int len, player *pl)
665{ 665{
666 int flag, tag;
667 object *op;
668
669 flag = data[0]; 666 int flag = data[0];
670 tag = GetInt_String (data + 1); 667 tag_t tag = net_uint32 (data + 1);
671 op = esrv_get_ob_from_count (pl->ob, tag); 668 object *op = esrv_get_ob_from_count (pl->ob, tag);
672 669
673 if (!op) 670 if (!op)
674 { 671 {
675 new_draw_info (NDI_UNIQUE, 0, pl->ob, "Could not find object to lock/unlock"); 672 new_draw_info (NDI_UNIQUE, 0, pl->ob, "Could not find object to lock/unlock");
676 return; 673 return;
677 } 674 }
675
678 if (!flag) 676 if (!flag)
679 CLEAR_FLAG (op, FLAG_INV_LOCKED); 677 CLEAR_FLAG (op, FLAG_INV_LOCKED);
680 else 678 else
681 SET_FLAG (op, FLAG_INV_LOCKED); 679 SET_FLAG (op, FLAG_INV_LOCKED);
680
682 esrv_update_item (UPD_FLAGS, pl->ob, op); 681 esrv_update_item (UPD_FLAGS, pl->ob, op);
683} 682}
684 683
685/** Client wants to apply some object. Lets do so. */ 684/** Client wants to apply some object. Lets do so. */
686void 685void
687MarkItem (uint8 * data, int len, player *pl) 686MarkItem (uint8 * data, int len, player *pl)
688{ 687{
689 int tag; 688 tag_t tag = net_uint32 (data);
690 object *op;
691
692 tag = GetInt_String (data);
693 op = esrv_get_ob_from_count (pl->ob, tag); 689 object *op = esrv_get_ob_from_count (pl->ob, tag);
694 690
695 if (!op) 691 if (!op)
696 { 692 {
697 new_draw_info (NDI_UNIQUE, 0, pl->ob, "Could not find object to mark"); 693 new_draw_info (NDI_UNIQUE, 0, pl->ob, "Could not find object to mark");
698 return; 694 return;
699 } 695 }
700 696
701 pl->mark = op; 697 pl->mark = op;
702 new_draw_info_format (NDI_UNIQUE, 0, pl->ob, "Marked item %s", query_name (op)); 698 new_draw_info_format (NDI_UNIQUE, 0, pl->ob, "Marked item %s", query_name (op));
703} 699}
704
705 700
706/** 701/**
707 * look_at prints items on the specified square. 702 * look_at prints items on the specified square.
708 * 703 *
709 * [ removed EARTHWALL check and added check for containers inventory. 704 * [ removed EARTHWALL check and added check for containers inventory.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines