NScumm.Scumm.ScummEngine.GetVerbEntrypointCore C# (CSharp) Метод

GetVerbEntrypointCore() защищенный Метод

protected GetVerbEntrypointCore ( int obj, int entry ) : int
obj int
entry int
Результат int
        protected int GetVerbEntrypointCore(int obj, int entry)
        {
            if (GetWhereIsObject(obj) == WhereIsObject.NotFound)
                return 0;

            ObjectData result = null;

            if ((Game.Version != 0 || OBJECT_V0_TYPE(obj) == 0) && GetOwnerCore(obj) != OwnerRoom)
            {
                for (int i = 0; i < _resManager.NumInventory; i++)
                {
                    if (_inventory[i] == obj)
                        result = _invData[i];
                }
            }
            else
            {
                result = _objs.FirstOrDefault(o => o.Number == obj);
            }

            var FallbackEntry = Game.Version == 8 ? 0xFFFFFFFF : 0xFF;
            foreach (var key in result.ScriptOffsets.Keys)
            {
                if (key == entry || key == FallbackEntry)
                    return result.ScriptOffsets[key];
            }

            return 0;
        }
ScummEngine