help with an old quest?

manofwar

Active Member
Mar 22, 2013
40
8
50
New Mexico
Shard Name
Private
Okay, I have had this old quest for a long time, FS Grave Digger Quest, I just just cant seem to understand this problem. I have gone from 300 and something errors down to 11 and I'm just stuck. Matbe I'm thinking about it to much and its right in front of me?
Heres the error
+ Custom/Quests/FS Grave Digger Quest/Grave Digging System/Quest/TheGraveDigger/Mobiles/Yoshimitsu.cs:
CS1501: Line 82: No overload for method 'GetLootingRights' takes 2 arguments
So I am wondering if looting right got rewritten?
and here is the code, just read this is servuo 54.
C#:
public void CheckQuest()
        {
This line-->  List<DamageStore> rights = BaseCreature.GetLootingRights( this.DamageEntries, this.HitsMax );
            ArrayList mobile = new ArrayList();

            for ( int i = rights.Count - 1; i >= 0; --i )
            {
                DamageStore ds = (DamageStore)rights[i];

                if ( ds.m_HasRight )
                {
                    if ( ds.m_Mobile is PlayerMobile )
                    {
                        PlayerMobile pm = (PlayerMobile)ds.m_Mobile;
                        QuestSystem qs = pm.Quest;
                        if ( qs is TheGraveDiggerQuest )
                        {
                            mobile.Add( ds.m_Mobile );
                        }
                    }
                }
            }

            for ( int i = 0; i < mobile.Count; ++i )
            {
                PlayerMobile pm = (PlayerMobile)mobile[i % mobile.Count];
                QuestSystem qs = pm.Quest;

                QuestObjective obj = qs.FindObjective( typeof( FindAsianOilObjective ) );

                if ( obj != null && !obj.Completed )
                {
                    Item oil = new AsianOil();

                    if ( !pm.PlaceInBackpack( oil ) )
                    {
                        oil.Delete();
                        pm.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest.  Come back here when you have more space in your inventory.
                    }
                    else
                    {
                        obj.Complete();
                        pm.SendMessage( "You loot the oils off the ninja's corpse." );
                    }
                }
            }  
        }
Any help appreciated.
 

Quasar

Well-Known Member
Oct 26, 2018
146
14
line 94 in corpse.cs reads
private List<Mobile> m_Aggressors;
// Anyone from this list will be able to loot this corpse; we attacked them, or they attacked us when we were freely attackable
not sure if it helps but it might be the best place to look
or line 84
private Mobile m_Killer;
 

PyrO

Well-Known Member
Jan 27, 2015
1,133
86
look at basecreature.cs there is no more static method for the GetLootingRights
 

manofwar

Active Member
Mar 22, 2013
40
8
50
New Mexico
Shard Name
Private
Thanks Lokia that did the trick, I know alot has changed since I have last ran my server. Just didn't think it would be this much but from what I am seeing things run alot quicker. Once I get this one working I'll post it up on here for everyone.