| 3668 | } |
| 3669 | |
| 3670 | void OperateWeaponRack(int pnum, int i, BOOL sendmsg) |
| 3671 | { |
| 3672 | int weaponType; |
| 3673 | |
| 3674 | if (object[i]._oSelFlag == 0) |
| 3675 | return; |
| 3676 | SetRndSeed(object[i]._oRndSeed); |
| 3677 | |
| 3678 | switch (random_(0, 4) + 1) { |
| 3679 | case ITYPE_SWORD: |
| 3680 | weaponType = ITYPE_SWORD; |
| 3681 | break; |
| 3682 | case ITYPE_AXE: |
| 3683 | weaponType = ITYPE_AXE; |
| 3684 | break; |
| 3685 | case ITYPE_BOW: |
| 3686 | weaponType = ITYPE_BOW; |
| 3687 | break; |
| 3688 | case ITYPE_MACE: |
| 3689 | weaponType = ITYPE_MACE; |
| 3690 | break; |
| 3691 | } |
| 3692 | |
| 3693 | object[i]._oAnimFrame++; |
| 3694 | object[i]._oSelFlag = 0; |
| 3695 | if (deltaload) |
| 3696 | return; |
| 3697 | |
| 3698 | if (leveltype > 1) |
| 3699 | CreateTypeItem(object[i]._ox, object[i]._oy, TRUE, weaponType, IMISC_NONE, sendmsg, FALSE); |
| 3700 | else |
| 3701 | CreateTypeItem(object[i]._ox, object[i]._oy, FALSE, weaponType, IMISC_NONE, sendmsg, FALSE); |
| 3702 | if (pnum == myplr) |
| 3703 | NetSendCmdParam1(FALSE, CMD_OPERATEOBJ, i); |
| 3704 | } |
| 3705 | |
| 3706 | void OperateStoryBook(int pnum, int i) |
| 3707 | { |
no test coverage detected