예제 #1
0
        internal static void ProcessAssignment(GameObject minionObject, GameObject ownerObject, string caller)
        {
            CharacterMaster minion = minionObject.GetComponent <CharacterMaster>();

            if (!minion)
            {
                Log.Warning($"{caller}: minion is null.");
            }
            CharacterMaster owner = ownerObject.GetComponent <CharacterMaster>();

            if (!owner)
            {
                Log.Warning($"{caller}: owner is null.");
            }
            if (!minion || !owner)
            {
                return;
            }
            minion.AssignOwner(owner);
        }
        private void AssignAurelioniteOwner(CharacterMaster goldMaster)
        {
            if (!goldMaster.name.Contains("TitanGoldAlly"))
            {
                return;
            }
            CharacterMaster trueMaster = null;

            foreach (PlayerCharacterMasterController pcmc in PlayerCharacterMasterController.instances)
            {
                if (!trueMaster || pcmc.master.inventory.GetItemCount(RoR2Items.TitanGoldDuringTP) > trueMaster.inventory.GetItemCount(RoR2Items.TitanGoldDuringTP))
                {
                    trueMaster = pcmc.master;
                }
            }
            if (!trueMaster)
            {
                return;
            }
            goldMaster.AssignOwner(trueMaster);
        }