MCPcopy Create free account
hub / github.com/diasurgical/devilution / OperateWeaponRack

Function OperateWeaponRack

Source/objects.cpp:3670–3704  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3668}
3669
3670void 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
3706void OperateStoryBook(int pnum, int i)
3707{

Callers 2

OperateObjectFunction · 0.85
SyncOpObjectFunction · 0.85

Calls 4

SetRndSeedFunction · 0.85
random_Function · 0.85
CreateTypeItemFunction · 0.85
NetSendCmdParam1Function · 0.85

Tested by

no test coverage detected